Import clase produse
Importul nomenclatorului de clase produse se realizeaza in doua etape:
- Inserarea in tabelul buffer a informatiilor corecte si complete. Structura tabelului este prezentata in anexa B.
- Apelarea procedurii stocate importex_clase_produse_exec care valideaza, importa datele si goleste tabelul-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 C.
Anularea unui import se face prin apelarea procedurii stocate importex_clase_produse_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:
- Nomenclator clase bunuri si servicii: nomen1.
- Cheia primara a tabelului: pct_lcr + id
- Legatura cu tabelul de grupe nomen0 este: pl_grupa + id_grupa
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), implicit 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 |
| manage_existing | tinyint | 0 - Blochează - procedura se oprește, returnând o eroare (valoare implicită) 1 - Suprascrie - se actualizează datele clasei existente 2 - Ignoră - se ignoră importul înregistrării curente, lăsând datele clasei neschimbate |
| 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 nomenclator: importex_clase_produse 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) |
| id_intern | varchar(25) | Codul intern al clasei in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica denumire). Folosit pentru suprascrierea claselor care nu au id extern. |
| id_clasa | varchar(25) | Id-ul extern al clasei |
| tip | char(1) | Pentru tip produs utilizati una din variantele: N = Produs obisnuit (marfa cu amanuntul, marfa cu ridicata ... etc) P = Cheltuieli (achizitii de servicii, produse inregistrate direct pe cheltuieli ... etc) S = Servicii oferite (servicii proprii vandute catre clienti) W = Discounturi oferite X = Discounturi primite M = Imobilizari |
| denumire | varchar(52) | Denumirea clasei (optional daca se specifica id_clasa) |
| id_grupa | varchar(25) | Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1. (optional daca se specifica den_grupa) |
| den_grupa | varchar(30) | Denumirea grupei de produse (optional daca se specifica id_grupa). |
| cod_prior | varchar(3) | Aliasul contului prioritar al clasei |
| error_list | varchar(MAX) | Lista a erorilor aparute la validarea importurilor |
ANEXA C. Tabel erori posibile la importul claselor de produse:
| Coloana | Descriere |
|---|---|
| CLS001 | Lipsa date (tabelul de import nu are nicio inregistrare) |
| CLS002 | Denumire nespecificata |
| CLS003 | Tip produs invalid |
| CLS004 | Urmatoarele denumiri nu identifica unic grupa |
| CLS005 | Lipsa grupa in nomenclator... |
| CLS006 | Urmatoarele ID-uri exista deja in nomenclator: |
| CLS007 | Urmatoarele denumiri exista deja in nomenclator |
