project QadFinancials > class BFRWChart > method ValidateComponentAllEntities
Description
Validate all entities.
Parameters
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program5/bfrwchart.p)
/* ====================================================================================== *
* Method : ValidateComponentAllEntities *
* Description : This method validates Entities *
* ====================================================================================== */
MAIN_BLOCK:
do on error undo, throw:
/*************************************/
/* Validations on entity */
/*************************************/
if not can-find (first t_sFRWCompany where
t_sFRWCompany.tc_ParentRowid = t_sFRWChart.tc_Rowid and t_sFRWCompany.tc_Status <> "D":U)
then do:
assign vcMessage = trim(#T-57'You must select at least one entity.':255(482391233)T-57#)
oiReturnStatus = -1.
<M-3 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input '':U (icFieldName),
input '':U (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'qadfin-781399':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BFRWChart>
leave MAIN_BLOCK.
end.
for each t_sFRWCompany where
t_sFRWCompany.tc_ParentRowid = t_sFRWChart.tc_Rowid :
/* Validate COA Cross Ref and entity are consistent */
if t_sFRWCompany.tc_Status <> "D":U and
( t_sFRWCompany.FRWShSetComb_ID = ? or t_sFRWCompany.FRWShSetComb_ID = 0 or
not can-find (first t_sFRWShSetComb where t_sFRWShSetComb.FRWShSetComb_ID = t_sFRWCompany.FRWShSetComb_ID) or
not can-find (first tChartCOACrossRef where tChartCOACrossRef.tiCompanyId = t_sFRWCompany.Company_ID))
then do:
assign vcMessage = trim(#T-91'You must generate COA cross reference before submitting.':200(888888952)T-91#)
oiReturnStatus = -1.
<M-40 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'FRWCompany.FRWCompanyCode':U (icFieldName),
input t_sFRWCompany.FRWCompanyCode (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'qadfin-159401':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BFRWChart>
end.
if t_sFRWCompany.tc_Status = 'D':U
then do:
/* Validate if FRWCompany is used in cube, if so, cannot delete */
<Q-84 run FRWCubeCyByChartAndCompany (first) (Read) (NoCache)
(input t_sFRWCompany.FRWChart_ID, (ChartID)
input t_sFRWCompany.Company_ID, (CompanyId)
output dataset tqFRWCubeCyByChartAndCompany) in BFRWCube>
find first tqFRWCubeCyByChartAndCompany no-error.
if available tqFRWCubeCyByChartAndCompany
then do:
assign vcMessage = trim(#T-67'Entity is already used in Cube and cannot be deleted.':150(350761424)T-67#)
oiReturnStatus = -1.
<M-36 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'FRWCompany.FRWCompanyCode':U (icFieldName),
input t_sFRWCompany.FRWCompanyCode (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'qadfin-386148':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BFRWChart>
end.
end. /* if t_sFRWCompany.tc_Status = 'D' */
end. /* for each t_sFRWCompany */
for each tChartCOACrossRef break by tChartCOACrossRef.tiCompanyId:
if first-of (tChartCOACrossRef.tiCompanyId)
then do:
if not can-find (first t_sFRWCompany where t_sFRWCompany.Company_ID = tChartCOACrossRef.tiCompanyId)
then do:
assign vcMessage = trim(#T-97'You must generate COA cross reference before submitting.':200(888888952)T-97#)
oiReturnStatus = -1.
<M-89 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input 'FRWCompany.FRWCompanyCode':U (icFieldName),
input t_sFRWCompany.FRWCompanyCode (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'qadfin-367222':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BFRWChart>
end.
end. /* if first-of (tChartCOACrossRef.tiCompanyId) */
end. /* for each tChartCOACrossRef */
end. /* MAIN_BLOCK: */