sync SVN r18064
This commit is contained in:
@@ -8650,6 +8650,7 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
PRIVATE pcCont,pcAct,pcRul,pParamP,pParamS
|
||||
STORE 0 TO pParamP,pParamS
|
||||
lcAnalitic = ''
|
||||
llDinNomenclator = .F.
|
||||
lcAlias = ALIAS()
|
||||
|
||||
pcCont = ALLTRIM(tcCont)
|
||||
@@ -8662,14 +8663,22 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
RETURN
|
||||
ENDIF
|
||||
|
||||
*!* fara regula de analitic pe cont, se incearca analiticul propriu al articolului
|
||||
IF lnSucces > 0
|
||||
IF RECCOUNT('crs_cfg_ana')=0
|
||||
USE IN crs_cfg_ana
|
||||
IF TYPE('&pcRul..acont') # 'U'
|
||||
lcAnalitic = ALLTRIM(NVL(&pcRul..acont,''))
|
||||
ENDIF
|
||||
IF EMPTY(lcAnalitic)
|
||||
lnSucces = -1
|
||||
ELSE
|
||||
llDinNomenclator = .T.
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
IF lnSucces > 0
|
||||
IF lnSucces > 0 AND !llDinNomenclator
|
||||
SELECT crs_cfg_ana
|
||||
SCATTER NAME ocfg
|
||||
lcCampPrefix = NVL(ALLTRIM(ocfg.camp_leg_prefix),'')
|
||||
@@ -8705,7 +8714,7 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
ENDIF
|
||||
|
||||
&& iau Primul Simbol Analitic din Tabel - ordonat pt ca e selectat cu Distinct
|
||||
IF lnSucces > 0
|
||||
IF lnSucces > 0 AND !llDinNomenclator
|
||||
SELECT crs_analitice
|
||||
GO top
|
||||
lcAnalitic = ALLTRIM(acont)
|
||||
@@ -12253,6 +12262,12 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
thisform.grid1.cFDoc.DynamicBackColor = "Iif(introdc.tip_rand = 'D', Rgb(229,229,229), introdc.doc_color)"
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE GridArt.cAcont.Text1.LostFocus
|
||||
*!* editare manuala a analiticului articolului - armeaza sincronizarea amanata
|
||||
Thisform.lSyncPending = .T.
|
||||
Thisform.tmrSync.Interval = 1
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE GridArt.cCant.Text1.GotFocus
|
||||
Thisform.nOldVal = This.Value
|
||||
Dodefault()
|
||||
@@ -12276,6 +12291,12 @@ DEFINE CLASS import_nota AS frm_termin_renunt OF "_frm_child.vcx"
|
||||
thisform.do_executa_pret(3,lnRec,this.value)
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE GridArt.cCont.Text1.LostFocus
|
||||
*!* editare manuala a contului articolului - armeaza sincronizarea amanata
|
||||
Thisform.lSyncPending = .T.
|
||||
Thisform.tmrSync.Interval = 1
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE GridArt.cCotaTva.Text1.GotFocus
|
||||
*!* valoarea la intrarea in celula - Valid rearmeaza sincronizarea doar daca s-a modificat
|
||||
Thisform.nOldVal = This.Value
|
||||
|
||||
599
utile/Teste/achizitie_import/test_repro_analitic_nomenclator.prg
Normal file
599
utile/Teste/achizitie_import/test_repro_analitic_nomenclator.prg
Normal file
@@ -0,0 +1,599 @@
|
||||
* test_repro_analitic_nomenclator.prg
|
||||
* Reproduce eroarea din productie (IMA METAV, forma ACHIZITIE DIN IMPORT MARFA/MATERIALE):
|
||||
* articol cu cont+analitic completate in nomenclator (ex. 301/1) primeste totusi mesajul
|
||||
* "contul <cont> are analitice definite, analiticul nu e completat" la Terminat, desi
|
||||
* config_analitice nu are niciun rand pentru acel cont (assign_analitic, ointroduceri.vc2)
|
||||
* suprascria orbeste acontul cu '' in loc sa pastreze cel din nomenclator.
|
||||
* Al doilea defect: coloanele cCont/cAcont din GridArt erau editabile fara sa armeze
|
||||
* sincronizarea - editarea manuala a analiticului in grila nu recalcula mesajul de eroare.
|
||||
*
|
||||
* Pasi (harness): 0 dupa do_adauga_articol (testul a/nomenclator), 1 dupa valideaza_sume
|
||||
* (testul b/mesaj), 2 dupa editarea manuala + LostFocus (testul c/armare sync), 3 final.
|
||||
*
|
||||
* Rulare:
|
||||
* powershell -ExecutionPolicy Bypass -File test_repro_analitic_nomenclator.ps1
|
||||
|
||||
SET SAFETY OFF
|
||||
SET TALK OFF
|
||||
SET DELETED ON
|
||||
SET EXACT ON
|
||||
SET CENTURY ON
|
||||
SET DATE DMY
|
||||
SET DECIMALS TO 4
|
||||
SET NULLDISPLAY TO ''
|
||||
CLOSE DATABASES
|
||||
|
||||
PUBLIC gcUILog, gcSyncDir
|
||||
gcUILog = "D:\ROA\ROAGEST\COMUN\utile\Teste\achizitie_import\test_repro_analitic_nomenclator_log.txt"
|
||||
gcSyncDir = "D:\ROA\ROAGEST\COMUN\utile\Teste\achizitie_import\uisync_repro_analitic_nomenclator\"
|
||||
STRTOFILE("START " + TTOC(DATETIME()) + CHR(13)+CHR(10), gcUILog)
|
||||
|
||||
ON ERROR DO ApErr WITH ERROR(), MESSAGE(), PROGRAM(), LINENO()
|
||||
ON SHUTDOWN QUIT
|
||||
|
||||
TRY
|
||||
LOCAL gcAppPath, lcPath
|
||||
gcAppPath = "D:\ROA\ROAGEST\"
|
||||
SET DEFAULT TO (gcAppPath)
|
||||
|
||||
lcPath = gcAppPath + 'Date;' + gcAppPath + 'Include;' + gcAppPath + 'FERESTRE;' + ;
|
||||
gcAppPath + 'GRAFICE;' + gcAppPath + 'CLASE;' + gcAppPath + 'MENIURI;' + ;
|
||||
gcAppPath + 'PROGRAME;' + gcAppPath + 'RAPOARTE;' + gcAppPath + 'COMUN;' + ;
|
||||
gcAppPath + 'COMUN\CLASE;' + gcAppPath + 'COMUN\FERESTRE;' + gcAppPath + 'COMUN\PROGRAME;' + ;
|
||||
gcAppPath + 'COMUN\GRAFICE;' + gcAppPath + 'COMUN\RAPOARTE;' + gcAppPath + 'COMUN\MENIURI;' + ;
|
||||
gcAppPath + 'COMUN\UTILE\GRIDEXTRAS;' + gcAppPath + 'COMUN\UTILE\CTL32;' + ;
|
||||
gcAppPath + 'COMUN\UTILE\HPDF;' + gcAppPath + 'COMUN\UTILE\HPDF\REPORTOUTPUT;' + ;
|
||||
gcAppPath + 'COMUN\UTILE\WEB;' + gcAppPath + 'COMUN\UTILE\EXCEL;' + ;
|
||||
ADDBS(SUBSTR(gcAppPath,1,RAT([\],gcAppPath,2)))+[COMUNROA\]
|
||||
SET PATH TO &lcPath ADDITIVE
|
||||
DO ApLog WITH 'SET PATH OK'
|
||||
|
||||
*----- CLASE -----
|
||||
SET CLASSLIB TO (gcAppPath + "comun\clase\appwiz") ADDITIVE
|
||||
SET CLASSLIB TO GESTIUNI ADDITIVE
|
||||
SET CLASSLIB TO CAUT ADDITIVE
|
||||
SET CLASSLIB TO BAZA ADDITIVE
|
||||
SET CLASSLIB TO comun ADDITIVE
|
||||
SET CLASSLIB TO accessibility.vcx ADDITIVE
|
||||
SET CLASSLIB TO messagebox ADDITIVE
|
||||
SET CLASSLIB TO registry ADDITIVE
|
||||
SET CLASSLIB TO cauta_alfa_forms.vcx ADDITIVE
|
||||
SET CLASSLIB TO DECABAZA ADDITIVE
|
||||
SET CLASSLIB TO onomenclatoare ADDITIVE
|
||||
SET CLASSLIB TO stocuri.vcx ADDITIVE
|
||||
SET CLASSLIB TO rulaje.vcx ADDITIVE
|
||||
SET CLASSLIB TO ointroduceri ADDITIVE
|
||||
SET CLASSLIB TO ointroduceri_web ADDITIVE
|
||||
SET CLASSLIB TO ointroduceri_depozit ADDITIVE
|
||||
SET CLASSLIB TO overificari ADDITIVE
|
||||
SET CLASSLIB TO ferestre_oracle ADDITIVE
|
||||
SET CLASSLIB TO ferestre_cere_date.vcx ADDITIVE
|
||||
SET CLASSLIB TO configurare.vcx ADDITIVE
|
||||
SET CLASSLIB TO serii_numere.vcx ADDITIVE
|
||||
SET CLASSLIB TO omodificari.vcx ADDITIVE
|
||||
SET CLASSLIB TO ocompensari.vcx ADDITIVE
|
||||
SET CLASSLIB TO caut_ora ADDITIVE
|
||||
SET CLASSLIB TO onote_contabile ADDITIVE
|
||||
SET CLASSLIB TO otoolbar ADDITIVE
|
||||
SET CLASSLIB TO bon_fisc ADDITIVE
|
||||
SET CLASSLIB TO onom_articole ADDITIVE
|
||||
SET CLASSLIB TO onom_retete ADDITIVE
|
||||
SET CLASSLIB TO orapoarte ADDITIVE
|
||||
SET CLASSLIB TO orapoarte_gestiuni ADDITIVE
|
||||
SET CLASSLIB TO orapoarte_parametri ADDITIVE
|
||||
SET CLASSLIB TO ONOM_CURS ADDITIVE
|
||||
SET CLASSLIB TO ctl32_statusbar_fals.vcx ADDITIVE
|
||||
SET CLASSLIB TO ctl32_common.vcx ADDITIVE
|
||||
SET CLASSLIB TO ctl32_structs.vcx ADDITIVE
|
||||
SET CLASSLIB TO ctl32_progressbar.vcx ADDITIVE
|
||||
SET CLASSLIB TO ctl32_balloontip.vcx ADDITIVE
|
||||
SET CLASSLIB TO ocriterii.vcx ADDITIVE
|
||||
SET CLASSLIB TO oavize.vcx ADDITIVE
|
||||
SET CLASSLIB TO onomenclatoare2 ADDITIVE
|
||||
SET CLASSLIB TO wwdialogs.vcx ADDITIVE
|
||||
SET CLASSLIB TO oimportxml.vcx ADDITIVE
|
||||
SET CLASSLIB TO excelxml.vcx ADDITIVE
|
||||
SET CLASSLIB TO orapoarte_obinv.vcx ADDITIVE
|
||||
DO ApLog WITH 'SET CLASSLIB OK'
|
||||
|
||||
*----- PROCEDURI (mock amessagebox + mock cauta_nom_articole PRIMELE, ui_harness la final) -----
|
||||
SET PROCEDURE TO PROCEDURI
|
||||
SET PROCEDURE TO "D:\ROA\ROAGEST\COMUN\utile\Teste\mock_amessagebox.prg" ADDITIVE
|
||||
SET PROCEDURE TO "D:\ROA\ROAGEST\COMUN\utile\Teste\mock_cauta_nom_articole.prg" ADDITIVE
|
||||
SET PROCEDURE TO acces_meniu ADDITIVE
|
||||
SET PROCEDURE TO cauta_alfa ADDITIVE
|
||||
SET PROCEDURE TO pmenu ADDITIVE
|
||||
SET PROCEDURE TO proceduri_comune ADDITIVE
|
||||
SET PROCEDURE TO quitapp ADDITIVE
|
||||
SET PROCEDURE TO init_program ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_listari.prg ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_configurare.prg ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_articole.prg ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_retete.prg ADDITIVE
|
||||
SET PROCEDURE TO orapoarte.prg ADDITIVE
|
||||
SET PROCEDURE TO mesaje ADDITIVE
|
||||
SET PROCEDURE TO oserii_numere.prg ADDITIVE
|
||||
SET PROCEDURE TO oexport.prg ADDITIVE
|
||||
SET PROCEDURE TO wwConfig.prg ADDITIVE
|
||||
SET PROCEDURE TO proceduri_rapoarte.prg ADDITIVE
|
||||
SET PROCEDURE TO OPROCEDURI_CURS.PRG ADDITIVE
|
||||
SET PROCEDURE TO validare.prg ADDITIVE
|
||||
SET PROCEDURE TO GENCURSOR.PRG ADDITIVE
|
||||
SET PROCEDURE TO OPROCEDURI_COMUNE.PRG ADDITIVE
|
||||
SET PROCEDURE TO OINIT_OPTIUNI.PRG ADDITIVE
|
||||
SET PROCEDURE TO updateserver.prg ADDITIVE
|
||||
SET PROCEDURE TO oinainte_de.prg ADDITIVE
|
||||
SET PROCEDURE TO ooperatii_comune.prg ADDITIVE
|
||||
SET PROCEDURE TO Ocompensari.PRG ADDITIVE
|
||||
SET PROCEDURE TO OPROCEDURI_aMS.PRG ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_rulaje ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_stocuri ADDITIVE
|
||||
SET PROCEDURE TO OINTRODUCERI ADDITIVE
|
||||
SET PROCEDURE TO oHeader.prg ADDITIVE
|
||||
SET PROCEDURE TO proceduri_excel.PRG ADDITIVE
|
||||
SET PROCEDURE TO onomenclatoare.PRG ADDITIVE
|
||||
SET PROCEDURE TO osecurity ADDITIVE
|
||||
SET PROCEDURE TO ocautare ADDITIVE
|
||||
SET PROCEDURE TO orefaceri ADDITIVE
|
||||
SET PROCEDURE TO ofacturare_comun.PRG ADDITIVE
|
||||
SET PROCEDURE TO ofacturare_stoc.PRG ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_casademarcat ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_casa_marcat_e500 ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_casa_marcat_mp500 ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_util.prg ADDITIVE
|
||||
SET PROCEDURE TO wwxmlhttp.prg ADDITIVE
|
||||
SET PROCEDURE TO ini.prg ADDITIVE
|
||||
SET PROCEDURE TO odocumente.prg ADDITIVE
|
||||
SET PROCEDURE TO regex.prg ADDITIVE
|
||||
SET PROCEDURE TO wwutils.prg ADDITIVE
|
||||
SET PROCEDURE TO inchidere_k ADDITIVE
|
||||
SET PROCEDURE TO iniacces.prg ADDITIVE
|
||||
SET PROCEDURE TO oupdate.prg ADDITIVE
|
||||
SET PROCEDURE TO procese.prg ADDITIVE
|
||||
SET PROCEDURE TO version.prg ADDITIVE
|
||||
SET PROCEDURE TO xmlaccess.prg ADDITIVE
|
||||
SET PROCEDURE TO xmlparser.prg ADDITIVE
|
||||
SET PROCEDURE TO filebringer.prg ADDITIVE
|
||||
SET PROCEDURE TO wwcodeupdate.prg ADDITIVE
|
||||
SET PROCEDURE TO wwhttp.prg ADDITIVE
|
||||
SET PROCEDURE TO xdate.prg ADDITIVE
|
||||
SET PROCEDURE TO ofacturare.prg ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_obinv.prg ADDITIVE
|
||||
SET PROCEDURE TO oproceduri_facturare.prg ADDITIVE
|
||||
SET PROCEDURE TO email.prg ADDITIVE
|
||||
SET PROCEDURE TO "D:\ROA\ROAGEST\COMUN\utile\Teste\ui_harness.prg" ADDITIVE
|
||||
DO ApLog WITH 'SET PROCEDURE OK'
|
||||
|
||||
*----- Globale -----
|
||||
PUBLIC gnPc, gnPval, gnPcant, gnPpret, gnPPretval, gnPCurs, gnPVal, gnPPretV, gnPPretVal
|
||||
STORE 2 TO gnPc, gnPval, gnPVal
|
||||
gnPcant = 3
|
||||
STORE 4 TO gnPpret, gnPPretval, gnPPretVal, gnPPretV, gnPCurs
|
||||
PUBLIC gl406, gcS, gnAn, gnLuna, gnIdFirma, gnIdSucursala, gcAcces, gcFirma
|
||||
gl406 = .T.
|
||||
gcS = 'CONTAFIN'
|
||||
gnAn = YEAR(DATE())
|
||||
gnLuna = MONTH(DATE())
|
||||
gnIdFirma = 110
|
||||
gnIdSucursala = 110
|
||||
gcAcces = "1;2;3;4;5;6;7;8;"
|
||||
gcFirma = gcS
|
||||
PUBLIC nror(65000)
|
||||
|
||||
PUBLIC gnButon
|
||||
STORE 2 TO gnButon
|
||||
*-- controleaza mock_cauta_nom_articole.prg: articolul TABLA (cont 301, acont 1 in nomenclator)
|
||||
PUBLIC gcMockArtCodmat, gcMockAcontCrt
|
||||
gcMockArtCodmat = ''
|
||||
gcMockAcontCrt = ''
|
||||
*-- controleaza dummyexecutor.oExecute: 0 = config_analitice fara rand pt cont (cazul real 301)
|
||||
PUBLIC gnMockConfigAnaliticeRows
|
||||
gnMockConfigAnaliticeRows = 1
|
||||
*-- controleaza verificarea analiticului propriu in vplcont_analitic (assign_analitic): 1 =
|
||||
*-- gasit in plan (pastreaza), 0 = negasit (respinge) - doar pt. interogarea PUNCTUALA
|
||||
*-- cont+acont a lui assign_analitic; interogarea larga a lui valideaza_sume (cu "inactiv = 0")
|
||||
*-- foloseste in continuare setul fix de randuri, filtrate client-side ca in fluxul real.
|
||||
PUBLIC gnMockVerificaAnaliticGasit
|
||||
gnMockVerificaAnaliticGasit = 1
|
||||
|
||||
PUBLIC goExecutor, goApp
|
||||
goExecutor = CREATEOBJECT('dummyexecutor')
|
||||
goApp = CREATEOBJECT('dummyapp')
|
||||
|
||||
*----- poAct: antetul notei; dialogul mosteneste din el la Init -----
|
||||
PUBLIC poAct
|
||||
poAct = CREATEOBJECT('Custom')
|
||||
poAct.AddProperty('nume_val', '')
|
||||
poAct.AddProperty('curs', 1)
|
||||
poAct.AddProperty('proc_tva', 1.21)
|
||||
poAct.AddProperty('nnir', 0)
|
||||
poAct.AddProperty('id_valuta', 0)
|
||||
poAct.AddProperty('id_fdoc', 1)
|
||||
poAct.AddProperty('fdoc', 'Factura')
|
||||
poAct.AddProperty('id_partc', 500)
|
||||
poAct.AddProperty('partc', 'FURNIZOR ANTET SRL')
|
||||
poAct.AddProperty('serie_act', '')
|
||||
poAct.AddProperty('dataact', DATE())
|
||||
poAct.AddProperty('tva_incasare', 0)
|
||||
poAct.AddProperty('id_set', 1)
|
||||
poAct.AddProperty('id_gestin', 1)
|
||||
|
||||
*----- jtva_coloane2 / saft_taxtable: perechi reale 21% -----
|
||||
IF USED('jtva_coloane2')
|
||||
USE IN ('jtva_coloane2')
|
||||
ENDIF
|
||||
CREATE CURSOR jtva_coloane2 (ordine N(8), id_jtva_coloana N(14), denumire C(100), ;
|
||||
jc N(1), jv N(1), afisat N(1), coloana_jc C(20), coloana_jv C(20), cota_tva N(6,2), id_tva N(14))
|
||||
INSERT INTO jtva_coloane2 VALUES (0, 0, '', 0, 0, 1, '', '', 0, 0)
|
||||
INSERT INTO jtva_coloane2 VALUES (1, 208, 'ACH. INT. 21%', 1, 0, 1, 'RO21B', 'RO21T', 21, 209)
|
||||
INSERT INTO jtva_coloane2 VALUES (2, 209, 'TVA ACH. INT. 21%', 1, 0, 1, 'RO21T', '', 21, 0)
|
||||
INSERT INTO jtva_coloane2 VALUES (3, 220, 'ACH. IMP. 21%', 1, 0, 1, 'FO21B', 'FO21T', 21, 221)
|
||||
INSERT INTO jtva_coloane2 VALUES (4, 221, 'TVA ACH. IMP. 21%', 1, 0, 1, 'FO21T', '', 21, 0)
|
||||
|
||||
IF USED('saft_taxtable')
|
||||
USE IN ('saft_taxtable')
|
||||
ENDIF
|
||||
CREATE CURSOR saft_taxtable (taxname C(250) NULL, typename C(250) NULL, taxcode N(6) NULL, ;
|
||||
taxtype N(3) NULL, descriere C(250) NULL, tip C(100) NULL, descriere_tip C(250) NULL, ;
|
||||
procent_taxa N(7,2) NULL, procent_prorata N(7,2) NULL, inactiv N(1) NULL, tva N(1) NULL, ;
|
||||
wht N(1) NULL, tva_achizitii N(1) NULL, tva_livrari N(1) NULL)
|
||||
INDEX ON taxcode TAG taxcode
|
||||
INSERT INTO saft_taxtable (taxname, taxcode, descriere, procent_taxa, tva, wht, tva_achizitii, tva_livrari) ;
|
||||
VALUES ('', 0, '', 0, 1, 1, 1, 1)
|
||||
INSERT INTO saft_taxtable (taxname, taxcode, descriere, procent_taxa, tva, wht, tva_achizitii, tva_livrari) ;
|
||||
VALUES ('301104-Achizitii de bunuri si servicii taxabile cu cota de 21%, altele decat importurile si cele supuse masurilor de simplificare', 301104, '', 21, 1, 0, 1, 0)
|
||||
|
||||
*----- introdc: porneste GOL, ca in fluxul real (nu e nevoie de document pt. testul de mai jos) -----
|
||||
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%')
|
||||
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%')
|
||||
GO TOP IN introdc_sablon
|
||||
|
||||
DO CreeazaRulTemp
|
||||
INSERT INTO rul_temp (denumire, codmat, cant, pret, pret_lei, cont, cota_tva) ;
|
||||
VALUES ('PLACEHOLDER', 'PH', 1, 1, 1, '371', 21)
|
||||
|
||||
*-- index ord_doc INAINTE de CREATEOBJECT - vezi docs/testare-ui-vfp.md capcana p.
|
||||
SELECT introdc
|
||||
INDEX ON Str(Nvl(nr_doc,0),8) + Icase(tip_rand='B','1', tip_rand='S','2', tip_rand='G','3', tip_rand='T','4', tip_rand='D','5', '6') + Padr(Nvl(scd,''),10) TAG ord_doc
|
||||
SET ORDER TO ord_doc
|
||||
|
||||
DO ApLog WITH 'cursoare pregatite, CREATEOBJECT(import_nota, .F.) - lIntern=.F. (import)'
|
||||
PUBLIC goObj
|
||||
goObj = CREATEOBJECT('IMPORT_nota', .F.)
|
||||
IF VARTYPE(goObj) <> 'O'
|
||||
DO ApLog WITH 'FAIL: instantiere import_nota'
|
||||
DO HarnessDone WITH 'done-error'
|
||||
QUIT
|
||||
ENDIF
|
||||
goObj.lDialogAratat = .T.
|
||||
goObj.oact = poAct
|
||||
goObj.WindowType = 0
|
||||
goObj.Visible = .T.
|
||||
goObj.Show()
|
||||
goObj.WindowState = 2
|
||||
DOEVENTS FORCE
|
||||
|
||||
SELECT rul_temp
|
||||
ZAP
|
||||
goObj.gridart.Refresh()
|
||||
DOEVENTS FORCE
|
||||
|
||||
*========================= ARTICOL TABLA (cont 301, acont=1 in nomenclator; config_analitice *=========
|
||||
*========================= FARA rand pt. 301 - cazul real IMA METAV) ====================================
|
||||
gcMockArtCodmat = 'ART-TABLA-301'
|
||||
gcMockAcontCrt = ''
|
||||
gnMockConfigAnaliticeRows = 0
|
||||
TRY
|
||||
goObj.do_adauga_articol()
|
||||
CATCH TO loExcA
|
||||
DO ApLog WITH 'EROARE do_adauga_articol (TABLA/301) ' + TRANSFORM(loExcA.ErrorNo) + ' [' + loExcA.Message + ;
|
||||
'] in ' + loExcA.Procedure + ':' + TRANSFORM(loExcA.LineNo) + ' (' + loExcA.LineContents + ')'
|
||||
ENDTRY
|
||||
DOEVENTS FORCE
|
||||
|
||||
*========================= TEST (a): acontul din nomenclator (301/1) trebuie pastrat =========================
|
||||
LOCAL llGasitArt, lcAcontDupaAdauga
|
||||
SELECT rul_temp
|
||||
LOCATE FOR ALLTRIM(codmat) == 'ART-TABLA-301' AND !DELETED()
|
||||
llGasitArt = FOUND()
|
||||
IF llGasitArt
|
||||
lcAcontDupaAdauga = ALLTRIM(NVL(acont,''))
|
||||
REPLACE cant WITH 1, pret_val WITH 0, pretd WITH 0, pret WITH 100, pret_lei WITH 100
|
||||
IF lcAcontDupaAdauga == '1'
|
||||
DO ApLog WITH 'PASS test (a): rul_temp.acont=[' + lcAcontDupaAdauga + '] pastrat din nomenclator (config_analitice fara rand pt. 301)'
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (a): rul_temp.acont=[' + lcAcontDupaAdauga + '] (astept [1], din nomenclator) - assign_analitic a suprascris cu gol'
|
||||
ENDIF
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (a): articolul ART-TABLA-301 nu a fost adaugat de do_adauga_articol()'
|
||||
lcAcontDupaAdauga = '?'
|
||||
ENDIF
|
||||
goObj.gridart.Refresh()
|
||||
DOEVENTS FORCE
|
||||
|
||||
DO HarnessStep WITH 0, 'dupa do_adauga_articol (TABLA/301): acont=[' + lcAcontDupaAdauga + ']'
|
||||
|
||||
*========================= TEST (b): valideaza_sume - fara mesaj de analitic (acont=1 valid pt 301) =========
|
||||
LOCAL llRezB, lcMesajB
|
||||
goObj.cmesajsync = ''
|
||||
llRezB = goObj.valideaza_sume()
|
||||
lcMesajB = goObj.cmesajsync
|
||||
IF !('are analitice definite, analiticul nu e completat' $ lcMesajB)
|
||||
DO ApLog WITH 'PASS test (b): valideaza_sume() fara mesajul de analitic gol - cmesajsync=[' + lcMesajB + ']'
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (b): valideaza_sume() cu mesajul de analitic gol - cmesajsync=[' + lcMesajB + '] (bug reprodus: acontul din nomenclator a fost pierdut)'
|
||||
ENDIF
|
||||
|
||||
DO HarnessStep WITH 1, 'dupa valideaza_sume: rezultat=' + TRANSFORM(llRezB) + ' mesaj=[' + lcMesajB + ']'
|
||||
|
||||
*========================= TEST (c): editare manuala cont/acont in grid -> LostFocus armeaza sincronizarea =========
|
||||
LOCAL llSyncPendingInainte, llSyncPendingDupa
|
||||
goObj.lSyncPending = .F.
|
||||
goObj.tmrSync.Interval = 0
|
||||
llSyncPendingInainte = goObj.lSyncPending
|
||||
SELECT rul_temp
|
||||
LOCATE FOR ALLTRIM(codmat) == 'ART-TABLA-301' AND !DELETED()
|
||||
IF FOUND()
|
||||
*-- simuleaza tastarea in grid (grila scrie campul inainte de LostFocus) + tab-out
|
||||
TRY
|
||||
goObj.gridart.cAcont.Text1.LostFocus()
|
||||
CATCH TO loExcC
|
||||
DO ApLog WITH 'EROARE GridArt.cAcont.Text1.LostFocus ' + TRANSFORM(loExcC.ErrorNo) + ' [' + loExcC.Message + ']'
|
||||
ENDTRY
|
||||
ENDIF
|
||||
llSyncPendingDupa = goObj.lSyncPending
|
||||
IF !llSyncPendingInainte AND llSyncPendingDupa AND goObj.tmrSync.Interval = 1
|
||||
DO ApLog WITH 'PASS test (c): editarea manuala a analiticului in grid armeaza sincronizarea (lSyncPending=.T., tmrSync.Interval=1)'
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (c): editarea manuala a analiticului NU armeaza sincronizarea - lSyncPendingInainte=' + TRANSFORM(llSyncPendingInainte) + ' lSyncPendingDupa=' + TRANSFORM(llSyncPendingDupa) + ' tmrSync.Interval=' + TRANSFORM(goObj.tmrSync.Interval) + ' (mesajul de eroare ramane afisat pana la o resincronizare separata)'
|
||||
ENDIF
|
||||
|
||||
*-- resincronizare (ca la Timer-ul tmrSync) - dupa fix, mesajul trebuie sa dispara
|
||||
goObj.lSyncPending = .F.
|
||||
goObj.sincronizeaza()
|
||||
LOCAL llRezC, lcMesajC
|
||||
goObj.cmesajsync = ''
|
||||
llRezC = goObj.valideaza_sume()
|
||||
lcMesajC = goObj.cmesajsync
|
||||
IF !('are analitice definite, analiticul nu e completat' $ lcMesajC)
|
||||
DO ApLog WITH 'PASS test (c) resincronizare: cmesajsync fara mesajul de analitic dupa resincronizare - [' + lcMesajC + ']'
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (c) resincronizare: cmesajsync=[' + lcMesajC + ']'
|
||||
ENDIF
|
||||
|
||||
DO HarnessStep WITH 2, 'dupa editare manuala + LostFocus: syncPending=' + TRANSFORM(llSyncPendingDupa) + ' mesaj_final=[' + lcMesajC + ']'
|
||||
|
||||
*========================= TEST (d): articol cu acont din nomenclator NEGASIT in plan (301/9) =========================
|
||||
*-- config_analitice tot fara rand pt. 301; acontul propriu ('9') nu exista in vplcont_analitic
|
||||
*-- pt. 301 (gnMockVerificaAnaliticGasit=0) - trebuie respins, nu pastrat orbeste.
|
||||
gcMockArtCodmat = 'ART-TABLA9-301'
|
||||
gnMockConfigAnaliticeRows = 0
|
||||
gnMockVerificaAnaliticGasit = 0
|
||||
TRY
|
||||
goObj.do_adauga_articol()
|
||||
CATCH TO loExcD
|
||||
DO ApLog WITH 'EROARE do_adauga_articol (TABLA9/301) ' + TRANSFORM(loExcD.ErrorNo) + ' [' + loExcD.Message + ']'
|
||||
ENDTRY
|
||||
DOEVENTS FORCE
|
||||
|
||||
LOCAL llGasitArtD, lcAcontDupaAdaugaD
|
||||
SELECT rul_temp
|
||||
LOCATE FOR ALLTRIM(codmat) == 'ART-TABLA9-301' AND !DELETED()
|
||||
llGasitArtD = FOUND()
|
||||
IF llGasitArtD
|
||||
lcAcontDupaAdaugaD = ALLTRIM(NVL(acont,''))
|
||||
REPLACE cant WITH 1, pret_val WITH 0, pretd WITH 0, pret WITH 50, pret_lei WITH 50
|
||||
IF EMPTY(lcAcontDupaAdaugaD)
|
||||
DO ApLog WITH 'PASS test (d): rul_temp.acont=[] - analiticul necunoscut (301/9) respins, nu pastrat orb'
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (d): rul_temp.acont=[' + lcAcontDupaAdaugaD + '] (astept gol - 301/9 nu exista in plan)'
|
||||
ENDIF
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (d): articolul ART-TABLA9-301 nu a fost adaugat de do_adauga_articol()'
|
||||
ENDIF
|
||||
|
||||
LOCAL llRezD, lcMesajD
|
||||
goObj.cmesajsync = ''
|
||||
llRezD = goObj.valideaza_sume()
|
||||
lcMesajD = goObj.cmesajsync
|
||||
IF !llRezD AND ('are analitice definite, analiticul nu e completat' $ lcMesajD)
|
||||
DO ApLog WITH 'PASS test (d) valideaza_sume: mesajul de analitic gol prezent pt. TABLA NECONFORMA - [' + lcMesajD + ']'
|
||||
ELSE
|
||||
DO ApLog WITH 'FAIL test (d) valideaza_sume: rezultat=' + TRANSFORM(llRezD) + ' cmesajsync=[' + lcMesajD + '] (astept mesajul de analitic gol)'
|
||||
ENDIF
|
||||
gnMockVerificaAnaliticGasit = 1
|
||||
|
||||
DO ApLog WITH 'GATA - scenariu executat integral'
|
||||
DO HarnessStep WITH 3, 'final: rul_temp=' + TRANSFORM(RECCOUNT_ACTIVE('rul_temp')) + ' articole'
|
||||
DO HarnessDone WITH 'done'
|
||||
|
||||
CATCH TO loExc
|
||||
DO ApLog WITH 'CATCH ErrorNo=' + TRANSFORM(loExc.ErrorNo) + ' Message=' + loExc.Message + ' Proc=' + loExc.Procedure + ' Line=' + TRANSFORM(loExc.LineNo) + ' [' + loExc.LineContents + ']'
|
||||
DO HarnessDone WITH 'done-error'
|
||||
ENDTRY
|
||||
|
||||
QUIT
|
||||
|
||||
*==================================================================================
|
||||
PROCEDURE CreeazaRulTemp
|
||||
*-- structura reala rul_temp (VRUL, Oracle dev) - identica cu celelalte teste din folder.
|
||||
IF USED('rul_temp')
|
||||
USE IN ('rul_temp')
|
||||
ENDIF
|
||||
CREATE CURSOR rul_temp ( ;
|
||||
id_rul N(20,0), an N(4,0), luna N(2,0), cod N(20,0);
|
||||
, serie C(100), nnir N(20,0), id_articol N(10,0), denumire C(100);
|
||||
, codmat C(50), codmatf C(50), codbare C(50), um C(20);
|
||||
, id_gestiune N(5,0), nume_gestiune C(50), cgest C(20), nr_pag N(2,0);
|
||||
, gestionar C(50), comisie_receptie1 C(50), comisie_receptie2 C(50), comisie_receptie3 C(50);
|
||||
, cant N(14,3), cante N(14,3), cont C(10), acont C(20);
|
||||
, pret N(18,4), tva N(18,4), valoare N(18,4), valtva N(18,4);
|
||||
, proc_tva N(5,2), pretv N(18,4), pretvtva N(18,4), tvav N(18,4);
|
||||
, valoarev N(18,4), valtvav N(18,4), proc_tvav N(5,2), adaos N(18,4);
|
||||
, adaos_tva N(18,4), valoare_adaos N(18,4), valtva_adaos N(18,4), procent N(10,3);
|
||||
, discunitar N(18,4), discount_tva N(18,4), valoare_discount N(18,4), valtva_discount N(18,4);
|
||||
, proc_disc N(7,3), pretd N(14,4), curs N(18,4), id_valuta N(10,0);
|
||||
, nume_val C(20), id_lucrare N(20,0), nrord C(100), id_responsabil N(10,0);
|
||||
, nresp C(100), resp_marca N(18,4), dataact T, id_util N(5,0);
|
||||
, util C(30), dataora T, id_sectie N(5,0), sectie C(50);
|
||||
, csectie C(10), alcooltutun N(1,0), datain T, dataout T;
|
||||
, id_fact N(20,0), id_gestiunec N(10,0), nume_gestiunec C(50), cgestc C(20);
|
||||
, id_responsabilc N(5,0), id_reteta N(10,0), reteta C(50), nrespc C(100);
|
||||
, respc_marca N(18,4), id_set N(20,0), id_tip_rulaj N(10,0), tip_rulaj C(50);
|
||||
, id_obiect_depozit N(10,0), id_rul_aux N(10,0), nract N(20,0), serie_act C(10);
|
||||
, dataoras T, id_utils N(10,0), lot C(30), adata_expirare T;
|
||||
, id_sucursala N(5,0), sucursala C(250), id_part_rez N(10,0), part_rez C(100);
|
||||
, id_lucrare_rez N(10,0), nrord_rez C(100), subgrupa C(100), grupa C(100);
|
||||
, id_subgrupa N(5,0), id_grupa N(5,0), in_stoc N(1,0), in_crm N(1,0);
|
||||
, id_furnizor N(10,0), furnizor C(100), id_jtva_coloana N(4,0), explicatie_tva C(100);
|
||||
, taxcode N(6,0), taxname C(254), saft_procent N(18,4), codnc8 C(20);
|
||||
, id_tara_origine N(4,0), cod_tara_origine C(5), tara_origine C(50), greutate N(12,4);
|
||||
, fdoc C(30), id_fdoc N(18,4);
|
||||
, pret_lei N(18,4), pret_val N(14,4), cota_tva N(6,2))
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE CreeazaIntrodc
|
||||
LPARAMETERS tcAlias
|
||||
IF USED(tcAlias)
|
||||
USE IN (tcAlias)
|
||||
ENDIF
|
||||
CREATE CURSOR (tcAlias) ( ;
|
||||
id_note N(14), explicatia C(100), scd C(10), ascd C(20), scc C(10), ascc C(20), ;
|
||||
cu_tva N(1), id_set N(14), ordine N(8), in_valuta N(1), id_jtva_coloana N(14) NULL, ;
|
||||
ptva N(6,2), explicatie_tva C(50), tipjurnal C(2), taxcode N(6), paymentcode C(9), ;
|
||||
suma N(18,4), suma_val N(18,4), id_partd N(14), id_partc N(14), partd C(100), partc C(100), ;
|
||||
id_fact N(14), id_factd N(14), id_factc N(14), pereched N(14), perechec N(14), ;
|
||||
nract N(14), serie_act C(10), explicatia4 C(50), explicatia5 C(50), participa_valuta L, ;
|
||||
id_valuta N(14), curs N(14,4), nume_val C(10), dataact D, fdoc C(50), id_fdoc N(14), ;
|
||||
se_scrie N(1), tva_incasare N(1), doc_color N(10), doc_label C(10), tip_rand C(1), ;
|
||||
doc_key C(80), nr_doc N(8), suma_doc N(18,4), suma_doc_val N(18,4), mod_manual N(1), expl_manual N(1), ;
|
||||
scd_orig C(20), ascd_orig C(20), rand_dvi N(1), valuta_proprie N(1))
|
||||
ENDPROC
|
||||
|
||||
FUNCTION RECCOUNT_ACTIVE
|
||||
LPARAMETERS tcAlias
|
||||
LOCAL lnSel, lnCnt
|
||||
lnSel = SELECT()
|
||||
SELECT (tcAlias)
|
||||
COUNT TO lnCnt FOR !DELETED()
|
||||
SELECT (lnSel)
|
||||
RETURN lnCnt
|
||||
ENDFUNC
|
||||
|
||||
PROCEDURE ApErr
|
||||
LPARAMETERS tnErr, tcMsg, tcProg, tnLine
|
||||
DO ApLog WITH 'ON ERROR ' + TRANSFORM(tnErr) + ' [' + tcProg + ':' + TRANSFORM(tnLine) + '] ' + tcMsg
|
||||
ENDPROC
|
||||
|
||||
PROCEDURE ApLog
|
||||
LPARAMETERS tcMsg
|
||||
SET SAFETY OFF
|
||||
LOCAL lcL
|
||||
lcL = IIF(FILE(gcUILog), FILETOSTR(gcUILog), '')
|
||||
STRTOFILE(lcL + tcMsg + CHR(13)+CHR(10), gcUILog)
|
||||
ENDPROC
|
||||
|
||||
DEFINE CLASS dummyapp AS Custom
|
||||
PROCEDURE ReadIni
|
||||
LPARAMETERS tcSection, tcKey
|
||||
RETURN ''
|
||||
ENDPROC
|
||||
PROCEDURE WriteIni
|
||||
LPARAMETERS tcSection, tcKey, tcValue
|
||||
RETURN .T.
|
||||
ENDPROC
|
||||
ENDDEFINE
|
||||
|
||||
DEFINE CLASS dummyexecutor AS Custom
|
||||
cEroare = ''
|
||||
PROCEDURE oExecute
|
||||
LPARAMETERS tcSql, tcCursor
|
||||
IF USED(m.tcCursor)
|
||||
USE IN (m.tcCursor)
|
||||
ENDIF
|
||||
IF 'VJTVA_COLOANE' $ UPPER(m.tcSql)
|
||||
DO CreeazaJtvaColoaneView WITH m.tcCursor
|
||||
RETURN 1
|
||||
ENDIF
|
||||
IF UPPER(ALLTRIM(m.tcCursor)) == 'RUL_TEMP'
|
||||
CREATE CURSOR (m.tcCursor) (denumire C(100), codmat C(30), cant N(14,3), ;
|
||||
pret_val N(18,4), pretd N(18,4), pret N(18,4), pret_lei N(18,4), cont C(10), ;
|
||||
acont C(20), serie C(30), lot C(30), adata_expirare C(10), proc_disc N(6,2), cota_tva N(6,2))
|
||||
RETURN 1
|
||||
ENDIF
|
||||
IF 'CONFIG_ANALITICE' $ UPPER(m.tcSql)
|
||||
*-- gnMockConfigAnaliticeRows=0 simuleaza cazul real (301): niciun rand de configurare.
|
||||
CREATE CURSOR (m.tcCursor) (camp_leg_prefix C(30), camp_leg_sufix C(30))
|
||||
IF TYPE('gnMockConfigAnaliticeRows') # 'N' OR gnMockConfigAnaliticeRows # 0
|
||||
INSERT INTO (m.tcCursor) VALUES ('', '')
|
||||
ENDIF
|
||||
RETURN 1
|
||||
ENDIF
|
||||
IF 'FCONTURI_ANALITICE' $ UPPER(m.tcSql)
|
||||
CREATE CURSOR (m.tcCursor) (acont C(20))
|
||||
INSERT INTO (m.tcCursor) VALUES (IIF(TYPE('gcMockAcontCrt') = 'C', gcMockAcontCrt, ''))
|
||||
RETURN 1
|
||||
ENDIF
|
||||
IF 'VPLCONT_ANALITIC' $ UPPER(m.tcSql)
|
||||
CREATE CURSOR (m.tcCursor) (cont C(10), acont C(20))
|
||||
IF 'INACTIV' $ UPPER(m.tcSql)
|
||||
&& interogarea larga a valideaza_sume - filtrare client-side per articol in cod
|
||||
INSERT INTO (m.tcCursor) VALUES ('212', '1')
|
||||
INSERT INTO (m.tcCursor) VALUES ('301', '1')
|
||||
INSERT INTO (m.tcCursor) VALUES ('301', '2')
|
||||
ELSE
|
||||
&& interogarea punctuala a assign_analitic (cont+acont) - gnMockVerificaAnaliticGasit
|
||||
IF TYPE('gnMockVerificaAnaliticGasit') # 'N' OR gnMockVerificaAnaliticGasit # 0
|
||||
INSERT INTO (m.tcCursor) VALUES ('301', '1')
|
||||
ENDIF
|
||||
ENDIF
|
||||
RETURN 1
|
||||
ENDIF
|
||||
CREATE CURSOR (m.tcCursor) (id_temp N(1))
|
||||
RETURN 1
|
||||
ENDPROC
|
||||
PROCEDURE oExecuta
|
||||
LPARAMETERS tcSql, tcCursor
|
||||
IF !EMPTY(m.tcCursor)
|
||||
IF USED(m.tcCursor)
|
||||
USE IN (m.tcCursor)
|
||||
ENDIF
|
||||
IF UPPER(m.tcCursor) == 'CJTVACOL4427'
|
||||
CREATE CURSOR (m.tcCursor) (id_jtva_coloana N(14))
|
||||
ELSE
|
||||
CREATE CURSOR (m.tcCursor) (id_temp N(1))
|
||||
ENDIF
|
||||
ENDIF
|
||||
RETURN .T.
|
||||
ENDPROC
|
||||
PROCEDURE oSelect2Value
|
||||
LPARAMETERS tcSql, toValue
|
||||
toValue = ''
|
||||
RETURN 1
|
||||
ENDPROC
|
||||
PROCEDURE oReset
|
||||
ENDPROC
|
||||
ENDDEFINE
|
||||
|
||||
PROCEDURE CreeazaJtvaColoaneView
|
||||
LPARAMETERS tcCursor
|
||||
IF USED(m.tcCursor)
|
||||
USE IN (m.tcCursor)
|
||||
ENDIF
|
||||
CREATE CURSOR (m.tcCursor) (id_jtva_coloana N(14), denumire C(100), jc N(1), jv N(1), ;
|
||||
coloana_jc C(20), coloana_jv C(20), cota_tva N(6,2), id_tva N(14) NULL, afisat N(1), ;
|
||||
id_jtva_ex N(14) NULL, id_jtva_neex N(14) NULL, ordine N(8), ;
|
||||
taxcode N(6) NULL, taxcode_neexigibil N(6) NULL, taxcode_n50 N(6) NULL, ;
|
||||
taxcode_n50_tvai N(6) NULL, taxcode_n100 N(6) NULL, taxcode_regularizare N(6) NULL, taxcode_tvai N(6) NULL)
|
||||
INSERT INTO (m.tcCursor) (id_jtva_coloana, denumire, jc, jv, afisat, ordine, cota_tva) VALUES (0, '', 0, 0, 1, 0, 0)
|
||||
INSERT INTO (m.tcCursor) (id_jtva_coloana, denumire, jc, jv, coloana_jc, cota_tva, id_tva, afisat, ordine, taxcode) ;
|
||||
VALUES (208, 'ACH. INT. 21%', 1, 0, 'RO21B', 21, 209, 1, 1, 301104)
|
||||
INSERT INTO (m.tcCursor) (id_jtva_coloana, denumire, jc, jv, coloana_jc, cota_tva, afisat, ordine, taxcode) ;
|
||||
VALUES (209, 'TVA ACH. INT. 21%', 1, 0, 'RO21T', 21, 1, 2, 301104)
|
||||
ENDPROC
|
||||
@@ -0,0 +1,14 @@
|
||||
# test_repro_analitic_nomenclator.ps1 - wrapper peste harness-ul generic pentru repro-ul
|
||||
# analiticului pierdut la adaugarea articolelor cu cont/analitic din nomenclator, cand
|
||||
# config_analitice nu are rand de configurare pt. cont (ointroduceri.vc2, import_nota).
|
||||
# Rulare:
|
||||
# powershell -ExecutionPolicy Bypass -File test_repro_analitic_nomenclator.ps1
|
||||
$ErrorActionPreference = 'Stop'
|
||||
$Teste = $PSScriptRoot
|
||||
& (Join-Path (Split-Path $Teste -Parent) 'vfp_ui_harness.ps1') `
|
||||
-TestPrg (Join-Path $Teste 'test_repro_analitic_nomenclator.prg') `
|
||||
-Steps @('dupa_adauga_articol','dupa_valideaza_sume','dupa_editare_manuala','final') `
|
||||
-ShotsDir (Join-Path $Teste 'screenshots_repro_analitic_nomenclator') `
|
||||
-SyncDir (Join-Path $Teste 'uisync_repro_analitic_nomenclator') `
|
||||
-StepTimeoutSec 220 `
|
||||
-ReadyTimeoutSec 220
|
||||
@@ -33,6 +33,12 @@ FUNCTION cauta_nom_articole
|
||||
CASE lcCodmatCautat == 'ART-A8-371'
|
||||
INSERT INTO crsMockCautaArt (denumire, codmat, codbare, um, grupa, subgrupa, cont, acont, dnf, id_articol) ;
|
||||
VALUES ('A8', 'ART-A8-371', '8003510000203', 'BUC', '', '', '371', '', '', 9003)
|
||||
CASE lcCodmatCautat == 'ART-TABLA-301'
|
||||
INSERT INTO crsMockCautaArt (denumire, codmat, codbare, um, grupa, subgrupa, cont, acont, dnf, id_articol) ;
|
||||
VALUES ('TABLA 30HGSA 10*1500*2000', 'ART-TABLA-301', '', 'BUC', '', '', '301', '1', '', 9004)
|
||||
CASE lcCodmatCautat == 'ART-TABLA9-301'
|
||||
INSERT INTO crsMockCautaArt (denumire, codmat, codbare, um, grupa, subgrupa, cont, acont, dnf, id_articol) ;
|
||||
VALUES ('TABLA NECONFORMA', 'ART-TABLA9-301', '', 'BUC', '', '', '301', '9', '', 9005)
|
||||
OTHERWISE
|
||||
INSERT INTO crsMockCautaArt (denumire, codmat, codbare, um, grupa, subgrupa, cont, acont, dnf, id_articol) ;
|
||||
VALUES ('BULDOEXCAVATOR', 'ART-BULD-212', '', 'BUC', '', '', '212', '', '', 9001)
|
||||
|
||||
Reference in New Issue
Block a user