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.

Uwaga

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:

  1. Wybierz kolejno opcje Administracja > Databridge > Definicje procesu KG.
  2. Kliknij przycisk Nowy rekord.
  3. 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'.

    Uwaga

    W 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;
    
  4. Kliknij przycisk Zapisz rekord.