Import facturi bonuri fiscale
Importul facturilor din bonuri fiscale 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_bonuri_fiscale_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_bonuri_fiscale_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: bonfisc_facturi . Cheia primara a tabelului: anluna + pct_lcr + id.
- Linii de documente pentru produse: bonfisc_facturi_lin. Legatura cu antetul anluna + pl_fact + id_fact.
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 |
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 |
ANEXA B. Tabel antete document: importex_facturi_bonuri_fiscale 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 deja 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 |
numar_document | int | Numarul bonului fiscal |
data_document | date | Data documentului |
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 getsiunii (optional daca se specifica id_gestiune sau den_gestiune) |
den_gestiune | varchar(30) | Denumirea gestiunii (optional daca se specifica id_gestiune) |
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 ) |
cif_client | varchar(20) | Codul fiscal / CNP al clientului (optional daca se specifica id_client sau den_client) |
den_client | varchar(100) | 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) |
validare | bit | Se va valida sau nu documentul dupa salvare |
valoare | money | Valoarea inclusiv TVA pentru control final |
observatii | varchar(500) | Observatiile documentului |
id_carnet | bigint | Codul intern al carnetului din care este emis documentul (optional) |
serie_document | varchar(10) | Seria documentului (optional) |
observatii_print | varchar(250) | Observatii tiparite pe factura |
anulare | bit | Se va anula sau nu documentul dupa salvare |
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 |
ANEXA C. Tabel linii document: importex_facturi_bonuri_fiscale_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(20) | Codul de bare al produsului (optional daca se specifica id_produs sau den_produs) |
den_produs | varchar(231) | 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_tva | money | Pretul de vanzare cu TVA pentru marfa cu amanuntul |
cota_tva_ies | numeric(2,0) | Cota TVA iesire (optional, implicit e preluata din nomenclator) |
data_expirare | date | Data expirarii (optional) |
discount | money | Discount |
dispozitiv_fiscal | smallint | Dispozitiv fiscal (casa de marcat) |
numar_z | int | Numar Z |
numar_bon_fiscal | int | Numar bon fiscal |
data_bon_fiscal | date | Data bon fiscal |
numar_bonuri | int | Numar bonuri |
ANEXA D. Tabel erori posibile la importul facturilor din bonuri fiscale:
Coloana | Descriere |
---|---|
FBF001 | Lipsa date (tabelul de import nu are nicio inregistrare) |
FBF002 | Client nespecificat |
FBF003 | Gestiune nespecificata |
FBF004 | Se doreste anularea unei facturi nevalidate |
FBF005 | Codul de carnet nu exista in nomenclator |
FBF006 | Produs nespecificat |
FBF007 | Cont produs nespecificat |
FBF008 | Lipsa antet |
FBF009 | Urmatoarele denumiri nu identifica unic gestiunea |
FBF010 | Lipsa gestiune in nomenclator |
FBF011 | Urmatoarele denumiri nu identifica unic delegatul |
FBF012 | Lipsa delegat in nomenclator |
FBF013 | Urmatoarele coduri fiscale nu identifica unic partenerul |
FBF014 | Urmatoarele denumiri nu identifica unic partenerul |
FBF015 | Lipsa partener in nomenclator |
FBF016 | Document deja existent |
FBF017 | Exista linii cu pret de achizitie negativ |
FBF018 | Exista linii cu pret de vanzare negativ |
FBF019 | Urmatoarele conturi sunt invalide |
FBF020 | Urmatoarele conturi nu identifica unic tipul in nomenclatorul de bunuri si servicii |
FBF021 | Lipsa pozitie in nomenclator bunuri si servicii |
FBF022 | Urmatoarele coduri nu identifica unic produsul |
FBF023 | Urmatoarele coduri echivalente nu identifica unic produsul |
FBF024 | Urmatoarele denumiri nu identifica unic produsul |
FBF025 | Lipsa produs in nomenclator |
FBF026 | Sesiunea documentului a fost blocata la modificari |
FBF027 | Sesiunea documentului depaseste sesiunea curenta |
FBF028 | Valoarea totala a documentului importat difera de cea presetata in campul [Valoare] |
FBF029 | Urmatoarele id-uri externe nu identifica unic gestiunea |
FBF030 | Urmatoarele id-uri externe nu identifica unic delegatul |
FBF031 | Urmatoarele id-uri externe nu identifica unic partenerul |
FBF032 | Urmatoarele id-uri externe nu identifica unic produsul |