Egzamin MB5 – Managing Microsoft Dynamics Implementations

Obiecałem już dawno :) Wiem, wiem. Najpierw egzaminu nie mogłem jeszcze zamówić, później urlop, a teraz po urlopie choroba. Mimo wszystko postanowiłem, że podejdę do tego egzaminu. Nie polecam na antybiotykach, ale zdałem za pierwszym razem. Niestety w ogóle się przed nim nie uczyłem ;) . Żeby Was to nie zmyliło, bo to stanowczo jeden z trudniejszych egzaminów MS, jakie zdawałem. Do rzeczy… (oczywiście przed egzaminem podpisałem NDA, więc nie będzie tu dokładnych pytań z odpowiedziami):

Przede wszystkim egzamin składa się z 70 pytań (!). Naprawdę spędziłem 1,5h na czytaniu i rozwiązywaiu pytań. Jakość pytań – bardzo dobra. Pytania trudne (niestety), ale sprawdzają absolutnie znajomość Sure Step’a. Pytają o wszystko od tego, jak zachować się w danej sytuacji (np. klient zmienia wymagania już po UAT – co wtedy?), ale i o samego Sure Step’a – co robi się w fazie diagnostyki, jakie są wkłady do konkretnego akcelertora itd.
Ezgamin składa się z 3 części – ta o Sure Step, zarządzania projektami w konkretnych scenariuszach oraz użycie Sure Step już po wdrożeniu. Nie dotyczy żadnego konkretnego produktu, choć pojawiło się pytanie o wdrażanie NAV 2009.
Oczywiście jak na każdym egzaminie nie obyło się bez wpady twórców – pojawiło się pytanie o… Rapid Upgrade wycofany przed Sure Step 2010. Ale to i tak niewiele w porównaniu do innych egzaminów, więc jest ok.

Niestety egzamin szydzi z mojego wrażliwego podejścia do tematyki projektów robionych „wodospadem” :) . Na egzaminie roi się od pytań „what must be finished prior to beginning the testing”. Ble! Odpowiedziałbym, że nic, bo testuje się cały czas, ale nie było takiej odpowiedzi. Szczytem było pytanie o sytuację, w której developer skończył jakąś pracę – czy może zacząć następną? Odpowiedź – NIE, bo wcześniej zostały ustalone daty końca fazy. Bleeeeeeech!!!

Ogólnie jak przystało na egzamin nietechnologiczny, przy dużej części pytań można by się spierać, ale da się znaleźć jakoś tę jedyną sensową (z punktu widzenia Sure Step) odpowiedź. Podsumowując – trudny egzamin, który trzeba zdać. Ot i tyle.

Microsoft Dynamics CRM 2011…

Po ogłoszeniu MVP trochę sobie pofolgowałem – najpierw urlop, później (ciągle) choroba. Jakoś nie było czasu napisać. A w tym czasie stała się ważna rzecz. Microsoft ogłosił wreszcie jak będzie nazywał się ostatecznie najnowszy CRM. I nie będzie to V.next, CRM5, ani Dynamics xRM jak do tej pory wiele osób z kręgu bliskiego grupie produktowe mówiło. Nowy CRM przyjmuje konwencję nazewniczą z ERP’ów i będzie nazywał się… Microsoft Dynamics CRM 2011! Jak łatwo można wywnioskować, tym samym premiera produktu przesunęła się ostatecznie z pierwotnie planowanej w marcu 2010 na początek 2011 roku. Ale co to będzie za produkt!!! :)

Beta Dynamics CRM 2011 będzie publicznie dostępna już we wrześniu 2010 dla większego grona. Ja póki co bawię się CTP4, ale ciągle ma w logo CRM5 :) .

Wreszcie po kilku latach (od wersji 3.0) Microsoft zerwał ze swoimi 3 ulubionymi stwierdzeniami „works the way…”. Slogan Dynamics CRM 2011 to: „The power of productivity.”. Pozostaje trzymać kciuki za LionBridge (albo ktokolwiek będzie tłumaczył), żebyśmy nie musieli u klientów wywoływać śmiechu z „Siła produktywności”…

Czas zacząć odliczanie!!!

Zostałem… MVP – Dynamics CRM! :)

„Congratulations! We are pleased to present you with the 2010 Microsoft® MVP Award!” – niespodziewany email z takim zdaniem na początku to najlepsza nagroda, jaka może spotkać kogoś, kto poświęca sporo swojego życia wybranej technologii Microsoft. Ja dostałem dzisiaj takiego emaila! :) Przed 17, nagle i niespodziewanie :-D .
Póki co nie wiem jeszcze dokładnie co to znaczy, że jestem MVP. Wiem tylko, że jestem pierwszym polskim (drugim w Europie Centralnej i Środkowej) MVP z Dynamics CRM. A 41-ym na świecie (19 w USA). I wiem też, że to jedna z fajniejszych chwil w „technologicznym” życiu. Zostać docenionym, wcale tego nie oczekując.

Nie wiem jak innych MVP, ale mnie motywuje bardziej marchewka niż kij, a tzn, że uzyskany właśnie tytuł Most Valuable Professional spowoduje, że jeszcze bardziej zajmę się moim ukochanym CRM’em i jeszcze mocniej zaangażuję w społeczność.

Dziękuję każdemu, kto przyczynił się do uzyskania przeze mnie tego wyróżnienia. Thank y’all for your appreciation. I’ll do my best to keep it up!

Jednocześnie chciałem pogratulować wszystkim nowym MVP – szczególnie Tobiaszowi, który zdobył tytuł MVP SQL w tym rozdaniu! Jest nas dwóch :) . I oczywiście gratulacje dla wszystkich renominowanych! Na blogu Alessandro Teglia (tutaj) znajduje się pełna lista 8 nominowanych do nagrody MVP. Standardowo lista jest pusta i nie zawiera nazwiska danej osoby póki ona sama nie pochwali się nominacją na blogu lub jakiejś stronie – fajny zwyczaj. Pan Lato mógłby się uczyć, nie zwolniłby wtedy Benhakkera, nie mówiąc mu najpierw! :D

CRM 5 CTP 4 już na początku lipca!

Microsoft ogłosił, że już na początku lipca wybrani partnerzy (w Polsce to tylko Netwise, w którym pracuję) będą mieli dostęp do CRM5 CTP4. A razem z nim zyskujemy platformę, która jest już kompatybilna z .NET 4 RTM i Visual Studio 2010 (CTP3 było z Beta’mi obu). Dodatkowo podobno to ma być ostatnie CTP przed Betą CRM5!!! Nie mogę się doczekać. Ze względu na różne klauzule, nie pokażę na blogu niestety zrzutów ekranu, ale postaram się napisać co fajnego mamy w najnowszej CTP :) . Już niedługo… :)

Kiedy 5-te spotkanie DxPUG?

Na stronie Dynamics xRM Polish User Group (http://ms-groups.pl/dxpug) wrzuciłem ankietę, która pomoże wszystkim członkom grupy zdecydować, czy robimy spotkanie grupy w lipcu. Dostałem bowiem kilka informacji, że w lipcu „generalnie się nie chce” ;) , albo „lepiej po wakacjach”. Głosujcie proszę na stronie (po zalogowaniu). Głosowanie trwa do niedzieli wieczorem!!! :P

Microsoft Dynamics CRM 4.0 Update Rollup 11

W długi weekend pojawił się najnowszy Update Rollup 11. Wprowadza znów sporo fajnych zmian i standardowo jest kumulatywny. Rollup 11 dla klienta Outlook i Data Migration Manager’a wymaga zainstalowania Update Rollup 7 najpierw!

Do najważniejszych cech Update Rollup 11, moim zdaniem, należą:

  • w Outlook 2010 guziki CRM są wyświetlane jako elementy wstążki, a nie w zakładce „Dodatki”
  • w Outlook’u nie pojawiają się przypomnienia zadań zaznaczonych jako ukończone w CRM ui zsynchronizowanych po ukończeniu
  • Update Rollup 11 wymaga Microsoft Windows Installer (MSI) w wersji 4.5, a więc na komputerach, które nie mają tej wersji, będzie wymagał połączenia z internetem podczas instalacji
  • Update Rollup 11 wymaga Visual C++ 2008 SP1 Redistributable i będzie go doinstalowywał podczas instalacji
  • Update Rollup 11 wymaga .Net 3.5 SP1, ale nie będzie doinstalowywał go podczas instalacji
  • Update Rollup 11 instaluje na komputerach z klientem dla Outlook kontrolkę Reporting Services 2008
  • wreszcie naprawiony błąd z datą urodzin (wkurzało mnie od wersji 3.0 CRM’a) – podczas ustawienia daty w konkretnych strefach czasowych, data była przechowywana w bazie jako o jeden mniejsza
  • tabela z definicjami starych przepływów pracy nigdy nie była czyszczona, teraz jest

Pamiętajcie o instalacji pakietów językowych (MUI) stąd: http://www.microsoft.com/downloads/details.aspx?FamilyID=50761e58-6040-4cf3-853a-f5ab535f7194&displaylang=en zanim zaczniecie instalować UR 11 dla MUI.

Więcej o Update Rollup 11 dla Microsoft Dynamics CRM 4.0 można poczytać tutaj: http://support.microsoft.com/?kbid=981328, a ściągnąć go można stąd: http://www.microsoft.com/downloads/details.aspx?FamilyID=f84f2bfb-393d-4b90-bf1b-300a82ec6083&displaylang=en.

Customer Care Accelerator (CCA) – czy to jeszcze akcelerator?

Jeden z najnowszych akceleratorów dla Microsoft Dynamics CRM to CCA, czyli Customer Care Accelerator. Właśnie skończył się tydzień, podczas którego miałem przyjemność uczyć się od grupy produktowej o co chodzi z CCA. Jutro wracam do Polski, ale już dziś „na gorąco” (póki pamiętam ;) ) postanowiłem podzielić się z Wami przemyśleniami na temat CCA. I odważę się powiedzieć – CCA to żaden akcelerator! CCA to mega potężna platforma do budowania zintegrowanych rozwiązań dla call centres.

Ogólnie o Customer Care Accelerator

Przede wszystkim CCA różni się od innych akceleratorów tym, że nie został napisany jako „dodatek”. CCA to nowa wersja platformy do budowania rozwiązań do obsługi klientów, która do tej pory była osobnym produktem, czyli Customer Care Framework. Microsoft w ramach zaangażowania w xRM i ogólnie rynek CRM postanowił… unowocześnić Customer Care Framework 2009, zintegrować ją z Dynamics CRM i… oddawać go za darmo!!! (coś, co kosztowało do tej pory około 80 000 PLN za jedną licencję serwerową!!!). CCF jest z powodzeniem używany w kilkudziesięciu bankach i firmach telco od Australii przez Indie aż po USA. A teraz klienci Dynamics CRM dostają go za darmo w postaci CCA. Sam nie mogłem się nadziwić, bo wiem jak potężną platformą był CCF. Ale Microsoft nie żartuje z tym, że chce zagarniać rynek CRM. Zrobił właśnie olbrzymi krok :) :

Customer Care Accelerator (CCA)

Customer Care Accelerator – technologia

Nie da się opowiedzieć czym jest CCA bez krótkiego wytłumaczenia czym są: LOB, ICC, IAD, UII, AIF, HAT. W tym poście opiszę krótko co się kryje za tymi skrótami, bo dogłębne tłumaczenie i szkolenie jak ich używać trwało 4 dni… I tak:
LOB (Line-of-business application) – każda aplikacja i system, który wspiera biznes i może wymagać integracji
ICC (Integrated Contact Centrer) – koncepcja lub wizja rozwiązania opartego o technologie MS do pełnej obsługi potężnych i zaawansowanych call centre
IAD (Integrated Agent Desktop) – aplikacja, która „w jednym okienku” pozwala na obsługę wielu systemów wykorzystywanych przez agenta w Call Centre. I nieważne czy te systemy to aplikacje web’owe czy nie; w .NET czy w Javie; czy przez Citrix czy na mainframie – wszystkie mają dać się obsłużyć i zintegrować w „jednym ekranie”
UII (User Interface Integration) – zestaw komponentów i SDK do budowy kontrolek pozwalających integrować różne LOB, Dynamics CRM i inne aplikacje w IAD
AIF (Application Integration Framework) – główna część UII pozwalająca integrować różnego typu aplikacje na poziomie interfejsu. Co to znaczy? W skrócie tyle, że dzięki AIF można zalogować się do aplikacji w Swing’u, wziąć z niej dane, w tej samej „sesji” przełączyć okienko do systemu ERP, pobrać dane i za chwilę otworzyć okienko CRM’a np. z utworzonym działaniem
HAT (Hosted Application Toolkit) – zestaw narzędzi i dodatków do Visual Studio, które automatyzują integrację różnych aplikacji. HAT wykorzystuje DDA ;) i Windows Workflow Foundation po to, żeby budować rozwiązania integrujące różne systemy na poziomie interfejsu
DDA (Data Driven Adapter) – komponent ułatwiający dostęp do poszczególnych rodzajów aplikacji. Takie jakby API wiedzące, że jak mamy do czynienia z aplikacją webową, to można ją otworzyć np. poprzez URL. Jak z aplikacją w Swing’u, to np. żęby pobrać wartość pola tekstowego wystarczy… itd. CCA zawiera kilka gotowych DDA, ale możemy pisać swoje własne pod nasze aplikacje.

Customer Care Accelerator - architektura

Customer Care Accelerator - architektura

Podusmowanie

Podsumowując CCA powyższymi skrótami – używając UII, wykorzystuje się DDA i WWF oraz AIF w celu połączenia LOB w IAD, które mogą stać się częścią potężnego ICC. Tworzenie takich integracji usprawnia się wykorzystując HAT, a rejestruje i zarządza przez CRM. O, tak w skrócie :) .

Ufff, jak sami widzicie CCA to wielki framework, a nie żaden tam akcelerator. Jak będzie zapotrzebowanie, napiszę więcej postów na ten temat. Póki co, z tego co mi wiadomo, poza konsultantami Microsoft Consulting Services (Piotrusiu, o Tobie mówię ;) ) w Polsce nikt inny nie ma i oficjalnie nie może mieć kompetencji z Customer Care Accelerator poza tymi, którzy byli na szkoleniu i laboratoriach. Czyli tak wyszło, że z Polski tylko ja, tak nieskromnie się przyznam… :)

Kampania Try & Buy Microsoft Dynamics CRM

Microsoft z 6 partnerami: AMG.NET, Infor IT, Insoft, Intersys, JADE i Netwise uruchomił wczoraj kampanię, która pozwala wypróbować jak działa Microsoft Dynamics CRM. W ostatnim poście napisałem za co kocham Microsoft. W tym napiszę, czym Microsoft wystawia moją miłość na cholerną próbę…
Jak to zwykle bywa, jak się kupuje jakieś rozwiązanie (polski MS kupił gotowca ;) , nota bene od moich dobrych znajomych z AlfaPeople Dania…), strona kampanii nie wygląda i nie brzmi najlepiej: http://emea.dynamicscrm.com. A jeszcze gorzej kampania prezentuje się w Google’u: http://www.google.pl/#hl=pl&source=hp&q=emea.dynamicscrm.com&aq=f&aqi=&aql=&oq=&gs_rfai=&fp=1&cad=b. Według BING’a strony jeszcze nie ma.

Inicjatywa Microsoft’u ma pomóc partnerom, którzy nie mają swojego Centrum Hostingowego, oferować Dynamics CRM w modelu SaaS. Powstrzymam się od komentarzy czy się udało po wrażeniach w pierwszych dniach działania strony :) .

Jednak mimo wszystko nie ma się co zrażać! Dynamics CRM działa o niebo lepiej niż strona tej kampanii, dlatego zachęcam i tak do bezpłatnego testowania. W celu założenia konta można udać się tu: http://emea.dynamicscrm.com/?culture=pl-PL&campaign=MSPOL – konto zostanie założone automatycznie i od razu po otrzymaniu potwierdzenia będzie można korzystać z systemu.

PS. Pierwsza reklama w poście na tym blogu, ale nie mogłem się powstrzymać: jeśli komuś przeszkadza łamany angielski i błędy już na pierwszej stronie, zachęcam też do korzystania z CRM’a hostowanego bezpośrednio przez Netwise: http://www.netwisehosting.pl/. Tam raczej błędów nie ma :) .

Ech… korporacja… ktoś, gdzieś w Monachium coś kupił i trzeba używać we wszystkich krajach. Nic to, że nie ma po polsku. Nic to, że po angielsku też to nie jest. Nic, że sypie błędami. Ważne, że trzeba ruszać! Cóż zrobić :)

SDK 4.0.12 – kolejna rewolucja!

Zazwyczaj informowałem o nowych wersjach SDK za pomocą krótkiego opisu. W przypadku CRM SDK 4.0.12 opis nie może być krótki. Takie SDK u innych producentów systemów CRM nazywałoby się „major platform upgrade” i kosztowałoby tyle, co kolejna wersja systemu. SDK 4.0.12 to zmiana spojrzenia na platformę Microsoft Dynamics CRM! To również totalne przełączenie na koncepcję xRM! Ja osobiście jestem w szoku :) . Nowe SDK przygotowuje nas po prostu do gładkiego przejścia do CRM 5 i daje już teraz dostęp do funkcjonalności SDK CRM 5.
David Jennaway już sporo opisał na swoim blogu, ale myślę, że można by napisać ciągle więcej o tej rewolucji po polsku. Tak więc… ;P:

SDK 4.0.12 wprowadza pojęcia „Advanced Developer Extensions” czyli „Zaawansowanych rozszerzeń programistycznych”, które technicznie nazwane są po prostu xRM’em. W skrócie polegają na tym, że możemy korzystać z platformy Dynamics CRM w zupełnie nowy sposób. I tak:

  • nowe SDK pozwala na korzystanie z danych w Dynamics CRM za pomocą LINQ!!! Niech ten piękny kod powie sam za siebie:
    var marketingListsWithCalculations =
    from marketingList in crm.lists
    select new { marketingList.listname, Cost = marketingList.cost + 100 };
  • nowe SDK pozwala na używanie natywnych typów .NET!!! W tym typów nullowalnych (o których nota bene pisałem ostatni projekt w szkole ;) ), czyli np. short? a nie short, dzięki czemu unikamy konieczności ustawiania IsNullSpecified
  • możemy budować źródła danych za pomocą klasy DataContext
  • nowe SDK dostarcza narzędzie CrmSvcUtil, które pozwala budować lokalne i silnie typowane odzwierciedlenia bazy CRM, czyli klasy reprezentujące obiekty i DTO (Data Transfer Object). Dzięki temu można pisać kod oparty o LINQ
  • nowe SDK daje wsparcie dla WCF! poprzez generowanie klas kontekstowych za pomocą CrmSvcUtil
  • z nowym SDK możemy robić tzw. batch updates!!! To z kolei znaczy, że nie musimy już robić tysiąca wywołań Update(). Zamiast tego możemy modyfikować dane „lokalnie”, cache’ować je i dopiero za jednym wywołaniem aktualizować wszystkie na raz! Tutaj przykład:

    contact.Email emailaddress1 = "janko@x.com";
    contact.contact_customer_accountsParentCustomerAccount = account;
    contact1.Firstname firstname = "Jakub";

    crm.UpdateObject(contact);
    crm.UpdateObject(contact1);

    // zapisywanie do bazy
    crm.SaveChanges();

  • nowe SDK pozwala pobierać obiekty powiązane za pomocą gotowych metod. Dzięki temu zamiast budować QueryExpression i podawać GUID’y możemy po prostu wywołać metodę GetRelatedEntities()
  • nowe SDK daje zupełnie nowe możliwości budowania relacji między obiektami z poziomu kodu (poprzez metodę SetLink() albo aktuzalizację klucza obcego). Wystarczy zerknąć na przykłady poniżej, żeby zobaczyć dlaczego mówię o rewolucji :) :
    crm.SetLink(contact, "contact_customer_accounts", account);
    crm.SaveChanges();

    albo:

    contact.contact_customer_accounts = account;
    crm.UpdateObject(contact);
    crm.SaveChanges();
  • nowe SDK zawiera informacje o budowaniu tzw. Visual Charts, czyli dynamicznych wykresów z danych w CRM. W CRM 5 wykresy te będą mogły być wyświetlane na listach rekordów, aktualnie udostępnia je w ograniczonej postaci tylko CRM Online R4.
  • nowe SDK zawiera zupełnie nowe rozdziały o uwierzytelnianiu w modelach serwer-serwer i impersonacji
  • nowe SDK zawiera mnóstwo nowych rozdziałów, w tym rozdziały opisujące dokładnie dlaczego należy korzystać z DynamicEntity, z klasy IsvReadiness i kilkunastu innych
  • nowe SDK zawiera rozdziały o dobrych praktykach w pisaniu zewnętrznych aplikacji korzystających z CRM i o sugestiach związanych z wydajnością takich aplikacji

Na razie nikt nie wie, czy ukaże się CRM SDK 4.0.13. A to dlatego, że 4.0.12 zbliża nas wielkimi krokami do CRM 5. Już teraz Microsoft przyzwyczaja programistów do rozwiązań, które w gotowej platformie zobaczymy za kilka miesięcy. SDK 4.0.12 to jest coś pięknego. To dla takich chwil warto kochać Dynamics CRM’a! I w takich chwilach wiem, czemu kocham MS a nie Google’a, który za major update uważa nowy kształt guzika „szukaj” :D .

PS. SDK 4.0.12 jest do ściągnięcia tutaj: http://www.microsoft.com/downloads/details.aspx?FamilyID=82E632A7-FAF9-41E0-8EC1-A2662AAE9DFB&displaylang=en

Po co nam SCOM Management Pack dla Dynamics CRM 4.0?

Jak pewnie wiecie, Microsoft wreszcie jakiś czas temu (niezbyt dawno) opublikował Dynamics CRM 4.0 Management Pack dla SCOM (System Center Operations Manager 2007). Dla tych szczęśliwców, którzy mają SCOM’a w firmie, może okazać się, że pack ten stanie się niezastąpiony odkąd przyjrzycie się bliżej, co nam daje.
I tak, Management Pack dla CRM’a oczywiście monitoruje serwer i ogólnie środowisko, w którym zainstalowany jest Dynamics CRM 4.0. Po instalacji okazuje się, że MP pilnuje naprawdę sporej liczby zdarzeń. Ten post opisuje znaczną część z nich. W szczególności Management Pack:

  • monitoruje serwer web CRM, czyli:
    • czy pula aplikacji działa?
    • czy da się pingować stronę
    • czy pula aplikacji przerwała działanie?
    • jakie są wywołania SOAP’owe
    • czy i jak często renderowane są raporty
  • monitoruje proces asynchroniczny (asynchronous process), m.in.:
    • czy proces działa?
    • czy może wstać po restarcie?
    • czy nie ma problemów z odczytaniem bazy MSCRM_CONFIG i bazy organizacji
    • czy i jak często proces „pada”
    • czy Deletion Service działa i mógł odczytać dane do skasowania
    • czy ostatnie iteracja Deletion Service’u się udała
    • jak dużo operacji musi robić proces asynchroniczny i jak dużo operacji się udaje/nie udaje
    • jak dużo jest żądań synchronizacji offline i czy się udają/nie udają
    • jak dużo jest żądań synchronizacji książki adresowej i czy się udają/nie udają
  • monitoruje warstwę platformy i wywołania usług sieciowych (web services), m.in.:
    • sprawdza wywołania CRM Discovery Service i dostęp do organizacji
    • jak dużo jest wywołań CrmService i czy się udają/nie udają
    • jak dużo jest wywołań MetadataService i czy się udają/nie udają
  • monitoruje komponenty Reporting Services wykorzystywane przez Dynamics CRM, m.in.:
    • czy możliwe jest połączenie ze źródłami danych?
    • czy działają usługi Reporting Services?
    • czy nie ma za dużo żądań, które mogą sugerować atak DoS?
    • czy wystąpił błąd podczas renderowania raportów?
  • monitoruje pozostałe komponenty Dynamics CRM, w tym bezpieczeństwo środowiska, m.in.:
    • jak często dane są brane z cache’a i jak często cache jest czyszczony
    • jakie błędy wystąpiły w kodzie plugin’ów
    • liczbę i wynik żądań uwierzytelniania i logowań użytkowników per organizacja
    • liczbę błędnych prób logowań i uwierzytelniania
    • liczbę błędnych żądań HTTP POST wysłanych przeciwko CRM’owi
    • liczbę odwołań do pliku Trace i błędów odczytu

Jak widać po powyższej liście, jeśli tylko ktoś ma SCOM’a, nie ma się co zastanawiać przed instalacją MP dla CRM’a. Nie widziałem jeszcze lepszych narzędzi, które monitorowałyby środowisko Dynamics CRM 4.0 w tak kompleksowy sposób. Microsoft, dobra robota! :)
Dynamics CRM 4.0 Management Pack dla SCOM’a jest do ściągnięcia stąd: http://www.microsoft.com/downloads/details.aspx?FamilyID=c2c9c4b6-69d5-432a-9560-8e4a6e01573a&displaylang=en. Miłych obserwacji! :)