Definiowanie procesów księgi głównej
Zdefiniuj parametry, aby umożliwić procesom księgi głównej dynamiczne tworzenie instrukcji SQL select w celu przesyłania informacji o transakcji z systemu Infor EAM do aplikacji ERP. Dynamiczne generowanie instrukcji SQL umożliwia wybór oraz przetwarzanie transakcji Infor EAM na podstawie konkretnych potrzeb Twojej organizacji.
Przykłady w tym rozdziale są oparte na powiadomieniach właściwych dla bazy danych Oracle i języka PL/SQL. Jeśli bazą danych EAM, z której korzystasz, jest program Microsoft SQL Server, użyj odpowiednika dla programu MS SQL Server.
Aby zdefiniować procesy księgi głównej:
- Wybierz kolejno opcje Administracja > Databridge > Definicje procesu KG.
- Kliknij przycisk Nowy rekord.
-
Określ następujące informacje:
- Definicja procesu KG
- Określ unikalny kod identyfikujący definicję procesu KG, a następnie wprowadź opis w sąsiednim polu, np. DS ISSUES.Uwaga
Tworzony proces powinien określać unikalny kod, który wprowadzasz. Zwykle ten unikalny kod odwołuje się do kombinacji procesu i grupy. Jeśli na przykład tworzysz wydanie z procesu magazynu dla magazynu GVL, wprowadź ISSUE_GVL.
- Nr wiersza
- Wprowadź unikalny identyfikator rekordu dla wiersza, który istnieje w tabeli źródłowej bazy danych dla procesu księgi głównej — na przykład r5translines.ROWID.Uwaga
W celu oznaczenia wiersza źródłowego w tabeli bazy danych musisz użyć identyfikatora ROWID wiersza tokenu.
- Grupa harmonogramowania
- Podaj nazwę kolumny tabeli, która będzie identyfikować wartość grupowania dla procesu księgi głównej — na przykład TRL_TYPE.Uwaga
Grupy harmonogramowania mają często jednakowe istotne wartości, które są używane do tworzenia instrukcji Where na potrzeby definicji procesu. Grupa harmonogramowania jest także używana na formatce Referencje Księgi Głównej w celu określenia zmiany aplikacji finansowej w grupie.
- Kategoria wpisu dziennika
- Podaj unikalną wartość identyfikującą kategorię wpisu dziennika ERP dla grupy referencyjnej źródła — np. trl_JECATEGORY. Poprawną wartość możesz uzyskać od kierownika finansowego w Twojej organizacji.
- Źródło wpisu dziennika
- Podaj unikalną wartość identyfikującą źródło wpisu dziennika ERP dla grupy referencyjnej źródła — np. trl_JESOURCE. Poprawną wartość możesz uzyskać od kierownika finansowego w Twojej organizacji.
- Podsumowanie
- Wybierz tę opcję, aby uwzględnić podsumowanie procesu księgi głównej.
- ID zestawu ksiąg
- Podaj kod identyfikujący zestaw ksiąg księgi głównej ERP dla grupy referencyjnej źródła — np. tra_org. Poprawny kod możesz uzyskać od kierownika finansowego w Twojej organizacji. Jeśli używasz wielu zestawów ksiąg, musi istnieć relacja między definicją procesu a grupą referencyjną, która klasyfikuje poprawny zestaw transakcji.
- Data
- Określ datę, która będzie stosowana dla wpisów dziennika księgi głównej. Możesz wprowadzić datę transakcji oryginalnej, np. TRL_DATE, datę przesłania transakcji, np. SYSDATE, lub datę identyfikującą koniec okresu finansowego dla transakcji.
- Kwota
- Podaj obliczenie wartości kwotowej transakcji — np. TRL_PRICE* TRL_QTY lub TRL_PRICE*TRL_QTY*1.15, jeśli w określaniu kosztów używany jest współczynnik kosztów ogólnych.Uwaga
Odpowiednio do potrzeb użyj wartości dodatniej i ujemnej.
- Segmenty
- Podaj segmenty kodu konta dla wpisów dziennika. Jeśli w definicji rachunkowości ERP aktywowano wiele segmentów, wówczas do tego pola należy wprowadzić wszystkie segmenty — np. ACD_SEGMENT1, ACD_SEGMENT2, ACD_SEGMENT3, ACD_SEGMENT4,ACD_SEGMENT5, ACD_SEGMENT6, ACD_SEGMENT7.Uwaga
W przypadku wprowadzania więcej niż jednego segmentu nie dodawaj instrukcji łączących, takich jak "and".
- Instrukcja From
- Określ tabele źródłowe Infor EAM wymagane do spełnienia wszystkich ograniczeń definicji procesu. Należy wprowadzić co najmniej tabelę R5ACCOUNTDETAIL i jedną tabelę transakcji, np. r5translines, r5accountdetail, r5transactions.Uwaga
W tekście instrukcji From nie umieszczaj słowa FROM.
- Instrukcja Where
- Podaj klauzulę warunku "where". Klauzula warunku "where" jest zależna od definicji procesu. Należy wprowadzić ograniczenia dla instrukcji łączenia wszystkich tabel z listy, a także wartości XXX_GLTRANSFER i XXX_GLTRANSFERFLAG, które są używane, aby uniemożliwić wprowadzanie rekordów więcej niż raz, np.:
trl_acd = acd_code AND NVL(trl_gltransferflag, '-' ) = '-' AND tra_code = trl_trans AND tra_rstatus = 'A' and tra_type = 'I' and trl_type = 'I' and trl_event is not null and trl_QTY >0
Kolumny XXX_GLTRANSFER i XXX_GRTRANSFERFLAG są aktualizowane przy użyciu instrukcji aktualizacji źródła. Z tego względu należy ograniczyć użycie instrukcji aktualizacji źródła w klauzuli warunku instrukcji Where. Na przykład na potrzeby prostej instrukcji Where dla procesu wydania, który wymaga R5TRANSLINES i R5ACCOUNTDETAIL, należy wprowadzić enter trl_acd = acd_code and nvl(trl_gltransferflag,'+') != '+' and trl_rtype = 'I'.
UwagaW tekście instrukcji Where nie używaj średnika jako elementu końcowego ani nie umieszczaj w niej słowa WHERE.
- Instrukcja aktualizacji źródła
- Wprowadź instrukcję SQL, aby zaktualizować wiersz w tabeli źródłowej transakcji.
Ta instrukcja oznacza rekord transakcji jako przetworzony, aby nie został przetworzony ponownie. W instrukcji należy umieścić token :ROWID lub :rowid.
Poniżej przedstawiono przykład instrukcji aktualizacji źródła, która oznacza rekord transakcji jako przetworzony, dzięki czemu nie jest przetwarzany ponownie.
UPDATE r5translines SET trl_gltransferflag = '+', trl_gltransfer = sysdate WHERE rowid = :rowid
- Doc. instrukcje aktualizacji
- Wprowadź instrukcję SQL w celu aktualizacji tabeli R5GLINTERFACE w taki sposób, aby zawierała informacje odniesienia wymagane przy imporcie dziennika. Docelowa instrukcja aktualizacji wypełnia pola odniesienia w tabeli R5GLINTERFACE, wprowadzając do nich niestandardowe informacje wymagane do instalacji. Na przykład w polu odniesienia podaj kod zapasów, opis oraz numer zlecenia pracy dla transakcji wydania magazynowego. Te informacje odniesienia zostaną następnie dołączone do wpisu dziennika. Zapoznaj się z poniższym przykładem docelowej instrukcji aktualizacji, w której użyto dwóch tokenów. Jednym z nich jest :transid i odnosi się do odpowiedniego wiersza w R5GLINTERFACE. Drugim jest :rowid i odnosi się do identyfikatora wiersza źródła transakcji. Identyfikator wiersza źródła transakcji jest używany w celu pobrania dodatkowych informacji odniesienia do transakcji.
Declare Cursor C1 is SELECT substr(v.PRV_VALUE,1,3) company, substr(v.PRV_VALUE,5,4) GLS, substr(v.PRV_VALUE,10,5) DEP, substr(v.PRV_VALUE,16,6) EXP, substr(v.PRV_VALUE,23,4) PL , substr(v.PRV_VALUE,28,3) IC, substr(v.PRV_VALUE,32,6) FU from R5TRANSLINES L, R5PROPERTYVALUES V where l.rowid = :rowid and v.prv_property (+) = 'INVOFF' and v.PRV_RENTITY (+) = 'STOR' and v.PRV_CODE (+) = l.trl_store; BEGIN FOR r IN C1 LOOP UPDATE r5glinterface SET gli_segment1 = r.company, gli_segment2 = r.GLS, gli_segment3 = r.DEP, gli_segment4 = r.EXP WHERE gli_transid = :transid and gli_segment2 = '****' ; END LOOP; end;
- Kliknij przycisk Zapisz rekord.