Replicare:Replicare factura client cap si poz
Revision as of 16:49, 2 March 2022 by Gheorghe Minca (talk | contribs)
- Administrare
- Interfațare
- Replicari sincrone / Replicari asincrone
- Replicare factura client cap si poz
- Replicari sincrone / Replicari asincrone
- Interfațare
Xml cu explicatii
* Elementele marcate cu acest semn sunt obligatorii. Unele elemente sunt obligatorii intr-un anumit context. Urmariti explicatiile.
<root>
<docvanzari>
<nrcrt/> * - daca xml-ul contine mai multe documente acest element este obligatoriu. Valoarea se incrementeaza pentru fiecare document.
<!--identificare companie-->
<codfirma/> - cod firma din nomenclatorul de puncte de lucru al companiei. Daca elementele codfirma si coddivizie nu exista in xml se insereaza documentul pe punctul de lucru folosit la apelarea replicarii.
<coddivizie/> - cod divizie din nomenclatorul de divizii
<!--identificare client-->
<modverificarepartener/> - daca se completeaza cu valoare 1 si codul fiscal este completat in xml nu se cauta dupa denumire
<clientid/> * - clientul se determina in urmatoarea ordine a elementelor din xml: clientid, cui, codclient, client
<client/> * - denumirea clientului
<cui/> * - codul fiscal al clientului
<codclient/> * - codul clientului din nomenclatorul de clienti
<!--informatii inserare/actualizare client-->
<insereazapartener/> - daca se completeaza cu valoare 1 si nu se determina partenerul dupa criteriile mentionate, se insereaza partenerul in nomenclator
<actualizareinfopartener/> - daca se completeaza cu valoarea 1 si partenerul exista deja in sistem se vor actualiza urmatoarele categorii de informatii: tara, judet, localitate, strada, numar strada, atribut fiscal, numar de inregistrare la Registrul Comertului, cod postal, denumire partener. Aceste categorii de informatii se vor actualiza doar daca exista elementul aferent in xml. Daca un element lipseste din xml nu se actualizeaza acea informatie.
<atributfiscal/>
<contareclient/>
<tipclient/> - denumirea tipului de client
<tippartener/> - denumirea tipului partener
<regcomclient/>
<codtaraclient/> - codul tarii din nomenclatorul de tari
<codjudetclient/> - codul judetului din nomenclatorul de judete. Acest element este folosit la identificarea judetului.
<localitateclient/> - denumirea localitatii din nomenclatorul de localitati
<stradaclient/>
<nrstradaclient/>
<codpostalclient/>
<denumirejudetclient/> - denumirea judetului care se va insera in nomenclatorul de judete daca nu a fost identificat dupa elementul codjudetclient si daca elementul insereazajudetclient are valoarea 1.
<insereazajudetclient/> - daca se completeaza cu valoarea 1 si nu de identifica judetul dupa elementul codjudetclient se insereaza in nomenclatorul de judete
<insereazalocalitateclient/> - daca se completeaza cu valoarea 1 si nu de identifica localitatea dupa elementul localitateclient se insereaza in nomenclatorul de localitati
<!--informatii specifice documentului de inserat-->
<validare/> - se completeaza cu valoarea 1 pentru a se insera documentul validat
<alocarenumar/> - se completeaza cu valoarea 1 pentru a se aloca numar din plaja la inserarea documentului validat. Cand se completeaza cu valoare 1 este necesar ca elementul validare sa aibe valoare 1 iar plaja sa se identifice dupa elementele serie, modselectieplaja.
<modselectieplaja/> - daca are valoare 1 si elementul serie nu este completat, se preia plaja setata pe tip doc.
<serie/> * - prefix din plajele configurate pe document
<numarfactura/> * - factura se insereaza cu numarul din acest element daca nu se completeaza o valoare in elementul serie si daca nu se completeaza 1 in elementul alocarenumar
<numarintern/>
<docid/> * - se completeaza cu id-ul aferent documentului de inserat din lista documentelor. Documentul se determina in ordinea urmatoare a elementelor in xml: docid, tipfacturadupataraclient.
<tipfacturadupataraclient/> * - se poate folosi pentru documentele Factura client si Factura client externa. Daca se completeaza cu valoare 1 iar elementul docid nu este completat se determina documentul ca fiind factura interna sau factura externa in functie de tara clientului.
<idexternimport/> - se poate completa cu un id dintr-un alt sistem.
<reintroducerepeidexternimport/> - daca se completeaza cu valoare 1, se cauta in sistem un document anulat pe acelasi client si se marcheaza documentul care se introduce ca fiind anulare cu reintroducere de la acel document anulat.
<data/> * - data documentului in format yyyyMMdd sau yyyy-MM-dd
<datascadenta/> - data scadenta a documentului in format yyyyMMdd sau yyyy-MM-dd
<tipdocid/> * - id-ul tipului de document. Element folosit in anumite fluxuri specifice unde se cunoaste aceasta valoare.
<tipdoc/> * - tipul documentului din lista tipurilor definite pe documentul care se va insera
<retur/> - daca se completeaza cu valoarea 1 se insereaza factura ca fiind document de retur.
<cuchitanta/> - daca se completeaza cu valoarea 1 si se completeaza elementul datachitanta se insereaza factura cu chitanta. Valoarea incasata este valoarea facturii.
<numarchitanta/>
<datachitanta/> - data chitantei in format yyyyMMdd sau yyyy-MM-dd
<codvaluta/> - codul valutei documentului din nomenclatorul de valute
<codvalutapartenerextern/> -- codul valutei documentului din nomenclatorul de valute. Se completeaza atunci cand tipul documentului nu este completat in elementul docid si se determina la inserare dupa elementul tipfacturadupataraclient. In acest caz, dupa determinarea documentului ca fiind factura client sau factura client externa, se stabileste valuta documentului ca fiind cea din elementul codvaluta (pentru document intern) ori cea din elementul codvalutapartenerextern (pentru document extern).
<cursvalutar/>
<folosestecursdatafactura/> - daca documentul este extern si nu se completeaza elementul cursvalutar se preia cursul zilei aferent datei documentului
<prelucratreplicare/>
<prelucrat/>
<modreplic/>
<capdocid/>
<proiectid/>
<taskid/>
<numarcontract/> - in contractele clientului se cauta acel contract care are valoarea din acest element intr-unul din campurile Numar, Numar contract client. Daca nu se completeaza valoarea 1 in elementul nuverificavalabilitatecontract se cauta doar contractele valabile la data documentului (dupa campurile Valabil de la si Valabil pana la de pe contract).
<nuverificavalabilitatecontract/> -- daca se completeaza valoarea 1 in acest element, cand se cauta contractul clientului dupa elementul numarcontract nu se verifica valabilitatea contractului la data documentului (dupa campurile Valabil de la si Valabil pana la de pe contract).
<dataraportare/> - informatie care ajunge in antetul facturii in campul Data raportare. Valoarea din acest camp se va completa in formatul yyyyMMdd sau yyyy-MM-dd
<tiplivrare/> - denumire tip livrare din lista de tipuri livrari
<tiplivraredincontract/> - daca se completeaza cu valoare 1 si s-a identificat contractul clientului dupa elementul numarcontract preia tipul de livrare setat pe acel contract.
<observatii/>
<faraimportconta/> -- daca se completeaza cu valoarea 1 nu se importa documentul in contabilitate
<ignoraeroareimportcontabilitate/>
<!--cont bancar client-->
<contbancarclient/>
<bancacontbancarclient/>
<valutacontbancarclient/>
<contbancarclientimplicit/>
<!--contact client-->
<contactadaugare/> - daca se completeaza cu valoarea 1 si nu se identifica contactul se va insera. Contactul se identifica in urmatoarea ordine: dupa elementele contactnume cu contactprenume si contactcod (daca se completeaza acest element in xml) sau dupa contactemail
<actualizareinfocontact/> - daca se completeaza cu valoarea 1 se actualizeaza urmatoarele informatii pe contact: nume contact, prenume contact, cod contact, email 1, email 2, telefon 1, telefon 2, adresa, observatii, titlu, functia, tara, judet, localitate
<contactnume/>
<contactprenume/>
<contactemail/>
<contactemail2/>
<contacttelefon/>
<contacttelefon2/>
<contactadresa/>
<contactobservatii/>
<contactcodtara/> - codul tarii din nomenclatorul de tari
<contactcodjudet/> - codul judetului din nomenclatorul de judete. Acest element este folosit la identificarea judetului.
<contactlocalitate/> - denumirea localitatii din nomenclatorul de localitati
<contactdenumirejudet/> - denumirea judetului care se va insera in nomenclatorul de judete daca nu a fost identificat dupa elementul contactcodjudet si daca elementul contactinsereazajudet are valoarea 1.
<contactinsereazajudet/> - daca se completeaza cu valoarea 1 si nu se identifica judetul dupa elementul contactcodjudet se va insera in lista de judete
<contactinsereazalocalitate/> - daca se completeaza cu valoarea 1 si nu se identifica localitatea dupa elementul contactlocalitate se va insera in lista de localitati
<contacttitlu/>
<contactfunctia/>
<contactcod/>
<contactimplicit/> - daca se completeaza cu valoarea 1 se seteaza contactul identificat/inserat ca fiind implicit
<!--liniile documentului-->
<pozitii>
<linie>
<!--identificare produs-->
<produsid/> * - id-ul produsului. Se completeaza pe anumite fluxuri unde se cunoaste aceasta informatie. Daca elementul produsid nu este completat, produsul se determina in urmoatoarea ordine a elementelor: dupa elementele codprodus si codprodusfabricant (daca ambele elemente sunt completate in xml), ulterior dupa codprodus apoi dupa produs
<codprodus/> - codul produsului din nomenclatorul de produse/servicii.
<codprodusfabricant/> * - cod produs fabricant din nomenclatorul de produse/servicii.
<produs/> * - denumire produsului/serviciului din nomenclatorul de produse/servicii.
<produsafisare/> - se completeaza cu denumirea care se doreste sa apara la printarea facturii. Daca nu se completeaza va aparea denumirea produsului din nomenclator.
<!--informatii inserare produs-->
<insereazaprodus/> - daca se completeaza valoarea 1 si nu s-a identificat produsul dupa criteriile mentionate se insereaza in nomenclatorul de produse
<tipitemprodus/> - se completeaza valoarea P pentru produs si S pentru serviciu
<umprodus/> - denumirea unitatii de masura
<tipprodus/> - denumirea tipului de produs
<grupaprodus/> - denumirea grupei produsului
<categorieprodus/> - denumirea categoriei produsului
<subcategorieprodus/> - denumirea subcategoriei produsului
<contareprodus/> - denumirea contarii produsului/serviciului
<asocierecontareprodus/> - daca se completeaza cu valoarea 1 si produsul nu exista in sistem, la inserarea produsului se asociaza pe acesta contarea determinata pe baza elementului contareprodus
<asocierecontareprodusexistent/> - daca se completeaza cu valoarea 1 si produsul exista in sistem se actualizeaza contarea asociata pe acel produs cu cea determinata pe baza elementului contareprodus
<!--identificare gestiune-->
<gestiuneid/> * id-ul gestiunii. Se completeaza pe anumite fluxuri unde se cunoaste aceasta informatie.
<codgestiune/> * - codul gestiunii din nomenclatorul de gestiuni
<!--valori pozitie-->
<cant/> * - cantitatea pozitiei
<um/> - denumirea unitatii de masura
<pret/> * - in cazul documentelor externe se poate completa acest element reprezentand pretul convertit din valuta documentului in valuta companiei. Daca nu se completeaza se calculeaza in functie de elementul pretvaluta si cursul documentului. Cel putin unul din elementele pret sau pretvaluta trebuie sa aibe valoare.
<pretvaluta/> * - se completeaza cu pretul in valuta documentului. In cazul documentelor externe, daca nu se completeaza, se determina in functie de elementul pret si cursul documentului. Cel putin unul din elementele pret sau pretvaluta trebuie sa aibe valoare.
<pretamanunt/>
<pretcost/>
<cotatva/> - daca se completeaza se insereaza pozitia cu aceasta cota de tva. Daca nu se completeaza se foloseste acelasi algoritm de determinare al cotei tva precum la adaugarea din interfata.
<valoareredusafaratva/> - valoarea pozitiei rotunjita la numarul de zecimale dat de setarea Setare 377
<valoareredusatva/> - valoarea tva a pozitiei rotunjita la numarul de zecimale dat de setarea Setare 377
<curs/>
<ajustarecurs/>
<!--dimensiuni-->
<ccid/> - id-ul centrului de cost. Se completeaza pe anumite fluxuri unde se cunoaste aceasta informatie.
<codcentrucost/> - codul centrului de cost din lista centrelor de cost
<abid/> - id-ul articolului de buget. Se completeaza pe anumite fluxuri unde se cunoaste aceasta informatie.
<codarticolbuget/> - codul articolului de buget din lista articolelor de buget
<blid/> - id-ul linie de business. Se completeaza pe anumite fluxuri unde se cunoaste aceasta informatie.
<codliniebusiness/> - codul liniei de business din lista liniilor de business. Acest element este folosit la identificarea liniei de business.
<proiectid/> - id-ul proiectului. Se completeaza pe anumite fluxuri unde se cunoaste aceasta informatie.
<taskid/> - id-ul taskului
<denumireliniebusiness/> - denumirea linie de business care se va insera daca nu a fost identificat dupa elementul codliniebusiness si daca elementul insereazaliniebusiness are valoarea 1
<insereazaliniebusiness/> - daca se completeaza cu valoarea 1 se insereaza linia de business
<!--alte informatii pozitie document-->
<explicatie/>
<ordine/>
<idexternimport/> - se poate completa un id al pozitiei provenit dintr-un alt sistem
<datastart/> - informatie folosita la generarea inregistrarii de venit in avans
<dataend/> - informatie folosita la generarea inregistrarii de venit in avans
<cuibeneficiar/>
<furnizorid/>
<intrpozid/>
<dataexpirare/>
<datafabricare/>
<serieintrare/>
<lotintrare/>
</linie>
</pozitii>
<!--incasari prin note contabile-->
<incasari>
<linieincasare>
<docidincasare/> * - se completeaza cu id-ul aferent documentului de inserat din lista documentelor
<tipdocidincasare/>
<dataincasare/> * - data incasarii in format yyyyMMdd sau yyyy-MM-dd
<numarincasare/>
<explicatieincasare/>
<contcontabilincasareid/> *
<sumaincasata/> *
<incasarecuvaloarezero/>
</linieincasare>
</incasari>
<moduriplata>
<liniemodplata>
<modplata/> * - se completeaza denumirea din lista modurilor de plata
<suma/> *
</liniemodplata>
</moduriplata>
</docvanzari>
</root>
Xml
<root>
<docvanzari>
<nrcrt/>
<codfirma/>
<coddivizie/>
<modverificarepartener/>
<clientid/>
<client/>
<cui/>
<codclient/>
<insereazapartener/>
<atributfiscal/>
<tipclient/>
<tippartener/>
<regcomclient/>
<codtaraclient/>
<codjudetclient/>
<localitateclient/>
<stradaclient/>
<nrstradaclient/>
<codpostalclient/>
<denumirejudetclient/>
<insereazalocalitateclient/>
<insereazajudetclient/>
<validare/>
<alocarenumar/>
<modselectieplaja/>
<serie/>
<numarfactura/>
<numarintern/>
<docid/>
<idexternimport/>
<data/>
<datascadenta/>
<tipdocid/>
<tipdoc/>
<retur/>
<cuchitanta/>
<numarchitanta/>
<datachitanta/>
<codvaluta/>
<cursvalutar/>
<prelucratreplicare/>
<prelucrat/>
<modreplic/>
<capdocid/>
<proiectid/>
<taskid/>
<ignoravalmaxchitante/>
<tipfacturadupataraclient/>
<codvalutapartenerextern/>
<folosestecursdatafactura/>
<numarcontract/>
<nuverificavalabilitatecontract/>
<dataraportare/>
<tiplivrare/>
<tiplivraredincontract/>
<reintroducerepeidexternimport/>
<observatii/>
<faraimportconta/>
<ignoraeroareimportcontabilitate/>
<contareclient/>
<actualizareinfopartener/>
<contbancarclient/>
<bancacontbancarclient/>
<valutacontbancarclient/>
<contbancarclientimplicit/>
<contactadaugare/>
<actualizareinfocontact/>
<contactnume/>
<contactprenume/>
<contactemail/>
<contactemail2/>
<contacttelefon/>
<contacttelefon2/>
<contactadresa/>
<contactobservatii/>
<contactcodtara/>
<contactcodjudet/>
<contactlocalitate/>
<contactdenumirejudet/>
<contactinsereazalocalitate/>
<contactinsereazajudet/>
<contacttitlu/>
<contactfunctia/>
<contactcod/>
<contactimplicit/>
<pozitii>
<linie>
<codprodus/>
<codprodusfabricant/>
<produsid/>
<produs/>
<produsafisare/>
<cant/>
<pret/>
<pretvaluta/>
<pretamanunt/>
<pretcost/>
<cotatva/>
<um/>
<gestiuneid/>
<codgestiune/>
<curs/>
<ajustarecurs/>
<explicatie/>
<ccid/>
<codcentrucost/>
<abid/>
<codarticolbuget/>
<blid/>
<codliniebusiness/>
<denumireliniebusiness/>
<insereazaliniebusiness/>
<ordine/>
<valoareredusafaratva/>
<valoareredusatva/>
<insereazaprodus/>
<tipitemprodus/>
<umprodus/>
<tipprodus/>
<grupaprodus/>
<categorieprodus/>
<subcategorieprodus/>
<contareprodus/>
<asocierecontareprodus/>
<asocierecontareprodusexistent/>
<idexternimport/>
<datastart/>
<dataend/>
<cuibeneficiar/>
<proiectid/>
<taskid/>
<furnizorid/>
<intrpozid/>
<dataexpirare/>
<datafabricare/>
<serieintrare/>
<lotintrare/>
</linie>
</pozitii>
<incasari>
<linieincasare>
<docidincasare/>
<tipdocidincasare/>
<dataincasare/>
<numarincasare/>
<explicatieincasare/>
<contcontabilincasareid/>
<sumaincasata/>
<incasarecuvaloarezero/>
</linieincasare>
</incasari>
<moduriplata>
<liniemodplata>
<modplata/>
<suma/>
</liniemodplata>
</moduriplata>
</docvanzari>
</root>