Tworzenie mapowań danych to bardzo przydatna funkcja w Dynamics CRM 4.0. Raz utworzone mapy mogą być używane do importu danych wielokrotnie. Dodatkowo, mapy pozwalają mapować nie tylko atrybuty podstawowych typów, ale również listy wartości.
Ten post jednak nie będzie zachwalał mechanizmu mapowań (który i tak ma dużo mniejsze możliwości od Menadżera migracji danychData Migration Manager’a), ale miał być poświęcony jednej bardzo uciążliwej rzeczy potrzebnej do utworzenia mapy…

Załóżmy, że mamy plik CSV rozdzielony średnikami (ważne do zapamiętania na później 🙂 ). Bez żadnego problemu możemy go oczywiście zaimportować, używając standardowego mechanizmu importu. Problem (ciekawostka) pojawia się, kiedy chcemy sobie utworzyć nowe mapowanie danych dla konkretnego pliku.
Idąc standardowymi krokami, wybieramy z menu „Narzędzia” -> „Importuj dane”. W kreatorze importu wybieramy plik z danymi źródłowymi. Ten plik może być w jednym z czterech formatów:


W kolejnym kroku możemy wybrać typ rekordu docelowego i istniejące mapowanie. Jeśli nie mamy odpowiedniego mapowania, możemy zdecydować się na utworzenie nowego:


Ciekawie robi się, kiedy w okienku nowego mapowania przejdziemy do atrybutów i klikniemy guzik „Załaduj przykładowe dane”:


Kiedy załadujemy nasz plik źródłowy, który jest rozdzielany średnikami, zdziwimy się, że wszystkie kolumny są zmapowane do jednej:

Dlaczego tak się dzieje? Ano dlatego, że funkcja ładująca przykładowe dane zawsze oczekuje danych rozdzielonych przecinkami! Moim zdaniem jest to niedociągnięcie, bo i w tym miejscu mogliśmy mieć wybór rodzaju „znaku rozdzielającego” podobnie jak przy imporcie, który wcześniej rozpoczęliśmy.

Druga dziwna rzecz z ładowaniem przykładowych danych podczas tworzenia mapowania to fakt, że musimy ręcznie ograniczyć wielkość pliku, który chcemy użyć jako przykład. CRM zamiast załadować tylko nagłówki kolumn i np. pierwszy wiersz, próbuje zawsze ładować cały plik, co często kończy się błędem.

Pamiętajcie więc, że ładowanie przykładowych danych potrzebuje małego pliku rozdzielonego przecinkami niezależnie od tego, że import możemy zrobić swobodnie z pliku, w którym dane rozdzielone są np. tabulatorem…