project QadFinancials > class BDDocument > method CalcAllSelectDDocumentPosting
query calculated fields procedure
Description
Assign a value to query calculated fields
Parameters
iiCompanyId | input | integer | Company id |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program1/bddocument.p)
assign vcListDayBookType = {&JOURNALTYPES}
vcListGLType = {&GLTYPECODES}
vcListGLSysType = {&GLSYSTEMTYPES}
vcListDDocumentType = {&DOCUMENTTYPEDEBTORS}.
create query vhQuery in widget-pool "non-persistent".
vhQuery:forward-only = yes.
vhQuery:set-buffers(ih_Buffer).
vhQuery:query-prepare("for each ":U + ih_Buffer:table).
vhQuery:query-open().
vhQuery:get-first().
do while not vhQuery:query-off-end:
/* Net amounts */
assign {&tdAmountTCCalc} = {&tdPostingLineDebitTC} - {&tdPostingLineCreditTC}
{&tdAmountLCCalc} = {&tdPostingLineDebitLC} - {&tdPostingLineCreditLC}
{&tdAmountCCCalc} = {&tdPostingLineDebitCC} - {&tdPostingLineCreditCC}.
/* DDocumentStatus */
assign {&tcDDocumentStatusCalc} = <M-73 GetDDocumentStatusTranslation (input {&tcDDocumentStatus} (icStatus)) in BDDocument>.
/* DDocumentType */
assign {&tcDDocumentTypeCalc} = "?":U.
do viCounter = num-entries(vcListDDocumentType,chr(2)) to 1 by -2 :
if entry(viCounter,vcListDDocumentType,chr(2)) = {&tcDDocumentType}
then do :
assign {&tcDDocumentTypeCalc} = entry(viCounter - 1,vcListDDocumentType,chr(2)) no-error.
leave.
end. /* if entry */
end.
/* DayBookType */
assign {&tcDayBookTypeCalc} = "?":U.
do viCounter = num-entries(vcListDayBookType,chr(2)) to 1 by -2 :
if entry(viCounter,vcListDayBookType,chr(2)) = {&tcJournalTypeCode}
then do :
assign {&tcDayBookTypeCalc} = entry(viCounter - 1,vcListDayBookType,chr(2)) no-error.
leave.
end. /* if entry */
end.
/* GLType */
assign {&tcGLTypeCalc} = "?":U.
do viCounter = num-entries(vcListGLType,chr(2)) to 1 by -2 :
if entry(viCounter,vcListGLType,chr(2)) = {&tcGLTypeCode}
then do :
assign {&tcGLTypeCalc} = entry(viCounter - 1,vcListGLType,chr(2)) no-error.
leave.
end. /* if entry */
end.
/* GLSYSType */
assign {&tcGLSysTypeCalc} = "?":U.
do viCounter = num-entries(vcListGLSysType,chr(2)) to 1 by -2 :
if entry(viCounter,vcListGLSysType,chr(2)) = {&tcGLTypeCode}
then do :
assign {&tcGLSysTypeCalc} = entry(viCounter - 1,vcListGLSysType,chr(2)) no-error.
leave.
end. /* if entry */
end.
/* PaymentkeyID */
assign {&tcPaymentKeyCalc} = string ({&tiDDocumentYear},'9999') + '/' +
{&tcDDocumentTypeCalc} + '/' +
string ({&tiDDocumentNumber}).
vhQuery:get-next().
end. /* do while */
vhQuery:query-close().
delete object vhQuery.