Import parteneri: se curata doar CNP-urile invalide, codul persoanelor juridice ramane neatins
This commit is contained in:
@@ -272,7 +272,7 @@ DEFINE CLASS form1 AS form
|
||||
* Completez id_part
|
||||
Local lcBanca, lcCod_fiscal, lcCont_Banca, lcCorespDel, lcDenumire, lcIdString, lcId_categ_ent
|
||||
Local lcId_loc_inreg, lcId_util, lcMesaj, lcMotiv_inactiv, lcNume, lcPrefix, lcPrenume, lcReg_comert
|
||||
Local lcSql, lcSqlInsert, lcSufix, lcTip_persoana, lcinactiv, lnSucces, lcCodValid, lnTip_persoana, lcCodTara
|
||||
Local lcSql, lcSqlInsert, lcSufix, lcTip_persoana, lcinactiv, lnSucces, lnTip_persoana, lcCodTara
|
||||
Local lcAdresa, lcAdreseParteneri, lcApart, lcBloc, lcCaleImport, lcCod, lcCodpostal, lcDA_apare
|
||||
Local lcDenumire_adresa, lcEmail, lcEtaj, lcFax, lcFile, lcIdPart, lcId_Judet, lcId_loc, lcId_tara
|
||||
Local lcItem1, lcItem2, lcItem3, lcItem4, lcJudet, lcJudetBucuresti, lcLocalitate, lcNumar
|
||||
@@ -400,24 +400,26 @@ DEFINE CLASS form1 AS form
|
||||
lcReg_comert = Nvl(Alltrim(Upper(reg_com)), "")
|
||||
***************************
|
||||
lcCod=Alltrim(Upper(Nvl(m.lcCod_fiscal,"")))
|
||||
lcTip_persoana="2" && 1 = juridica, 2 = fizica
|
||||
* Prefer persoanele fizice pentru ca sunt mai multe fata de persoanele juridice.
|
||||
* Sunt multe persoane fizice cu CNP-uri gresite (lungime gresita sau cifra de control gresita).
|
||||
* GetCodFiscalValid curata si valideaza codul; daca este invalid intoarce sir gol,
|
||||
* deci partenerul se salveaza in ROA FARA cod fiscal si nu mai da erori la D394/D406.
|
||||
lcTip_persoana = "2" && 1 = juridica, 2 = fizica
|
||||
* GetCodFiscalValid decide tipul de persoana din denumire, nr. registrul comertului si
|
||||
* forma codului, apoi curata DOAR CNP-urile invalide ale persoanelor fizice.
|
||||
* Codul unei persoane juridice nu se sterge niciodata: daca e gresit, vrem sa fim
|
||||
* atentionati la validarea declaratiei si sa il corectam in Fidelio, nu sa il ascundem.
|
||||
If !Empty(m.lcCod)
|
||||
lnTip_persoana = 0
|
||||
lcCodTara = Alltrim(Upper(Nvl(cod_tara, "")))
|
||||
lcCodValid = GetCodFiscalValid(m.lcCod, @lnTip_persoana, m.lcCodTara)
|
||||
lcCod_fiscal = GetCodFiscalValid(m.lcCod, @lnTip_persoana, m.lcDenumire, m.lcReg_comert, m.lcCodTara)
|
||||
lcTip_persoana = Iif(m.lnTip_persoana = 1, "1", "2")
|
||||
|
||||
Do Case
|
||||
Case !Empty(m.lcCodValid)
|
||||
lcCod_fiscal = m.lcCodValid
|
||||
lcTip_persoana = Iif(m.lnTip_persoana = 1, "1", "2")
|
||||
Otherwise
|
||||
* numeric dar invalid (12/14/15 cifre, cifra de control gresita): sterg codul
|
||||
Thisform.trace('Cod fiscal invalid, se salveaza gol: [' + m.lcCod + '] ' + Alltrim(m.lcDenumire))
|
||||
lcCod_fiscal = ''
|
||||
lcTip_persoana = "2"
|
||||
Case m.lcTip_persoana = "2" And Empty(m.lcCod_fiscal)
|
||||
* persoana fizica cu CNP invalid: se salveaza fara CNP (permis la D394/D406)
|
||||
Thisform.trace('CNP invalid, partenerul se salveaza fara CNP: [' + m.lcCod + '] ' + Alltrim(m.lcDenumire))
|
||||
Case m.lcTip_persoana = "1" And !VerifCF(m.lcCod_fiscal)
|
||||
* persoana juridica cu cod fiscal care nu trece validarea romaneasca: poate fi
|
||||
* partener strain (cod valid la el in tara) sau o eroare de operare. Codul ramane,
|
||||
* dar il semnalam in log ca sa poata fi verificat.
|
||||
Thisform.trace('ATENTIE: persoana juridica cu cod fiscal nevalidat: [' + m.lcCod_fiscal + '] ' + Alltrim(m.lcDenumire))
|
||||
Endcase
|
||||
ENDIF
|
||||
IF m.lcTip_Persoana = "2"
|
||||
|
||||
Reference in New Issue
Block a user