Import personal
Importul personalului 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_personal_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_personal_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:
- Tabela personal: personal.
- Cheia primara a tabelului: pct_lcr + id
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 |
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 salariatului existent 2 - Ignoră - se ignoră importul înregistrării curente, lăsând datele salariatului neschimbate |
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 |
updated_columns | varchar(max) | Se va trimite lista de câmpuri ce se doresc a fi suprascrise, separate prin virgulă (fără spațiu între câmpuri și virgulă), implicit NULL |
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_personal 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_import | varchar(25) | ID pentru identificarea importului (util, de ex., pentru stergerea unui import) |
nume_familie | nvarchar(100) | Numele de familie |
prenume | nvarchar(100) | Prenumele |
sex | bit | Sexul (feminin sau masculin) |
data_nastere | date | Data de nastere |
loca_nastere | varchar(20) | Locul de nastere (localitatea) |
tip_ci | varchar(20) | Tip carte de identitate |
bi_seria | varchar(6) | Seria buletinului de identitate |
bi_numar | varchar(12) | Numarul buletinului de identitate |
bi_data | date | Data eliberarii buletinului de identitate |
bi_exp | date | Data expirare buletin de identitate |
bi_elib | varchar(50) | Institutia care a eliberat buletinul de identitate |
bi_cnp | varchar(20) | Codul numeric personal al salariatului |
adresa_strada | varchar(50) | Strada |
adresa_numar | varchar(10) | Numarul |
adresa_bloc | varchar(15) | Blocul |
adresa_scara | varchar(6) | Scara |
adresa_etaj | varchar(15) | Etajul |
adresa_apartament | varchar(10) | Apartamentul |
adresa_sector | varchar(3) | Sectorul |
adresa_cod_postal | varchar(6) | Codul postal aferent adresei de pe buletin al salariatului |
telefon | varchar(20) | Telefonul salariatului |
cod_card | varchar(24) | Codul de pe cardul salariatului |
cont_card | varchar(24) | Contul deschis la banca al salariatului |
id_banca | varchar(25) | Codul intern al bancii in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_banca) |
den_banca | varchar(50) | Denumirea bancii (optional daca se specifica id_banca) |
stare_civila | bit | Starea civila a salariatului: casatorit/a / necasatorit/a |
copii_baieti | decimal(1,0) | Numarul de copii(baieti) ai salariatului |
copii_fete | decimal(1,0) | Numarul de copii(fete) ai salariatului |
stud_institutie | varchar(50) | Institutiile unde a studiat salariatul |
studii_profil | varchar(100) | Studiile de specializare ale salariatului |
varchar(150) | Adresa de email a salariatul | |
web_parola | varchar(50) | Parola web |
marca | varchar(50) | Marca |
cod_tara | char(2) | Codul tarii |
id_localitate | varchar(25) | Codul intern al localitatii in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_localitate sau den_judet) |
den_localitate | varchar(100) | Denumirea localitatii (optional daca se specifica id_localitate sau den_judet) |
den_judet | varchar(100) | Denumirea judetului (optional daca se specifica id_localitate sau den_localitate) |
cetatenie_cod | varchar(2) | Cetatenie |
nationalitate_cod | varchar(2) | Nationalitate |
id_functie_int | varchar(25) | Codul intern al functiei in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_functie_int sau cod_functie_int) |
cod_functie_int | varchar(6) | Codul functiei (optional daca se specifica id_functie_int sau den_functie_int) |
den_functie_int | varchar(100) | Denumirea functiei (optional daca se specifica id_functie_int sau cod_functie_int) |
cont_banca_tichete | varchar(24) | Cont card plata tichete masa |
id_clasificare | varchar(25) | Codul intern al clasificarii in formatul ID(PCT_LCR). Daca se specifica doar ID-ul, atunci punctul de lucru este considerat implicit 1 (optional daca se specifica den_clasificare) |
den_clasificare | varchar(50) | Denumirea clasificarii (Clasificarea trebuie sa fie de tip "Salariat") |
ANEXA C. Tabel erori posibile la importul personalului:
Coloana | Descriere |
---|---|
PRS001 | Lipsa date (tabelul de import nu are nicio inregistrare) |
PRS002 | Nume familie nespecificat |
PRS003 | Prenume nespecificat |
PRS004 | Tara de domiciliu nespecificata |
PRS005 | CNP nespecificat |
PRS006 | CNP-ul trebuie sa fie format din 13 cifre |
PRS007 | Urmatoarele denumiri nu identifica unic banca |
PRS008 | Lipsa banca in nomenclator |
PRS009 | Urmatoarele valori nu identifica tara |
PRS010 | Urmatoarele denumiri nu identifica unic localitatea |
PRS011 | Lipsa localitate in nomenclator |
PRS012 | Urmatoarele CNP-uri exista deja in nomenclator |
PRS013 | Urmatoarele ID-uri de personal exista deja in nomenclator |
PRS014 | Urmatoarele CNP-uri nu identifica unic personalul in nomenclator |
PRS015 | Urmatoarele ID-uri de personal nu identifica unic personalul in nomenclator |
PRS016 | Urmatoarele coduri COR nu identifica unic functia |
PRS017 | Urmatoarele denumiri nu identifica unic functia |
PRS018 | Lipsa functie in nomenclator |
PRS019 | UUrmatoarele niveluri nu exista |
PRS020 | Urmatoarele id-uri de nivel de studii nu exista |
PRS021 | Urmatoarele denumiri nu identifica unic clasificarea |
PRS022 | Lipsa clasificare in nomenclator |