* test_s3_neregresie_vechi.prg * Headless: amprenta antetului dupa Init NUMAI pe calea veche (frm_date_factura / frm_date_aviz), * pe toate tipurile, scrisa intr-un fisier text; rulat o data pe binarul curent (CURENT) si o data * pe backup-ul ofacturare.pre_s3_1.bak.vcx (BACKUP), in lansari separate. Asteptat: cele doua * fisiere de amprenta sunt IDENTICE (diff gol) - clasele-sursa nu au fost atinse. * * Amprenta per caz: controale prezente (colectia Objects), etichetele altele/client, nid_tip, * clb_serie_act.nid_tipdoc, Height. * * Rulare (cate o lansare per apel): * vfp9.exe -A -T "...\test_s3_neregresie_vechi.prg" CURENT * vfp9.exe -A -T "...\test_s3_neregresie_vechi.prg" BACKUP * Iesire: ...\out\neregresie_vechi_CURENT.txt / neregresie_vechi_BACKUP.txt, log neregresie_vechi_.log LPARAMETERS tcMod SET SAFETY OFF SET TALK OFF SET NOTIFY OFF tcMod = UPPER(ALLTRIM(IIF(EMPTY(tcMod), "CURENT", tcMod))) PUBLIC gcLog, gcOut, gnFail gcLog = "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\facturare_unificat\out\neregresie_vechi_" + tcMod + ".log" gcOut = "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\facturare_unificat\out\neregresie_vechi_" + tcMod + ".txt" IF !DIRECTORY("D:\ROA\ROAFACTURARE\COMUN\utile\Teste\facturare_unificat\out") MD "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\facturare_unificat\out" ENDIF STRTOFILE("START " + tcMod + " " + TTOC(DATETIME()) + CHR(13) + CHR(10), gcLog) STRTOFILE("", gcOut) gnFail = 0 ON ERROR DO AfErr WITH ERROR(), MESSAGE(), PROGRAM(), LINENO() DO "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\test_init_env_auto_roafacturare.prg" WITH 'CENTRAL', 'MARIUSM_AUTO', 'ROMFASTSOFT' IF TYPE('gnHandle') <> 'N' OR gnHandle <= 0 DO AfLog WITH "FAIL: conexiune Oracle esuata" DO Final ENDIF SET PROCEDURE TO "D:\ROA\ROAFACTURARE\COMUN\utile\Teste\mock_amessagebox.prg" ADDITIVE IF !actualizeaza_optiuni_program() DO AfLog WITH "FAIL: actualizeaza_optiuni_program()" DO Final ENDIF gnIdUtil = 8 goExecutor.oExecuta([begin pack_sesiune.set_Id_Util(?gnIdUtil); end;]) IF tcMod = "BACKUP" RELEASE CLASSLIB "D:\ROA\ROAFACTURARE\COMUN\clase\ofacturare.vcx" SET CLASSLIB TO "D:\ROA\ROAFACTURARE\COMUN\clase\ofacturare.pre_s3_1.bak.vcx" ADDITIVE ENDIF DO AfLog WITH "CLASSLIB ofacturare: " + IIF("OFACTURARE.PRE_S3_1.BAK.VCX" $ UPPER(SET("CLASSLIB")), "BACKUP", "CURENT") PRIVATE poDate, poGeneratorNumere, plVizibil plVizibil = .F. poGeneratorNumere = CREATEOBJECT("oGeneratorNumere") LOCAL laFact[13], laAviz[11], lnStoc, i, lnSerii, lcSerii laFact[1] = 1 laFact[2] = 2 laFact[3] = 3 laFact[4] = 4 laFact[5] = 5 laFact[6] = 7 laFact[7] = 8 laFact[8] = 9 laFact[9] = 10 laFact[10] = 45 laFact[11] = 48 laFact[12] = 49 laFact[13] = 52 laAviz[1] = 21 laAviz[2] = 22 laAviz[3] = 23 laAviz[4] = 24 laAviz[5] = 25 laAviz[6] = 26 laAviz[7] = 28 laAviz[8] = 29 laAviz[9] = 41 laAviz[10] = 42 laAviz[11] = 47 FOR lnStoc = 0 TO 1 gnScadereStoc = lnStoc FOR lnSerii = 1 TO 2 lcSerii = IIF(lnSerii = 1, "real", "0") FOR i = 1 TO 13 DO Caz WITH laFact[i], .F., lcSerii ENDFOR FOR i = 1 TO 11 DO Caz WITH laAviz[i], .T., lcSerii ENDFOR ENDFOR ENDFOR DO Final PROCEDURE Caz LPARAMETERS tnTip, tlAviz, tcSerii LOCAL loVechi, lcVechi, lcAmprenta, i, lcCaz lcCaz = "[tip=" + TRANSFORM(tnTip) + " stoc=" + TRANSFORM(gnScadereStoc) + " serii=" + tcSerii + "]" poDate = NULL poDate = CREATEOBJECT("oDateFactura", 25000 + tnTip - 1 + gnScadereStoc * 10, tnTip) poDate.nIdTipDoc = IIF(tlAviz, 6, 5) poGeneratorNumere.ResetNumere() IF tcSerii = "real" poDate.rezultat_serii = poGeneratorNumere.creeaza_cursor_serii(poDate.nIdTipDoc) ELSE poDate.rezultat_serii = 0 ENDIF lcVechi = IIF(tlAviz, 'frm_date_aviz', 'frm_date_factura') loVechi = CREATEOBJECT(lcVechi) IF VARTYPE(loVechi) <> 'O' gnFail = gnFail + 1 DO AfLog WITH "FAIL " + lcCaz + " Createobject " + lcVechi RETURN ENDIF lcAmprenta = lcCaz + " in_valuta=" + TRANSFORM(poDate.in_valuta) + " rezultat_serii=" + TRANSFORM(poDate.rezultat_serii) + " obj=" FOR i = 1 TO loVechi.Objects.Count lcAmprenta = lcAmprenta + loVechi.Objects(i).Name + "," ENDFOR IF ObjExists(loVechi, "Ct_clb_altele") lcAmprenta = lcAmprenta + " altele=[" + loVechi.Ct_clb_altele.clb_tx_cautare.Lb_simplu1.Caption + "]" ENDIF IF ObjExists(loVechi, "Ct_clb_nume_client") lcAmprenta = lcAmprenta + " client=[" + loVechi.Ct_clb_nume_client.clb_tx_cautare.Lb_simplu1.Caption + "]" ENDIF IF ObjExists(loVechi, "Clb_serie_act") lcAmprenta = lcAmprenta + " serie.nid_tipdoc=" + TRANSFORM(loVechi.Clb_serie_act.nid_tipdoc) ENDIF lcAmprenta = lcAmprenta + " nid_tip=" + TRANSFORM(loVechi.nid_tip) + " Height=" + TRANSFORM(loVechi.Height) STRTOFILE(lcAmprenta + CHR(13) + CHR(10), gcOut, 1) loVechi.Release() RELEASE loVechi IF poDate.rezultat_serii <> 0 poGeneratorNumere.dezaloca_numar(poDate.nIdTipDoc) ENDIF ENDPROC FUNCTION ObjExists LPARAMETERS toForm, tcName LOCAL i FOR i = 1 TO toForm.Objects.Count IF UPPER(toForm.Objects(i).Name) == UPPER(tcName) RETURN .T. ENDIF ENDFOR RETURN .F. ENDFUNC PROCEDURE AfLog LPARAMETERS tcMsg STRTOFILE(tcMsg + CHR(13) + CHR(10), gcLog, 1) ENDPROC PROCEDURE AfErr LPARAMETERS tnErr, tcMsg, tcProg, tnLine gnFail = gnFail + 1 DO AfLog WITH "ERROR " + TRANSFORM(tnErr) + " [" + tcProg + ":" + TRANSFORM(tnLine) + "] " + tcMsg ENDPROC PROCEDURE Final DO AfLog WITH "TOTAL fail=" + TRANSFORM(gnFail) + " randuri amprenta=" + TRANSFORM(ALINES(laX, FILETOSTR(gcOut))) DO AfLog WITH "END " + TTOC(DATETIME()) QUIT ENDPROC