296 lines
8.3 KiB
Plaintext
296 lines
8.3 KiB
Plaintext
|
|
gnHandle = SQLCONNECT('ROA_ARGENTA', 'ARGENTA', '123')
|
|
|
|
SET PROCEDURE TO D:\CONTAFIN_ORACLE\COMUN\PROGRAME\OPROCEDURI_COMUNE.PRG ADDITIVE
|
|
|
|
PRIVATE goExecutor, gcS
|
|
gcS = 'ARGENTA'
|
|
goExecutor = CREATEOBJECT("oExecutor")
|
|
goExecutor.nHandle = gnHandle
|
|
|
|
LOCAL lcEroare, lnAn1, lnLuna1, lnAn2, lnLuna2
|
|
LOCAL lnRecno, i, lnSucces
|
|
|
|
lcEroare = ''
|
|
lnAn1 = 1995
|
|
lnLuna1 = 1
|
|
lnAn2 = 2006
|
|
lnLuna2 = 2
|
|
|
|
SELECT crsPartenerDiferente
|
|
lnRecno = RECCOUNT()
|
|
i = 0
|
|
SCAN
|
|
SCATTER NAME loPartener
|
|
i = i + 1
|
|
WAIT WINDOW TRANSFORM(I) + '/' + TRANSFORM(LNRECNO) NOWAIT
|
|
* lcEroare = modifica_id_partener(loPartener.id_part1, loPartener.id_part, lnAn1, lnLuna1, lnAn2, lnLuna2)
|
|
lcSql = [update nom_parteneri set inactiv = 1 where id_part = ] + TRANSFORM(loPartener.id_part1)
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
|
|
IF !EMPTY(lcEroare)
|
|
aMESSAGEBOX(lcEroare)
|
|
EXIT
|
|
ENDIF
|
|
ENDSCAN
|
|
|
|
|
|
IF !EMPTY(lcEroare)
|
|
aMESSAGEBOX(lcEroare)
|
|
ENDIF
|
|
|
|
SQLDISCONNECT(0)
|
|
|
|
*** =================================================================================== ***
|
|
*** MODIFICARE ID_PARTENER IN CAZUL IN CARE EXISTA ACELASI PARTENER DE MAI MULTE ORI ***
|
|
*** IN NOMENCLATORUL DE PARTENERI ***
|
|
*** MARIUS.MUTU ***
|
|
*** 15.02.2006 ***
|
|
*** =================================================================================== ***
|
|
PROCEDURE modifica_id_partener
|
|
LPARAMETERS tnIdPartProst, tnIdPartBun, tnAn1, tnLuna1, tnAn2, tnLuna2
|
|
|
|
|
|
LOCAL lnAn1, lnLuna1, lnAn2, lnLuna2, lnSucces, lnSucces2, lcEroare
|
|
LOCAL lcSql, lcCursor
|
|
PRIVATE lnIdPartProst, tnIdPartBun, lnInit, lnFinal
|
|
|
|
lcEroare = ''
|
|
|
|
lnSucces = 1
|
|
lnSucces2 = 1
|
|
|
|
lnIdPartProst = 0
|
|
lnIdPartBun = 0
|
|
lnInit = 0
|
|
lnFinal = 0
|
|
|
|
IF EMPTY(tnIdPartProst) OR EMPTY(tnIdPartBun) OR EMPTY(tnAn1) OR EMPTY(tnLuna1) OR EMPTY(tnAn2) OR EMPTY(tnLuna2)
|
|
lcEroare = 'Completati parametrii'
|
|
lnSucces = -1
|
|
ENDIF
|
|
|
|
IF lnSucces > 0
|
|
lnIdPartProst = tnIdPartProst
|
|
lnIdPartBun = tnIdPartBun
|
|
|
|
lnInit = tnAn1 * 12 + tnLuna1
|
|
lnFinal = tnAn2 * 12 + tnLuna2
|
|
IF lnInit > lnFinal
|
|
lcEroare = 'Luna de sfarsit trebuie sa fie mai mare sau egala decat luna de inceput'
|
|
lnSucces = -1
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF lnSucces > 0
|
|
|
|
&& TRANZACTIE MANUALA
|
|
lnSucces = SQLSETPROP(gnhandle,"Transactions",2)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& ACT : ID_PARTD
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.act set id_partd = ?lnIdPartBun where id_partd = ?lnIdPartProst and an*12+luna between ?lnInit and ?lnFinal]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& ACT : ID_PARTC
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.act set id_partc = ?lnIdPartBun where id_partc = ?lnIdPartProst and an*12+luna between ?lnInit and ?lnFinal]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& IREG_PARTENERI
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.ireg_parteneri set id_part = ?lnIdPartBun where id_part = ?lnIdPartProst and an*12+luna between ?lnInit and ?lnFinal]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
&& BALANTA PARTENERI
|
|
IF lnSucces > 0
|
|
FOR I = lnInit TO lnFinal
|
|
lnLuna=MOD(I,12)
|
|
lnAn=INT(I/12)
|
|
IF lnLuna=0
|
|
lnLuna=12
|
|
lnAn=lnAn-1
|
|
ENDIF
|
|
|
|
|
|
lcSql = [SELECT ?lnIdPartBun as id_part, an, luna, NVL(cont,' ') as cont, NVL(acont,' ') as acont, id_valuta, ] +;
|
|
[sum(precdeb1) as precdeb1,sum(preccred1) as preccred1,sum(precdeb) as precdeb,sum(preccred) as preccred,] +;
|
|
[sum(precvaldeb1) as precvaldeb1,sum(precvalcred1) as precvalcred1,sum(precvaldeb) as precvaldeb,sum(precvalcred) as precvalcred,] +;
|
|
[sum(debit) as debit,sum(credit) as credit,sum(valdebit) as valdebit,sum(valcredit) as valcredit ]+;
|
|
[ FROM ] + gcs + [.BALANTA_PARTENERI WHERE ID_PART IN (?lnIdPartBun,?lnIdPartProst) AND ] +;
|
|
[ AN = ?lnAn and luna = ?lnLuna ] + ;
|
|
[ GROUP BY AN, LUNA, CONT, ACONT, ID_VALUTA ]
|
|
lcCursor = [crsBalanta]
|
|
|
|
lnSucces = goExecutor.oExecute(lcSql,lcCursor)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
EXIT
|
|
ENDIF
|
|
|
|
IF lnSucces > 0
|
|
lcDel = [DELETE FROM ] + gcs + [.BALANTA_PARTENERI WHERE ID_PART IN (?lnIdPartBun,?lnIdPartProst) AND ] +;
|
|
[ AN = ?lnAn and luna = ?lnLuna]
|
|
lnSucces = goExecutor.oExecute(lcDel)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
EXIT
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF lnSucces > 0
|
|
SELECT crsBalanta
|
|
SCAN
|
|
SCATTER NAME loB
|
|
loB.CONT = ALLTRIM(loB.CONT)
|
|
loB.acont = ALLTRIM(loB.acont)
|
|
lcIns = [INSERT INTO ] + gcs + [.BALANTA_PARTENERI ] + ;
|
|
[(an,luna,cont,acont,id_part,id_valuta,] + ;
|
|
[precdeb1,preccred1,precdeb,preccred,] + ;
|
|
[precvaldeb1,precvalcred1,precvaldeb,precvalcred,] + ;
|
|
[debit,credit,valdebit,valcredit) VALUES ] + ;
|
|
[(?loB.an,?loB.luna,?loB.cont,?loB.acont,?loB.id_part,?loB.id_valuta,] + ;
|
|
[?loB.precdeb1,?loB.preccred1,?loB.precdeb,?loB.preccred,] + ;
|
|
[?loB.precvaldeb1,?loB.precvalcred1,?loB.precvaldeb,?loB.precvalcred,] + ;
|
|
[?loB.debit,?loB.credit,?loB.valdebit,?loB.valcredit) ]
|
|
lnSucces = goExecutor.oExecute(lcIns)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
EXIT
|
|
ENDIF
|
|
ENDSCAN
|
|
ENDIF
|
|
IF USED('crsBalanta')
|
|
USE IN crsBalanta
|
|
ENDIF
|
|
|
|
ENDFOR
|
|
ENDIF
|
|
|
|
&& MASINI_CLIENTI
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.dev_masiniclienti set id_partener = ?lnIdPartBun where id_partener = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& CON_LUCRARI
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.con_lucrari set id_part = ?lnIdPartBun where id_part = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
|
|
&& RUL - id_responsabil
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.rul set id_responsabil = ?lnIdPartBun where id_responsabil = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& RUL - id_responsabilc
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.rul set id_responsabilc = ?lnIdPartBun where id_responsabilc = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& RUL_OBINV
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.rul_obinv set id_responsabil = ?lnIdPartBun where id_responsabil = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& STOC_OBINV
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.stoc_obinv set id_responsabil = ?lnIdPartBun where id_responsabil = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& CON_CONTRACTE
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.con_contracte set id_part = ?lnIdPartBun where id_part = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF lnSucces > 0
|
|
lnSucces2 = goExecutor.oExecute('COMMIT')
|
|
IF lnSucces2 < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ELSE
|
|
lnSucces2 = goExecutor.oExecute('ROLLBACK')
|
|
IF lnSucces2 < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& inactiv
|
|
IF lnSucces > 0
|
|
lcSql = [update ] + gcs + [.nom_parteneri set inactiv = 1 where id_part = ?lnIdPartProst]
|
|
lnSucces = goExecutor.oExecute(lcSql)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF lnSucces > 0
|
|
lnSucces2 = goExecutor.oExecute('COMMIT')
|
|
IF lnSucces2 < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ELSE
|
|
lnSucces2 = goExecutor.oExecute('ROLLBACK')
|
|
IF lnSucces2 < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
ENDIF
|
|
|
|
&& TRANZACTIE AUTOMATA
|
|
lnSucces = SQLSETPROP(gnhandle,"Transactions",1)
|
|
IF lnSucces < 0
|
|
lcEroare = goExecutor.cEroare
|
|
ENDIF
|
|
|
|
RETURN lcEroare
|
|
|
|
ENDPROC && modifica_id_partener
|