563 lines
16 KiB
Plaintext
563 lines
16 KiB
Plaintext
*!* Parameters tnScrie_Sterge, tlModificare, tlRul
|
|
|
|
*!* #Define crlf Chr(13) + Chr(10)
|
|
*!* Local lnSucces
|
|
|
|
*!* ON ERROR deconecteaza()
|
|
|
|
*!* lnSucces = -1
|
|
*!* If Reccount('actactan') = 0
|
|
*!* Messagebox('Nu s-a inregistrat nota contabila.')
|
|
*!* Return lnSucces
|
|
*!* Endif
|
|
|
|
*!* If Empty(tnScrie_Sterge) Or Isnull(tnScrie_Sterge)
|
|
*!* tnScrie_Sterge = 0
|
|
*!* Endif
|
|
|
|
*!* If !Used('ACTACTAN')
|
|
*!* Messagebox('Nu exista fisierul <actactan>.')
|
|
*!* Return lnSucces
|
|
*!* Endif
|
|
|
|
*!* If tnScrie_Sterge = 2
|
|
*!* Select actactan
|
|
*!* Locate
|
|
*!* lnCod = cod
|
|
*!* Endif
|
|
|
|
*!* *!* modificare 18.09.2007
|
|
*!* If tnScrie_Sterge = 2 And !tlModificare And Used('rul_temp') And Reccount('rul_temp') > 0
|
|
*!* Private pcMesaj
|
|
*!* Store '' To pcMesaj
|
|
*!* lcSql = [begin ] + gcS +[.verifica_stoc(] + Alltrim(Str(lnCod)) + [,?@pcMesaj); end;]
|
|
*!* lnSucces = executaSql(lcSql,"",.t.)
|
|
*!* If lnSucces < 0
|
|
*!* * Messagebox(goExecutor.oPrelucrareEroare(),16,"Eroare")
|
|
*!* Return lnSucces
|
|
*!* Endif
|
|
*!* If !Isnull(pcMesaj)
|
|
*!* Messagebox(pcMesaj,48,"Atentie")
|
|
*!* Release pcMesaj
|
|
*!* Return -5
|
|
*!* Endif
|
|
*!* Release pcMesaj
|
|
*!* Endif
|
|
*!* *!* modificare 18.09.2007 ^
|
|
|
|
*!* && RESETARE VARIABILE
|
|
*!* lcSql = [begin pack_contafin.reset_variables(); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
*!* If lnSucces < 0
|
|
*!* * Messagebox('Resetare variabile ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* Return lnSucces
|
|
*!* Endif
|
|
*!* &&------------------------------------------------------------------------------------
|
|
*!* llManualTransactions = Iif(SQLGetprop(gnhandle,"Transactions")=2,.T.,.F.)
|
|
|
|
*!* If lnSucces > 0
|
|
*!* If !tlModificare And !llManualTransactions
|
|
*!* lnSucces = SQLSetprop(gnhandle,"Transactions",2)
|
|
*!* Endif
|
|
*!* Endif
|
|
*!* && SETARE VARIABILE
|
|
|
|
*!* If lnSucces > 0
|
|
*!* lcSql = [begin pack_contafin.set_idutil(?gnIdUtil); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* If lnSucces < 0
|
|
*!* * Messagebox('Setare ID utilizator ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* Endif
|
|
*!* Endif
|
|
*!* If lnSucces > 0
|
|
*!* pddata = {}
|
|
*!* lcSql = [begin pack_contafin.set_dataora(?pddata); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('Setare DataOra ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* lcSql = [begin pack_contafin.set_an(?gnAn); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('Setare An ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* lcSql = [begin pack_contafin.set_luna(?gnLuna); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('Setare Luna ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0 And tnScrie_Sterge <> 2
|
|
*!* && genereaza un cod de operatie
|
|
*!* lcSql = [begin pack_contafin.SET_COD('] + gcS +['); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox(goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
*!* &&------------------------------------------------------------------------------------
|
|
*!* If lnSucces > 0
|
|
*!* && seteaza id_sucursala
|
|
*!* lcSql = [begin pack_contafin.SET_ID_SUCURSALA(?gnIdSucursala); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox(goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* lnSucces = sql_temp_insert('actactan','ACT_TEMP')
|
|
|
|
*!* If lnSucces > 0 And tlRul
|
|
*!* If Used('rul_temp') And Reccount('rul_temp')>0
|
|
*!* lnSucces = sql_temp_insert('rul_temp','RUL_TEMP')
|
|
*!* Endif
|
|
*!* If Used('RUL_TEMP_OBINV') And Reccount('RUL_TEMP_OBINV')>0
|
|
*!* lnSucces = sql_temp_insert('rul_temp_obinv','RUL_TEMP_OBINV')
|
|
*!* Endif
|
|
*!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* && SCRIE IN ACT
|
|
*!* If tnScrie_Sterge <> 2
|
|
*!* If lnSucces > 0
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_ACT('] + gcS +['); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE_IN_ACT ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
*!* Else
|
|
*!* If tlModificare
|
|
*!* lnSterge = 0
|
|
*!* Else
|
|
*!* lnSterge = 1
|
|
*!* Endif
|
|
*!* lcSql = [begin pack_contafin.STERGE_DIN_ACT('] + gcS +[',] + Alltrim(Str(gnAn)) + [,] + Alltrim(Str(gnLuna)) + [,] + Alltrim(Str(lnCod)) + [,] + Alltrim(Str(gnIdUtil)) + [,] + Alltrim(Str(lnSterge))+ [); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('STERGE_DIN_ACT ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
|
|
*!* Endif
|
|
*!* Endif
|
|
*!* If lnSucces > 0 And tlRul
|
|
*!* && SCRIE IN RUL
|
|
*!* If tnScrie_Sterge <> 2
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_RUL(?gcS); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE IN RUL ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Else
|
|
|
|
*!* lcSql = [begin pack_contafin.STERGE_DIN_RUL('] + gcS +[',] + Alltrim(Str(gnAn)) + [,] + Alltrim(Str(gnLuna)) + [,] + Alltrim(Str(lnCod)) + [,] + Alltrim(Str(gnIdUtil)) + [); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('STERGE DIN RUL ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
|
|
*!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0 And tlRul And Used('RUL_TEMP_OBINV') And Reccount('RUL_TEMP_OBINV')>0
|
|
*!* && SCRIE IN RUL_OBINV
|
|
*!* If tnScrie_Sterge <> 2
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_RUL_OBINV(?gcS); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE IN RUL_OBINV ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Else
|
|
|
|
*!* lcSql = [begin pack_contafin.STERGE_DIN_RUL_OBINV('] + gcS +[',] + Alltrim(Str(gnAn)) + [,] + Alltrim(Str(gnLuna)) + [,] + Alltrim(Str(lnCod)) + [,] + Alltrim(Str(gnIdUtil)) + [); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('STERGE DIN RUL_OBINV ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
|
|
*!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* && SCRIE IN BALANTA
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_BALANTA('] + gcS +[',] + Alltrim(Str(gnAn)) + [,] + Alltrim(Str(gnLuna)) + [,] + Alltrim(Str(tnScrie_Sterge)) + [); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE_IN_BALANTA ' +goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* && SCRIE IN BALANTA_PARTENERI
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_BALANTA_PARTENERI('] + gcS +[',] + Alltrim(Str(gnAn)) + [,] + Alltrim(Str(gnLuna)) + [,'',] + Alltrim(Str(tnScrie_Sterge)) + [); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE_IN_BALANTA_PARTENERI '+goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* && SCRIE IN IREG_PARTENERI
|
|
*!* * lcSql = [begin pack_contafin.SCRIE_IN_IREG_PARTENERI('] + gcS +[',] + ALLTRIM(STR(gnAn)) + [,] + ALLTRIM(STR(gnLuna)) + [,'',] + ALLTRIM(STR(tnScrie_Sterge)) + [,1); end;]
|
|
*!* lcSql = [begin pack_contafin.EXECUTA_SCRIE_IN_IREG('] + gcS +[',] + Alltrim(Str(gnAn)) + [,] + Alltrim(Str(gnLuna)) + [,'',] + Alltrim(Str(tnScrie_Sterge)) + [,0); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('Executa_SCRIE_IN_INREGISTRARI_PARTENERI '+goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* && SCRIE IN CUMP
|
|
*!* Select infisiere
|
|
*!* Locate For Cont = '4426'
|
|
*!* lcCorespD = Alltrim(coresp_d)
|
|
*!* lcCorespC = Alltrim(coresp_c)
|
|
*!* lcCorespDtva = Alltrim(coresp_d) + [,4428,4427]
|
|
*!* lcCorespCtva = Alltrim(coresp_c)
|
|
*!* lcExceptii = [-1]
|
|
*!* lcSql = [select distinct cont_c as exceptie from ] + gcS + [.exceptii_ireg where cont in (] + ;
|
|
*!* lcCorespD + [) and invers = 1]
|
|
*!* lnSucces = executaSql(lcSql,'cont_exceptii',.t.)
|
|
*!* If lnSucces > 0
|
|
*!* Select cont_exceptii
|
|
*!* Scan
|
|
*!* lcExceptii = lcExceptii + ',' + Alltrim(exceptie)
|
|
*!* Endscan
|
|
*!* Use In cont_exceptii
|
|
*!* Endif
|
|
*!* If gnAn >= 2007
|
|
*!* lcSql = [begin PACK_CONTAFIN.SCRIE_JV_2007(?gnAn, ?gnLuna, ] + ;
|
|
*!* Iif(tnScrie_Sterge <> 2, 'pack_contafin.nScriere', 'pack_contafin.nStergere') + [); end;]
|
|
*!* Else
|
|
*!* lcSql = [begin pack_contafin.EXECUTA_SCRIE_TVA('] + gcS +[', 'cump', 1.19, 1.09, '] + ;
|
|
*!* lcCorespDtva +[', '] + lcCorespD +[', '] + lcCorespCtva +[', '] + lcCorespC + ;
|
|
*!* [','4426', '] + lcExceptii +[',] + pcan + [, ] + pcnl + [,] + Alltrim(Str(tnScrie_Sterge)) + [ ); end;]
|
|
*!* Endif
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE_IN_CUMP ' +goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* && SCRIE IN VANZ
|
|
*!* Select infisiere
|
|
*!* Locate For Cont = '4427'
|
|
*!* lcCorespD = Alltrim(coresp_d)
|
|
*!* lcCorespC = Alltrim(coresp_c)+ [,5121,5311]
|
|
*!* lcCorespDtva = Alltrim(coresp_d)
|
|
*!* lcCorespCtva = Alltrim(coresp_c) + [,4428,4426]
|
|
*!* * lcExceptii = [667,622,419]
|
|
*!* lcExceptii = [419]
|
|
*!* lcSql = [select distinct cont_c as exceptie from ] + gcS + [.exceptii_ireg where cont in (] + lcCorespC + [) and invers = 1]
|
|
*!* lnSucces = executaSql(lcSql,'cont_exceptii',.t.)
|
|
*!* If lnSucces > 0
|
|
*!* Select cont_exceptii
|
|
*!* Scan
|
|
*!* lcExceptii = lcExceptii + ',' + Alltrim(exceptie)
|
|
*!* Endscan
|
|
*!* Use In cont_exceptii
|
|
*!* Endif
|
|
*!* If gnAn >= 2007
|
|
*!* lcSql = [begin PACK_CONTAFIN.SCRIE_JC_2007(?gnAn, ?gnLuna, ] + ;
|
|
*!* Iif(tnScrie_Sterge <> 2, 'pack_contafin.nScriere', 'pack_contafin.nStergere') + [); end;]
|
|
*!* Else
|
|
*!* lcSql = [begin pack_contafin.EXECUTA_SCRIE_TVA('] + gcS +[', 'vanz', 1.19, 1.09, '] + ;
|
|
*!* lcCorespDtva +[', '] + lcCorespD +[', '] + lcCorespCtva +[', '] + lcCorespC +[','4427', '] + ;
|
|
*!* lcExceptii +[',] + pcan + [, ] + pcnl + [,] + Alltrim(Str(tnScrie_Sterge)) + [ ); end;]
|
|
*!* Endif
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE_IN_VANZ '+goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
|
|
*!* *!* lcSql = [SELECT * FROM ] + gcS + [.ACT_TEMP]
|
|
*!* *!* lcCursor = [crsACT_TEMP]
|
|
*!* *!* lnSucces = executaSql(lcSql,lcCursor)
|
|
*!* *!* SELECT crsACT_TEMP
|
|
*!* *!* BROWSE
|
|
*!* *!* USE IN CRSACT_TEMP
|
|
|
|
*!* If lnSucces > 0 And tlRul
|
|
*!* Private pcTabel
|
|
*!* pcTabel = [STOC]
|
|
*!* pcIdTabel = [ID_STOC]
|
|
*!* pcConditie = [2=2]
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_Stoc(?gcS,?gnAn,?gnLuna,0,?pcTabel,?pcIdTabel,?pcConditie); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE IN STOC ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0 And tlRul And Used('RUL_TEMP_OBINV') And Reccount('RUL_TEMP_OBINV')>0
|
|
*!* Private pcTabel
|
|
*!* pcTabel = [STOC_OBINV]
|
|
*!* pcIdTabel = [ID_STOC]
|
|
*!* pcConditie = [2=2]
|
|
*!* lcSql = [begin pack_contafin.SCRIE_IN_Stoc_OBINV(?gcS,?gnAn,?gnLuna,0,?pcTabel,?pcIdTabel,?pcConditie); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox('SCRIE IN STOC_OBINV ' + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* Endif
|
|
|
|
*!* If lnSucces > 0
|
|
*!* Private pcMesajRefacereNota
|
|
*!* pcMesajRefacereNota = ""
|
|
*!* lcSql = [begin pack_refacere_nota.refacere_nota(?gnAn,?gnLuna,?@pcMesajRefacereNota); end;]
|
|
*!* lnSucces = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces < 0
|
|
*!* *!* Messagebox(goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
*!* If !Empty(Nvl(pcMesajRefacereNota,''))
|
|
*!* Messagebox(pcMesajRefacereNota,0+48,'Atentie')
|
|
*!* Endif
|
|
*!* Release pcMesajRefacereNota
|
|
*!* Endif
|
|
|
|
*!* If !tlModificare And !llManualTransactions
|
|
*!* If lnSucces < 0
|
|
*!* lcSql = "ROLLBACK"
|
|
*!* Else
|
|
*!* lcSql = "COMMIT"
|
|
*!* Endif
|
|
*!* lnSucces2 = executaSql(lcSql,'',.t.)
|
|
|
|
*!* *!* If lnSucces2 < 0
|
|
*!* *!* Messagebox(lcSql + Chr(13) + goExecutor.cEroare,0+16,"Eroare")
|
|
*!* *!* Endif
|
|
|
|
*!* lnSucces2 = SQLSetprop(gnhandle,"Transactions",1)
|
|
*!* If lnSucces2 < 0
|
|
*!* Messagebox([Programul nu a reusit sa treaca pe tranzactie automata. ] + ;
|
|
*!* [Iesiti din program si intrati din nou!],0+48,'Atentie!')
|
|
*!* Endif
|
|
*!* Endif
|
|
|
|
|
|
*!* *!* IF USED('CRS_ACT')
|
|
*!* *!* USE IN CRS_ACT
|
|
*!* *!* ENDIF
|
|
*!* *!* IF USED('rul_temp')
|
|
*!* *!* USE IN rul_temp
|
|
*!* *!* ENDIF
|
|
*!* *!* IF USED('rul_temp_obinv')
|
|
*!* *!* USE IN rul_temp_obinv
|
|
*!* *!* ENDIF
|
|
|
|
*!* Return lnSucces
|
|
#Define crlf Chr(13) + Chr(10)
|
|
|
|
Public gcdatapath, gcapppath, gnhandle
|
|
|
|
gnhandle = conecteaza([jcsserver],[mariusm_auto],[123])
|
|
|
|
gcapppath = Justpath(Sys(16,0))
|
|
*!* gcapppath = Addbs(Justpath(Sys(16,0)))
|
|
*!* gcapppath = Left(gcapppath,Rat("\",gcapppath,2))
|
|
*!* gcdatapath = ADDBS(gcapppath) + [datemenu]
|
|
*!* SET PATH TO (gcdatapath)
|
|
|
|
Set Path To (gcapppath)
|
|
sql_temp_insert([xnote],[xnote])
|
|
|
|
&& ------------------------------------------------------------------------------------
|
|
Procedure sql_temp_insert
|
|
Lparameters tcAlias,tcTableName
|
|
|
|
|
|
If !Used(Addbs(gcapppath) + tcAlias)
|
|
Use (Addbs(gcapppath) + tcAlias)
|
|
Endif
|
|
|
|
Local lcAlias,lcCursor,lnSucces
|
|
Private poIreg
|
|
Local lcVariable
|
|
|
|
If Empty(tcAlias)
|
|
lcAlias = 'ACTACTAN'
|
|
Else
|
|
lcAlias = Upper(Alltrim(tcAlias))
|
|
Endif
|
|
If Empty(tcTableName)
|
|
lcTableName = 'ACT_TEMP'
|
|
Else
|
|
lcTableName = Upper(Alltrim(tcTableName))
|
|
Endif
|
|
|
|
lcCursor = 'crs_Coloane'
|
|
lcSql = [SELECT COLUMN_NAME AS COLOANA from user_tab_columns WHERE table_name = ?lcTableName]
|
|
lnSucces = executaSql(lcSql,lcCursor,.T.)
|
|
*!* If lnSucces < 0
|
|
*!* Messagebox('Eroare la selectare coloane din ' + lcTableName + Chr(13) + goExecutor.cEroare,0+16,'Eroare')
|
|
*!* Endif
|
|
|
|
If lnSucces > 0
|
|
***
|
|
Select (lcAlias)
|
|
lnCount = Fcount()
|
|
Select (lcAlias)
|
|
lcFields = []
|
|
lcValues = []
|
|
lcInsert = []
|
|
Scatter Name poIreg
|
|
For i = 1 To lnCount
|
|
?i
|
|
Select (lcAlias)
|
|
lcFieldName = Upper(Alltrim(Field(i)))
|
|
lcFieldType = Type(lcFieldName)
|
|
lcFieldValue = Evaluate(lcFieldName)
|
|
|
|
Do Case
|
|
Case lcFieldType = "C"
|
|
lcVariable = '?ALLTRIM(poIreg.' + lcFieldName + ')'
|
|
* CASE lcfieldtype = "L"
|
|
* lcvariable = IIF(&poIreg.lcFieldName,[1,],[0,]
|
|
Otherw
|
|
lcVariable = '?poIreg.' + lcFieldName
|
|
Endcase
|
|
|
|
Select CRS_COLOANE
|
|
Locate For Upper(Alltrim(COLOANA)) == lcFieldName
|
|
If !Found()
|
|
Loop
|
|
Endif
|
|
lcFields = lcFields + [,] + lcFieldName
|
|
lcNumber = '0'
|
|
lcDate = ''
|
|
lcString = ''
|
|
|
|
&& FAC NULL ID-URILE CU VALOARE 0
|
|
If Inlist(lcFieldName, 'ID_SUCURSALA')
|
|
If poIreg.id_sucursala = 0
|
|
poIreg.id_sucursala = Null
|
|
Endif
|
|
Endif
|
|
lcValues = lcValues + [,] + lcVariable
|
|
|
|
Endfor
|
|
|
|
lcFields = Substr(lcFields,2)
|
|
lcValues = Substr(lcValues,2)
|
|
|
|
|
|
&& INSERT INTO ACT_TEMP
|
|
lcInsert = [INSERT INTO ] + lcTableName + [ (] + lcFields + [) VALUES (] + lcValues + [)]
|
|
|
|
|
|
Scan
|
|
lnSucces = executaSql(lcInsert,'',.T.)
|
|
If lnSucces < 0
|
|
Messagebox([eroare])
|
|
Exit
|
|
Endif
|
|
Endscan
|
|
|
|
Endif
|
|
If Used('crs_coloane')
|
|
Use In CRS_COLOANE
|
|
Endif
|
|
USE IN (SELECT(Addbs(gcapppath) + tcAlias))
|
|
|
|
Return lnSucces
|
|
|
|
Endproc && sql_temp_insert
|
|
|
|
|
|
|
|
************************ inceput conecteaza ***************************
|
|
Procedure conecteaza
|
|
Lparameters tcHost, tcUser, tcPassword
|
|
|
|
gnhandle = SQLConnect(tcHost, tcUser, tcPassword)
|
|
If gnhandle < 1
|
|
Aerror(laEroare)
|
|
Messagebox(laEroare(2))
|
|
Endif
|
|
|
|
Return gnhandle
|
|
Endproc
|
|
|
|
**************************** inceput executaSql ***************************
|
|
Function executaSql
|
|
Lparameters cmdSql, crsName, tlShowErr
|
|
Local lnSucces
|
|
|
|
lnSucces = -1
|
|
|
|
If Pcount() < 2 And !m.tlShowErr
|
|
crsName=""
|
|
Endif
|
|
|
|
If gnhandle > 0
|
|
lnSucces=SQLExec(gnhandle,cmdSql,crsName)
|
|
|
|
If lnSucces < 0 And m.tlShowErr
|
|
Aerror(laEroare)
|
|
eroaresql(@laEroare,cmdSql)
|
|
Endif
|
|
Endif
|
|
|
|
Return lnSucces
|
|
Endfunc
|
|
|
|
************************* inceput deconecteaza ************************
|
|
Function deconecteaza
|
|
*Lparameters lnConn
|
|
Local lnSucces
|
|
|
|
lnSucces = -1
|
|
If lnConn > 0
|
|
lnSucces = SQLDisconnect(gnhandle)
|
|
Endif
|
|
|
|
On Error
|
|
Return lnSucces
|
|
Endfunc
|
|
|
|
******************************* inceput eroareSql **********************************
|
|
Procedure eroaresql
|
|
Lparameters laErr, lcSql
|
|
|
|
External Array laErr
|
|
|
|
Local lcMesaj
|
|
|
|
lcMesaj = [Eroare # : ] + Alltrim(Str(laErr(1))) + crlf + ;
|
|
[Mesajul : ] + laErr(2) + ;
|
|
IIF(!Empty(laErr(3)), [Eroare OLE : ] + laErr(3) ,[]) + ;
|
|
[Aplicatie : ] + laErr(4) + ;
|
|
IIF(Pcount() = 2, crlf + lcSql, [])
|
|
Messagebox(lcMesaj,0+16)
|
|
|
|
Endproc
|