project QadFinancials > class BCompanyGroup > method DataLoadByInputCyGroupCompany
Parameters
oiReturnStatus | output | integer | |
Internal usage
QadFinancials
program code (program2/bcompanygroup.p)
/* ================================================================= */
/* CyGroupCompany */
/* ================================================================= */
/* Delete existing detail */
/* ================================================================= */
for each tCyGroupCompany where
tCyGroupCompany.tc_ParentRowid = tCyGroup.tc_Rowid:
assign tCyGroupCompany.tc_Status = "D":U.
end.
/* ================================================================= */
/* Update / add detail */
/* ================================================================= */
for each t_sCyGroupCompany where
t_sCyGroupCompany.tc_ParentRowid = t_sCyGroup.tc_Rowid and
t_sCyGroupCompany.tc_Status <> "D":U:
assign t_sCyGroupCompany.CyGroup_ID = t_sCyGroup.CyGroup_ID.
if (t_sCyGroupCompany.Company_ID = 0 or
t_sCyGroupCompany.Company_ID = ?) and
t_sCyGroupCompany.tcCompanyCode <> "":U and
t_sCyGroupCompany.tcCompanyCode <> ?
then do:
<Q-18 run CompanyPrim (all) (Read) (NoCache)
(input ?, (LookupCompanyId)
input t_sCyGroupCompany.tcCompanyCode, (CompanyCode)
output dataset tqCompanyPrim) in BCompany>
find first tqCompanyPrim no-error.
if available tqCompanyPrim
then assign t_sCyGroupCompany.Company_ID = tqCompanyPrim.tiCompany_ID.
end.
find first tCyGroupCompany where
tCyGroupCompany.tc_ParentRowid = tCyGroup.tc_Rowid and
tCyGroupCompany.Company_ID = t_sCyGroupCompany.Company_ID no-error.
if available tCyGroupCompany
then assign t_sCyGroupCompany.tc_Status = "C":U
t_sCyGroupCompany.CyGroupCompany_ID = tCyGroupCompany.CyGroupCompany_ID.
else do:
<M-29 run AddDetailLine
(input 'CyGroupCompany':U (icTable),
input tCyGroup.tc_Rowid (icParentRowid),
output viFcReturnSuper (oiReturnStatus)) in BCMask>
if viFcReturnSuper <> 0 then oiReturnStatus = viFcReturnSuper.
if viFcReturnSuper < 0 then return.
assign t_sCyGroupCompany.tc_Status = "N":U.
end.
/* ================================================================= */
/* override value for identity fields in input */
/* ================================================================= */
assign t_sCyGroupCompany.CyGroupCompany_ID = tCyGroupCompany.CyGroupCompany_ID
/* ================================================================= */
/* Update input to allow correct matching */
/* ================================================================= */
t_sCyGroupCompany.CyGroup_ID = tCyGroupCompany.CyGroup_ID
t_sCyGroupCompany.tc_Rowid = tCyGroupCompany.tc_Rowid
t_sCyGroupCompany.tc_ParentRowid = tCyGroup.tc_Rowid.
end.