*-------------------------------------------- Function deschide_menu Parameters tabela, cc1,cc2,mnrtata,stinga,sus,ONT Public nt,no,m nt=Alltrim(tabela)+'_'+Alltrim(Str(mnrtata)) If Upper(Left(tabela,6))='_MENU1' no='o'+nt zz='SELECT '+cc1+' AS C1, '+cc2+' AS C2,nrnod,PROCEDURA,TATAFIU,ID_SET,LISTA_NOTE FROM '+; tabela+' WHERE NRTATA='+Alltrim(Str(mnrtata))+' INTO CURSOR '+nt Else no='o_'+nt zz='SELECT '+cc1+' AS C1, '+cc2+' AS C2,nrnod,PROCEDURA,TATAFIU,ID_SET FROM '+; tabela+' WHERE NRTATA='+Alltrim(Str(mnrtata))+' INTO CURSOR '+nt Endif &zz m=0 Select &nt Scan mm=Len(Alltrim(c1)) m=Iif(m>mm,m,mm) Endscan ta=_Tally If ta=0 Return '0' Endif If Type("&no")!='O' Public &no zz=no+'=crea("menuclasic")' &zz With &no wm=m*7 .NUME=no .ONUMETATA=ONT .Left=stinga .Top=sus .tabela=tabela .camp1=cc1 .camp2=cc2 .sursa=nt .Width=wm+2*.margine .NRFII=ta .rh=.container1.cwm1.Height .Height=(.rh+1)*.NRFII+2*.margine+2 *.show() Endwith Endif Release nt,m Return no *------------------------------------------------------------------------------------------ Procedure deschide_menuuri *!* If !Used('menu1') *!* Use &DIRGEN\CONTAB\Date\menu1 In 0 Alias menu1 Order Tag 'nrnod' *!* Endif *!* If !Used('menu2') *!* Use &DIRGEN\CONTAB\Date\menu2 In 0 Alias menu2 Order Tag 'nrnod' *!* Endif *!* If !Used('menu3') *!* Use &DIRGEN\CONTAB\Date\menu3 In 0 Alias menu3 Order Tag 'nrnod' *!* Endif *!* If !Used('menu4') *!* Use &DIRGEN\CONTAB\Date\menu4 In 0 Alias menu4 Order Tag 'nrnod' *!* Endif *!* If PRIMADATA *!* Do CE_WINDOWS *!* omenuvertical=Crea('menuvertical') *!* omenuvertical.Show() *!* Endif *deschide_menu(tabela, cc1,cc2,mnrtata,stinga,sus,ONT Return *-------------------------------------- Procedure CE_WINDOWS Local vermajor,verminor Public TIP_MENU,COL_MENU,cewin Store '' To cewin Store 0 To vermajor,verminor,TIP_MENU vermajor=Val(Os(3)) verminor=Val(Os(4)) Do Case Case vermajor<4 cewin='95' Case vermajor=4 cewin='98' Case vermajor>=5 Do Case Case verminor=0 cewin='2000' Case verminor=1 cewin='XP' Otherwise cewin='MAINOU' Endcase Endcase *IF INLIST(CEWIN,'95','98','2000') TIP_MENU=0&&'RAISED' *ELSE *TIP_MENU=2&&'FLAT' *ENDIF *!* Do Case *!* Case Inlist(cewin,'95','98') *!* COL_MENU=Rgb(192,192,192)&&GRI *!* Case cewin='2000' *!* COL_MENU=Rgb(212,208,200)&&NISIP GRI *!* Case cewin='XP' *!* COL_MENU=Rgb(236,233,216)&&NISIP BEJ *!* Otherwise COL_MENU=Rgb(255,255,255)&&ALB *!* Endcase Return *-------------------------------------- Function SCRIE_IN_FISIERE Parameters INFORMGEST *!* DEBUG *!* SUSPEND Local M.DEB,M.CRED,COND Store 0 To M.DEB, M.CRED Public OZ COND='(Empty(SUMA) AND INLIST(XSETS.ID_SET,70))'&&INREGISTRARI CU SUMA 0 *!* SELECT actactan *!* SCAN *!* SCATTER NAME loCont *!* IF EMPTY(loCont.ascd) *!* SELECT plcontana *!* LOCATE FOR cont=locont.scd *!* IF FOUND() *!* loCont.ascd='0000' *!* ENDIF *!* ENDIF *!* IF EMPTY(loCont.ascc) *!* SELECT plcontana *!* LOCATE FOR cont=locont.scc *!* IF FOUND() *!* loCont.ascc='0000' *!* ENDIF *!* ENDIF *!* SELECT actactan *!* GATHER NAME loCont *!* ENDSCAN *!* RELEASE loCont DD=Datetime() Do CODARE Select ACTACTAN Replace All COD With M.COD Replace All UTIL With UTILIZATOR, DATAORA With DD Go Top Scatter Name OZ Select ACTACTAN Scan For !Empty(SUMA) OR &COND Scatter Memv Select ACT If Flock() Append Blank Gather Memv Endif Unlock Select ACTAN If Flock() Append Blank Gather Memv Endif Unlock Select ACTACTAN Endscan Do Case Case Left(Upper(INFORMGEST),3)='NIR' Do SCRIE_NIR Case Left(Upper(INFORMGEST),3)='BON' Select IESIRI Replace All COD With M.COD IF !INLIST(M.ID_SET,70) Do IERULAJMAGAZII Do IESTOCURIMAGAZII ENDIF If Inlist(M.ID_SET,74,75,76)&&TRANSFER Select INTRARI Replace All COD With M.COD Do INRULAJMAGAZII Do INSTOCURIMAGAZII Endif Case Upper(INFORMGEST)='SCHIMBPRET' Select INTRARI Replace All COD With M.COD Select IESIRI Replace All COD With M.COD Do IERULAJMAGAZII Do IESTOCURIMAGAZII Do INRULAJMAGAZII Do INSTOCURIMAGAZII Endcase && TABELA DE CONTURI *!* IF USED('conturi') *!* USE IN conturi *!* ENDIF *!* IF USED('cc') *!* USE IN cc *!* ENDIF IF _program='cont' Select Distinct SCD As Cont,ascd as acont,99999999999999 As DEB,; 99999999999999 As CRED,99999999999999.99 As DEBVAL,99999999999999.99 As CREDVAL; FROM ACTACTAN Into Table &LOC\&NFSCURT\TEMPO\CONTURI ELSE Select Distinct SCD As Cont,ascd as acont,99999999999999 As DEB,; 99999999999999 As CRED,99999999999999.99 As DEBVAL,99999999999999.99 As CREDVAL; FROM ACTACTAN Into Table &LOC\&NFSCURT\TEMPO\CONTURI_g USE IN conturi_g USE &LOC\&NFSCURT\TEMPO\CONTURI_g IN 0 ALIAS conturi ENDIF Select CONTURI Replace All DEB With 0, CRED With 0,DEBVAL With 0, CREDVAL With 0 Select Distinct SCC As Cont,ascc as acont From ACTACTAN; WHERE SCC+ASCC Not In (Sele Distinct Cont+ACONT From CONTURI); INTO Cursor CC Select CONTURI Append From Dbf('CC') Select CONTURI Scan Scatter Memv Select ACTACTAN Sum SUMA To M.DEB For SCD=M.CONT AND ascd=m.acont Sum SUMA To M.CRED For SCC=M.CONT AND ascc=m.acont Sum SUMA_2 To M.DEBVAL For SCD=M.CONT AND ascd=m.acont Sum SUMA_2 To M.CREDVAL For SCC=M.CONT AND ascc=m.acont Select CONTURI Gather Fields DEB, CRED,DEBVAL,CREDVAL Memv Endscan && SCRIE IN BALANTA Select CONTURI Scan Scatter Memv Select BAL If Flock() LOCATE FOR cont=M.CONT If !Found() Sele PLCONT Locate For Left(CIMP1,4)=Left(M.CONT,4) If Found() Do MESAJ With 'Se introduce in balanta contul',M.CONT Scatter Memvar m.CONT=M.CIMP1 m.denumire=m.cimp2 Sele BAL If Flock() Append Blank Gather Memvar Endif Unlock Else Do MESAJ With 'Contul '+M.CONT+' nu este introdus','nici in planul de conturi si nici in balanta!' Do Form contnou Endif Endif Select BAL Replace RULDEB With RULDEB+M.DEB, TOTDEB With TOTDEB+M.DEB,; RULCRED With RULCRED+M.CRED, TOTCRED With TOTCRED+M.CRED SOLD=TOTDEB-TOTCRED Replace SOLDDEB With Iif(SOLD>0,SOLD,0), SOLDCRED With Iif(SOLD<0,-SOLD,0) Endif Unlock Select CONTURI Endscan &&scrie in balanta analitica Select ascd,ascc From ACTACTAN Where !Empty(ascd) Or !Empty(ascc) Into Cursor aacont If _Tally<>0 Select balana If Flock() Select ACTACTAN Scan Scatter Memv &&deb IF !EMPTY(m.ascd) Select balana Seek m.SCD+m.ascd If !Found() Seek m.SCD+'0000' If !Found() Append Blank Replace Cont With m.SCD Replace acont With '0000' Endif Endif Replace RULDEB With RULDEB+M.suma, TOTDEB With TOTDEB+M.suma SOLD=TOTDEB-TOTCRED Replace SOLDDEB With Iif(SOLD>0,SOLD,0) endif &&cred IF !EMPTY(m.ascc) Select balana Seek m.SCc+m.ascc If !Found() Seek m.SCc+'0000' If !Found() Append Blank Replace Cont With m.SCc Replace acont With '0000' Endif Endif Replace RULcred With RULcred+M.suma, TOTcred With TOTcred+M.suma SOLD=TOTDEB-TOTCRED Replace SOLDcred With Iif(SOLD<0,-SOLD,0) endif Select ACTACTAN Endscan Endif Unlock In balana Endif && SCRIE IN FISIERE Select Distinct A.Cont,b.acont,A.FPROC,B.DEB,B.CRED,B.DEBVAL,B.CREDVAL From INFISIERE A, CONTURI B ; WHERE A.Cont=B.Cont ; INTO Cursor COM *!* SELECT com *!* BROWSE Select COM Scan Scatter Memv zz='Do '+Alltrim(FPROC)+' with m.deb,m.cred,M.DEBVAL,M.CREDVAL' &zz SELECT COM Endscan SELECT com LOCATE FOR INLIST(cont,'4426','4427') IF !FOUND() DO caut_neimpozab WITH 'actactan' ENDIF m.NNIR=OZ.NNIR If Type('OXSET')='O' If !Empty(OXSET.LISTARE) zz=Alltrim(OXSET.LISTARE) zz='DO '+zz If !Empty(OXSET.PARAM2) zz=zz+' WITH '+OXSET.PARAM2 Endif &zz Endif Endif DO inchid_actcv Do STERGE Release OZ Return 0 *----------------------------------------------- Procedure _401 Parameters debit,credit,VALDEBIT,VALCREDIT &&&&&&&&&&& FURNIZOR Select FURNIZOR If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit Endif Unlock Local di,din,div SELECT actactan Sum SUMA To di For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount Sum neimpozab To din For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount Sum SUMA_2 To div For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount valuta &&&&&&&&&&&CUMPLUN Local nui Select cumplun Set Order To nract &&creditul=factura If credit!=0 OR din!=0 && discount neimpozabil nui=.F. Select ACTACTAN Locate For SCC=m.CONT AND ascc=m.acont Scatter NAME o401 Select cumplun Seek o401.nract If Found() Locate For nract=o401.nract And dataact=o401.dataact And NUME=o401.NUME AND acont=o401.ascc If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Memv Replace totctva With 0,SUMAVAL WITH 0 Endif Replace totctva With totctva+credit-di Replace SUMAVAL With SUMAVAL+VALcredit-div REPLACE cursschimb WITH o401.suma_3 REPLACE ACONT WITH o401.ascc Endif Unlock Endif RELEASE o401 &&debitul=plata If debit!=0 OR (credit=0 AND debit=0) && atunci cand sunt sume cu + si -, cu total 0 nui=.F. Select ACTACTAN Locate For SCD=m.CONT AND ascd=m.acont Scatter Memv Select cumplun DO CASE CASE !(COD=M.COD) AND !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_plati With 'cumplun','ascd','nume' OTHERWISE Select cumplun If Flock() Replace achitat With achitat+debit-di Replace achitatVAL With achitatVAL+VALdebit-div Endif Unlock ENDCASE Endif Select cumplun Set Order To Tag dataireg &&&&&&&&&&&CUMP *!* If credit!=0 OR din!=0 && discount neimpozabil *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* Select ACTACTAN *!* Locate For SCC=m.CONT *!* Scatter Memv *!* Sum neimpozab To m.neimpozab For SCC=m.CONT AND ascc=m.acont *!* m.neimpozab=m.neimpozab-din *!* * Sum SUMA To di For Left(SCC,1)='7' And SCD=m.CONT &&discount *!* m.totctva=credit-di *!* *!* * Sum suma To m.tvam For Left(scd,3)='442' AND SCC=m.CONT AND ascc=m.acont *!* Select CONTURI *!* Locate For Left(Cont,3)='442' *!* If Found() *!* m.tvam=DEB-CRED *!* Endif *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* ** m.totctva=m.totftvam+m.neimpozab+m.tvam *!* Select cump *!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME *!* IF !FOUND() *!* If Flock() *!* Append Blank *!* Gather Memv *!* Endif *!* UNLOCK *!* ELSE *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* Endif Return *----------------------------------------------- Procedure _404 Parameters debit,credit,VALDEBIT,VALCREDIT Select FURNIZ404 If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit Endif UNLOCK Local di,din,div SELECT actactan Sum SUMA To di For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount Sum neimpozab To din For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount Sum SUMA_2 To div For Left(SCC,3)='767' And SCD=m.CONT AND ascd=m.acont &&discount valuta &&&&&&&&&&&CUMPLUN Local nui Select cumplun404 Set Order To nract &&creditul=factura If credit!=0 OR din!=0 && discount neimpozabil nui=.F. Select ACTACTAN Locate For SCC=m.CONT AND ascc=m.acont *Scatter Memv SCATTER NAME o404 Select cumplun404 Seek o404.nract If Found() Locate For nract=o404.nract And dataact=o404.dataact And NUME=o404.NUME AND acont=o404.ascc If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Memv GATHER NAME o404 Replace totctva With 0,SUMAVAL WITH 0 Endif Replace totctva With totctva+credit-di Replace SUMAVAL With SUMAVAL+VALcredit-div REPLACE cursschimb WITH o404.suma_3 REPLACE ACONT WITH o404.ascc Endif Unlock Endif &&debitul=plata If debit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For SCD=m.CONT AND ascd=m.acont Scatter Memv Select cumplun404 DO CASE CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_plati With 'cumplun404','ascd','nume' OTHERWISE Select cumplun404 If Flock() Replace achitat With achitat+debit-di Replace achitatVAL With achitatVAL+VALdebit-div Endif Unlock ENDCASE Endif Select cumplun404 Set Order To Tag dataireg &&&&&&&&&&&CUMP *!* If credit!=0 OR din!=0 && discount neimpozabil *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* Select ACTACTAN *!* Locate For SCC=m.CONT *!* Scatter Memv *!* Sum neimpozab To m.neimpozab For SCC=m.CONT *!* m.neimpozab=m.neimpozab-din *!* * Sum SUMA To di For Left(SCC,1)='7' And SCD=m.CONT &&discount *!* m.totctva=credit-di *!* Select CONTURI *!* Locate For Left(Cont,3)='442' *!* If Found() *!* m.tvam=DEB-CRED *!* Endif *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* **m.totctva=m.totftvam+m.neimpozab+m.tvam *!* Select cump *!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME *!* IF !FOUND() *!* If Flock() *!* Append Blank *!* Gather Memv *!* Endif *!* UNLOCK *!* ELSE *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* Endif RETURN *----------------------------------------------- PROCEDURE _4426 Parameters debit,credit,VALDEBIT,VALCREDIT Store 0 To m.totctvam,m.totftvam,m.tvam,neimpozab,totftvai,tvai SELECT infisiere LOCATE FOR cont='4426' SCATTER NAME ofis lcCoresp_d=ALLTRIM(ofis.coresp_d) lcCoresp_c=ALLTRIM(ofis.coresp_c) SELECT actactan SUM suma TO tvam_deb FOR scd='4426' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scc),&lcCoresp_d) SUM suma TO tvam_cred FOR scc='4426' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scd),&lcCoresp_c) m.tvam=tvam_deb-tvam_cred SUM suma TO tvai_deb FOR scd='4426' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scc),&lcCoresp_d) SUM suma TO tvai_cred FOR scc='4426' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scd),&lcCoresp_c) m.tvai=tvai_deb-tvai_cred IF debit#0 OR (credit=0 AND debit=0) *m.tvam=debit-credit SELECT SUM(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),neimpozab,IIF(ALLTRIM(scc)='767' AND INLIST(ALLTRIM(scd),&lcCoresp_d),-neimpozab,0))) as neimpozab; FROM actactan INTO CURSOR tcn SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),suma,IIF(ALLTRIM(scc)='767' AND INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0))) as totctvam; FROM actactan WHERE proc_tva=m.ctvam ; INTO CURSOR tvam SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),suma,IIF(ALLTRIM(scc)='767' AND INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0))) as totctvai; FROM actactan WHERE proc_tva=m.ctvai ; INTO CURSOR tvai SELECT tvam SCATTER MEMVAR SELECT tcn SCATTER MEMVAR SELECT tvai SCATTER MEMVAR USE IN tvam USE IN tcn USE IN tvai m.totftvam=m.totctvam-m.tvam m.totftvai=m.totctvai-m.tvai m.totctva=m.totctvam+m.totctvai+m.neimpozab IF EMPTY(m.totctva) RELEASE ofis RELEASE o4426 RETURN ENDIF SELECT actactan LOCATE FOR scd='4426' IF !FOUND() OR scc='4428' GO top ENDIF SCATTER NAME o4426 o4426.scd=o4426.scc Select cump Locate For nract=o4426.nract AND cod=o4426.cod &&And dataact=m.dataact And NUME=m.NUME IF !FOUND() If Flock() Append Blank Gather NAME o4426 GATHER MEMVAR Endif UNLOCK ELSE REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab ENDIF ENDIF IF credit#0 *m.tvam=debit-credit SELECT SUM(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),-neimpozab,0)) as neimpozab ; FROM actactan INTO CURSOR tcn SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0)) as totctvam ; FROM actactan WHERE proc_tva=m.ctvam; INTO CURSOR tvam SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0)) as totctvai ; FROM actactan WHERE proc_tva=m.ctvai ; INTO CURSOR tvai SELECT tvam SCATTER MEMVAR SELECT tcn SCATTER MEMVAR SELECT tvai SCATTER MEMVAR USE IN tvam USE IN tcn USE IN tvai m.totftvam=m.totctvam-m.tvam m.totftvai=m.totctvai-m.tvai m.totctva=m.totctvam+m.totctvai+m.neimpozab IF EMPTY(m.totctva) RELEASE ofis RELEASE o4426 RETURN ENDIF SELECT actactan LOCATE FOR scc='4426' SCATTER NAME o4426 Select cump Locate For nract=o4426.nract AND cod=o4426.cod &&And dataact=m.dataact And NUME=m.NUME IF !FOUND() If Flock() Append Blank Gather NAME o4426 GATHER MEMVAR Endif UNLOCK ELSE REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab ENDIF ENDIF RELEASE ofis RELEASE o4426 RETURN *----------------------------------------------- Procedure _408 Parameters debit,credit,VALDEBIT,VALCREDIT Select ana408 If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit Endif Unlock SELECT DISTINCT scd as cont,ascd as acont,proc_tva,sum(suma) as suma408,sum(suma_2) as suma408_2,"D" as tip ; from actactan WHERE scd='408 ' AND ascd=m.acont GROUP BY ascd,proc_tva INTO CURSOR t408 ; UNION ; SELECT DISTINCT scc as cont,ascc as acont,proc_tva,sum(suma) as suma408,sum(suma_2) as suma408_2,"C" as tip ; from actactan WHERE scc='408 ' AND ascc=m.acont GROUP BY ascc,proc_tva; order BY tip SELECT t408 SCAN FOR tip='C' SCATTER MEMVAR &&&&&&&&&&& FACT408 Local nui Select fact408 Set Order To nract Select fact408 &&creditul=factura *If credit!=0 nui=.F. Select ACTACTAN Locate For SCC=m.CONT AND ascc=m.acont AND proc_tva=m.proc_tva Scatter Memv Select fact408 Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont AND proc_tva=m.proc_tva If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Memv Replace totctva With 0 Replace SUMAVAL With 0 Endif Select fact408 Replace totctva With totctva+m.suma408 &&credit Replace SUMAVAL With SUMAVAL+m.suma408_2 &&VALcredit REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascc ENDIF Unlock *Endif ENDSCAN &&debitul=plata If debit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For SCD=m.CONT AND ascd=m.acont Scatter Memv Select fact408 If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_plati With 'fact408','ascd','nume' Else Select fact408 If Flock() Replace achitat With achitat+debit Replace achitatVAL With achitatVAL+VALdebit Endif Unlock Endif Endif Select fact408 Set Order To Tag dataireg &&&&&&&&&&&CUMP *!* LOCAL di *!* If credit!=0 *!* *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* Select ACTACTAN *!* Locate For SCC=m.CONT *!* Scatter Memv *!* Sum neimpozab To m.neimpozab For SCC=m.CONT *!* SUM suma TO di FOR LEFT(scc,1)='7' AND SCd=m.CONT&&discount *!* m.totctva=credit-di *!* Select CONTURI *!* Locate For LEFT(Cont,3)='442' *!* If Found() *!* m.tvam=DEB-cred *!* Endif *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* Select cump *!* If Flock() *!* Append Blank *!* Gather Memv *!* Endif *!* Unlock *!* Endif Return *------------------------------------------------------------- Procedure _409 Parameters debit,credit,VALDEBIT,VALCREDIT Select AVANS409 If debit#0 If Flock() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME If !Found() Append Blank Gather Fields Except achitat,facturat,achitatval,factval Memv Endif Replace achitat With achitat+debit &&, facturat With facturat+credit Replace achitatVAL With achitatVAL+VALdebit REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascd Endif Unlock ENDIF If credit#0 *!* If Used('actcv1') *!* Select actcv1 *!* Scan For ALES *!* Scatter Name av *!* Select AVANS409 *!* Locate For nract=av.nract And dataact=av.dataact And NUME=av.NUME *!* If Flock() *!* Replace facturat With facturat+av.sumaachi *!* Replace factVAL With factVAL+av.sumaachi2 *!* Endif *!* Unlock *!* Select actcv1 *!* ENDSCAN *!* Release av *!* ELSE &&la modificare SELECT actactan LOCATE FOR LEFT(scc,3)='409' SCATTER NAME omodif *!* lcDat=Right(Allt(omodif.NRORD),10) *!* ldDAT=Ctod(lcDat) *!* lcNr=Strtran(Strtran(omodif.NRORD,lcDat,''),'/','') *!* lnNr=Val(lcNr) Select AVANS409 Locate For nract=omodif.pereche2 And NUME=omodif.NUME IF FOUND() If Flock() Replace facturat With facturat+CREDIT Replace factVAL With factVAL+valCREDIT Endif UNLOCK ENDIF Release omodif *!* ENDIF *!* Endif Select FURNIZOR If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace avans With avans+debit-credit Replace avansVAL With avansVAL+VALdebit-VALcredit Endif Unlock IF USED('actcv1') USE IN actcv1 ENDIF Return *----------------------------------------------- Procedure _411 Parameters debit,credit,VALDEBIT,VALCREDIT Select clienti If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace productie With productie +debit, incasat With incasat+credit Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit Endif UNLOCK IF id_set=10421 DO regularizare_clienti IF USED('actcv') USE IN actcv ENDIF RETURN ENDIF Local di,din,div SELECT actactan Sum SUMA To di For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount Sum neimpozab To din For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount Sum SUMA_2 To div For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount valuta &&&&&&&&&&&vanzLUN Local nui Select vanzlun Set Order To nract &&debitul=factura If (debit!=0 OR din!=0) &&AND xsets.id_set!=10421 && discount neimpozabil + regularizari avans-facturi(e uraaaaaaaaaaaaaaaaaat) nui=.F. Select ACTACTAN Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont Scatter Memv *!* IF m.ctvam#m.ctvai *!* SUM suma TO m.totftvam FOR Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont AND proc_tva=m.ctvam *!* SUM suma TO m.tvam FOR SCc='4427' AND ascd=m.acont AND proc_tva=m.ctvam *!* SUM suma TO m.totftvai FOR Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont AND proc_tva=m.ctvai *!* SUM suma TO m.tvai FOR SCc='4427' AND ascd=m.acont AND proc_tva=m.ctvai *!* SUM suma TO m.neimpozab FOR Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont AND neimpozab#0 *!* ENDIF Select vanzlun Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. ENDIF If Flock() If nui Append Blank Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv ENDIF Replace totctva With totctva+debit-di Replace SUMAVAL With SUMAVAL+VALdebit-div *!* REPLACE totftvam WITH totftvam+m.totftvam-di,totftvai WITH totftvai+m.totftvai-di,tvam WITH tvam+m.tvam,tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascd Endif Unlock Endif &&creditul=plata If credit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont Scatter Memv Select vanzlun DO CASE CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_incasari With 'vanzlun','ascc','nume' OTHERWISE Select vanzlun If Flock() Replace achitat With achitat+credit-di Replace achitatVAL With achitatVAL+VALcredit-div Endif Unlock ENDCASE Endif Select vanzlun Set Order To Tag dataireg &&&&&&&&&&&vanz *!* If debit!=0 OR din!=0 && discount neimpozabil *!* m.totctva=debit-di *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* Select ACTACTAN *!* Locate For SCD=m.CONT *!* Scatter Memv *!* Sum neimpozab To m.neimpozab For Left(SCD,3)=Left(m.CONT,3) *!* m.neimpozab=m.neimpozab-din *!* Select CONTURI *!* Locate For Cont='4427' *!* If Found() *!* m.tvam=CRED *!* Endif *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* Select vanz *!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME *!* IF !FOUND() *!* If Flock() *!* Append Blank *!* Gather Memv *!* Endif *!* UNLOCK *!* ELSE *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* Endif Return *----------------------------------------------- PROCEDURE _4427 Parameters debit,credit,VALDEBIT,VALCREDIT Store 0 To m.totctvam,m.totftvam,m.tvam,m.neimpozab,m.totftvai,m.tvai SELECT infisiere LOCATE FOR cont='4427' SCATTER NAME ofis lcCoresp_c=ALLTRIM(ofis.coresp_c) lcCoresp_d=ALLTRIM(ofis.coresp_d) SELECT actactan SUM suma TO tvam_deb FOR scd='4427' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scc),&lcCoresp_d) SUM suma TO tvam_cred FOR scc='4427' AND proc_tva=m.ctvam AND INLIST(ALLTRIM(scd),&lcCoresp_c) m.tvam=tvam_cred-tvam_deb SUM suma TO tvai_deb FOR scd='4427' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scc),&lcCoresp_d) SUM suma TO tvai_cred FOR scc='4427' AND proc_tva=m.ctvai AND INLIST(ALLTRIM(scd),&lcCoresp_c) m.tvai=tvai_cred-tvai_deb IF credit#0 OR (credit=0 AND debit=0) SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),neimpozab,IIF(ALLTRIM(scd)='667' AND INLIST(ALLTRIM(scc),&lcCoresp_c),-neimpozab,0))) as neimpozab ; FROM ACTACTAN INTO CURSOR tcn SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),suma,IIF(ALLTRIM(scd)='667' AND INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0))) as totctvam; FROM actactan WHERE proc_tva=m.ctvam ; INTO CURSOR tvam SELECT sum(IIF(INLIST(ALLTRIM(scd),&lcCoresp_c) AND !INLIST(ALLTRIM(scc),&lcCoresp_c),suma,IIF(ALLTRIM(scd)='667' AND INLIST(ALLTRIM(scc),&lcCoresp_c),-suma,0))) as totctvai; FROM actactan WHERE proc_tva=m.ctvai ; INTO CURSOR tvai SELECT tvam SCATTER MEMVAR SELECT tcn SCATTER MEMVAR SELECT tvai SCATTER MEMVAR USE IN tvam USE IN tcn USE IN tvai m.totftvam=m.totctvam-m.tvam m.totftvai=m.totctvai-m.tvai m.totctva=m.totctvam+m.totctvai+m.neimpozab IF EMPTY(m.totctva) RELEASE ofis RETURN ENDIF SELECT actactan LOCATE FOR scc='4427' IF !FOUND() OR scd='4428' GO top ENDIF SCATTER FIELDS EXCEPT neimpozab MEMVAR Select vanz Locate For nract=m.nract AND cod=m.cod &&And dataact=m.dataact And NUME=m.NUME IF !FOUND() If Flock() Append Blank Gather Memv Endif UNLOCK ELSE REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab ENDIF ENDIF IF debit#0 *!* SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0)) as totctva,; *!* sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-neimpozab,0)) as neimpozab ; *!* FROM actactan ; *!* INTO CURSOR tva *!* *!* SELECT tva *!* SCATTER MEMVAR *!* m.tvam=credit-debit *!* m.totftvam=m.totctva-m.neimpozab-m.tvam SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-neimpozab,0)) as neimpozab ; FROM actactan INTO CURSOR tcn SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0)) as totctvam ; FROM actactan WHERE proc_tva=m.ctvam ; INTO CURSOR tvam SELECT sum(IIF(INLIST(ALLTRIM(scc),&lcCoresp_d) AND !INLIST(ALLTRIM(scd),&lcCoresp_d),-suma,0)) as totctvai ; FROM actactan WHERE proc_tva=m.ctvai ; INTO CURSOR tvai SELECT tvam SCATTER MEMVAR SELECT tcn SCATTER MEMVAR SELECT tvai SCATTER MEMVAR USE IN tvam USE IN tcn USE IN tvai m.totftvam=m.totctvam-m.tvam m.totftvai=m.totctvai-m.tvai m.totctva=m.totctvam+m.totctvai+m.neimpozab IF EMPTY(m.totctva) RELEASE ofis RETURN ENDIF SELECT actactan LOCATE FOR scd='4427' SCATTER FIELDS EXCEPT neimpozab MEMVAR m.scd=m.scc Select vanz Locate For nract=m.nract AND cod=m.cod &&And dataact=m.dataact And NUME=m.NUME IF !FOUND() If Flock() Append Blank Gather Memv Endif UNLOCK ELSE REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; tvam WITH tvam+m.tvam,totftvai WITH totftvai+m.totftvai, ; tvai WITH tvai+m.tvai,neimpozab WITH neimpozab+m.neimpozab ENDIF ENDIF RELEASE ofis RETURN *---------------------------------------------------------------- Procedure _4118 Parameters debit,credit,VALDEBIT,VALCREDIT Select client4118 If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace productie With productie +debit, incasat With incasat+credit Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit Endif Unlock &&&&&&&&&&&vanzLU4118 Local nui Select vanzlu4118 Set Order To nract &&debitul=factura If debit!=0 nui=.F. Select ACTACTAN Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont Scatter Memv Select vanzlu4118 Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv Endif Replace totctva With totctva+debit Replace SUMAVAL With SUMAVAL+VALdebit REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascd Endif Unlock Endif &&creditul=plata If credit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont Scatter Memv Select vanzlu4118 If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_incasari With 'vanzlu4118','ascc','nume' Else Select vanzlu4118 If Flock() Replace achitat With achitat+credit Replace achitatVAL With achitatVAL+VALcredit Endif Unlock Endif Endif Select vanzlu4118 Set Order To Tag dataireg &&&&&&&&&&&vanz *!* if debit!=0 *!* SELECT vanz *!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME *!* If Found() *!* IF FLOCK() *!* REPLACE scd WITH m.cont *!* ENDIF *!* ENDIF *!* *!* m.totctva=debit *!* *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* *!* Select ACTACTAN *!* *!* Locate For SCD=m.CONT *!* *!* Scatter Memv *!* *!* Sum neimpozab To m.neimpozab For Left(SCC,3)=Left(m.CONT,3) *!* *!* Select CONTURI *!* *!* Locate For Cont='4427' *!* *!* If Found() *!* *!* m.tvam=CRED *!* *!* Endif *!* *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* *!* Select vanz *!* *!* If Flock() *!* *!* Append Blank *!* *!* Gather Memv *!* *!* Endif *!* *!* Unlock *!* Endif RETURN *----------------------------------------------- Procedure _418 Parameters debit,credit,VALDEBIT,VALCREDIT Select ana418 If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace productie With productie +debit, incasat With incasat+credit Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit Endif Unlock *!* &&&&&&&&&&&vanzLUN *!* Local nui *!* Select fact418 *!* Set Order To nract *!* &&debitul=factura *!* If debit!=0 *!* nui=.F. *!* Select ACTACTAN *!* Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont *!* Scatter Memv *!* Select fact418 *!* Seek m.nract *!* If Found() *!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont *!* If !Found() *!* nui=.T. *!* Endif *!* Else *!* nui=.T. *!* Endif *!* If Flock() *!* If nui *!* Append Blank *!* Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv *!* Endif *!* Replace totctva With totctva+debit *!* Replace SUMAVAL With SUMAVAL+VALdebit *!* REPLACE cursschimb WITH m.suma_3 *!* REPLACE ACONT WITH m.ascd *!* Endif *!* Unlock *!* Endif SELECT DISTINCT scd as cont,ascd as acont,proc_tva,sum(suma) as suma418,sum(suma_2) as suma418_2,"D" as tip ; from actactan WHERE scd='418 ' AND ascd=m.acont GROUP BY ascd,proc_tva INTO CURSOR t418 ; UNION ; SELECT DISTINCT scc as cont,ascc as acont,proc_tva,sum(suma) as suma418,sum(suma_2) as suma418_2,"C" as tip ; from actactan WHERE scc='418 ' AND ascc=m.acont GROUP BY ascc,proc_tva; order BY tip &&&&&&&&&&& FACT418 SELECT t418 SCAN FOR tip='D' SCATTER MEMVAR Local nui Select fact418 Set Order To nract Select fact418 nui=.F. Select ACTACTAN Locate For SCD=m.CONT AND ascd=m.acont AND proc_tva=m.proc_tva Scatter Memv Select fact418 Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont AND proc_tva=m.proc_tva If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Memv Replace totctva With 0 Replace SUMAVAL With 0 Endif Select fact418 Replace totctva With totctva+m.suma418 &&credit Replace SUMAVAL With SUMAVAL+m.suma418_2 &&VALcredit REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascd ENDIF UNLOCK ENDSCAN &&creditul=plata If credit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont Scatter Memv Select fact418 If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_incasari With 'fact418','ascc','nume' Else Select fact418 If Flock() Replace achitat With achitat+credit Replace achitatVAL With achitatVAL+VALcredit Endif Unlock Endif Endif Select fact418 Set Order To Tag dataireg Return *----------------------------------------------- Procedure _461 Parameters Tndebit,Tncredit,TnVALDEBIT,TnVALCREDIT Select debitor If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace DEBIT With DEBIT+tndebit, CREDIT With CREDIT+tncredit Replace VALDEBIT With VALDEBIT +tnVALdebit, VALCREDIT With VALCREDIT+tnVALcredit Endif UNLOCK LOCAL di,din SELECT actactan Sum SUMA To di For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount Sum neimpozab To din For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount Sum SUMA_2 To div For Left(SCd,3)='667' And SCc=m.CONT AND ascc=m.acont &&discount valuta &&&&&&&&&&&vanzLUN Local nui Select deblun Set Order To nract &&debitul=factura If tndebit!=0 nui=.F. Select ACTACTAN Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont Scatter Memv Select deblun Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv ENDIF Replace totctva With totctva+TnDebit-di Replace SUMAVAL With SUMAVAL+TnVALdebit-div REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascd Endif Unlock Endif &&creditul=plata If tnCredit!=0 OR (tnCredit=0 AND tnDebit=0) nui=.F. Select ACTACTAN Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont Scatter Memv Select deblun DO CASE CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_incasari With 'deblun','ascc','nume' OTHERWISE Select deblun If Flock() Replace achitat With achitat+tnCredit-di Replace achitatVAL With achitatVAL+TnVALcredit-div Endif Unlock ENDCASE Endif Select deblun Set Order To Tag dataireg &&&&&&&&&&&vanz *!* If tnDebit!=0 OR din!=0 && discount neimpozabil *!* m.totctva=tndebit-di *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* Select ACTACTAN *!* Locate For SCD=m.CONT *!* Scatter Memv *!* Sum neimpozab To m.neimpozab For Left(SCD,3)=Left(m.CONT,3) *!* m.neimpozab=m.neimpozab-din *!* Select CONTURI *!* Locate For Cont='4427' *!* If Found() *!* m.tvam=CRED *!* Endif *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* Select vanz *!* Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME *!* IF !FOUND() *!* If Flock() *!* Append Blank *!* Gather Memv *!* Endif *!* UNLOCK *!* ELSE *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* Endif Return *----------------------------------------------- Procedure _462 Parameters Tndebit,Tncredit,TnVALDEBIT,TnVALCREDIT Select CREDITOR If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace DEBIT With DEBIT+tndebit, CREDIT With CREDIT+tncredit Replace VALDEBIT With VALDEBIT +tnVALdebit, VALCREDIT With VALCREDIT+tnVALcredit Endif UNLOCK &&&&&&&&&&&CREDLUN Local nui Select CREDlun Set Order To nract &&creditul=factura If TNcredit!=0 nui=.F. Select ACTACTAN Locate For SCC=m.CONT AND ascc=m.acont Scatter Memv Select CREDlun Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Fields Except totctva Memv Endif Replace totctva With totctva+TNcredit Replace SUMAVAL With SUMAVAL+TnVALcredit REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascc Endif Unlock Endif &&debitul=plata If TNdebit!=0 OR (TNcredit=0 AND TNdebit=0) nui=.F. Select ACTACTAN Locate For SCD=m.CONT AND ascd=m.acont Scatter Memv Select CREDlun DO CASE CASE !(COD=M.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_plati With 'CREDlun','ascd','nume' OTHERWISE Select CREDlun If Flock() Replace achitat With achitat+TNdebit Replace achitatVAL With achitatVAL+TnVALdebit Endif Unlock ENDCASE Endif Select CREDlun Set Order To Tag dataireg &&&&&&&&&&& CUMP NU STIU ???????????????? *!* Local di *!* If credit!=0 *!* Store 0 To m.totftvam,m.tvam,neimpozab,totftvai,tvai *!* Select ACTACTAN *!* Locate For SCC=m.CONT *!* Scatter Memv *!* Sum neimpozab To m.neimpozab For SCC=m.CONT *!* Sum SUMA To di For Left(SCC,1)='7' And SCD=m.CONT&&discount *!* m.totctva=credit-di *!* Select CONTURI *!* Locate For Left(Cont,3)='442' *!* If Found() *!* m.tvam=DEB-CRED *!* Endif *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* *m.totctva=m.totftvam+m.neimpozab+m.tvam *!* Select cump *!* If Flock() *!* Append Blank *!* Gather Memv *!* Endif *!* Unlock *!* Endif Return *----------------------------------------------- Procedure _419 Parameters debit,credit,VALDEBIT,VALCREDIT Select AVANS419 If credit#0 If Flock() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME If !Found() Append Blank Gather Fields Except achitat,facturat,achitatval,factval Memv Endif Replace achitat With achitat+credit &&, facturat With facturat+credit Replace achitatVAL With achitatVAL+VALcredit REPLACE cursschimb WITH m.suma_3 REPLACE ACONT WITH m.ascc Endif Unlock Endif If debit#0 *!* If Used('actcv1') *!* Select actcv1 *!* Scan For ALES *!* Scatter Name av *!* Select AVANS419 *!* Locate For nract=av.nract And dataact=av.dataact And NUME=av.NUME *!* If Flock() *!* Replace facturat With facturat+av.sumaachi *!* Replace factVAL With factVAL+av.sumaachi2 *!* Endif *!* Unlock *!* Select actcv1 *!* Endscan *!* Release av *!* ELSE &&la modificare SELECT actactan LOCATE FOR LEFT(scd,3)='419' SCATTER NAME omodif *!* lcDat=Right(Allt(omodif.NRORD),10) *!* ldDAT=Ctod(lcDat) *!* lcNr=Strtran(Strtran(omodif.NRORD,lcDat,''),'/','') *!* lnNr=Val(lcNr) Select AVANS419 Locate For nract=omodif.pereche And NUME=omodif.NUME IF FOUND() If Flock() Replace facturat With facturat+debit Replace factVAL With factVAL+valdebit Endif UNLOCK ENDIF Release omodif *!* Endif Endif Select clienti If Flock() If Alltrim(NUME)!=Alltrim(M.NUME) Seek Alltrim(M.NUME) If !Found() Append Blank Gather Fields NUME,COD_FISCAL Memv Endif Endif Replace avans With avans-debit+credit Replace avansVAL With avansVAL-VALdebit+VALcredit Endif Unlock DO inchid_actcv Return *----------------------------------------------- Procedure _5311 Parameters debit,credit,VALDEBIT,VALCREDIT STORE 0 TO m.plati,m.incasari &&credit=casa plateste IF CREDIT#0 Select ACTACTAN Locate For SCC=m.CONT Scatter Memv *m.casa=m.CASACRED m.casa=ALLTRIM(m.nume_3) Select casa If Flock() Append Blank Gather Memv Replace plati With credit Endif Unlock Select casanume *Locate For casa=m.casaCRED Locate For ALLTRIM(casa)=m.casa If Flock() If !Found() Append Blank *Gather Fields casa Memv REPLACE CASA WITH M.CASA Endif Replace plati With plati+credit Endif Unlock ENDIF &&debit=casa incas IF DEBIT#0 Select ACTACTAN Locate For SCD=m.CONT Scatter Memv *m.casa=m.CASADEB m.casa=ALLTRIM(m.nume_3) Select casa If Flock() Append Blank Gather Memv Replace incasari With debit Endif Unlock Select casanume Locate For ALLTRIM(casa)=m.casa If Flock() If !Found() Append Blank *Gather Fields casa Memv REPLACE CASA WITH M.CASA Endif Replace incasari With incasari+debit Endif Unlock ENDIF Return *----------------------------------------------- Procedure _5314 Parameters debit,credit,VALDEBIT,VALCREDIT STORE 0 TO m.plati,m.incasari,m.platival,m.incasval &&credit=casa plateste IF CREDIT#0 IF EMPTY(M.CASAVALCRE) && pt modificare Select ACTACTAN Locate For SCC=m.CONT M.CASAVALCRE=nume_5 ENDIF Select casVnume Locate For NUME_5=M.CASAVALCRE If Flock() If !Found() Append Blank REPLACE NUME_5 WITH M.CASAVALCRE *Gather Fields NUME_5 Memv Endif Replace plati With plati+credit Replace platiVAL With platiVAL+VALcredit REPLACE numeval WITH m.nume_4 Endif UNLOCK Select ACTACTAN SCAN For SCC=m.CONT && din cauza diferentelor de curs valutar Scatter Memv *m.casa=m.nume_5 M.CASA=M.CASAVALCRE Select casaVAL If Flock() Append Blank Gather Memv Replace plati With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 Replace platiVAL With m.suma_2 Endif UNLOCK SELECT actactan ENDSCAN ENDIF &&debit=casa incas IF DEBIT#0 IF EMPTY(M.CASAVALDEB) && pt modificare Select ACTACTAN Locate For SCD=m.CONT M.CASAVALDEB=nume_5 ENDIF Select casVnume Locate For NUME_5=m.CASAVALDEB SELECT casvnume If Flock() If !Found() Append Blank *Gather Fields NUME_5 Memv REPLACE NUME_5 WITH m.CASAVALDEB Endif Replace incasari With incasari+debit Replace incasVAL With incasVAL+VALdebit REPLACE numeval WITH m.nume_4 Endif UNLOCK Select ACTACTAN SCAN For SCD=m.CONT && din cauza diferentelor de curs valutar Scatter Memv *m.casa=m.nume_5 M.CASA=m.CASAVALDEB Select casaVAL If Flock() Append Blank Gather Memv Replace incasari With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 Replace incasVAL With m.suma_2 Endif UNLOCK SELECT actactan ENDSCAN ENDIF Return *----------------------------------------------- Procedure _5121 Parameters debit,credit,VALDEBIT,VALCREDIT STORE 0 TO m.plati,m.incasari &&credit=banca plateste IF CREDIT#0 Select ACTACTAN Locate For SCC=m.CONT Scatter Memv m.BANCACRED=ALLTRIM(m.nume_2) m.banca=m.BANCACRED Select banca If Flock() Append Blank Gather Memv Replace plati With credit Endif Unlock Select bannume Locate For ALLTRIM(nume_2)=m.bancaCRED If Flock() If !Found() Append Blank *Gather Fields nume_2 Memv REPLACE NUME_2 WITH M.BANCACRED Endif Replace plati With plati+credit Endif Unlock ENDIF &&debit=banca incas IF DEBIT#0 Select ACTACTAN Locate For SCD=m.CONT Scatter Memv m.bancadeb=ALLTRIM(m.nume_2) m.banca=m.BANCADEB Select banca If Flock() Append Blank Gather Memv Replace incasari With debit Endif Unlock Select bannume Locate For ALLTRIM(nume_2)=m.bancaDEB If Flock() If !Found() Append Blank *Gather Fields nume_2 Memv REPLACE NUME_2 WITH m.bancaDEB Endif Replace incasari With incasari+debit Endif Unlock ENDIF Return *----------------------------------------------- Procedure _5124 Parameters debit,credit,VALDEBIT,VALCREDIT STORE 0 TO m.plati,m.incasari,m.platival,m.incasval &&credit=banca plateste IF CREDIT#0 IF EMPTY(m.banvalcred) && pt modificare Select ACTACTAN Locate For SCC=m.CONT m.BANVALCRED=nume_3 ENDIF Select banVnume Locate For nume_3=m.BANVALCRED If Flock() If !Found() Append Blank *Gather Fields nume_3 Memv REPLACE NUME_3 WITH m.BANVALCRED Endif Replace plati With plati+credit Replace platiVAL With platiVAL+VALcredit REPLACE numeval WITH m.nume_4 Endif UNLOCK Select ACTACTAN SCAN For SCC=m.CONT && din cauza diferentelor de curs valutar Scatter Memv m.banca=m.BANVALCRED Select bancaVAL If Flock() Append Blank Gather Memv Replace plati With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 Replace platiVAL With m.suma_2 Endif UNLOCK Select ACTACTAN ENDSCAN ENDIF &&debit=banca incas IF DEBIT#0 IF EMPTY(m.banvaldeb) && pt modificare Select ACTACTAN Locate For SCD=m.CONT m.BANVALDEB=nume_3 ENDIF Select banVnume Locate For nume_3=m.BANVALDEB If Flock() If !Found() Append Blank *Gather Fields nume_3 Memv REPLACE NUME_3 WITH m.BANVALDEB Endif Replace incasari With incasari+debit Replace incasVAL With incasVAL+VALdebit REPLACE numeval WITH m.nume_4 Endif UNLOCK Select ACTACTAN SCAN For SCD=m.CONT && din cauza diferentelor de curs valutar Scatter Memv m.banca=m.BANVALDEB Select bancaVAL If Flock() Append Blank Gather Memv Replace incasari With m.suma,cursschimb WITH m.suma_3,numeval WITH m.nume_4 Replace incasVAL With m.suma_2 Endif UNLOCK Select ACTACTAN ENDSCAN ENDIF Return *----------------------------------------------- Procedure _542 Parameters Tndebit,Tncredit,TnVALDEBIT,TnVALCREDIT Select achit542 If Flock() If Alltrim(NUME_2)!=Alltrim(M.NUME_2) Seek Alltrim(M.NUME_2) If !Found() Append Blank Gather Fields NUME_2,COD_FISCAL Memv Endif Endif Replace DEBIT With DEBIT+tndebit, CREDIT With CREDIT+tncredit Replace VALDEBIT With VALDEBIT +tnVALdebit, VALCREDIT With VALCREDIT+tnVALcredit Endif UNLOCK &&&&&&&&&&& achiLUN Local nui Select achilun Set Order To nract &&debitul=factura If tndebit!=0 nui=.F. Select ACTACTAN Locate For Left(SCD,3)=Left(m.CONT,3) AND ascd=m.acont Scatter Memv Select achilun Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME_2 AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Fields Except achitat,totctva,ACHITATVAL,SUMAVAL Memv ENDIF Replace totctva With totctva+TnDebit Replace SUMAVAL With SUMAVAL+TnVALdebit REPLACE cursschimb WITH m.suma_3 REPLACE nume WITH m.nume_2 REPLACE ACONT WITH m.ascd Endif Unlock Endif &&creditul=plata If tnCredit!=0 OR (tnCredit=0 AND tnDebit=0) nui=.F. Select ACTACTAN Locate For Left(SCC,3)=Left(m.CONT,3) AND ascc=m.acont Scatter Memv Select achilun *!* DO CASE *!* CASE !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_incasari With 'achilun','ascc','nume_2' *!* OTHERWISE *!* Select achilun *!* If Flock() *!* Replace achitat With achitat+tnCredit *!* Replace achitatVAL With achitatVAL+TnVALcredit *!* Endif *!* Unlock *!* ENDCASE Endif Select achilun Set Order To Tag dataireg *!* Parameters debit,credit,VALDEBIT,VALCREDIT *!* &&&&&&&&&&& achit542 *!* Select ACTACTAN *!* Locate For SCC=m.CONT Or SCD=m.CONT *!* Scatter Fields nume_2 Memv *!* Select achit542 *!* If Flock() *!* If Upper(Alltrim(nume_2))!=Upper(Alltrim(M.nume_2)) *!* Seek Upper(Alltrim(M.nume_2)) *!* If !Found() *!* Append Blank *!* Gather Fields nume_2 Memv *!* Endif *!* Endif *!* Replace dat With dat+credit, luat With luat+debit *!* Endif *!* Unlock Endproc *----------------------------------------------- Procedure _455 Parameters debit,credit,VALDEBIT,VALCREDIT Select actionar If Flock() If Upper(Alltrim(nume_2))!=Upper(Alltrim(M.nume_2)) Seek Upper(Alltrim(M.nume_2)) If !Found() Append Blank Gather Fields nume_2 Memv Endif Endif Replace dat With dat+debit, luat With luat+credit Endif Unlock Endproc *-------------------------------------------------------- Procedure _471 Parameters debit,credit,VALDEBIT,VALCREDIT Local nui Select chavans Set Order To nract Select chavans If debit!=0 nui=.F. Select ACTACTAN Locate For SCD=m.CONT AND ascd=m.acont Scatter Memv Select chavans Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Memv Replace totctva With 0 Endif Select chavans Replace totctva With totctva+debit Endif Unlock Endif &&debitul=plata If credit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For SCC=m.CONT AND ascc=m.acont Scatter Memv Select chavans If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_incasari With 'chavans','ascc','nume' ELSE Select chavans * LOCATE FOR ALLTRIM(nume)=ALLTRIM(m.nume) AND ALLTRIM(dst_chlt)=ALLTRIM(m.dst_chlt) * IF FOUND() If Flock() Replace achitat With achitat+credit Endif UNLOCK * ENDIF Endif Endif Select chavans Set Order To Tag dataireg Endproc *-------------------------------------------------------- Procedure _472 Parameters debit,credit,VALDEBIT,VALCREDIT Local nui Select vnavans Set Order To nract Select vnavans If credit!=0 nui=.F. Select ACTACTAN Locate For SCc=m.CONT AND ascc=m.acont Scatter Memv Select vnavans Seek m.nract If Found() Locate For nract=m.nract And dataact=m.dataact And NUME=m.NUME AND acont=m.acont If !Found() nui=.T. Endif Else nui=.T. Endif If Flock() If nui Append Blank Gather Memv Replace totctva With 0 Endif Select vnavans Replace totctva With totctva+credit Endif Unlock Endif &&debitul=plata If debit!=0 OR (credit=0 AND debit=0) nui=.F. Select ACTACTAN Locate For SCC=m.CONT AND ascd=m.acont Scatter Memv Select vnavans If !(COD=m.COD) And !Empty(XSETS.frm_plata) &&daca plata nu e cuplata cu factura Do trezorerie_plati With 'vnavans','ascd','nume' ELSE Select vnavans * LOCATE FOR ALLTRIM(nume)=ALLTRIM(m.nume) AND ALLTRIM(dst_chlt)=ALLTRIM(m.dst_chlt) * IF FOUND() If Flock() Replace achitat With achitat+credit Endif UNLOCK * ENDIF Endif Endif Select vnavans Set Order To Tag dataireg ENDPROC *----------------------------------------------------------------- Procedure _5112 Parameters debit,credit,VALDEBIT,VALCREDIT Select ACTACTAN Locate For SCD=m.CONT Or SCC=m.CONT Scatter Memv Select cecnume If Flock() If Upper(Alltrim(cec))!=Upper(Alltrim(M.explicatia)) Seek Upper(Alltrim(M.explicatia)) If !Found() Append Blank Replace cec With m.explicatia Endif Endif Replace incarcat With incarcat+debit,plati With plati+credit Endif Unlock Sele cec If Flock() Go Bottom Appe Blank m.plati=credit m.incarcat=debit Gather Memvar Endif Unlock Endproc *-------------------------------------------------------- *!* PROCEDURE _667 *!* PARAMETERS debit,credit,valdebit,valcredit *!* SELECT actactan *!* LOCATE FOR scd=m.cont *!* lcScc=scc *!* SELECT infisiere *!* LOCATE FOR cont=lcScc *!* SCATTER NAME ofis *!* SELECT (ofis.fisier) *!* ENDPROC Procedure SCRIE_NIR DD=Datetime() Select INTRARI Replace All COD With M.COD Replace All UTIL With UTILIZATOR Replace All DATAORA With DD Do INRULAJMAGAZII Do INSTOCURIMAGAZII Return *-------------------------------------------------------- Function LANS Parameters IDS *DO STERGE m.ID_SET=IDS Select XSETS Seek IDS Scatter Name OXSET oitem=Crea('actbaza') oitem.ID_SET=IDS oitem.Show(1) If OXSET.nu_sterg=.F. And buton!=2 Do danu With 'Doriti sa continuati cu operatii de acest fel?' If buton=1 LANS(IDS) Endif Endif Release OXSET Return *---------------------------------------------- Procedure afis_operatii PARAMETERS tcFis,tlVisible SELECT (tcFis) Scatter Fields COD,SCD,SCC,nume_2 Memvar Select * From &tcFis Where &tcFis..COD=m.COD Into Cursor AAA NOFILTER Select AAA N=Reccount() Public camp Scatter Name camp Do Form vizpage *ov=CREATEOBJECT('vizpage') && NU MERGE SI NU INTELEG DE CE :( *ov.bandablOC1.visible=tlVisible *ov.banda21.visible=!tlVisible *ov.blocbuton1.visible=!tlVisible *ov.show() Release camp Select rull Set Filter To Select &tcfis Endproc *!* *------------------------------------------- *!* Function BLOCHEZ_NIR *!* Select NRNIR *!* Flock() *!* DO case *!* case nr_bonuri=0 *!* Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST *!* m=m+1 *!* m.NNIR='1'+Str(NR_GEST,1,0)+Str(m.GEST,3,0)+Str(m,5,0) *!* m.NNIR=Strtran(M.NNIR,' ','0') *!* case nr_bonuri=1 *!* Calculate Max(NR) To m *!* m=m+1 *!* m.NNIR=Alltrim(Str(m)) *!* case nr_bonuri=2 *!* Calculate Max(NR) To m For NRGEST=idutil *!* m=m+1 *!* m.NNIR=Alltrim(Str(m)) *!* Endcase *!* Append Blank *!* Gather Fields NNIR Memv *!* Replace NRGEST With idutil,NR With m *!* *Replace NRGEST With m.nr_gest,NR With m *!* Unlock *!* Return M.NNIR *------------------------------------------- Function BLOCHEZ_NIR LOCAL G,M STORE 0 TO M,G Select NRNIR Flock() DO case case nr_bonuri=0 Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST m=m+1 m.NNIR='1'+Str(NR_GEST,1,0)+Str(m.GEST,3,0)+Str(m,5,0) m.NNIR=Strtran(M.NNIR,' ','0') G= m.nr_gest case nr_bonuri=1 Calculate Max(NR) To m m=m+1 m.NNIR=Alltrim(Str(m)) case nr_bonuri=2 Calculate Max(NR) To m For NRGEST=idutil m=m+1 m.NNIR=Alltrim(Str(m)) G= idutil ENDCASE Select NRNIR Append Blank Gather Fields NNIR,GEST Memv *Replace NRGEST With idutil,NR With m *Replace NRGEST With m.nr_gest,NR With m REPLACE NR WITH M,NRGEST WITH G Unlock Return M.NNIR *---------------------------------- Function ELIB_NIR Parameters N Select NRNIR Seek N If Found() If Flock() Delete Endif Unlock Endif Return *!* *------------------------------------------- *!* Function BLOCHEZ_BON *!* Select nrbon *!* Flock() *!* DO case *!* case nr_bonuri=0 *!* Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST *!* m=m+1 *!* m.NNIR='2'+Str(NR_GEST,1,0)+Str(M.GEST,3,0)+Str(m,5,0) *!* m.NNIR=Strtran(M.NNIR,' ','0') *!* case nr_bonuri=1 *!* Calculate Max(NR) To m *!* m=m+1 *!* m.NNIR=Alltrim(Str(m)) *!* case nr_bonuri=2 *!* Calculate Max(NR) To m For NRGEST=idutil *!* m=m+1 *!* m.NNIR=Alltrim(Str(m)) *!* Endcase *!* Append Blank *!* Gather Fields NNIR Memv *!* Replace NRGEST With idutil,NR With m *!* *!* Gather Fields NNIR,gest Memv *!* *!* Replace NRGEST With m.nr_gest,NR With m *!* Unlock *!* Return M.NNIR *------------------------------------------- Function BLOCHEZ_BON LOCAL G,M STORE 0 TO G,M Select nrbon Flock() DO case case nr_bonuri=0 Calculate Max(NR) To m For NRGEST=NR_GEST And GEST=M.GEST m=m+1 m.NNIR='2'+Str(NR_GEST,1,0)+Str(M.GEST,3,0)+Str(m,5,0) m.NNIR=Strtran(M.NNIR,' ','0') G= m.nr_gest case nr_bonuri=1 Calculate Max(NR) To m m=m+1 m.NNIR=Alltrim(Str(m)) case nr_bonuri=2 Calculate Max(NR) To m For NRGEST=idutil m=m+1 m.NNIR=Alltrim(Str(m)) G= idutil ENDCASE SELECT NRBON Append Blank Gather Fields NNIR,GEST Memv *Replace NRGEST With idutil,NR With m *!* Gather Fields NNIR,gest Memv *!* Replace NRGEST With m.nr_gest,NR With m REPLACE NR WITH M,NRGEST WITH G Unlock Return M.NNIR *---------------------------------- Function ELIB_BON Parameters N Select nrbon Seek N If Found() If Flock() Delete Endif Unlock Endif Return *______________________________________________________________________________ Procedure aleg_doc_plata Parameters tcfis,tcNume,tlval,tcFelCont If Used('actcv') Use In actcv Endif tcNume=Upper(Alltrim(tcNume)) tcfis=Alltrim(tcfis) IF tlval lccond=[ABS(&tcfis..sumaval-&tcfis..achitatval)>0] ELSE IF existacamp('&tcfis','sumaval') lccond=[&tcfis..sumaval-&tcfis..achitatval=0] ELSE lccond='.t.' ENDIF ENDIF Sele distinct &tcfis..* ; FROM &tcfis ; WHERE Upper(Alltrim(&tcfis..NUME))==Upper(Allt(tcNume)) And ; !(Abs(&tcfis..totctva-&tcfis..achitat)=0 Or (&tcfis..totctva<&tcfis..achitat And &tcfis..totctva>0)) and ; &lccond ; into TABLE &LOC\&NFSCURT\TEMPO\actcv order by &tcfis..dataact *!* SELECT DISTINCT actan.cod,actan.nrord FROM actan,&tcfis WHERE actan.cod=&tcfis..cod AND actan.NRACT=&tcfis..NRACT ; *!* INTO CURSOR actfis *!* SELECT &tcfis..*,actfis.nrord ; *!* FROM (&tcfis left join actfis on &tcfis..cod=actfis.cod) ; *!* WHERE Upper(Alltrim(&tcfis..NUME))==Upper(Allt(tcNume)) And ; *!* !(Abs(&tcfis..totctva-&tcfis..achitat)=0 Or (&tcfis..totctva<&tcfis..achitat And &tcfis..totctva>0)) and ; *!* &lccond ; *!* into TABLE &LOC\&NFSCURT\TEMPO\actcv order by &tcfis..dataact *!* USE IN actfis DO CASE CASE ALLTRIM(UPPER(tcFelCont))='A' ALTER TABLE actcv rename COLUMN ACONT to ascc CASE ALLTRIM(UPPER(tcFelCont))='P' ALTER TABLE actcv rename COLUMN ACONT to ascd ENDCASE Alter Table actcv Add Column ALES L Add Column sumaachi N(14) Add Column SUMAACHI2 N(14,2) Add Column achilei N(14) IF tlval Alter Table actcv ADD COLUMN difplus n(14) ADD COLUMN difminus n(14) Add Column cursval n(7) Add Column cursdif n(7) ENDIF Sele actcv Go Top Endproc && aleg_doc_plata *______________________________________________________________________________ Procedure trezorerie_plati Parameters tcfis,tcAcont,tcCol tcAcont=ALLTRIM(tcAcont) lcAcont='trez.'+tcAcont lcCol='trez.'+ALLTRIM(tcCol) *!* IF USED('actcv') *!* Select actcv *!* Scan For ALES *!* Scatter Name trez *!* *!* IF existacamp('actcv',tcAcont) *!* Select (tcfis) *!* IF TYPE('actcv.proc_tva')#'U' *!* Locate For nract=trez.nract And dataact=trez.dataact And NUME=trez.NUME AND acont=&lcAcont AND proc_tva=trez.proc_tva *!* ELSE *!* Locate For nract=trez.nract And dataact=trez.dataact And NUME=trez.NUME AND acont=&lcAcont *!* ENDIF *!* ELSE *!* Select (tcfis) *!* Locate For nract=trez.nract And dataact=trez.dataact And NUME=trez.NUME *!* ENDIF *!* If Flock() *!* Replace achitat With achitat+trez.sumaachi *!* IF existacamp('&tcfis','achitatval') *!* Replace achitatval With achitatval+trez.sumaachi2 *!* ENDIF *!* Endif *!* UNLOCK *!* Select actcv *!* ENDSCAN *!* ELSE && pt modificare sau analitice diferite SELECT actactan Scan For pereche#0 AND &tcAcont=m.acont Scatter Name trez IF TYPE(tcfis+'.acont')#'U' Select (tcfis) IF TYPE(tcfis+'.proc_tva')#'U' Locate For nract=trez.pereche And NUME=&lcCol AND acont=&lcAcont AND proc_tva=trez.proc_tva ELSE Locate For nract=trez.pereche And NUME=&lcCol AND acont=&lcAcont ENDIF ELSE Select (tcfis) Locate For nract=trez.pereche And NUME=&lcCol ENDIF IF FOUND() If Flock() Replace achitat With achitat+trez.suma IF TYPE(tcfis+'.achitatval')#'U' Replace achitatval With achitatval+trez.suma_2 ENDIF ENDIF UNLOCK ENDIF Select actactan ENDSCAN *!* ENDIF Release trez IF USED('actcv') USE IN actcv ENDIF Endproc && trezorerie_incasari_plati *______________________________________________________________________________ Procedure trezorerie_incasari Parameters tcfis,tcAcont,tcCol tcAcont=ALLTRIM(tcAcont) lcAcont='trez.'+tcAcont lcCol='trez.'+ALLTRIM(tcCol) SELECT actactan Scan For pereche2#0 AND &tcAcont=m.acont Scatter Name trez IF TYPE(tcfis+'.acont')#'U' Select (tcfis) IF TYPE(tcfis+'.proc_tva')#'U' Locate For nract=trez.pereche2 And NUME=&lcCol AND acont=&lcAcont AND proc_tva=trez.proc_tva ELSE Locate For nract=trez.pereche2 And NUME=&lcCol AND acont=&lcAcont ENDIF ELSE Select (tcfis) Locate For nract=trez.pereche2 And NUME=&lcCol ENDIF IF FOUND() If Flock() Replace achitat With achitat+trez.suma IF TYPE(tcfis+'.achitatval')#'U' Replace achitatval With achitatval+trez.suma_2 ENDIF ENDIF UNLOCK ENDIF Select actactan ENDSCAN Release trez IF USED('actcv') USE IN actcv ENDIF Endproc && trezorerie_incasari *------------------------------------------------------------------------------ PROCEDURE test_facturi Parameters tcfis,tccont,tcNume,tcfel tcNume=Upper(Alltrim(tcNume)) tcfis=Alltrim(tcfis) LcCond=upper(allt(ofis.camp_verif))+[=']+tcnume+[' AND ]+tcfel+[=']+Tccont+['] && ofis.camp_verif---> vezi procedura viz_fact SELE 0 USE &DATE/ACT.DBF AGAIN ALIAS ACn1 SELECT ACN1 SET FILTER TO &Lccond select &tcfis..nume,&tcfis..dataact,&tcfis..nract,&tcfis..dataireg,&tcfis..totctva as suma,; &tcfis..achitat,&tcfis..achitat as pereche,&tcfis..fdoc,&tcfis..fdoc as scc,&tcfis..fdoc as scd,&tcfis..fdoc as nume_2,&tcfis..fdoc as explicatia; FROM &tcfis; WHERE Upper(Alltrim(&tcfis..NUME))==Upper(Allt(tcNume)) ; into cursor acn2 order by dataireg RETURN LcCond ENDPROC *________________________________________________________________________________ PROCEDURE imperechere_fact_avans PARAMETERS tcfis,tcNume,TnSuma,tlval,tcPereche PRIVATE PlStrict STORE .f. to PlStrict tcfis=UPPER(ALLTRIM(tcfis)) tcNume=Upper(Alltrim(tcNume)) lcPereche='m.'+ALLTRIM(tcPereche) IF tlval lccond=[&tcfis..achitatval-&tcfis..factval>0] ELSE lccond=[&tcfis..achitatval-&tcfis..factval=0] ENDIF IF USED('actcv1') USE IN actcv1 ENDIF SELECT * ; from &tcfis; where Upper(Alltrim(&tcfis..NUME))==tcNume AND &tcfis..achitat-&tcfis..facturat#0 AND &lccond; into Table &loc\&nfscurt\tempo\actcv1 order by dataact ALTER TABLE actcv1 ADD COLUMN ales l ADD COLUMN sumaachi n(14) ADD COLUMN sumaachi2 n(14,2) ; ADD COLUMN difplus n(14) ADD COLUMN difminus n(14) IF _tally=0 DO mesaj with 'Nu exista avansuri inregistrate','la acest partener !' DO STERGE DO inchid_actcv DO deschid_actc RETURN ENDIF IF xsets.id_set=10421 && regularizari clienti creditori SELECT actcv REPLACE ALL sumaachi WITH sumaachi/m.ctva FOR neimpozab=0 AND ales REPLACE ALL neimpozab WITH sumaachi FOR neimpozab#0 AND ales SUM sumaachi TO tnsuma FOR ales ENDIF *m.suma=tnsuma SELECT actcv1 IF !tlval oavans=CREATEOBJECT('avansales') oavans.suma=tnSuma ELSE oavans=CREATEOBJECT('avansval') oavans.suma_2=m.suma_2 ENDIF oavans.pcfis='AVANS' oavans.show(1) IF buton=2 DO sterge DO inchid_actcv DO deschid_actc RETURN ENDIF SELECT ACTCV1 LOCATE FOR ALES SCATTER NAME av IF av.proc_tva=0 m.proc_tva=m.ctvam ELSE m.proc_tva=av.proc_tva ENDIF lnSumaAchi=av.sumaachi lnSumaAchiVal=av.sumaachi2 NRAVANS=NRACT DATAAVANS=DATAACT LcNRORD=ALLT(STR(NRAVANS))+' / '+ALLT(DTOC(DATAAVANS)) *!* IF USED('actactan') *!* USE IN actactan *!* ENDIF *!* IF USED('actc') *!* USE IN actc *!* ENDIF *!* USE &LOC\&NFSCURT\TEMPO\ACTc IN 0 again ALIAS ACTACTAN exclusive ORDER TAG nr_nota *!* SET DELETED ON SELECT actactan PACK IF lnSumaAchi0 OR sumaachi2-LnminVal>0 REPLACE sumaachi WITH LnMin REPLACE sumaachi2 WITH LnMinVal ENDIF LnSumaAchi=LnSumaAchi-LnMin LnSumaAchiVal=LnSumaAchiVal-LnMinVal SELECT actactan GOTO lni SELECT actactan REPLACE suma WITH LnMinAct REPLACE suma_2 WITH LnMinVal REPLACE &tcPereche WITH av.nract * REPLACE neimpozab WITH lnNeimpozab SELECT actactan IF tlval IF suma_3>av.cursschimb SCATTER NAME oaa APPEND BLANK GATHER NAME oaa IF tcfis='AVANS419' REPLACE scd WITH '665 ',suma WITH (oaa.suma_3-av.cursschimb)*LnMinVal,; explicatia WITH 'DIFERENTE NEFAVORABILE',suma_2 WITH 0,suma_3 WITH av.cursschimb ELSE REPLACE scc WITH '765 ',suma WITH (oaa.suma_3-av.cursschimb)*LnMinVal,; explicatia WITH 'DIFERENTE FAVORABILE',suma_2 WITH 0,suma_3 WITH av.cursschimb ENDIF ENDIF IF suma_3m.precdeb Or apreccred<>m.preccred Or aruldeb<>m.RULDEB Or arulcred<>m.RULCRED Select BALANA Seek m.cont+acontvid If !Found() Append Blank Gather Memv REPLACE acont WITH acontvid Endif Replace precdeb With m.precdeb-aprecdeb Replace preccred With m.preccred-apreccred Replace RULDEB With m.RULDEB-aruldeb Replace RULCRED With m.RULCRED-arulcred Endif Select cc ENDSCAN ENDIF UNLOCK IN balana SELECT balana SET FILTER TO return *_______________________________________ Procedure CALCULEAZABALANTA_ANA Select BALANA If Flock() Replace All TOTDEB With RULDEB+precdeb; totcred With RULCRED+preccred Endif Unlock Scan If Flock() If TOTDEB-totcred>0 Replace SOLDDEB With TOTDEB-totcred; SOLDCRED With 0 Else Replace SOLDCRED With totcred-TOTDEB; SOLDDEB With 0 Endif Endif Unlock Endscan Return ******************************************** PROCEDURE introducere_compacta PARAMETERS tcfis,tcscd,tcscc,tl_calcTVA,tl_plata,tctitlu,tctva,tn_idset *!* tcfis=fisierul din calefirma (achi_mat.dbf) *!* tcscd=simbol cont debitor *!* tcscc=simbol cont creditor *!* tl_calctva=daca se calculeaza TVA-ul per total *!* tl_plata=daca se achita factura respectiva *!* tctitlu=titlul formularului frm_introd_compact *!* tctva=contul de TVA (daca tl_calctva=.t.) *!* tn_idset=parametrul functiei lans() IF USED('introdc') USE IN introdc ENDIF SELECT (tcfis) COPY STRUCTURE TO &loc\&nfscurt\tempo\introdc WITH CDX USE &loc\&nfscurt\tempo\introdc IN 0 SHARED SELECT introdc APPEND FROM &CALEFIRMA\DATEAN\&tcfis FOR id_set=tn_idset SET ORDER TO tag ordine SELECT introdc IF FLOCK() IF INLIST(tn_idset,10467,10468) && PLATI IMPOZITE REPLACE ALL nrcrt WITH 0 ELSE REPLACE ALL NRCRT WITH ordine ENDIF IF !EMPTY(tcscd) REPLACE ALL scd WITH tcscd FOR EMPTY(scd) OR UPPER(scd)='X' ENDIF IF !EMPTY(tcscc) REPLACE ALL scc WITH tcscc FOR EMPTY(scc) OR UPPER(scc)='X' ENDIF IF m.ctva-1=0 REPLACE ALL bifa WITH .t. REPLACE ALL ptva WITH 0 ENDIF ENDIF UNLOCK SELECT actactan ZAP SELECT introdc GO TOP obj=CREATEOBJECT('FRM_INTROD_COMPACT') obj.gridb1.column3.backcolor=RGB(255,255,255) obj.gridb1.column4.backcolor=RGB(255,255,255) IF !tl_plata obj.container2.visible=.f. obj.container2.optiongroup1.value=0 OBJ.HEIGHT=obj.container2.TOP ELSE obj.container2.optiongroup1.value=1 ENDIF IF !tl_calcTVA obj.container1.visible=.f. OBJ.HEIGHT=obj.container1.TOP+10 ENDIF obj.titlufrumos1.caption=tctitlu obj.show(1) IF BUTON=2 DO deschid_actc RETURN ENDIF *!* IF tn_idset=10455 && rate leasing *!* lans(10411) *!* ENDIF SELECT actactan REPLACE ALL id_set WITH tn_idset SELECT actactan SCRIE_IN_FISIERE(' ') DO deschid_actc ENDPROC &&introducere_compacta *___________________________________________________ PROCEDURE deschid_actc IF USED('actactan') USE IN actactan ENDIF IF !USED('ACTc') DO DES WITH 'ACTc' ENDIF ENDPROC && deschid_actc *____________________________________________________ PROCEDURE inchid_actcv IF USED('actcv') USE IN actcv ENDIF IF USED('ACTcv1') USE IN 'ACTcv1' ENDIF ENDPROC && inchid_actcv *_____________________________________________________________________________________________________________________ PROCEDURE viz_facturi PARAMETERS tcFis1,tcFis2,tnCont,tlCuTest,tlVisible,tcTitlu,TcColDeb,TcColCred SELECT infisiere LOCATE FOR VAL(cont)=tnCont SCATTER NAME ofis *!* SELECT(tcfis1) *!* If EXISTACIMP(tcfis1,'TOTDEB') *!* If Flock() *!* DO CASE *!* CASE UPPER(ofis.fel)='A' *!* Replace All totdeb With precdeb+productie,totcred With preccred+incasat *!* CASE UPPER(ofis.fel)='P' *!* Replace All totdeb With precdeb+platit,totcred With preccred+achizit *!* ENDCASE *!* Endif *!* UNLOCK *!* ENDIF SELECT(tcfis1) If EXISTACIMP(tcfis1,'TOTDEB') Replace All totdeb With precdeb+&TcColDeb,totcred With preccred+&TcColCred ENDIF Local C C="nume+ALLTRIM(STR(YEAR(dataact)))+RIGHT('0'+ALLTRIM(STR(MONTH(dataact))),2)+RIGHT('0'+ALLTRIM(STR(DAY(dataact))),2)" buton=1 IF tlCuTest SELECT (tcfis2) Set Filter To lcProc='inainte_'+ALLTRIM(tcfis2) Do &lcProc In inaintede.prg If buton=2 Return ENDIF ENDIF If Used('ACTCV') Use In actcv ENDIF lcCale='&Date\'+ALLTRIM(tcfis2) Use &lcCale In 0 Again Alias actcv SHARED order dataireg Sele actcv *!* Index On &C Tag nd Of &loc\&nfscurt\tempo\actcv *!* Index On DATAireg Tag DATAireg Of &loc\&nfscurt\tempo\actcv additive *!* Set Order To Tag DATAireg PRIVATE pcAnalitic STORE '' TO pcAnalitic Oreg=Createobject("AFCUMPVANZanp") With Oreg .LABEL10.Caption=PROPER(tcTitlu) .grid1.column12.Visible=.T. .cont=tnCont .fisier=ALLTRIM(tcFis2) .CHECK2.Visible=tlVisible .CHECK6.Visible=tlVisible .CHECK7.Visible=tlVisible .CHECK9.Visible=tlVisible *.command1.Visible=tlVisible *.command3.Visible=tlVisible .grid1.column2.Visible=tlVisible .grid1.column11.Visible=tlVisible .grid1.column13.Visible=tlVisible .grid1.column14.Visible=tlVisible .grid1.column7.Visible=tlVisible .grid1.column8.Visible=tlVisible .grid1.column10.Visible=tlVisible IF !tlVisible .CHECK3.Caption='Regularizate' .CHECK4.Caption='Neregularizate' .check10.Caption='Regularizat' .grid1.column12.header1.Caption='Regularizat' .grid1.column2.Width=0 ENDIF Endwith *OREG.cmdlist1.VISIBLE=.f. Oreg.Show(1) IF USED('actcv') Use In actcv ENDIF RELEASE ofis RELEASE oreg *?????? Do totv ENDPROC && viz_facturi *-------------------------------------- Function STERGE_DIN_FISIERE Parameters PlConfirmare,pnCod Local M.DEB,M.CRED,COND Store 0 To M.DEB, M.CRED CREATE TABLE &loc\&nfscurt\tempo\conturi.dbf FREE (cont c(4),ana c(4),deb n(14),cred n(14),debval n(14.2),credval n(14.2)) SELECT conturi APPEND BLANK APPEND BLANK DD=Datetime() IF PlConfirmare IF USED('actactan') USE IN actactan ENDIF SELECT * from actjur WHERE cod=pnCod INTO CURSOR actactan overif=CREATEOBJECT('verificare') overif.show(1) IF buton=2 USE IN conturi Release Overif RETURN ENDIF ENDIF && sterg efectele neimpozab,TVA si baza din cump si vanz pt toate inregistrarile din nota && in loc sa fac o procedura sterg_4426 si sterg_4427 DO sterg_TVA WITH "actactan" Select ACTJUR SET FILTER TO SCAN FOR cod=pnCod SCATTER NAME osterg Replace UTILS With UTILIZATOR, DATAORAS With DD DELETE Select ACTAN SET DELETED ON If Flock() LOCATE FOR cod=osterg.cod AND scd=osterg.scd AND scc=osterg.scc AND suma=osterg.suma IF FOUND() DELETE ENDIF Endif UNLOCK SELECT conturi GOTO 1 REPLACE cont WITH osterg.scd,ana WITH osterg.ascd,deb WITH -osterg.suma,debval WITH -osterg.suma_2 GOTO 2 REPLACE cont WITH osterg.scc,ana WITH osterg.ascc,cred WITH -osterg.suma,credval WITH -osterg.suma_2 && sterge din balanta si balanta analitica Select conturi SCAN Scatter Memv Select BAL If Flock() Seek ALLTRIM(M.CONT) If !Found() Do MESAJ With 'Contul '+M.CONT+' nu se regaseste in balanta!','' ELSE Select BAL Replace RULDEB With RULDEB+M.DEB, TOTDEB With TOTDEB+M.DEB,; RULCRED With RULCRED+M.CRED, TOTCRED With TOTCRED+M.CRED SOLD=TOTDEB-TOTCRED Replace SOLDDEB With Iif(SOLD>0,SOLD,0), SOLDCRED With Iif(SOLD<0,-SOLD,0) Endif Endif UNLOCK SELECT balana IF FLOCK() IF !EMPTY(m.ana) Seek m.cont+m.ana IF FOUND() Replace RULDEB With RULDEB+M.deb, TOTDEB With TOTDEB+M.deb, ; RULcred With RULcred+M.cred, TOTcred With TOTcred+M.cred SOLD=TOTDEB-TOTCRED Replace SOLDDEB With Iif(SOLD>0,SOLD,0),SOLDcred With Iif(SOLD<0,-SOLD,0) ENDIF ENDIF ENDIF UNLOCK Select conturi ENDSCAN Select Distinct A.Cont,b.ana as acont,A.FPROC,B.DEB,B.CRED,B.DEBVAL,B.CREDVAL From INFISIERE A, conturi B ; WHERE A.Cont=B.Cont ; INTO Cursor COM Select COM SCAN Scatter Memv zz='Do '+'sterg'+Alltrim(FPROC)+' with m.deb,m.cred,M.DEBVAL,M.CREDVAL' &zz SELECT com ENDSCAN Select ACTJUR ENDSCAN &&in gestiuni ???? sele RUL set filter to if flock() DELETE for cod=osterg.cod endif unlock in rul sele RULL set filter to if flock() SCAN FOR cod=osterg.cod IF PlConfirmare scat memv sele stoc if flock() loca for allt(denumire)=allt(m.denumire) and allt(codmat)=allt(m.codmat) and pret=m.pret and gest=m.gest and scd=m.scd if found() if m.cant#0 repl cant with cant-m.cant else repl cante with cante-m.cante endif endif ENDIF UNLOCK ENDIF sele rull delete endscan endif unlock in rull USE IN conturi Do STERGE Release Osterg Return 0 *----------------------------------------------- Procedure sterg_401 Parameters debit,credit,VALDEBIT,VALCREDIT &&&&&&&&&&& FURNIZOR Select FURNIZOR If Flock() Seek Alltrim(osterg.NUME) Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit Endif Unlock Local di,din,div IF Left(osterg.SCC,3)='767' And osterg.SCD=m.CONT AND osterg.ascd=m.acont &&discount di=osterg.suma din=osterg.neimpozab div=osterg.SUMA_2 ELSE STORE 0 TO di,din,div ENDIF &&&&&&&&&&& CUMPLUN Select cumplun IF credit#0 OR di#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+credit+di Replace SUMAVAL With SUMAVAL+VALcredit+div Replace achitat With achitat+debit+di Replace achitatVAL With achitatVAL+VALdebit+div IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF Endif UNLOCK ENDIF &&&&&&&&&&&CUMP *!* If credit!=0 OR di#0 *!* m.neimpozab=-osterg.neimpozab+din *!* m.totctva=credit+di *!* IF Left(osterg.scd,3)='442' *!* m.tvam=credit *!* ELSE *!* m.tvam=0 *!* ENDIF *!* *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* *!* Select cump *!* If Flock() *!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME *!* IF FOUND() *!* IF FLOCK() *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* ENDIF *!* *!* SELECT cump *!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 *!* DELETE *!* ENDIF *!* ENDIF *!* Unlock *!* Endif Return *----------------------------------------------- Procedure sterg_404 Parameters debit,credit,VALDEBIT,VALCREDIT &&&&&&&&&&& FURNIZOR Select FURNIZ404 If Flock() Seek Alltrim(osterg.NUME) Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit Endif Unlock Local di,din,div IF Left(osterg.SCC,3)='767' And osterg.SCD=m.CONT AND osterg.ascd=m.acont &&discount di=osterg.suma din=osterg.neimpozab div=osterg.SUMA_2 ELSE STORE 0 TO di,din,div ENDIF Select cumplun404 IF credit#0 OR di#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+credit+di Replace SUMAVAL With SUMAVAL+VALcredit+div Replace achitat With achitat+debit+di Replace achitatVAL With achitatVAL+VALdebit+div IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF Endif UNLOCK ENDIF &&&&&&&&&&&CUMP *!* If (credit!=0 OR di#0) AND osterg.neimpozab#0 *!* m.neimpozab=-osterg.neimpozab+din *!* m.totctva=credit+di *!* IF Left(osterg.scd,3)='442' *!* m.tvam=credit *!* ELSE *!* m.tvam=0 *!* ENDIF *!* *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* *!* Select cump *!* If Flock() *!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME *!* IF FOUND() *!* IF FLOCK() *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* ENDIF *!* *!* SELECT cump *!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 *!* DELETE *!* ENDIF *!* ENDIF *!* Unlock *!* Endif Return *---------------------------------------------- Procedure sterg_408 Parameters debit,credit,VALDEBIT,VALCREDIT Select ana408 If Flock() Seek Alltrim(osterg.NUME) Replace PLATIT With PLATIT+debit, ACHIZIT With ACHIZIT+credit Replace platival With platival+VALdebit, ACHIZITVAL With ACHIZITVAL+VALcredit Endif Unlock Select fact408 IF credit#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva ELSE Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva ENDIF If Found() If Flock() Replace totctva With totctva+credit Replace SUMAVAL With SUMAVAL+VALcredit Replace achitat With achitat+debit Replace achitatVAL With achitatVAL+VALdebit IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF Endif UNLOCK ENDIF *!* IF debit#0 && pt regularizari 408-401,4426-4428 *!* LOCAL lnSUma *!* lnSuma=0 *!* SELECT cump *!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME *!* IF FOUND() *!* lnSuma=ROUND(debit*(m.ctva-1)/m.ctva,0) *!* REPLACE tvam WITH tvam+lnSuma *!* REPLACE totftvam WITH totftvam-lnSuma *!* ENDIF *!* SELECT cump *!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 *!* DELETE *!* ENDIF *!* ENDIF RETURN *----------------------------------------------- PROCEDURE sterg_4426 Parameters debit,credit,VALDEBIT,VALCREDIT *** vezi sterg_TVA RETURN *----------------------------------------------- PROCEDURE sterg_4427 Parameters debit,credit,VALDEBIT,VALCREDIT *** vezi sterg_TVA RETURN *----------------------------------------------- Procedure sterg_409 Parameters debit,credit,VALDEBIT,VALCREDIT Select AVANS409 If debit#0 If Flock() Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME If Found() Replace achitat With achitat+debit &&, facturat With facturat+credit Replace achitatVAL With achitatVAL+VALdebit Endif Endif Unlock Endif If credit#0 *!* lcDat=Right(Allt(osterg.NRORD),10) *!* ldDAT=Ctod(lcDat) *!* lcNr=Strtran(Strtran(osterg.NRORD,lcDat,''),'/','') *!* lnNr=Val(lcNr) Select AVANS409 Locate For nract=osterg.pereche2 And NUME=osterg.NUME IF FOUND() If Flock() Replace facturat With facturat+credit Replace factVAL With factVAL+valcredit Endif UNLOCK ENDIF ENDIF SELECT avans409 IF achitat=0 AND facturat=0 AND achitatval=0 AND factval=0 DELETE ENDIF Select FURNIZOR If Flock() Seek Alltrim(osterg.NUME) If Found() Replace avans With avans+debit-credit Replace avansVAL With avansVAL+VALdebit-VALcredit Endif Endif UNLOCK Return *------------------------------------------------------------- Procedure sterg_419 Parameters debit,credit,VALDEBIT,VALCREDIT Select AVANS419 If credit#0 If Flock() Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME If Found() Replace achitat With achitat+credit &&, facturat With facturat+credit Replace achitatVAL With achitatVAL+VALcredit Endif Endif Unlock ENDIF If debit#0 *!* lcDat=Right(Allt(osterg.NRORD),10) *!* ldDAT=Ctod(lcDat) *!* lcNr=Strtran(Strtran(osterg.NRORD,lcDat,''),'/','') *!* lnNr=Val(lcNr) Select AVANS419 Locate For nract=osterg.pereche And NUME=osterg.NUME IF FOUND() If Flock() Replace facturat With facturat+debit Replace factVAL With factVAL+valdebit Endif UNLOCK ENDIF Endif SELECT avans419 IF achitat=0 AND facturat=0 AND achitatval=0 AND factval=0 DELETE ENDIF Select clienti If Flock() Seek Alltrim(osterg.NUME) If Found() Replace avans With avans-debit+credit Replace avansVAL With avansVAL-VALdebit+VALcredit Endif Endif UNLOCK *--------------------------------------------------------------------- Procedure sterg_462 Parameters tndebit,tncredit,tnVALDEBIT,tnVALCREDIT &&&&&&&&&&& CREDITORI Select CREDITOR If Flock() Seek Alltrim(osterg.NUME) Replace debit With debit +TnDebit, credit With Credit+TnCredit Replace VALdebit With VALdebit +tnVALdebit, VALcredit With VALcredit+tnVALcredit Endif Unlock Local di,din,div IF Left(osterg.SCC,3)='767' And osterg.SCD=m.CONT AND ascd=m.acont &&discount di=osterg.suma din=osterg.neimpozab div=osterg.SUMA_2 ELSE STORE 0 TO di,din,div ENDIF &&&&&&&&&&& CREDLUN Select credlun IF TNcredit#0 OR di#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE Locate For nract=osterg.pereche And NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+TNcredit+di Replace SUMAVAL With SUMAVAL+TnVALcredit+div Replace achitat With achitat+TNdebit+di Replace achitatVAL With achitatVAL+TnVALdebit+div Endif UNLOCK IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF ENDIF *---------------------------------------------- Procedure sterg_411 Parameters debit,credit,VALDEBIT,VALCREDIT &&&&&&&&&&& CLIENTI Select clienti If Flock() Seek Alltrim(osterg.NUME) Replace productie With productie +debit, incasat With incasat+credit Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit Endif Unlock Local di,din,div,reg STORE 0 TO di,din,div,reg DO CASE CASE Left(osterg.SCd,3)='667' And osterg.SCc=m.CONT AND osterg.ascc=m.acont &&discount di=osterg.suma din=osterg.neimpozab div=osterg.SUMA_2 CASE osterg.id_set=10421 AND osterg.scc='4427' &®ularizare facturi-avans reg=osterg.suma ENDCASE &&&&&&&&&&& VANZLUN Select vanzlun IF (debit#0 OR di#0) AND osterg.id_set#10421 &&discount + regularizare avans-factura Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+debit+di+reg Replace SUMAVAL With SUMAVAL+VALdebit+div Replace achitat With achitat+credit+di+reg Replace achitatVAL With achitatVAL+VALcredit+div Endif UNLOCK IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF ENDIF &&&&&&&&&&&VANZ *!* If debit!=0 OR di#0 *!* m.neimpozab=-osterg.neimpozab+din *!* m.totctva=debit+di *!* IF Left(osterg.scc,3)='442' *!* m.tvam=debit *!* ELSE *!* m.tvam=0 *!* ENDIF *!* *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* *!* Select vanz *!* If Flock() *!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME *!* IF FOUND() *!* IF FLOCK() *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* ENDIF *!* *!* SELECT vanz *!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 *!* DELETE *!* ENDIF *!* ENDIF *!* Unlock *!* Endif RETURN *---------------------------------------------- Procedure sterg_461 Parameters tndebit,tncredit,tnVALDEBIT,tnVALCREDIT &&&&&&&&&&& DEBITORI Select debitor If Flock() Seek Alltrim(osterg.NUME) Replace debit With debit +TnDebit, credit With Credit+TnCredit Replace VALdebit With VALdebit +tnVALdebit, VALcredit With VALcredit+tnVALcredit Endif Unlock Local di,din,div IF Left(osterg.SCd,3)='667' And osterg.SCc=m.CONT AND osterg.ascc=m.ascc &&discount di=osterg.suma din=osterg.neimpozab div=osterg.SUMA_2 ELSE STORE 0 TO di,din,div ENDIF &&&&&&&&&&& DEBLUN SELECT deblun IF tnDebit#0 OR di#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+tndebit+di Replace SUMAVAL With SUMAVAL+tnVALdebit+div Replace achitat With achitat+tncredit+di Replace achitatVAL With achitatVAL+tnVALcredit+div Endif UNLOCK IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF ENDIF &&&&&&&&&&&VANZ *!* If tnDebit!=0 OR di#0 *!* m.neimpozab=-osterg.neimpozab+din *!* m.totctva=tnDebit+di *!* IF Left(osterg.scc,3)='442' *!* m.tvam=tnCredit *!* ELSE *!* m.tvam=0 *!* ENDIF *!* *!* m.totftvam=m.totctva-m.neimpozab-m.tvam *!* *!* Select vanz *!* If Flock() *!* Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME *!* IF FOUND() *!* IF FLOCK() *!* REPLACE totctva WITH totctva+m.totctva,totftvam WITH totftvam+m.totftvam, ; *!* tvam WITH tvam+m.tvam,neimpozab WITH neimpozab+m.neimpozab *!* ENDIF *!* ENDIF *!* *!* SELECT vanz *!* IF totctva=0 AND totftvam=0 AND neimpozab=0 AND tvam=0 *!* DELETE *!* ENDIF *!* ENDIF *!* Unlock *!* Endif Return *--------------------------------------------------------------------------- Procedure sterg_4118 Parameters debit,credit,VALDEBIT,VALCREDIT &&&&&&&&&&& CLIENT4118 Select client4118 If Flock() Seek Alltrim(osterg.NUME) Replace productie With productie +debit, incasat With incasat+credit Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit Endif Unlock Local di,din,div IF Left(osterg.SCd,3)='667' And osterg.SCc=m.CONT AND osterg.ascc=m.acont &&discount di=osterg.suma din=osterg.neimpozab div=osterg.SUMA_2 ELSE STORE 0 TO di,din,div ENDIF &&&&&&&&&&& VANZLU4118 Select vanzlu4118 IF debit#0 OR di#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+debit+di Replace SUMAVAL With SUMAVAL+VALdebit+div Replace achitat With achitat+credit+di Replace achitatVAL With achitatVAL+VALcredit+div Endif UNLOCK IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF ENDIF RETURN *--------------------------------------------------------------------------- Procedure sterg_418 Parameters debit,credit,VALDEBIT,VALCREDIT &&&&&&&&&&& ANA418 Select ana418 If Flock() Seek Alltrim(osterg.NUME) Replace productie With productie +debit, incasat With incasat+credit Replace prodVAL With prodVAL +VALdebit, incasVAL With incasVAL+VALcredit Endif UNLOCK &&&&&&&&&&& FACT418 Select Fact418 IF debit#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva ELSE LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont AND proc_tva=osterg.proc_tva ENDIF If Found() If Flock() Replace totctva With totctva+debit Replace SUMAVAL With SUMAVAL+VALdebit Replace achitat With achitat+credit Replace achitatVAL With achitatVAL+VALcredit IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF ENDIF UNLOCK ENDIF *----------------------------------------------------------------------------------- Procedure sterg_471 Parameters debit,credit,VALDEBIT,VALCREDIT Select chavans Set Order To nract Select chavans IF debit#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+debit * Replace SUMAVAL With SUMAVAL+VALdebit Replace achitat With achitat+credit * Replace achitatVAL With achitatVAL+VALcredit Endif UNLOCK IF totctva=0 AND achitat=0 DELETE ENDIF ENDIF Select chavans Set Order To Tag dataireg ENDPROC *---------------------------------------------------------------------------------- Procedure sterg_472 Parameters debit,credit,VALDEBIT,VALCREDIT Select vnavans Set Order To nract Select vnavans IF credit#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME AND acont=m.acont ELSE LOCATE FOR nract=osterg.pereche AND NUME=osterg.NUME AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+credit * Replace SUMAVAL With SUMAVAL+VALcredit Replace achitat With achitat+debit * Replace achitatVAL With achitatVAL+VALdebit Endif UNLOCK IF totctva=0 AND achitat=0 DELETE ENDIF ENDIF Select vnavans Set Order To Tag dataireg ENDPROC *---------------------------------------------------------------------------------- Procedure sterg_455 Parameters debit,credit,VALDEBIT,VALCREDIT Select actionar If Flock() Seek Upper(Alltrim(osterg.nume_2)) If Found() Replace dat With dat+debit, luat With luat+credit Endif Endif UNLOCK ENDPROC *-------------------------------------------------------- Procedure sterg_5311 Parameters debit,credit,VALDEBIT,VALCREDIT SELECT casa LOCATE FOR cod=osterg.cod IF FOUND() DELETE ENDIF Select casanume Locate For ALLTRIM(casa)=osterg.nume_3 If Flock() If Found() Replace incasari With incasari+debit Replace plati With plati+credit Endif Endif Unlock Return *----------------------------------------------- Procedure sterg_5314 Parameters debit,credit,VALDEBIT,VALCREDIT STORE 0 TO m.plati,m.incasari,m.platival,m.incasval SELECT casaval LOCATE FOR cod=osterg.cod IF FOUND() DELETE ENDIF Select casvnume Locate For ALLTRIM(nume_5)=osterg.nume_5 If Flock() If Found() Replace incasari With incasari+debit Replace incasVAL With incasVAL+VALdebit Replace plati With plati+credit Replace platiVAL With platiVAL+VALcredit Endif Endif Unlock Return *----------------------------------------------- Procedure sterg_5121 Parameters debit,credit,VALDEBIT,VALCREDIT SELECT banca LOCATE FOR cod=osterg.cod IF FOUND() DELETE ENDIF Select bannume Locate For ALLTRIM(nume_2)=osterg.nume_2 If Flock() If Found() Replace incasari With incasari+debit Replace plati With plati+credit Endif Endif Unlock Return *----------------------------------------------- Procedure sterg_5124 Parameters debit,credit,VALDEBIT,VALCREDIT SELECT bancaval LOCATE FOR cod=osterg.cod IF FOUND() DELETE ENDIF Select banvnume Locate For ALLTRIM(nume_3)=osterg.nume_3 If Flock() If Found() Replace incasari With incasari+debit Replace incasVAL With incasVAL+VALdebit Replace plati With plati+credit Replace platiVAL With platiVAL+VALcredit Endif Endif Unlock *-------------------------------------------------------- Procedure sterg_5112 Parameters debit,credit,VALDEBIT,VALCREDIT Sele cec If Flock() LOCATE FOR cod=osterg.cod IF FOUND() DELETE ENDIF Endif UNLOCK Select cecnume If Flock() LOCATE FOR UPPER(ALLTRIM(cec))=Upper(Alltrim(osterg.explicatia)) If Found() Replace incarcat With incarcat+debit,plati With plati+credit Endif Endif UNLOCK ENDPROC *-------------------------------------------------------- Procedure sterg_542 Parameters tndebit,tncredit,tnVALDEBIT,tnVALCREDIT &&&&&&&&&&& DEBITORI Select achit542 If Flock() Seek Alltrim(osterg.NUME_2) Replace debit With debit +TnDebit, credit With Credit+TnCredit Replace VALdebit With VALdebit +tnVALdebit, VALcredit With VALcredit+tnVALcredit Endif Unlock &&&&&&&&&&& achiLUN SELECT achilun IF tnDebit#0 Locate For nract=osterg.nract And dataact=osterg.dataact And NUME=osterg.NUME_2 AND acont=m.acont ELSE LOCATE FOR nract=osterg.pereche2 AND NUME=osterg.NUME_2 AND acont=m.acont ENDIF If Found() If Flock() Replace totctva With totctva+tndebit Replace SUMAVAL With SUMAVAL+tnVALdebit Replace achitat With achitat+tncredit Replace achitatVAL With achitatVAL+tnVALcredit Endif UNLOCK IF totctva=0 AND achitat=0 AND sumaval=0 AND achitatval=0 DELETE ENDIF ENDIF *!* Parameters debit,credit,VALDEBIT,VALCREDIT *!* &&&&&&&&&&& achit542 *!* Select achit542 *!* If Flock() *!* Seek Upper(Alltrim(osterg.nume_2)) *!* If Found() *!* Replace dat With dat+credit, luat With luat+debit *!* Endif *!* Endif *!* Unlock ENDPROC *----------------------------------------------------------------------- *** INCEPUT PROCEDURA INTRODUC_TVA PROCEDURE caut_neimpozab PARAMETERS tcAlias LOCAL lcAlias, lcTVAD,lcTVAC,llvanz,llcump lcAlias = ALLTRIM(tcAlias) lcTVAD = "4426" lcTVAC = "4427" SELECT infisiere LOCATE FOR cont=lcTVAD lclstcDD=coresp_d && lista corespondentelor 4426 pe debit lclstcDC=coresp_c && lista corespondentelor 4426 pe credit LOCATE FOR cont=lcTVAC lclstcCD=coresp_d && lista corespondentelor 4427 pe debit lclstcCC=coresp_c && lista corespondentelor 4427 pe credit STORE .F. to llvanz, llcump IF !USED(lcAlias) RETURN ENDIF *** caut daca exista inregistrari care afecteaza tva-ul SELECT (lcAlias) LOCATE FOR neimpozab!=0 IF !FOUND() RETURN ENDIF SELECT (lcAlias) LOCATE FOR neimpozab != 0 IF FOUND() IF INLIST(ALLTRIM(scd),&lclstcCC) OR INLIST(ALLTRIM(scc),&lclstcCD) llvanz = .T. ENDIF IF INLIST(ALLTRIM(scd),&lclstcDC) OR INLIST(ALLTRIM(scc),&lclstcDD) llcump = .T. ENDIF ENDIF IF llcump DO _4426 WITH 0,0,0,0 ENDIF IF llvanz DO _4427 WITH 0,0,0,0 ENDIF RETURN *----------------------------------------------------------------------- *** INCEPUT PROCEDURA STERG_TVA PROCEDURE sterg_TVA PARAMETERS tcAlias LOCAL lcAlias, lcTVAD,lcTVAC,llvanz,llcump lcAlias = ALLTRIM(tcAlias) lcTVAD = "4426" lcTVAC = "4427" lclstcCD = [411;4111;4112;4113;4114;4115;4116;4117;4118;4119;4428] && lista corespondentelor 4427 pe debit lclstcCC = [411;4111;4112;4113;4114;4115;4116;4117;4118;4119;461;5121;5124;5311;5314;428;635] && lista corespondentelor 4427 pe credit lclstcDD = [401;404;5121;5124;542] && lista corespondentelor 4426 pe debit lclstcDC = [4427;4424;635] && lista corespondentelor 4426 pe credit STORE .F. to llvanz, llcump IF !USED(lcAlias) RETURN ENDIF *** caut daca exista inregistrari care afecteaza tva-ul SELECT (lcAlias) LOCATE FOR neimpozab!=0 OR INLIST(scd,lcTVAD,lcTVAC) OR INLIST(scc,lcTVAD,lcTVAC) IF !FOUND() RETURN ENDIF SELECT (lcAlias) GO top SCATTER NAME losterg *** verific daca trebuie sa sterg din vanz sau din cump SELECT (lcAlias) LOCATE FOR INLIST(lcTVAD,scd,scc) IF FOUND() llcump = .T. ELSE LOCATE FOR INLIST(lcTVAC,scd,scc) IF FOUND() llvanz = .T. ENDIF ENDIF IF !(llcump OR llvanz) && daca nu am gasit inreg cu TVA caut neimpozab SELECT (lcAlias) LOCATE FOR neimpozab != 0 IF FOUND() IF ALLTRIM(scd)$lclstcCD OR ALLTRIM(scc)$lclstcCD OR ALLTRIM(scc)$lclstcCC OR ALLTRIM(scd)$lclstcCC llvanz = .T. ENDIF IF ALLTRIM(scc)$lclstcDC OR ALLTRIM(scd)$lclstcDC OR ALLTRIM(scd)$lclstcDD OR ALLTRIM(scc)$lclstcDD llcump = .T. ENDIF ENDIF ENDIF IF llvanz SELECT vanz LOCATE FOR cod=losterg.cod AND nract=losterg.nract IF FOUND() IF FLOCK() DELETE UNLOCK ENDIF ENDIF ENDIF IF llcump SELECT cump LOCATE FOR cod=losterg.cod AND nract=losterg.nract IF FOUND() IF FLOCK() DELETE UNLOCK ENDIF ENDIF ENDIF ENDPROC && sterg_TVA *----------------------------------------------- PROCEDURE regularizare_clienti &&&&&&&&&vanzlun SELECT actactan SCAN FOR INLIST(m.acont,ascc,ascd) SCATTER NAME oreg SELECT vanzlun IF FLOCK() DO CASE CASE LEFT(OREG.scc,3)='411' LOCATE FOR nract=oreg.pereche2 AND NUME=oreg.NUME AND acont=oreg.ascc IF FOUND() REPLACE achitat WITH achitat+oreg.suma ENDIF CASE LEFT(OREG.scd,3)='411' LOCATE FOR nract=oreg.pereche2 AND NUME=oreg.NUME AND acont=oreg.ascd IF FOUND() REPLACE achitat WITH achitat-oreg.suma ENDIF ENDCASE ENDIF UNLOCK SELECT actactan ENDSCAN RELEASE oreg ENDPROC *---------------------------------------------------------------------------------------------- PROCEDURE afis_sold_casabanca PARAMETERS tcTip,tcFis,tcTitlu,TcCont,TcNumeCol1,TcNumeCol2,tlVisibil Private m.sum1,m.sum2,m.sum3,m.sumA2,m.sumA3,m.sumA4,m.sumA5,m.sumA6,m.sumA7,m.sumA8,m.sumA9,m.sumA10,m.sumA11,m.sumA12,m.sumA13,pcnumele,M.NUMEVAL,; m.tincasari,m.tplati,sold STORE 0 TO m.sum1,m.sum2,m.sum3,m.sumA2,m.sumA3,m.sumA4,m.sumA5,m.sumA6,m.sumA7,m.sumA8,m.sumA9,m.sumA10,m.sumA11,m.sumA12,m.sumA13,; m.tincasari,m.tplati,sold STORE '' TO pcnumele,M.NUMEVAL Sele &tcFis m.SOLDDEB=0 m.SOLDCRED=0 Sum &TcNumeCol2,PLATI To m.sum1,M.sum2 m.sum3=M.sum1-M.sum2 Sele Bal Seek TcCont If Found() Scatter Memvar If M.SOLDDEB-M.SOLDCRED # M.sum3 Do mesajval With 'Diferenta este:',M.SOLDDEB-M.SOLDCRED-M.sum3 Endif *!* Else *!* Do mesajval With '',M.SOLDDEB Endif Sele &tcFis Obancana=Createobject("afbancanav") WITH Obancana .tip=tcTip .grid1.column1.ControlSource=TcNumeCol1 .grid1.column3.ControlSource=TcNumeCol2 .grid1.column3.DynamicForeColor='IIF('+TcNumeCol2+'>=0, RGB(0,0,0), RGB(255,0,0))' .grid1.column9.ControlSource=TcNumeCol2+'-PLATI' .grid1.column9.DynamicForeColor='IIF('+TcNumeCol2+'-plati>=0, RGB(0,0,0), RGB(255,0,0))' .grid1.column3.header3.caption=PROPER(TcNumeCol2) .TitluFrumos1.Caption=TcTitlu .check1.visible=TlVisibil .check3.visible=TlVisibil .check5.visible=TlVisibil .check7.visible=TlVisibil .TEXT14.VISIBLE=TlVisibil .TEXT15.VISIBLE=TlVisibil .TEXT16.VISIBLE=TlVisibil .LABEL2.VISIBLE=TlVisibil .GRID1.column5.visible=TlVisibil .GRID1.column6.visible=TlVisibil .GRID1.column7.visible=TlVisibil .GRID1.column8.visible=TlVisibil ENDWITH Obancana.Show() ENDPROC *-------------------------------------------------------------------- procedure umple_log PARAMETERS textul,textmare LOCAL datatext datatext="" *----------------FACE INREGISTRARI IN LOG_TEXT. datatext=calefirma+"\logs\contab\log_"+ALLTRIM(STR(DAY(DATE())))+"_"+ALLTRIM(STR(MONTH(DATE())))+"_"+ALLTRIM(STR(YEAR(DATE())))+".txt" CD &CALEFIRMA If !Directory("LOGS") md logs ENDIF CD &calefirma\logs If !Directory("contab") Md contab ENDIF Set Textmerge On Set Textmerge Noshow Set Textmerge To &datatext ADDITIVE \\<>,<>,<>,<> \ Set Textmerge To CD &dirgen RETURN &&-------umple_log