Galioja nuo 122.0000+DI Rivile GAMA versijos.
SISTEMOS INIT
Galimybė įsiterpti kiekvienoje importuojamoje eilutėje:
titi_pagr.SS_MOKEJIMO_ISRASU_IMPORTAS_JSON_DET="MANO_IMP_PROGRAMA()"
Galimybė įsiterpti prieš kiekvieną importuojamą banko sąskaitą:
titi_pagr.SS_MOKEJIMO_ISRASU_IMPORTAS_JSON="MANO_EIP_PROGRAMA()"
MANO_IMP_PROGRAMA() - vartotojo padaryta programa, kuri gali suformuoti bet kurį lentelės I53_ISR EIP importo lauką.
Pasinaudodama importuojamo dokumento mokėjimo paskirtimi, programa gali suformuoti sudengiamus dokumentus.
Programoje galima pasinaudoti sekančiais kintamaisiais:
* m.hand2 - EIP formavimo adresas
* TRANSACTIONS.TransactionId C(40) - Unikalus banko operacijos numeris
* TRANSACTIONS.BookingDate C(27) - Operacijos data (formatas: YYYY.MM.DD)
* TRANSACTIONS.ValueDate C(27) - Operacijos užsakymo data (formatas: YYYY.MM.DD)
* TRANSACTIONS.Amount N(9,2) - Suma
* TRANSACTIONS.CurrencyCode C(12) - Valiutos kodas
* TRANSACTIONS.DESCRIPTION C(250) - Mokėjimo paskirtis
* TRANSACTIONS.Category C(40) - Kategorija
* TRANSACTIONS.CreditorAccount C(40) - Mokėtojo banko sąskaita
* TRANSACTIONS.CreditorName C(200) - Mokėtojo pavadinimas
* TRANSACTIONS.DebtorAccount C(40) - Gavėjo banko sąskaita
* TRANSACTIONS.DebtorName C(200) - Gavėjo pavadinimas
* TRANSACTIONS.TransactionType C(2) - Operacijos tipas (1-įplaukos; 2-išmokos)
* TRANSACTIONS.CreditorId C(13) - Siuntėjo įmonės kodas
* TRANSACTIONS.DebtorId C(13) - Gavėjo įmonės kodas
* TRANSACTIONS.PaymentCode C(40) - Įmokos kodas
* m.pcId – Unikalus operacijos numeris, pagal kurį atliekamas sutikrinimas ar operacija jau importuota
* m.pcDokumentoId – Dokumento numeris
* m.pcKodas_ss - Buhalterinės mokėjimo sąskaitos kodas
* m.pcMoketojas - Operacijos rūšis (1-dokumentai; 2-sąskaitos)
* m.pcKodas_ss_s - Buhalterinės sudengimo sąskaitos kodas
* m.pcKodas_ks - Kliento kodas
* m.pcPastabos - Suformuotos pastabos
Pavyzdys. Programa užpildo kliento kodą ir sąskaitos kodą reikšmėmis, jeigu jų nepavyko užpildyti pagrindinei programai, bei suformuoja mokėjimo sudengiamus dokumentus:
PROCEDURE MANO_IMP_PROGRAMA
if empty(m.pcKodas_ss)
fputs(hand2,'<I53_KODAS_SS>'+'279'+'</I53_KODAS_SS>')
endif
if empty(m.pcKodas_ks)
fputs(hand2,'<I53_KODAS_KS>'+'K001'+'</I53_KODAS_KS>')
endif
fputs(hand2,'<K62>')
*- jei žinome konkrečią sudengiamo dokumento sumą
fputs(hand2,'<K62_DOK_NR>'+'DOK1'+'</K62_DOK_NR>')
fputs(hand2,'<K62_SUMA_VL>'+'100.00'+'</K62_SUMA_VL>')
fputs(hand2,'</K62>')
fputs(hand2,'<K62>')
*- jei sudengiama visa dokumento suma
fputs(hand2,'<K62_DOK_NR>'+'DOK1'+'</K62_DOK_NR>')
fputs(hand2,'</K62>')
return .t.
MANO_EIP_PROGRAMA() - vartotojo padaryta programa, kurioje yra matomi šie kintamieji:
* m.pcFileJson - Originalus JSON failas iš kurio formuojamas EIP failas (failo adresas)
* m.pcFileEIP - Sugeneruotas EIP failas (failo adresas)
Pavyzdys. Norint sustoti, kad pasiimtume originalų JSON failą iš kurio vykdomas importas, užprogramuojama:
PROCEDURE MANO_EIP_PROGRAMA
=f_info(m.pcFileJson,.T.)
return .T.