External Integration Transactions

Now, the system is ready to receive financial integration transactions from an external source.

One of the most obvious methods to import external transactions into the Financials integration transactions tables, is to make use of an exchange scheme, as was done for previous LN versions.

The following sections list the requirements for the logged transactions.

These database tables are involved:

  • Integration transactions (tfgld482)
  • Logged elements (tfgld481)
  • Unmapped/unposted integration transactions (tfgld487)
  • GL code by integration transaction (tfgld486), if GL codes are involved

Integration transactions must be logged in pairs (in tfgld482): a credit transaction and an accompanying debit transaction. Both transactions will be stored in the same financial company, which is the financial company of the credit transaction (this is important for intercompany postings). Both transactions must be assigned the same GUID (see below). The transactions will refer to the same unmapped/unposted data in (tfgld487).

Each integration transaction can have a set of related logged elements (tfgld481). If the integration transaction has a GL code attached, an additional row must be stored in (tfgld486).

If a GL code is used, the mapping scheme will be bypassed in determining ledger account and dimensions, and the transactions will be posted to the ledger account and dimensions defined for the GL code.

Integration transactions (tfgld482)

This table contains the individual integration transactions.

Note

Related debit and credit transactions must have the same GUID assigned.

FieldDescriptionFormatDomainMandatory *Comments
guidglobally unique identifierstr(22)tcguidYesmust be the same for related debit and credit transactions; to be assigned using function uuid.generate$()
dbcrdebit/credit indicatorenumtfgld.dbcrYes
ocmpsource logistic companyint(3)tcncmpYeslogistic company in which the business object resides; must be the same for related debit and credit transactions
idtcintegration document typestr(8)tcidtyYesmust be the same for related debit and credit transactions; refers to tfgld457.idtc
trdttransaction dateutc datetcdateYesdate on which, among others, the document date will be based; must be the same for related debit and credit transactions
tcmplogistic companyint(3)tcncmpYessame as source logistic company (tfgld482.ocmp)
secdsort elementstr(12)tfgld.elcdNosoft reference to tfgld456.elcd; must only be filled if the sort element functionality is used
sevasort element valuestr(50)tcelvaNobelongs to tfgld482.secd
rbonbusiness objectstr(17)tcbonaYesmust be the same for related debit and credit transactions; refers to tfgld454.bona
rbidbusiness object IDstr(11)tcboidYesmust be the same for related debit and credit transactions; the ID of the business object, for example, the purchase order number in case of a purchase order
rponsort positionlong(8)tcsopoNomust be the same for related debit and credit transactions; used in indices for detailed sorting by business object (see indices tfgld482), among others, used in Integration Transactions (tfgld4582m000)
obrebusiness object referencestr(40)tcborfNomust be the same for related debit and credit transactions; extension of the business object ID, to specify more precisely what origin the transaction relates to; first part should be the same as tfgld482.rpon
buidbusiness object reference GUIDstr(22)tcguidNoleave empty: not used externally
bpidbusiness partnerstr(9)tccom.bpidNosoft reference to tccom100; business partner that should be logged with the transaction in the General Ledger
ttyptransaction typestr(3)tfgld.ttypNoleave empty; determined during posting
docndocument numberlong(8)tfgld.docnNoleave empty; determined during posting
btnobatch numberlong(6)tfgld.btnoNoleave empty; determined during posting
linoline numberlong(8)tfgld.linoNoleave empty; determined during posting
sinttransaction statusenumtfgld.intsYesmust be set to tfgld.ints.mapped if a GL code is involved, otherwise must be defaulted to tfgld.ints.logged
crdtcreation dateutc datetcdateYesmust be the same for related debit and credit transactions; the date of the actual creation of the integration transaction
crususer (creation)str(16)tfgld.userYesuser ID (logname$) of the user who logs the transaction; must be the same for related debit and credit transactions
usgrfinancial user groupstr(6)tfgld.usgrNorefers to tfgld435; to be retrieved from tfgld436 for tfgld482.crus; however, does not need to exist
poususer (posting)str(16)tfgld.userNoleave empty; determined during posting
podtposting dateutc datetcdateNoleave empty; determined during posting
prinprintedenumtcyesnoYesvalue: tcyesno.no
glcuGL code usedenumtcyesnoYesvalue must be set to tcyesno.yes if a GL code is used, otherwise tcyesno.no
fcomfinancial companyint(3)tcncmpYesfinancial company to whose General Ledger the transaction must be posted; can differ between the credit transaction and the debit transaction it belongs to; for the credit transaction, it must always be the financial company in which the integration transactions are logged (the physical financial company)
leacledger accountstr(12)tfgld.leacNomust be empty if no GL code is used; otherwise, it must be filled by retrieval from tfgld475
dim1dimension 1str(6)tfgld.dimxNosee tfgld482.leac
dim2dimension 2str(6)tfgld.dimxNosee tfgld482.leac
dim3dimension 3str(6)tfgld.dimxNosee tfgld482.leac
dim4dimension 4str(6)tfgld.dimxNosee tfgld482.leac
dim5dimension 5str(6)tfgld.dimxNosee tfgld482.leac
amnttransaction amountdoubletfgld.amntYesmust be the same for related debit and credit transactions; must be properly rounded; zero can be a valid value
ccurtransaction currency codestr(3)tcccurYesmust be the same for related debit and credit transactions; refers to tcmcs002
ratdcurrency rate dateutc datetcdateYesdate for which the currency rates towards the home currencies have been retrieved; probably equal to tfgld482.trdt
rtypcurrency rate typestr(3)tcrtypYesrate type used in the home amounts calculation; will probably be equal to the (financial) company’s internal rate type (tcemm170.exeu)
ratecurrency ratesdouble (array)tcratcYesrates towards the transaction’s financial company’s home currencies; can be retrieved using the standard tcemm.dll5000/5010 functions
ratfcurrency rate factorslong(6) (array)tcratfYesrate factors towards the transaction’s financial company’s home currencies; can be retrieved using the standard tcemm.dll5000/5010 functions
eibcexpress in base currency indicatorsenum (array)tcyesnoYesExpress in Base Currency indicators towards the transaction’s financial company’s home currencies; can be retrieved using the standard tcemm.dll5000/5010 functions
amthamounts in home currencydouble (array)tfgld.amntYesamounts in the transaction’s financial company’s home currencies; can be calculated using the standard tcemm.dll5000/5010 functions; must be properly rounded after calculation
cunithe quantity’s unitstr(3)tccuniNorefers to tcmcs001; must be filled if a quantity is logged
nuniquantitydoubletfgld.quanNobelongs to tfgld482.cuni
fyerfinancial yearint(4)tfgld.yearYessee tfgld482.fprd
fprdfinancial periodint(2)tfgld.prodYesmust be filled, and must exist in tfgld005; can be determined based on tfgld482.trdt (transaction date and financial period should preferably be in line)
ryerreporting yearint(4)tfgld.yearNomandatory if reporting periods are used; see tfgld482.fyer
rprdreporting periodint(2)tfgld.prodNomandatory if reporting periods are used; see tfgld482.fprd
tyertax yearint(4)tfgld.yearYessee tfgld482.fyer
tprdtax periodint(2)tfgld.prodYessee tfgld482.fprd
mscdused mapping scheme codestr(6)tfgld.mscdNoleave empty; determined during mapping
msvsused mapping scheme versionlong(5)tfgld.msvsNoleave empty; determined during mapping

 

* For external data, this setting may be different from the table field’s property.

Logged elements (tfgld481)

This table contains the logged elements by integration transaction, which elements will be used for mapping of the integration transaction.

FieldDescriptionFormatDomainMandatory *Comments
guidglobally unique identifierstr(22)tcguidYessoft reference to tfgld482.guid
dbcrdebit/credit indicatorenumtfgld.dbcrYessoft reference to tfgld482.dbcr
seqnsequence numberint(4)tcponoYessequence number to extend the primary key; initial 30 elements must be stored in row with sequence number 1, next 30 elements in row number 2, and so on.
elcdelement codesstr(12) (array)tfgld.elcdYeseach element (softly) refers to tfgld456.elcd; elements with empty values do not need to be logged
elvaelement valuesstr(50)tcelvaYesbelongs to tfgld481.elcd

 

* For external data, this setting may be different from the table field’s property.

Unmapped/unposted integration transactions (tfgld487)

This table contains the integration transactions pairs, and will be used during mapping and posting. This table is a parent table of tfgld482.

FieldDescriptionFormatDomainMandatory *Comments
guidglobally unique identifierstr(22)tcguidYes= tfgld482.guid
sinttransaction statusenumtfgld.intsYesvalue: tfgld.ints.logged
ocmpsource logistic companyint(3)tcncmpYes= tfgld482.ocmp
fcomcredit financial companyint(3)tcncmpYesthe credit transaction’s financial company
rbonbusiness objectstr(17)tcbonaYes= tfgld482.rbon
idtcintegration document typestr(8)tcidtyYes= tfgld482.idtc
trdttransaction dateutc datetcdateYes= tfgld482.trdt
usgrfinancial user groupstr(6)tfgld.usgrNo= tfgld482.usgr
crdtcreation dateutc datetcdateYes= tfgld482.crdt

 

* For external data, this setting may be different from the table field’s property.

GL code by integration transaction (tfgld486)

This table shows the GL code that was used in an integration transaction.

FieldDescriptionFormatDomainMandatory *Comments
guidglobally unique identifierstr(22)tcguidYes= tfgld482.guid
dbcrdebit/credit indicatorenumtfgld.dbcrYes= tfgld482.dbcr
fcomfinancial companyint(3)tcncmpYes= tfgld482.fcom; soft reference to tfgld475.fcmp
glcoGL codestr(50)tcglcoYessoft reference to tfgld475.glcd

 

* For external data, this setting may be different from the table field’s property.