Description
Validate if there is a valid COA Cross Reference record for all existing COA combinations in the postinghist for a certain period.
Parameters
iiSourceDomainID | input | integer | Source Domain ID |
iiCOACrossRefID | input | integer | COA Cross Ref ID |
icCOACrossRefCode | input | character | COA Cross Ref Code |
icCOACrossRefType | input | character | COA Cross Ref Type (If not coming from UI, this can be left blank. It will be retrieved from COA Cross Reference from the database) |
iiAccountingYearFrom | input | integer | From Accounting Year |
iiAccountingPeriodFrom | input | integer | From Accounting Period |
ilValidateDivision | input | logical | Include divisions in Cross Reference Validation |
ilValidateCostCentre | input | logical | Include cost centre in Cross Reference Validation |
ilValidateProject | input | logical | Include projects in Cross Reference Validation |
tApiCOACrossRefDet | input | temp-table | COA Cross Reference Detail (If not coming from UI, this can be left blank. It will be retrieved from COA Cross Reference from the database) |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
unused
program code (program6/bcoacrossref.p)
assign oiReturnStatus = -98
viLocalReturnStatus = 0.
/* ==================================================== */
/* Use current domain if no source domain was specified */
/* ==================================================== */
if iiSourceDomainID = ? or iiSourceDomainID = 0
then assign iiSourceDomainID = viDomainID.
assign viYearPeriod = (iiAccountingYearFrom * 100) + iiAccountingPeriodFrom.
empty temp-table tCOACrossRefResult.
<M-98 run SetupValidateGetUsedCOA
(input iiSourceDomainID (iiSourceDomainID),
input viYearPeriod (iiYearPeriod),
input ilValidateDivision (ilValidateDivision),
input ilValidateCostCentre (ilValidateCostCentre),
input ilValidateProject (ilValidateProject),
output viDummy (oiCOARef#),
output viDummy (oiPostingHistRead#),
output viDummy (oiTotalReads#),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
/* =========================== */
/* Retrieve the target results */
/* =========================== */
if can-find(first tCOACrossRefResult)
then do:
<M-8 run GetCOACrossRef
(input iiSourceDomainID (iiSourceDomainID),
input icCOACrossRefCode (icCOACrossRefCode),
input iiCOACrossRefID (iiCOACrossRefID),
input icCOACrossRefType (icCOACrossRefType),
input tApiCOACrossRefDet (tApiCOACrossRefDet),
input-output tCOACrossRefResult (tCOACrossRefResult),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
if viFcReturnSuper <> 0 and viLocalReturnStatus >= 0
then assign viLocalReturnStatus = viFcReturnSuper.
end. /* if can-find(first tCOACrossRefResult) */
assign oiReturnStatus = viLocalReturnStatus.