
Import facturi clienti
Importul facturilor de clienti se realizeaza in doua etape:
- Inserarea in tabelele de antete si linii a informatiilor corecte si complete. In cazul in care se doreste importul simultan pentru mai multe documente se foloseste pentru legatura dintre antet si linii campul id_document. Structura tabelelor este prezentata in anexele B si C.
- Apelarea procedurii stocate importex_facturi_clienti_exec care valideaza, importa datele si goleste tabelele-buffer. In cazul in care datele nu sunt corecte procedura intoarce o exceptie si intregul proces de import este abandonat, restabilindu-se starea dinaintea importului. Lista erorilor posibile este prezentata in anexa D.
Anularea unui import se face prin apelarea procedurii stocate importex_facturi_clienti_anulare cu parametrul id_importex (id lot articole importate), dar si prin id_document (id-ul extern din aplicatia terta). Procedura stocata verifica consistenta efectului de anulare a datelor deja importate si dupa caz realizeaza stergerea efectiva a datelor sau intoarce un mesaj de eroare.
Puteti consulta urmatoarele tabele pentru a verifica, in prealabil sau ulterior importului, datele existente:
- Antete de documente: cli. Cheia primara a tabelului: anluna + pct_lcr + id.
- Linii de documente pentru produse: linfactclienti. Legatura cu antetul anluna + pl_cli + id_cli.
ANEXA A. Parametri import:
Câmp | Tip | Descriere |
---|---|---|
id_importex | varchar(25) | ID pentru identificarea unui lot de documente importate (util, de ex., pentru ștergerea în bloc a unui lot de documente importate), valoare implicită NULL |
id_document | varchar(25) | ID-ul documentului care se dorește a fi importat. În cazul în care se dorește importul tuturor documentelor se va trimite NULL. Valoarea implicită este NULL. |
keep_data_on_err | bit | 0 - nu se vor păstra datele în tabelele buffer (valoare implicită) 1 - se vor păstra datele în tabelele buffer, în caz de eroare |
single_tran | bit | Se specifică dacă se va deschide o singură tranzacție pentru întregul import sau se va utiliza o tranzacție per document. 1 - în cazul apariției unei erori la importul unui document, sistemul va reveni complet la starea dinaintea importului (valoare implicită). 0 - documentele importate până la apariția erorii rămân în baza de date |
gen_pvmpma | bit | 0 - Nu se generează PV modificare preț pentru marfa cu amănuntul (valoare implicită) 1 - Se generează în prealabil PV modificare preț pentru marfa cu amănuntul |
exec_type | tinyint | 0 - Validare și import, cu oprire în cazul erorilor (valoare implicită) 1 - Validare și import, sărind peste înregistrările cu erori 2 - Validare date, fără a realiza importul |
return_errorlist | tinyint | 0 - Fără listă erori (valoare implicită) 1 - Returnează lista înregistrărilor cu erori 2 - Returnează lista tuturor înregistrărilor |
inchidere_cmd | tinyint | 0 - Nu se închide comanda asociată facturii (valoare implicită) 1 - Închide comanda, indiferent dacă a fost onorată integral sau nu 2 - Închide comanda doar dacă au fost onorate toate produsele |
ANEXA B. Tabel antete document: importex_facturi_clienti avand structura:
Coloana | Tip | Descriere |
---|---|---|
id_importex | varchar(25) | ID pentru identificarea unui lot de documente importate (util, de ex., pentru stergerea in bloc a unui lot de documente importate) Atentie! Gestionarea, verificarea si validarea acestui camp este in sarcina dezvoltatorului utilitarului de export-import. |
id_document | varchar(25) | ID unic pentru identificarea documentului |
tip_document | varchar(15) | Tipul documentului (Factura, Factura externa, Fact.ext.cu TVA) (optional, implicit Factura) |
id_carnet | bigint | Codul intern al carnetului din care este emis documentul (optional) |
serie_document | varchar(10) | Seria documentului (optional) |
numar_document | varchar(20) | Numarul documentului (format dintr-o parte numerica de pana la 10 cifre, urmata de un sufix de pana la 10 caractere alfanumerice) |
data_document | date | Data documentului |
data_scadenta | date | Data scadentei facturii |
moneda | char(3) | Moneda (RON, EUR) (optional, implicit RON) |
curs | money | Cursul valutar (1.00 pentru RON) (optional, implicit 1) |
id_gestiune | varchar(25) | Codul intern al gestiunii in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_gestiune) |
id_extern_gestiune | varchar(25) | Id-ul extern al gestiunii (optional daca se specifica id_gestiune sau den_gestiune) |
den_gestiune | varchar(30) | Denumirea gestiunii (optional daca se specifica id_gestiune) |
cont_debit | varchar(17) | Cont debit. Poate fi de forma 4111.1, programul corectand automat formatul |
id_client | varchar(25) | Codul intern al clientului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica cif_client sau den_client) |
id_extern_client | varchar(50) | Id-ul extern al clientului (optional daca se specifica id_client sau cif_client) |
cif_client | varchar(20) | Codul fiscal / CNP al clientului (optional daca se specifica id_client sau den_client) |
den_client | nvarchar(200) | Denumirea clientului (optional daca se specifica id_client sau cif_client) |
id_delegat | varchar(25) | Codul intern al delegatului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_delegat) |
id_extern_delegat | varchar(25) | Id-ul extern al delegatului (optional daca se specifica id_delegat sau den_delegat) |
den_delegat | varchar(30) | Denumirea delegatului (optional daca se specifica id_delegat) |
id_agent | varchar(25) | Codul intern al agentului de vanzari in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_agent) |
id_extern_agent | varchar(25) | Id-ul extern al agentului (optional daca se specifica id_agent sau den_agent) |
den_agent | varchar(100) | Denumirea agentului de vanzari (optional daca se specifica id_agent) |
id_facturist | varchar(25) | Codul facturistului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_facturist) |
id_extern_facturist | varchar(25) | Id-ul extern al facturistului (optional daca se specifica id_facturist sau den_facturist) |
den_facturist | varchar(100) | Denumirea facturistului (optional daca se specifica id_facturist) |
observatii | varchar(max) | Observatii document |
livrat_afara_ro | bit | Livrat in afara Romaniei (optional, implicit 0) |
taxare_inversa | bit | Factura cu taxare inversa (optional, implicit 0) |
validare | bit | Se va valida sau nu documentul dupa salvare |
anulare | bit | Se va anula sau nu documentul dupa salvare |
valoare | money | Valoarea inclusiv TVA pentru control final (NULL pentru a ignora verificarea) |
id_adresa | varchar(25) | Codul intern al adresei in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci adresa este considerat implicit 1 (optional daca se specifica den_adresa) |
den_adresa | varchar(200) | Denumirea adresei (optional daca se specifica id_adresa) |
id_transport | varchar(25) | Codul intern al transportului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci adresa este considerat implicit 1 (optional daca se specifica den_transport) |
den_transport | varchar(100) | Denumirea transportului (optional daca se specifica id_transport) |
observatii_print | varchar(1000) | Observatii print |
cod_factura | varchar(50) | Codul de bare al facturii (optional) |
incasare_bon_fiscal | bit | Factura incasata cu bon fiscal |
numar_cmd_hotel | numeric(18,0) | Numar comanda servicii hoteliere. |
id_extern_rez_hotel | varchar(25) | ID-ul unic al rezervarii hoteliere (optional daca se specifica numar_rez_hotel si data_rez_hotel). |
numar_rez_hotel | varchar(25) | Numarul rezervarii hoteliere (optional daca se specifica id_extern_rez_hotel). |
data_rez_hotel | date | Data documentului rezervarii hoteliere (optional daca se specifica id_extern_rez_hotel). |
jurnal_tva | bit | Includ document in jurnal de TVA |
intrastat_tara_expediere | varchar(2) | Tara de expediere intrastat |
errorlist_antet | varchar(max) | Lista a erorilor specifice campurilor din antet aparute la validarea importurilor |
nr_cmnz_hotel | varchar(500) | Numar comenzi hotel |
deducere_tva | bit | Deducere TVA |
reglement_selectie | varchar(20) | Reglement selectie |
nr_contract | varchar(20) | Numar contract |
data_contract | date | Data contract |
termen_incasare | smallint | Numar zile pana la data scadentei |
numar_awb | varchar(50) | Numar AWB |
mod_plata | varchar(25) | Mod plata |
data_anaf | date | Data la care a fost validata factura in SPV |
id_solicitare | numeric(18,0) | ID-ul solicitarii din SPV al facturii validate de catre ANAF |
id_carnet_aviz_antet | numeric(18,0) | ID-ul carnetului din nomenclatorul Carnete cu tip Aviz marfa |
serie_aviz_antet | varchar(10) | Seria avizului |
numar_aviz_antet | numeric(10,0) | Numarul avizului |
numar_comanda_antet | varchar(30) | Numarul comenzii de client |
operatiuni_neimpoz | bit | Operatiuni neimpozabile |
id_model_doc | numeric(18,0) | Id model document |
intrastat_cod_tranzactie_a | tinyint | Ansamblul caracteristicilor ce diferentiaza o tranzactie de o alta tranzactie, in special din punct de vedere al transferului dreptului de proprietate asupra bunurilor expediate/introduse, primirea unei compensatii pentru respectivele bunuri, scopul expedierii/introducerii, etc. Permite valori de la 1 la 9. |
intrastat_cod_tranzactie_b | varchar(5) | Ansamblul caracteristicilor ce diferentiaza o tranzactie de o alta tranzactie, in special din punct de vedere al transferului dreptului de proprietate asupra bunurilor expediate/introduse, primirea unei compensatii pentru respectivele bunuri, scopul expedierii/introducerii, etc. Se va trimite codul tranzactiei A + '.' + codul tranzactiei B. De exemplu, intrastat_cod_tranzactie_b poate avea valoarea 9.1 |
intrastat_termen_livrare | char(3) | Termenii de livrare se refera la conditiile comerciale acceptate care definesc rolul vanzatorului si cumparatorului in organizarea transportului si alte responsabilitati. Sunt utilizati in corespondenta cu contractul de vanzare sau alte metode de tranzactionare a vanzarii. Se va trimite doar codul termenului de livrare: EXW, FCA, FAS, FOB, CFR, CIF, CPT, CIP, DAT, DAP, DDP, XXX |
intrastat_mod_transport | tinyint | Se va preciza modul de transport al bunurilor la frontiera nationala a Romaniei. Acest camp permite valori de la 1 la 9. |
ANEXA C. Tabel linii facturi clienti: importex_facturi_clienti_lin avand structura:
Coloana | Tip | Descriere |
---|---|---|
id_document | varchar(25) | ID unic pentru identificarea documentului |
id_produs | varchar(25) | Codul intern al produsului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica cod_produs sau den_produs) |
id_extern_produs | varchar(25) | Id-ul extern al produsului (optional daca se specifica id_produs, cod_produs sau den_produs) |
cod_produs | varchar(50) | Codul de bare al produsului (optional daca se specifica id_produs sau den_produs) |
den_produs | varchar(173) | Denumirea produsului (optional daca se specifica id_produs sau cod_produs) |
tip_produs | char(3) | Codul din 3 caractere corespunzator tipului de produs definit in nomenclatorul de bunuri si servicii (optional daca se specifica cont_produs) |
cont_produs | varchar(17) | Contul produsului (optional daca se specifica tip_produs) |
serie_produs | varchar(50) | Seria/numarul de lot al produsului (optional) |
cantitate | numeric(13,3) | Cantitatea |
pret_achizitie | money | Pretul de achizitie(optional, descarcarea marfii se va face FIFO) |
pret_vanzare | money | Pretul de vanzare fara TVA in moneda facturii |
cota_tva_ies | numeric(3,1) | Cota TVA iesire (optional, implicit e preluata din nomenclator) |
data_expirare | date | Data expirarii (optional) |
denumire_sup | nvarchar(2000) | Denumire suplimentara (optional) |
id_centru_profit | varchar(25) | Codul intern al centrului de profit in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_centru_profit) |
den_centru_profit | nvarchar(100) | Denumirea centrului de profit (optional daca se specifica id_centru_profit) |
id_aviz | varchar(25) | Codul intern al avizului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica serie_aviz, numar_aviz, data_aviz) |
id_extern_aviz | varchar(25) | Id-ul extern al avizului (optional daca se specifica id_aviz) |
serie_aviz | varchar(30) | serie aviz insotire marfa din care se factureaza |
numar_aviz | varchar(10) | Numar aviz insotire marfa din care se factureaza |
data_aviz | date | Data aviz insotire marfa din care se factureaza |
numar_auto | varchar(20) | Numar de inmatriculare autovehicul (optional) |
pret_vanzare_tva | money | Pretul de vanzare cu TVA in moneda facturii |
id_comanda | varchar(25) | Codul intern al comenzii in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 |
id_extern_comanda | varchar(50) | Id-ul extern al comenzii (optional daca se specifica id_comanda) |
serie_comanda | varchar(10) | Seria/numarul comenzii |
numar_comanda | varchar(20) | Numarul comenzii |
data_comanda | date | Data comenzii |
corectie_tva | money | Corectie TVA |
discount | money | Valoare discount |
discount_proc | decimal(5,2) | Discount procentual |
errorlist_linii | varchar(max) | Lista a erorilor specifice campurilor din linii aparute la validarea importurilor |
id_extern_centru_profit | varchar(25) | Id-ul extern al centrului de profit (optional daca se specifica id_centru_profit sau den_centru_profit) |
id_linie_comanda | varchar(32) | Id-ul intern al liniei de comanda, in formatul ANLUNA_PCTLCR_ID |
id_furnizor | varchar(25) | Codul intern al furnizorului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica cod_furnizor sau den_furnizor). Acest camp este valabil doar pentru servicii (transportatorul). |
cod_furnizor | varchar(20) | Codul fiscal / CNP al transportatorului (optional daca se specifica id_furnizor sau den_furnizor). Acest camp este valabil doar pentru servicii (transportatorul). |
den_furnizor | nvarchar(200) | Denumirea transportatorului(optional daca se specifica id_furnizor sau cod_furnizor). Acest camp este valabil doar pentru servicii (transportatorul). |
id_proiect | varchar(25) | Codul intern al proiectului in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_proiect). |
den_proiect | nvarchar(150) | Denumirea proiectului(optional daca se specifica id_proiect) |
pret_lista | money | Pretul aferent listei de pret |
retur_bon_fiscal | bit | Se va specifica 1 in cazul in care se realizeaza returul in baza unui bon fiscal si 0 pentru returul in baza unei facturi |
id_factura | varchar(32) | Codul intern al facturii referinta pentru care se realizeaza stornarea, in formatul ANLUNA_PCTLCR_ID. Campul se va utiliza doar pentru facturile storno (optional daca se trimite numar_factura, serie_factura, data_factura). In cazul in care retur_bon_fiscal este 1 se trimite id-ul bonului fiscal |
serie_factura | varchar(10) | Seria facturii referinta pentru care se realizeaza stornarea. Campul se va utiliza doar pentru facturile storno (optional daca se trimite id_factura). In cazul in care retur_bon_fiscal este 1 se trimite numarul casei + "-" + zet (de exemplu: 23-546) |
numar_factura | varchar(20) | Numarul facturii referinta pentru care se realizeaza stornarea. Campul se va utiliza doar pentru facturile storno (optional daca se trimite id_factura) In cazul in care retur_bon_fiscal este 1 se trimite numarul bonului fiscal |
data_factura | date | Data facturii referinta pentru care se realizeaza stornarea. Campul se va utiliza doar pentru facturile storno (optional daca se trimite id_factura). In cazul in care retur_bon_fiscal este 1 se trimite data bonului fiscal |
ANEXA D. Tabel erori posibile la importul facturilor clienti:
Coloana | Descriere |
---|---|
FCL001 | Lipsa date (tabelul de import nu are nicio inregistrare) |
FCL002 | Client nespecificat |
FCL003 | Gestiune nespecificata |
FCL004 | Moneda nespecificata |
FCL005 | Curs nespecificat |
FCL006 | Cont debit nespecificat |
FCL007 | Tip document invalid |
FCL008 | Produs nespecificat |
FCL009 | Cont produs nespecificat |
FCL010 | Lipsa antet |
FCL011 | Urmatoarele valori nu identifica unic moneda |
FCL012 | Lipsa moneda in nomenclator |
FCL013 | Urmatoarele conturi sunt invalide |
FCL014 | Cont debit invalid (nu exista/este sintetic) in balanta |
FCL015 | Urmatoarele coduri fiscale nu identifica unic partenerul |
FCL016 | Lipsa gestiune in nomenclator |
FCL017 | Urmatoarele id-uri externe nu identifica unic partenerul |
FCL018 | Urmatoarele denumiri nu identifica unic partenerul |
FCL019 | Lipsa partener in nomenclator |
FCL020 | Document deja existent |
FCL021 | Urmatoarele conturi sunt invalide |
FCL022 | Urmatoarele conturi nu identifica unic tipul in nomenclatorul de bunuri si servicii |
FCL023 | Lipsa pozitie in nomenclator bunuri si servicii |
FCL024 | Urmatoarele coduri nu identifica unic produsul dupa cod extern |
FCL025 | Urmatoarele denumiri nu identifica unic produsul |
FCL026 | Lipsa produs in nomenclator |
FCL027 | Urmatoarele denumiri nu identifica unic centrul de profit |
FCL028 | Lipsa centru de profit in nomenclator |
FCL029 | Lipsa autovehicul in nomenclator |
FCL030 | Urmatoarele numere de inmatriculare nu identifica unic autovehiculul |
FCL031 | Cantitate insuficienta pe stoc |
FCL032 | Urmatoarele coduri de carnet nu exista in nomenclator ... |
FCL033 | Sesiunea documentului a fost blocata la modificari |
FCL034 | Sesiunea documentului depaseste sesiunea curenta |
FCL035 | Exista linii cu pret de achizitie negativ |
FCL036 | Exista linii cu pret de vanzare negativ |
FCL037 | Urmatoarele informatii nu identifica unic avizul de insotire marfa |
FCL038 | Lipsa aviz de insotire marfa |
FCL039 | Valoarea totala a documentului importat difera de cea presetata in campul [Valoare] |
FCL040 | Urmatoarele denumiri nu identifica unic delegatul |
FCL041 | Procent TVA nespecificat pentru documente de tip Livrare OSS |
FCL042 | Cota TVA incorecta |
FCL043 | Lipsa comanda client |
FCL044 | Clientul din comanda client nu corespunde cu cel de pe factura! |
FCL045 | Urmatoarele coduri nu identifica unic produsul dupa cod echivalent |
FCL046 | Urmatoarele denumiri nu identifica unic agentul |
FCL047 | Lipsa agent in nomenclator |
FCL048 | Urmatoarele denumiri nu identifica unic o adresa de livrare |
FCL049 | Lipsa adresa de livrare in nomenclator |
FCL050 | Urmatoarele denumiri nu identifica unic un transportator |
FCL051 | Lipsa transportator in nomenclator |
FCL052 | Procent discount invalid |
FCL053 | Urmatoarele coduri nu identifica unic produsul dupa cod selectie |
FCL054 | Data scadenta trebuie este anterioara datei facturii |
FCL055 | Urmatoarele denumiri nu identifica unic facturistul |
FCL056 | Lipsa facturist in nomenclator |
FCL057 | Urmatoarele id-uri externe nu identifica unic gestiunea |
FCL058 | Urmatoarele id-uri externe nu identifica unic delegatul |
FCL059 | Urmatoarele id-uri externe nu identifica unic agentul |
FCL060 | Urmatoarele id-uri externe nu identifica unic facturistul |
FCL061 | Urmatoarele id-uri externe nu identifica unic agentul |
FCL062 | Urmatoarele id-uri externe nu identifica unic avizul de insotire marfa |
FCL063 | Urmatoarele id-uri externe nu identifica unic comanda client |
FCL064 | Urmatoarele valori nu identifica tara |
FCL065 | Urmatoarele id-uri externe nu identifica unic centrul de profit |
FCL066 | Numar nespecificat |
FCL067 | Lipsa linie comanda |
FCL068 | Urmatoarele coduri fiscale nu identifica unic furnizorul |
FCL069 | Urmatoarele denumiri nu identifica unic furnizorul |
FCL070 | Lipsa furnizor in nomenclator |
FCL071 | Urmatoarele denumiri nu identifica unic proiectul |
FCL072 | Lipsa proiect in nomenclator |
FCL073 | Cantitate nespecificata |
FCL074 | Urmatoarele informatii nu identifica unic factura de client |
FCL075 | Lipsa factura client |
FCL076 | Clientul din factura referinta nu corespunde cu cel de pe factura storno |
FCL077 | Format data expirare invalid. Interval permis 1900-01-01 - 2079-06-06 |
FCL078 | Urmatorii parteneri sunt blocati |
FCL079 | Urmatorii furnizori sunt blocati |
FCL080 | Valoarea facturii difera de suma totala a comenzilor incluse in aceasta factura! |
FCL081 | Nu exista, in modulul Hotel, comanda cu numarul |
FCL082 | Lipsa model factura client |
FCL083 | Id solicitare e-Factura existent pe factura |
FCL084 | Urmatoarele coduri de carnet aviz nu exista in nomenclator |
FCL085 | Lipsa factura client |
FCL086 | Clientul din factura referinta nu corespunde cu cel de pe factura storno! |
FCL087 | Urmatoarele informatii nu identifica unic bonul fiscal |
FCL088 | Lipsa bon fiscal |
FCL089 | Clientul din bonul fiscal referinta nu corespunde cu cel de pe factura storno! |
FCL090 | Devizul de pe factura este RON, dar s-a specificat curs valutar |
FCL091 | Urmatoarele informatii nu identifica unic comanda client |
FCL092 | Cod Natura tranzactie A inexistent |
FCL093 | Cod Natura tranzactie B inexistent |
FCL094 | Cod termen livrare intrastat inexistent |
FCL095 | Cod mod transport intrastat inexistent |