project QadFinancials > class BPeriod > method CalcAllSelectPeriodForDaybookMask
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/bperiod.p)
assign vcPeriodTypeCodes = {&PERIODTYPECODES}
vcPeriodStatuses = {&PERIODSTATUSES}.
create query vhQuery in widget-pool "non-persistent".
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:
assign {&tcPeriodTypeCalc} = "?":U
{&tcStatusPeriodCalc} = "?":U.
do viCounter = num-entries(vcPeriodTypeCodes, chr(2)) to 1 by -2 :
if entry(viCounter, vcPeriodTypeCodes, chr(2)) = {&tcPeriodTypeCode}
then do :
assign {&tcPeriodTypeCalc} = entry(viCounter - 1, vcPeriodTypeCodes, chr(2)) no-error.
leave.
end. /* if entry */
end. /* do viCounter = num-entries(vcPeriodTypeCodes, chr(2)) to 1 by -2 */
do viCounter = num-entries(vcPeriodStatuses, chr(2)) to 1 by -2 :
if entry(viCounter, vcPeriodStatuses, chr(2)) = {&tcPeriodStatus}
then assign {&tcStatusPeriodCalc} = entry(viCounter - 1, vcPeriodStatuses, chr(2)).
end. /* do viCounter = num-entries(vcPeriodStatuses, chr(2)) to 1 by -2 */
vhQuery:get-next().
end.
vhQuery:query-close().
delete object vhQuery.