Korzystanie z właściwości SourceExpr i DestExpr
W ostatniej sekcji omówiliśmy sposób dodawania instancji tabelarycznych do mapowania. W tej sekcji przyjrzymy się, jak uzyskać dostęp do danych z pól w tabeli. I jak używać stałych wartości i filtrów.
Moduł umożliwia odczytywanie danych z pól z tabel, gdy tylko istnieje właściwość SourceExpr (wyrażenie źródłowe). SourceExpr może być również używany do określania stałych wartości lub do wywoływania funkcji. Znajdziesz tę właściwość w liniach danych mapowania formatu typu NAV oraz w liniach danych mapowania eksportu. Ale ta właściwość jest również dostępna dla parametrów funkcji niestandardowych i do rozszerzania komunikatów o błędach. Jest więcej opcji, które omówimy nieco później w tej sekcji.
Aby zapisać dane do pól tabeli jest jeszcze jedna właściwość o nazwie DestExpr (wyrażenie docelowe). Ta właściwość pozwala również na sprawdzenie danych w stosunku do określonego filtra, zamiast zapisywać je w pamięci. Za chwilę przejdziemy do szczegółów. Ważne jest, aby wiedzieć, że można zapisać dane w dowolnym polu instancji tabeli, nawet jeśli Mode tabeli jest ustawiony na Read. Pisanie do tabeli w trybie odczytu wywoła logikę walidacji NAV, ale nie modyfikujemy rekordu. Na naszych tabelach buforowych możesz użyć tego do przechowywania wartości przez określony czas w mapowaniu. W innych tabelach będzie to zależało od logiki walidacji, czy bezpiecznie jest używać tabeli w trybie odczytu do tymczasowego przechowywania danych.
Nieruchomość SourceExpr Property
Typ źródła określa rodzaj danych, które mają być odczytywane. Dozwolone wartości to:
Stała wartość, która jest wprowadzana do mapowania.
Pole z instancji tabeli, które jest jedną z nadrzędnych linii mapowania tej linii mapowania. W przypadku, gdy chcesz przeczytać pole sumy, musisz być poza instancją tabeli, ale pod nią.
Chcesz odczytać dane z funkcji wbudowanej lub niestandardowej.
Ta nieruchomość została dodana w Anveo EDI Connect 4.00.
Ta właściwość jest dostępna tylko wtedy, gdy SrcType jest ustawiony na Const. Właściwość ta określa typ danych wartości stałej. Należy wybrać typ danych, aby zapobiec błędom wynikającym z różnych lokalizacji używanych podczas konfiguracji i działania. W starszej wersji trzeba było upewnić się, że lokalizacja podczas konfiguracji była taka sama jak podczas uruchomienia, aby zapobiec, na przykład, aby liczby były interpretowane inaczej.
Możesz wybrać jeden z następujących typów danych:
Stała wartość tekstowa.
Tekst, który może zawierać znaki specjalne, takie jak zwrot karetki<CR> Istnieje lista wszystkich obsługiwanych znaków specjalnych.
Wartość boolean, jak True or False.
Wartość opcji. Należy użyć wartości całkowitej opcji w bazie danych.
Wartość całkowita (32 bity).
Wartość dziesiętna.
Duża wartość całkowita (64 bity).
Wartość zawiera czas trwania.
Wartość jest wartością kodu Dynamics (tylko duże litery, nie pozwala na wszystkie znaki).
Reprezentuje wartość daty.
Reprezentuje wartość czasu.
Reprezentuje łączną wartość daty i czasu.
Formuła daty.
Globalny unikalny identyfikator (GUID).
Ta właściwość jest dostępna tylko wtedy, gdy SrcType jest ustawiony na Const. Reprezentuje stałą wartość, którą chcesz użyć.
Ta właściwość jest dostępna tylko wtedy, gdy SrcType jest ustawiony na Function. Za pomocą AssistEdit można określić obiekt i funkcję. Jeśli wymagane parametry funkcji, będą to również parametry SourceExpr, ale nie obsługują one zagnieżdżania funkcji.
Ta właściwość jest dostępna tylko wtedy, gdy SrcType jest ustawiony na Field. Wybierz instancję tabeli, z której chcesz odczytać dane. Tabela musi być jednym z rodziców obecnej linii mapowania, aby odczytać dane z jednego rekordu. Jeśli chcesz przeczytać pola sum, musisz być pod instancją tabelaryczną, ale nie dzieckiem tej instancji.
Ta właściwość jest dostępna tylko wtedy, gdy SrcType jest ustawiony na Field. Wybiera kolumnę / pole, z którego chcesz przeczytać.
Można określić tłumaczenie wartości, aby zmienić wybraną wartość na inną wartość docelową. Istnieje sekcja dotycząca tłumaczeń wartości konfiguracyjnych.
Kod tłumaczenia wartości, które należy zastosować.
Co się stanie, jeśli wartość nie zostanie znaleziona w translacji wartości.
Moduł nie robi nic, jeśli brakuje tłumaczenia. Wykorzystuje oryginalną wartość bez tłumaczenia.
Wyjście pustej wartości.
Dodaj wpis w dzienniku informacyjnym i użyj oryginalnej wartości.
Dodaj wpis w dzienniku ostrzeżeń i użyj oryginalnej wartości.
Natychmiast przerwij mapowanie i zanotuj błąd.
Utwórz wpis w dzienniku błędów i nie kończ mapowania, ale kontynuuj przetwarzanie, aby znaleźć również inne błędy.
Ta właściwość jest domyślnie ukryta. Możesz określić listę dozwolonych wartości i tworzyć błędy, jeśli spróbujesz wyeksportować inną wartość.
Lista dopuszczalnych wartości. Możesz użyć AssistEdit lub wprowadzić terminy oddzielone przecinkami.
Co się stanie, jeśli wartość źródłowa nie znajduje się na liście wartości dozwolonych.
Nie należy używać zaawansowanej walidacji i ignorować żadnych wartości z listy.
Utwórz wpis do rejestru informacji.
Utwórz wpis w dzienniku ostrzeżeń.
Natychmiast zerwij mapowanie za pomocą komunikatu o błędzie.
Zwraca błąd podczas wykonywania mapowania, ale kontynuuje proces mapowania, aby znaleźć również inne błędy.
DestExpr
Wybierz cel dla wartości. Obowiązują następujące wartości:
Puste oznacza, że wartość jest ignorowana. Można tego użyć, aby pominąć pola w imporcie lub, na przykład, zignorować wartość zwrotną funkcji.
Wartość należy sprawdzić w odniesieniu do filtra Dynamics. Jeśli filtr nie jest zgodny, wartość nie jest akceptowana. W zależności od konwertera spowoduje to wyświetlenie komunikatu o błędzie lub pominięcie części mapowania. Dowiesz się więcej na temat stosowania filtrów dla konkretnego konwertera w dokumentacji każdego konwertera.
Wartość powinna być zapisana w polu instancji tabeli w tym mapowaniu.
Ta właściwość jest dostępna tylko wtedy, gdy DestType jest ustawiony na Filter. Filtr dynamiki, z którym porównywana jest wartość, jest sprawdzany. Wartość będzie interpretowana jako wartość tekstowa dla zastosowania filtra. Typowym przykładem może być „BY|IV”, aby umożliwić stosowanie wartości „BY” i „IV”.
Ta właściwość jest dostępna tylko wtedy, gdy parametr DestType jest ustawiony na Field. Wybiera instancję tabeli, do której ma być zapisana wartość. Przykład tabeli musi być jednym z rodziców obecnej linii odwzorowującej.
Ta właściwość jest dostępna tylko wtedy, gdy parametr DestType jest ustawiony na Field. Nazwa pola/nazwa kolumny pola docelowego w tabeli.
Ta właściwość jest dostępna tylko wtedy, gdy parametr DestType jest ustawiony na Field. Ta nieruchomość jest dostępna tylko jako nieruchomość zaawansowana. Ustawienie tej właściwości na False spowoduje pominięcie wyzwalacza walidacji Microsoft Dynamics NAV 2015 dla tego pola.
Bądź bardzo ostrożny używając False. Weryfikację należy dezaktywować tylko po konsultacji z programistą. Nie powinieneś go wyłączać w żadnym ze standardowych stołów Dynamics, chyba że naprawdę wiesz, co robisz. Możesz sprawić, że Microsoft Dynamics NAV 2015 stanie się bezużyteczny, pomijając kod weryfikacyjny.
Ta właściwość jest dostępna tylko wtedy, gdy DestType jest ustawiony na Field i używasz konwertera NAV. Więcej informacji można znaleźć na stronie konwertera.