%
temporaryfolder=addbs(oprop.appstartpath)+[temp\]
*temporaryfolder=[temp\]
fromdate=orequest.form('datefrom')
todate=orequest.form('dateto')
if isnull(fromdate)
fromdate=NVL(orequest.querystring('datefrom'),'{}')
endif
if isnull(todate)
todate=NVL(orequest.querystring('dateto'),'{}')
endif
pcust=orequest.form('ac')
if isnull(pcust)
pcust=NVL(orequest.querystring('ac'),'')
endif
pdate1=ctod(fromdate)
pdate2=ctod(todate)
usesafe('acctran')
usesafe('glcodes')
usesafe('accounts')
usesafe('itemmast')
openingbalancealias=sys(2015)
closingbalancealias=sys(2015)
SELECT [acctran]
SET ORDER TO acdate
***
=SYS(3101,65001)
paccountid=pcust
IF EMPTY(PaCCOUNTID)
return 'Must select an account!'
STORE 0 TO _tally
RETURN
ENDIF
Public cdmline, tsql, x, Y, z, wheretext, wheretext2, ordertext, rept_More
Store 0 To acounter
Store Space(0) To wheretext, ordertext, wheretext2
*wheretext=" AND (X.debit<>0 or x.credit<>0 "
Do Case
Case Empty(pdate1) And Empty(pdate2)
user_reptsecline=""
Case Empty(pdate1) And Not Empty(pdate2)
user_reptsecline="As on "+Dtoc(pdate2)
wheretext=Alltrim(wheretext)+" And x.Date <= PDate2 "
Case Not Empty(pdate1) And Empty(pdate2)
user_reptsecline="From "+Dtoc(pdate1)
wheretext=Alltrim(wheretext)+" And x.Date >= PDate1 "
IF VAL(LEFT(paccountid,2))<9
wheretext2=Alltrim(wheretext2)+" and y.date < pdate1 "
endif
Case Not Empty(pdate1) And Not Empty(pdate2)
user_reptsecline="From "+Dtoc(pdate1)+" to "+Dtoc(pdate2)
wheretext=Alltrim(wheretext)+" And BETWEEN(x.Date,pdate1,pdate2) "
IF VAL(LEFT(paccountid,2))<9
wheretext2=Alltrim(wheretext2)+" and y.date < pdate1 "
endif
Endcase
If Not Empty(pAccountid)
rept_More=.F.
wheretext=Alltrim(wheretext)+" and x.Accountid=pAccountid "
If Not Empty(wheretext2)
wheretext2=Alltrim(wheretext2)+" and y.Accountid=pAccountid "
Endif
Else
rept_More=.T.
Endif
If Not(Empty(wheretext))
wheretext=" where "+Substr(wheretext,5)
Endif
If Not Empty(wheretext2)
wheretext2=" where "+Substr(wheretext2,5)
Endif
***
SELECT [accounts]
=SEEK(paccountid,[accounts],[accountid])
acname=ALLTRIM(name)
urduname=ALLTRIM(extra)
TEXT TO dividright noshow TEXTMERGE
DETAILS OF ACCOUNT
<
| DATE | VTYPE | TR# | DETAIL | DEBIT | CREDIT | BALNCE | |||
|---|---|---|---|---|---|---|---|---|---|
| ]+TRANSFORM(DATE)+[ | ]+TRANSFORM(VTYPE)+[ | ]+TRANSFORM(TRANSID)+[ | ] TSTR=TSTR+[]+TRANSFORM(desc)+[ | ]+IIF(debit<>0,TRANSFORM(DEBIT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(credit<>0,TRANSFORM(credit,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(tbal<>0,TRANSFORM(tbal,'99999999999.99'),'0.00')+[ | |||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
| ]+expdesc+[ | Amount | ]+TRANSFORM(EXPAMT,'99999999999.99')+[ | |||||||
| ]+expdesc+[ | Amount | ]+TRANSFORM(MEMDISC,'99999999999.99')+[ | |||||||
| ]+expdesc+[ | Amount | ]+TRANSFORM(MEMDISC)+[ | |||||||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
| ]+expdesc+[ | Amount | ]+TRANSFORM(EXPAMT,'99999999999.99')+[ | |||||||
| Cash Payment | Amount | ]+TRANSFORM(CASHPMT,'99999999999.99')+[ | |||||||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
| ]+expdesc+[ | Amount | ]+TRANSFORM(EXPAMT,'99999999999.99')+[ | |||||||
| Cash Payment | Amount | ]+TRANSFORM(CASHPMT,'99999999999.99')+[ | |||||||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
| ]+expdesc+[ | Amount | ]+TRANSFORM(EXPAMT,'99999999999.99')+[ | |||||||
| Cash Payment | Amount | ]+TRANSFORM(CASHPMT,'99999999999.99')+[ | |||||||
| DETAILS | ] tstr=tstr+[QTY | PRICE | ] tstr=tstr+[TOTAL | DISC | ] tstr=tstr+[NET | ||||
| ]+ALLTRIM(DESC)+itemnameurdu+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(RATE))+[ | ] TSTR=TSTR+[]+ALLTRIM(TRANSFORM(QTY*RATE))+[ | ] TSTR=TSTR+[]+IIF(discount<>0,TRANSFORM(discount,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[]+IIF(QTY*RATE-DISCOUNT<>0,TRANSFORM(QTY*RATE-DISCOUNT,'99999999999.99'),' ')+[ | ] TSTR=TSTR+[||||
