* test_init_env_registratura.prg * Init mediu NEINTERACTIV pentru teste headless ROAREGISTRATURA * (echivalentul COMUN\utile\Teste\test_init_env_auto.prg, dar pentru acest proiect). * SET PATH / CLASSLIB / PROCEDURE preluate din Programe\roaregistratura.prg (a se mentine sincron). * * Utilizare (dintr-un script apelant): * DO Teste\test_init_env_registratura WITH 'CENTRAL', 'MARIUSM_AUTO', 'parola' * IF gnHandle <= 0 ... eroare conectare * ATENTIE: NU se ruleaza pe baza de productie (JCSSERVER / CONTAFIN_ORACLE). LPARAMETERS tcHost, tcSchema, tcPassword, tnAn, tnLuna tcHost = IIF(EMPTY(tcHost), 'CENTRAL', tcHost) tcSchema = IIF(EMPTY(tcSchema), 'MARIUSM_AUTO', tcSchema) tcPassword = IIF(EMPTY(tcPassword), 'ROMFASTSOFT', tcPassword) SET DELETED ON SET ANSI ON SET EXACT ON SET SAFETY OFF CLOSE DATABASES SET CENTURY ON SET DATE DMY SET NULLDISPLAY TO '' SET SQLBUFFERING ON PUBLIC CT_SUCCES, CT_INSUCCES, crlf, gnAn, gnLuna, gnIdUtil, gnIdFirma, gcS, gcFirma, ; gcNumeProgram, gcAppName, buton, gnButon, pnButon, gcAcces, glParametri, glQuit CT_SUCCES = 1 CT_INSUCCES = -1 crlf = CHR(13) + CHR(10) gnAn = IIF(EMPTY(tnAn), YEAR(DATE()), tnAn) gnLuna = IIF(EMPTY(tnLuna), MONTH(DATE()), tnLuna) gnIdUtil = -3 gnIdFirma = 110 gcS = UPPER(ALLTRIM(tcSchema)) gcFirma = m.gcS gcNumeProgram = [ROAREGISTRATURA] gcAppName = [ROAREGISTRATURA] glParametri = .T. glQuit = .F. buton = 1 gnButon = 1 pnButon = 1 gcAcces = [1;2;3;4;5;6;7;8;] * globale cerute de oserii_numere/oinit_optiuni (sincron cu test_init_env_auto.prg) PUBLIC gnIdSucursala, gnIdMama, glEMama, gcCondSucursala, glLunaInchisa, gcUserName gnIdSucursala = NULL gnIdMama = 0 glEMama = .F. gcCondSucursala = [] glLunaInchisa = .F. gcUserName = [MARIUS M] * vezi comentariul din test_init_env_auto.prg: PUBLIC, nu Declare PUBLIC nror(65000) PUBLIC gcAppPath, DIRGEN, gcBasePath, gcTempPath, gcGeneralIniFile, gcSettingsFile gcAppPath = [D:\ROA\ROAREGISTRATURA\] SET DEFAULT TO (gcAppPath) LOCAL lcPath lcPath = gcAppPath + 'Date;' + ; gcAppPath + 'Include;' + ; gcAppPath + 'FERESTRE;' + ; gcAppPath + 'GRAFICE;' + ; gcAppPath + 'CLASE;' + ; gcAppPath + 'MENIURI;' + ; gcAppPath + 'PROGRAME;' + ; gcAppPath + 'RAPOARTE;' + ; gcAppPath + 'COMUN\CLASE;' + ; gcAppPath + 'COMUN\FERESTRE;' + ; gcAppPath + 'COMUN\PROGRAME;' + ; gcAppPath + 'COMUN\GRAFICE;' + ; gcAppPath + 'COMUN\RAPOARTE;' + ; gcAppPath + 'COMUN\UTILE\CTL32;' + ; gcAppPath + 'COMUN\UTILE\HPDF;' + ; gcAppPath + 'COMUN\UTILE\WEB;' + ; gcAppPath + 'COMUN\UTILE\TESTE;' + ; ADDBS(SUBSTR(gcAppPath,1,RAT([\],gcAppPath,2)))+[COMUNROA\] SET PATH TO &lcPath ADDITIVE *CLASE - sincron cu Programe\roaregistratura.prg SET CLASSLIB TO clase\roaregistratura ADDITIVE SET CLASSLIB TO CAUT ADDITIVE SET CLASSLIB TO ooptiuni ADDITIVE SET CLASSLIB TO registry ADDITIVE SET CLASSLIB TO decabaza ADDITIVE SET CLASSLIB TO cauta_alfa_forms ADDITIVE SET CLASSLIB TO ferestre_oracle ADDITIVE SET CLASSLIB TO caut_ora ADDITIVE SET CLASSLIB TO ferestre_registratura ADDITIVE SET CLASSLIB TO onomenclatoare ADDITIVE SET CLASSLIB TO Messagebox ADDITIVE SET CLASSLIB TO otoolbar ADDITIVE SET CLASSLIB TO ferestre_cere_date ADDITIVE SET CLASSLIB TO orapoarte_comun ADDITIVE SET CLASSLIB TO onom_articole ADDITIVE SET CLASSLIB TO serii_numere.vcx ADDITIVE SET CLASSLIB TO ferestre_atasamente.vcx ADDITIVE SET CLASSLIB TO wwdialogs.vcx ADDITIVE SET CLASSLIB TO appwiz.vcx ADDITIVE SET CLASSLIB TO accessibility.vcx ADDITIVE SET CLASSLIB TO ofundal_registratura.vcx ADDITIVE *PROCEDURI - sincron cu Programe\roaregistratura.prg SET PROCEDURE TO quitapp ADDITIVE SET PROCEDURE TO init_program ADDITIVE SET PROCEDURE TO oproceduri_comune ADDITIVE SET PROCEDURE TO gencursor.prg ADDITIVE SET PROCEDURE TO update_nomenclator.prg ADDITIVE SET PROCEDURE TO onomenclatoare ADDITIVE SET PROCEDURE TO oproceduri_ams ADDITIVE SET PROCEDURE TO ocautare ADDITIVE SET PROCEDURE TO oinit_optiuni ADDITIVE SET PROCEDURE TO osecurity ADDITIVE SET PROCEDURE TO oproceduri_roaregistratura ADDITIVE SET PROCEDURE TO acces_meniu ADDITIVE SET PROCEDURE TO oheader ADDITIVE SET PROCEDURE TO oparteneri_contracte ADDITIVE SET PROCEDURE TO oproceduri_maintenance.prg ADDITIVE SET PROCEDURE TO cauta_alfa ADDITIVE SET PROCEDURE TO ini.prg ADDITIVE SET PROCEDURE TO oserii_numere ADDITIVE SET PROCEDURE TO oproceduri_atasamente ADDITIVE SET PROCEDURE TO oexport.prg ADDITIVE SET PROCEDURE TO iniacces.prg ADDITIVE SET PROCEDURE TO filebringer.prg ADDITIVE SET PROCEDURE TO log_mesaje.prg ADDITIVE SET PROCEDURE TO wwutils.prg ADDITIVE && ShortPath() folosit de Log_Mesaje.Init DECLARE INTEGER GetPrivateProfileString IN WIN32API ; STRING, STRING, STRING, STRING @, INTEGER, STRING DECLARE INTEGER WritePrivateProfileString IN Win32Api ; STRING, STRING, STRING, STRING DECLARE INTEGER PathFileExists IN shlwapi STRING pszPath PUBLIC poLog, goLog, goApp poLog = NEWOBJECT("Log_Mesaje","Log_Mesaje.prg") goLog = poLog goApp = CREATEOBJECT("wzApplication") DIRGEN = [D:\ROA\] gcBasePath = DIRGEN gcGeneralIniFile = DIRGEN + "settings.ini" gcSettingsFile = m.gcGeneralIniFile gcTempPath = ADDBS(SYS(2023)) + gcS + [\] IF !DIRECTORY(gcTempPath) MD (gcTempPath) ENDIF PUBLIC gnHandle, goExecutor, goConn, goFirma, goCalendar gnHandle = 0 goExecutor = CREATEOBJECT("oExecutor") goConn = CREATEOBJECT("oConn") goConn.Connect(m.tcHost, m.tcSchema, m.tcPassword) IF m.gnHandle <= 0 RETURN .F. ENDIF LOCAL llSucces, lcSql goFirma = NULL llSucces = goExecutor.oExecuta("select * from syn_v_nom_firme where schema = ?gcS", "cFirma") IF m.llSucces SELECT cFirma gnIdFirma = id_firma gcFirma = ALLTRIM(firma) SCATTER NAME goFirma ELSE goFirma = CREATEOBJECT('custom') goFirma.AddProperty('cod_fiscal', '') goFirma.AddProperty('schema', m.gcS) goFirma.AddProperty('firma', m.gcS) ENDIF USE IN (SELECT('cFirma')) CREATE CURSOR dual (dummy c(10)) INSERT INTO dual (dummy) VALUES ("") * sesiune Oracle (pachetele pot lipsi din unele scheme - nu oprim initul) lcSql = [begin pack_sesiune.set_Id_Util(?gnIdUtil); end;] llSucces = goExecutor.oExecuta(lcSql) lcSql = [begin pack_sesiune.setluna(?gnLuna); pack_sesiune.setan(?gnAn); end;] llSucces = goExecutor.oExecuta(lcSql) * variabilele globale ale aplicatiei folosite de fluxul registratura PUBLIC poReg, goRegistratura, podg_dg, podg_referinte, podg_obs, podg_link, goFundal STORE '' TO poReg, goRegistratura RETURN .T.