diff --git a/clase/ointroduceri.vc2 b/clase/ointroduceri.vc2 index 8618286..208b1c2 100644 --- a/clase/ointroduceri.vc2 +++ b/clase/ointroduceri.vc2 @@ -10199,7 +10199,8 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx" *!* Randul D, unic pe nota (doc_key gol, nr_doc 99999999): diferenta = baza documentelor *!* care participa la pret - Suma(pret*cant) cu pretul incarcat. Cont dominant = contul de *!* clasa 3 cu baza ABS maxima; fara clasa 3 -> clasa 2, cu contul fix 6588. Diferenta se - *!* scrie doar in lei. Antetul se mosteneste de la documentul principal. + *!* scrie doar in lei, fara TVA si fara cod de taxa SAFT. Antetul se mosteneste de la + *!* documentul principal. Local lcSel, lnMinNrDoc, lnTotalLei, lnTotalVal, lnBazaParticipa Local lcContDominant, lnBazaDominantaAbs, lcScd1, lnDiferentaLei, lnDiferentaVal, lcExplicatie Local llGasitClasa3, loAntet @@ -10310,7 +10311,7 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx" Replace partc With '', id_partc With 0, partd With '', id_partd With 0 Endif Replace scd With lcScd1, scc With lcContDominant, suma With lnDiferentaLei, suma_val With 0, ; - explicatia With lcExplicatie, id_jtva_coloana With Null, ptva With 0, cu_tva With 0, ; + explicatia With lcExplicatie, id_jtva_coloana With Null, taxcode With 0, ptva With 0, cu_tva With 0, ; in_valuta With 0, participa_valuta With .F., nume_val With '', id_valuta With 0, curs With 0 Select (lcSel) diff --git a/utile/Teste/achizitie_import/test_runda7_diferente.prg b/utile/Teste/achizitie_import/test_runda7_diferente.prg index 2dac160..b42cc49 100644 --- a/utile/Teste/achizitie_import/test_runda7_diferente.prg +++ b/utile/Teste/achizitie_import/test_runda7_diferente.prg @@ -245,11 +245,11 @@ TRY DO CreeazaIntrodc WITH 'introdc' DO CreeazaIntrodc WITH 'introdc_sablon' INSERT INTO introdc_sablon (scd, scc, cu_tva, ordine, id_set, participa_valuta, tip_rand, ; - id_jtva_coloana, ptva, explicatie_tva) ; - VALUES ('371', '401', 1, 1, 1, .T., 'B', 208, 21, 'ACH. INT. 21%') + id_jtva_coloana, ptva, explicatie_tva, taxcode) ; + VALUES ('371', '401', 1, 1, 1, .T., 'B', 208, 21, 'ACH. INT. 21%', 301204) INSERT INTO introdc_sablon (scd, scc, cu_tva, ordine, id_set, participa_valuta, tip_rand, ; - id_jtva_coloana, ptva, explicatie_tva) ; - VALUES ('4426', '401', 1, 2, 1, .T., 'T', 209, 21, 'TVA ACH. INT. 21%') + id_jtva_coloana, ptva, explicatie_tva, taxcode) ; + VALUES ('4426', '401', 1, 2, 1, .T., 'T', 209, 21, 'TVA ACH. INT. 21%', 301204) GO TOP IN introdc_sablon DO CreeazaRulTemp @@ -735,6 +735,34 @@ PROCEDURE VerificaRandD lcMsg = 'FAIL ' + tcLabel + '-randD: nu exista rand tip_rand=D in introdc dupa sincronizeaza() (diferenta asteptata=' + TRANSFORM(lnSumaAsteptata) + ')' ENDIF DO R7Log WITH lcMsg + DO VerificaTaxCodeRandD WITH tcLabel + SELECT (lnSel) +ENDPROC + +PROCEDURE VerificaTaxCodeRandD + *-- randul D (diferenta 6xx) nu are cod de taxa SAFT; randurile de baza si TVA il pastreaza. + LPARAMETERS tcLabel + LOCAL lnSel, lcMsg, lnTaxD, lnFaraTax + lnSel = SELECT() + SELECT introdc + LOCATE FOR tip_rand == 'D' + IF !FOUND() + DO R7Log WITH 'FAIL ' + tcLabel + '-randD-taxcode: nu exista rand tip_rand=D' + SELECT (lnSel) + RETURN + ENDIF + lnTaxD = NVL(taxcode, 0) + lnFaraTax = 0 + SCAN FOR INLIST(tip_rand, 'B', 'S', 'T', 'G') AND EMPTY(NVL(taxcode, 0)) + lnFaraTax = lnFaraTax + 1 + ENDSCAN + IF EMPTY(lnTaxD) AND lnFaraTax = 0 + lcMsg = 'PASS ' + tcLabel + '-randD-taxcode: randul D are taxcode gol, iar randurile B/S/T/G il pastreaza' + ELSE + lcMsg = 'FAIL ' + tcLabel + '-randD-taxcode: taxcode pe randul D=' + TRANSFORM(lnTaxD) + ; + ' (astept 0), randuri B/S/T/G fara taxcode=' + TRANSFORM(lnFaraTax) + ' (astept 0)' + ENDIF + DO R7Log WITH lcMsg SELECT (lnSel) ENDPROC