project QadFinancials > class BCOACrossRef > method ValidateComponentPostLines
Description
Validate the COACrossRef lines.
Parameters
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program4/bcoacrossref.p)
/* Submethod of ValidateComponentPost. */
/* This method has to be in the same segment as ValidateComponentPost (4) */
assign oiReturnStatus = -98
viLocalReturnStatus = 0.
DETAILBLOCK:
for each t_sCOACrossRefDet where
t_sCOACrossRefDet.tc_ParentRowid = t_sCOACrossRef.tc_Rowid and
t_sCOACrossRefDet.tc_Status <> "D":U:
/* ===================================================== */
/* At least one of the source fields should be filled in */
/* ===================================================== */
if (t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = ? or t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcGLTo = ? or t_sCOACrossRefDet.COACrossRefDetSrcGLTo = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcDivFrom = ? or t_sCOACrossRefDet.COACrossRefDetSrcDivFrom = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcDivTo = ? or t_sCOACrossRefDet.COACrossRefDetSrcDivTo = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcCCFrom = ? or t_sCOACrossRefDet.COACrossRefDetSrcCCFrom = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcCCTo = ? or t_sCOACrossRefDet.COACrossRefDetSrcCCTo = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcProjFrom = ? or t_sCOACrossRefDet.COACrossRefDetSrcProjFrom = '':U) and
(t_sCOACrossRefDet.COACrossRefDetSrcProjTo = ? or t_sCOACrossRefDet.COACrossRefDetSrcProjTo = '':U)
then do:
assign vcMessage = trim(#T-72'At least one source field should be specified.':255(71396)T-72#) + chr(10) +
trim(substitute(#T-15'Cross Reference Code: &1.':255(999890142)T-15#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-74 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcGLFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcGLFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-105584':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = ? or t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = '':U) and */
/* =============================================================== */
/* Wildcards are only allowed in combination with other characters */
/* =============================================================== */
if t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcGLTo = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcDivFrom = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcDivTo = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcCCFrom = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcCCTo = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcProjFrom = '*':U or
t_sCOACrossRefDet.COACrossRefDetSrcProjTo = '*':U
then do:
assign vcMessage = trim(#T-23'A source field can not exclusively contain a wildcard.':255(876998875)T-23#).
viLocalReturnStatus = -1.
if t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-56'Source GL Account From: &1.':255(650214134)T-56#, trim(t_sCOACrossRefDet.COACrossRefDetSrcGLFrom) )).
if t_sCOACrossRefDet.COACrossRefDetSrcGLTo = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-35'Source GL Account Till: &1.':255(61219783)T-35#, trim(t_sCOACrossRefDet.COACrossRefDetSrcGLTo) )).
if t_sCOACrossRefDet.COACrossRefDetSrcDivFrom = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-81'Source Sub-Account From: &1.':255(638077242)T-81#, trim(t_sCOACrossRefDet.COACrossRefDetSrcDivFrom) )).
if t_sCOACrossRefDet.COACrossRefDetSrcDivTo = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-825'Source Sub-Account Till: &1.':255(880160170)T-825#, trim(t_sCOACrossRefDet.COACrossRefDetSrcDivTo) )).
if t_sCOACrossRefDet.COACrossRefDetSrcCCFrom = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-79'Source Cost Center From: &1.':255(86134296)T-79#, trim(t_sCOACrossRefDet.COACrossRefDetSrcCCFrom) )).
if t_sCOACrossRefDet.COACrossRefDetSrcCCTo = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-55'Source Cost Center Till: &1.':255(504000804)T-55#, trim(t_sCOACrossRefDet.COACrossRefDetSrcCCTo) )).
if t_sCOACrossRefDet.COACrossRefDetSrcProjFrom = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-95'Source Project From: &1.':255(426834327)T-95#, trim(t_sCOACrossRefDet.COACrossRefDetSrcProjFrom) )).
if t_sCOACrossRefDet.COACrossRefDetSrcProjTo = '*':U
then assign vcMessage = vcMessage + chr(10) + trim(substitute(#T-52'Source Project Till: &1.':255(569776511)T-52#, trim(t_sCOACrossRefDet.COACrossRefDetSrcProjTo) )).
<M-98 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcGLFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcGLFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-103774':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if t_sCOACrossRefDet.COACrossRefDetSrcGLFrom = '*':U or */
/* ========================= */
/* From should not exceed To */
/* ========================= */
if (t_sCOACrossRefDet.COACrossRefDetSrcGLTo <> ? and
t_sCOACrossRefDet.COACrossRefDetSrcGLTo <> '':U and
t_sCOACrossRefDet.COACrossRefDetSrcGLFrom > t_sCOACrossRefDet.COACrossRefDetSrcGLTo)
then do:
assign vcMessage = trim(substitute(#T-57'From GL Account (&1) should not exceed To GL Account (&2).':255(999890043)T-57#,
trim(t_sCOACrossRefDet.COACrossRefDetSrcGLFrom),
trim(t_sCOACrossRefDet.COACrossRefDetSrcGLTo) )) + chr(10) +
trim(substitute(#T-68'Cross Reference Code: &1.':255(999890142)T-68#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-19 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcGLFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcGLFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-293623':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.COACrossRefDetSrcGLTo <> ? and */
if (t_sCOACrossRefDet.COACrossRefDetSrcDivTo <> ? and
t_sCOACrossRefDet.COACrossRefDetSrcDivTo <> '':U and
t_sCOACrossRefDet.COACrossRefDetSrcDivFrom > t_sCOACrossRefDet.COACrossRefDetSrcDivTo)
then do:
assign vcMessage = trim(substitute(#T-11'From Sub-Account (&1) should not exceed To Sub-Account (&2).':255(999890046)T-11#,
trim(t_sCOACrossRefDet.COACrossRefDetSrcDivFrom),
trim(t_sCOACrossRefDet.COACrossRefDetSrcDivTo) )) + chr(10) +
trim(substitute(#T-93'Cross Reference Code: &1.':255(999890142)T-93#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-25 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcDivFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcDivFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-498708':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.COACrossRefDetSrcDivTo <> ? and */
if (t_sCOACrossRefDet.COACrossRefDetSrcCCTo <> ? and
t_sCOACrossRefDet.COACrossRefDetSrcCCTo <> '':U and
t_sCOACrossRefDet.COACrossRefDetSrcCCFrom > t_sCOACrossRefDet.COACrossRefDetSrcCCTo)
then do:
assign vcMessage = trim(substitute(#T-17'From Cost Center (&1) should not exceed To Cost Center (&2).':255(999890047)T-17#,
trim(t_sCOACrossRefDet.COACrossRefDetSrcCCFrom),
trim(t_sCOACrossRefDet.COACrossRefDetSrcCCTo) )) + chr(10) +
trim(substitute(#T-9'Cross Reference Code: &1.':255(999890142)T-9#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-78 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcCCFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcCCFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-457363':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.COACrossRefDetSrcCCTo <> ? and */
if (t_sCOACrossRefDet.COACrossRefDetSrcProjTo <> ? and
t_sCOACrossRefDet.COACrossRefDetSrcProjTo <> '':U and
t_sCOACrossRefDet.COACrossRefDetSrcProjFrom > t_sCOACrossRefDet.COACrossRefDetSrcProjTo)
then do:
assign vcMessage = trim(substitute(#T-50'From Project (&1) should not exceed To Project (&2).':255(999890048)T-50#,
trim(t_sCOACrossRefDet.COACrossRefDetSrcProjFrom),
trim(t_sCOACrossRefDet.COACrossRefDetSrcProjTo) )) + chr(10) +
trim(substitute(#T-10'Cross Reference Code: &1.':255(999890142)T-10#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-65 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcProjFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcProjFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-755354':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.COACrossRefDetSrcProjTo <> ? and */
if t_sCOACrossRef.COACrossRefType = {&COACROSSREFTYPE-ALTERNATE}
then do:
/* ============================================= */
/* target Alternate COA Code should be filled in */
/* ============================================= */
if t_sCOACrossRefDet.TargetAltCOAStructDet_ID = ? or t_sCOACrossRefDet.TargetAltCOAStructDet_ID = 0
then do:
assign vcMessage = trim(#T-77'Target Alternate COA Code is mandatory when COA Cross Reference Type is Alternate COA.':255(71390)T-77#) + chr(10) +
trim(substitute(#T-39'Cross Reference Code: &1.':255(999890142)T-39#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-88 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.tcTargetAltCOAStructDetCode':U (icFieldName),
input t_sCOACrossRefDet.tcTargetAltCOAStructDetCode (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-942427':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if t_sCOACrossRefDet.TargetAltCOAStructDet_ID = ? or t_sCOACrossRefDet.TargetAltCOAStructDet_ID = 0 */
/* ======================================= */
/* All other target fields should be empty */
/* ======================================= */
if (t_sCOACrossRefDet.TargetGL_ID <> ? and t_sCOACrossRefDet.TargetGL_ID <> 0) or
(t_sCOACrossRefDet.TargetDivision_ID <> ? and t_sCOACrossRefDet.TargetDivision_ID <> 0) or
(t_sCOACrossRefDet.TargetCostCentre_ID <> ? and t_sCOACrossRefDet.TargetCostCentre_ID <> 0) or
(t_sCOACrossRefDet.TargetProject_ID <> ? and t_sCOACrossRefDet.TargetProject_ID <> 0)
then do:
assign vcMessage = trim(#T-76'Only target field Alternate COA Code should be specified when COA Cross Reference Type is Alternate.':255(71395)T-76#) + chr(10) +
trim(substitute(#T-84'Cross Reference Code: &1.':255(999890142)T-84#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-36 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcGLFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcGLFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-398998':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.TargetGL_ID <> ? and t_sCOACrossRefDet.TargetGL_ID <> 0) or */
end. /* if t_sCOACrossRef = {&COACROSSREFTYPE-ALTERNATE} */
else do:
/* ========================================= */
/* target Alternate COA Code should be blank */
/* ========================================= */
if t_sCOACrossRefDet.TargetAltCOAStructDet_ID <> ? and t_sCOACrossRefDet.TargetAltCOAStructDet_ID <> 0
then do:
assign vcMessage = trim(#T-26'Target Alternate COA Code can't be specified when COA Cross Reference Type is Seperate or Combined.':255(71400)T-26#) + chr(10) +
trim(substitute(#T-2'Cross Reference Code: &1.':255(999890142)T-2#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-61 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.tcTargetAltCOAStructDetCode':U (icFieldName),
input t_sCOACrossRefDet.tcTargetAltCOAStructDetCode (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-861683':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if t_sCOACrossRefDet.TargetAltCOAStructDet_ID <> ? and t_sCOACrossRefDet.TargetAltCOAStructDet_ID <> 0 */
/* ========================================== */
/* at least one target field should be filled */
/* ========================================== */
if (t_sCOACrossRefDet.TargetGL_ID = ? or t_sCOACrossRefDet.TargetGL_ID = 0) and
(t_sCOACrossRefDet.TargetDivision_ID = ? or t_sCOACrossRefDet.TargetDivision_ID = 0) and
(t_sCOACrossRefDet.TargetCostCentre_ID = ? or t_sCOACrossRefDet.TargetCostCentre_ID = 0) and
(t_sCOACrossRefDet.TargetProject_ID = ? or t_sCOACrossRefDet.TargetProject_ID = 0)
then do:
assign vcMessage = trim(#T-41'At least one target field (except Alternate COA Code) should be specified when COA Cross Reference Type is Seperate or Combined.':255(71399)T-41#) + chr(10) +
trim(substitute(#T-97'Cross Reference Code: &1.':255(999890142)T-97#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-51 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcGLFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcGLFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-320226':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if (t_sCOACrossRefDet.TargetGL_ID = ? or t_sCOACrossRefDet.TargetGL_ID = 0) and*/
end. /* else do */
/* For COA Cross Reference Type Seperate, only one dimension can be filled */
if t_sCOACrossRef.COACrossRefType = {&COACROSSREFTYPE-SEPERATE}
then do:
assign viCntDimensions = 0.
if (t_sCOACrossRefDet.COACrossRefDetSrcGLFrom <> ? and t_sCOACrossRefDet.COACrossRefDetSrcGLFrom <> '':U) or
(t_sCOACrossRefDet.COACrossRefDetSrcGLTo <> ? and t_sCOACrossRefDet.COACrossRefDetSrcGLTo <> '':U) or
(t_sCOACrossRefDet.TargetGL_ID <> ? and t_sCOACrossRefDet.TargetGL_ID <> 0)
then assign viCntDimensions = viCntDimensions + 1.
if (t_sCOACrossRefDet.COACrossRefDetSrcDivFrom <> ? and t_sCOACrossRefDet.COACrossRefDetSrcDivFrom <> '':U) or
(t_sCOACrossRefDet.COACrossRefDetSrcDivTo <> ? and t_sCOACrossRefDet.COACrossRefDetSrcDivTo <> '':U) or
(t_sCOACrossRefDet.TargetDivision_ID <> ? and t_sCOACrossRefDet.TargetDivision_ID <> 0)
then assign viCntDimensions = viCntDimensions + 1.
if (t_sCOACrossRefDet.COACrossRefDetSrcCCFrom <> ? and t_sCOACrossRefDet.COACrossRefDetSrcCCFrom <> '':U) or
(t_sCOACrossRefDet.COACrossRefDetSrcCCTo <> ? and t_sCOACrossRefDet.COACrossRefDetSrcCCTo <> '':U) or
(t_sCOACrossRefDet.TargetCostCentre_ID <> ? and t_sCOACrossRefDet.TargetCostCentre_ID <> 0)
then assign viCntDimensions = viCntDimensions + 1.
if (t_sCOACrossRefDet.COACrossRefDetSrcProjFrom <> ? and t_sCOACrossRefDet.COACrossRefDetSrcProjFrom <> '':U) or
(t_sCOACrossRefDet.COACrossRefDetSrcProjTo <> ? and t_sCOACrossRefDet.COACrossRefDetSrcProjTo <> '':U) or
(t_sCOACrossRefDet.TargetProject_ID <> ? and t_sCOACrossRefDet.TargetProject_ID <> 0)
then assign viCntDimensions = viCntDimensions + 1.
if viCntDimensions > 1
then do:
assign vcMessage = trim(#T-21'Only one dimension at a time can be specified when using COA Cross Reference Type Seperate.':255(71401)T-21#) + chr(10) +
trim(substitute(#T-13'Source GL From: &1. Source GL Till: &2 . Target GL: &3.':255(71402)T-13#, trim(t_sCOACrossRefDet.COACrossRefDetSrcGLFrom), trim(t_sCOACrossRefDet.COACrossRefDetSrcGLTo), trim(string(t_sCOACrossRefDet.TargetGL_ID)) )) + chr(10) +
trim(substitute(#T-64'Source Sub-Account From: &1. Source Sub-Account Till: &2. Target Sub-Account: &3.':255(71403)T-64#, trim(t_sCOACrossRefDet.COACrossRefDetSrcDivFrom), trim(t_sCOACrossRefDet.COACrossRefDetSrcDivTo), trim(string(t_sCOACrossRefDet.TargetDivision_ID)) )) + chr(10) +
trim(substitute(#T-3'Source Cost Center From: &1. Source Cost Center Till: &2. Target Cost Center: &3.':255(71404)T-3#, trim(t_sCOACrossRefDet.COACrossRefDetSrcCCFrom), trim(t_sCOACrossRefDet.COACrossRefDetSrcCCTo), trim(string(t_sCOACrossRefDet.TargetCostCentre_ID)) )) + chr(10) +
trim(substitute(#T-42'Source Project From: &1. Source Project Till: &2. Target Project: &3.':255(71405)T-42#, trim(t_sCOACrossRefDet.COACrossRefDetSrcProjFrom), trim(t_sCOACrossRefDet.COACrossRefDetSrcProjTo), trim(string(t_sCOACrossRefDet.TargetProject_ID)) )) + chr(10) +
trim(substitute(#T-29'Cross Reference Code: &1.':255(999890142)T-29#, trim(t_sCOACrossRef.COACrossRefCode) ))
viLocalReturnStatus = -1.
<M-8 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'tCOACrossRefDet.COACrossRefDetSrcGLFrom':U (icFieldName),
input t_sCOACrossRefDet.COACrossRefDetSrcGLFrom (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCOACrossRefDet.tc_Rowid (icRowid),
input 'QadFin-132151':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCOACrossRef>
end. /* if viCntDimensions > 1 */
end. /* if t_sCOACrossRef.COACrossRefType = {&COACROSSREFTYPE-SEPERATE} */
end. /* DETAILBLOCK */
assign oiReturnStatus = viLocalReturnStatus.