Definiera huvudbokprocesser
Definiera parametrar som aktiverar processer i huvudboken för att dynamiskt konstruera ett SQL select-uttryck för överföring av transaktionsuppgifter från Infor EAM till ett ERP-program. Med dynamiskt SQL kan du konfigurera val och bearbetning av Infor EAM-transaktioner baserat på din organisations behov.
Exemplen i detta kapitel använder notationer som är specifika för Oracle-databasen och PL/SQL. Om din EAM-databas är Microsoft SQL Server, använd MS SQL Server-motsvarigheten.
Så här definierar du huvudbokprocesser:
- Välj Administration > Databridge > Processdefinitioner för huvudbok.
- Klicka på Ny post.
-
Ange följande information:
- Definition av HB-process
- Ange en unik kod som identifierar HB-processdefinitionen och ange sedan en beskrivning i det angränsande fältet, exempelvis DS ISSUES.Obs!
Den process som du skapar ska avgöra vilken unika kod du anger. Vanligtvis hänvisar den unika koden till kombinationen med process och grupp. Exempel: Om du skapar ett uttag från lagerställeprocess för GVL-lagret, ange ISSUE_GVL
- Rad-ID
- Ange unik postidentifierare för raden i källans databastabell för huvudbokprocessen t.ex. r5translines.ROWID.Obs!
Du måste använda tokenradidentifieraren ROWID för att identifiera källraden i databastabellen.
- Schemaläggningsgrupp
- Ange tabellkolumnnamnet som identifierar grupperingsvärdet för huvudbokprocessen t.ex. TRL_TYPE.Obs!
Schemaläggningsgrupper delar ofta relevanta vanliga värden som används vid skapande av WHERE-uttrycket för processdefinitionen. Schemaläggningsgrupp används i formuläret Huvudboksreferenser för att upprätta ändringarna i finansapplikationen inom gruppen.
- Kategori för journalpost
- Ange unikt värde som identifierar ERP-kategori för journalpost för matningsreferensgrupp t.ex. trl_JECATEGORY. Tala med din organisations ekonomichef för att få korrekt värde.
- Källa för journalpost
- Ange unikt värde som identifierar ERP-källa för journalpost för matningsreferensgruppen t.ex. trl_JESOURCE. Tala med din organisations ekonomichef för att få korrekt värde.
- Sammanfattning
- Välj detta om du vill att en sammanfattning för huvudbokprocessen ska inkluderas.
- ID för samlad bokföring
- Ange den kod som identifierar samlad bokföring för ERP-huvudbok för matningsreferensgruppen, t.ex. tra_org. Tala med din organisations ekonomichef så att du får rätt kod. Om du använder flera uppsättningar av böcker måste det finnas en relation mellan processdefinitionen och den referensgrupp som klassificerar den korrekta transaktionsuppsättningen.
- Datum
- Ange datum som ska användas för journalposter i huvudboken. Du kan ange antingen datum för ursprunglig transaktion t.ex. TRL_DATE, datum för transaktionsöverföringen t.ex. SYSDATE, eller det datum som identifierar slutet på den ekonomiska perioden för transaktionen.
- Belopp
- Ange beräkningen för transaktionens monetära värde, exempelvis TRL_PRICE* TRL_QTY eller TRL_PRICE*TRL_QTY*1.15 om en overheadfaktor används i kostnadsberäkningen.Obs!
Använd positiva och negativa värden efter behov.
- Segment
- Ange kontokodsegment för journaluppgifterna. Om du har flera aktiverade segment i ERP-bokföringsdefinitionen måste du ange alla segmenten i detta fält exempelvis ACD_SEGMENT1, ACD_SEGMENT2, ACD_SEGMENT3, ACD_SEGMENT4,ACD_SEGMENT5, ACD_SEGMENT6,ACD_SEGMENT7.Obs!
Om du anger mer än ett segment ska du inte inkludera konjunktionsuttryck som ”och”.
- FROM-uttryck
- Ange en eller flera Infor EAM-källtabeller som krävs för att uppfylla alla processdefinitionsbegränsningar. Du måste ange minst tabellen R5ACCOUNTDETAIL och en transaktionstabell exempelvis: r5translines, r5accountdetail, r5transactions.Obs!
Använd inte ordet FROM i texten för FROM-uttryck.
- WHERE-uttryck
- Ange WHERE-villkorsklausulen. WHERE-villkorsklausulen är beroende av processdefinitionen. Du måste ange begränsningar för sammanfogningsuttrycket (JOIN) för alla tabeller som visas och för värdena för XXX_GLTRANSFER och XXX_GLTRANSFERFLAG som används för att förhindra att poster lämnas in mer än en gång exempelvis:
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
Kolumnerna XXX_GLTRANSFER och XXX_GRTRANSFERFLAG uppdateras genom att använda Uttryck för källuppdatering. Därför ska du begränsa användningen av Uttryck för källuppdatering inom klausulen för WHERE-uttrycket. Exempel: För ett grundläggande WHERE-uttryck för en uttagsprocess som kräver R5TRANSLINES och R5ACCOUNTDETAIL skulle du ange trl_acd = acd-kod och nvl(trl_gltransferflag,'+') != '+' och trl_rtype = 'I'.
Obs!Använd inte ett semikolon som avslutare och inkludera inte ordet WHERE i texten för WHERE-uttryck.
- Uttryck för källuppdatering
- Ange ett SQL-uttryck för att uppdatera raden i transaktionskälltabellen.
Detta uttryck flaggar en transaktionspost som bearbetad så att den inte bearbetas igen. Du måste inkludera token :ROWID eller :rowid i uttrycket.
Se följande exempel på ett uttryck för källuppdatering som flaggar en transaktionspost som har bearbetats så att det inte bearbetas igen.
UPDATE r5translines SET trl_gltransferflag = '+', trl_gltransfer = sysdate WHERE rowid = :rowid
- Uttryck för måluppdatering
- Ange ett SQL-uttryck för att uppdatera tabellen R5GLINTERFACE för att innehålla referensinformation som krävs i journalimporten. Uttryck för måluppdatering fyller i referensfält i tabellen R5GLINTERFACE med anpassad information som krävs för installationen. Exempel: Inkludera lagerkod, beskrivning och arbetsordernummer för en lageruttagstransaktion i ett referensfält. Denna referensinformation inkluderas sedan i journalposten. Se följande exempel på en destinations uppdateringsuttryck som använder två token. En är :transid som refererar lämplig rad i R5GLINTERFACE. Det andra är :rowid som refererar radidentifieraren för transaktionskällan. Transaktionskällans radidentifierare används för att hämta ytterligare transaktionsreferensinformation.
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;
- Klicka på Spara post.