project QadFinancials > class BMfgLocation > method LoadLocation

Description

Location Master


Parameters


icSiteinputcharacterSite
icLocationinputcharacterLocation
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BMfgLocation.UpdateQuantity


program code (program1/bmfglocation.p)

/**********************************************************************/
/*Loads the records in temp table where domain,site and location match*/
/* Input Parameters                                                   */
/*                    Site                                            */
/*                    Location                                        */
/**********************************************************************/
assign oiReturnStatus = -98.

/*Check if location record exists*/

<Q-2 run LocationBySiteLoc (all) (Read) (NoCache)
   (input vcDomainCode, (Domain)
    input icSite, (Site)
    input icLocation, (Location)
    output dataset tqLocationBySiteLoc) in BMfgLocation >

find first tqLocationBySiteLoc no-error.
if not available tqLocationBySiteLoc
then do:
    
       <M-3 run SetMessage
          (input  'Invalid Record':U (icMessage), 
           input  '':U (icArguments), 
           input  '':U (icFieldName), 
           input  '':U (icFieldValue), 
           input  'S':U (icType), 
           input  3 (iiSeverity), 
           input  '':U (icRowid), 
           input  'QadFin-5722':U (icFcMsgNumber), 
           input  '':U (icFcExplanation), 
           input  '':U (icFcIdentification), 
           input  '':U (icFcContext), 
           output viFcReturnSuper (oiReturnStatus)) in BMfgLocation>
    
        assign oiReturnStatus = -4.
        return.
end.

<M-1 run DataLoad
   (input  tqLocationBySiteLoc.tc_rowid (icRowids), 
    input  ? (icPkeys), 
    input  ? (icObjectIds), 
    input  ? (icFreeform), 
    input  Yes (ilKeepPrevious), 
    output viFcReturnSuper (oiReturnStatus)) in BMfgLocation>

if viFcReturnSuper <> 0 then assign oiReturnStatus = viFcReturnSuper.
if viFcReturnSuper <  0 then return.

/*Find location record based on Domain ,Site and Location*/
find first tloc_mstr where 
           tloc_mstr.loc_domain = vcDomainCode and
           tloc_mstr.loc_site   = icSite       and 
           tloc_mstr.loc_loc    = icLocation no-error.
if not available tloc_mstr
then do:
    assign vcContext = 'DomainCode=&1|Site=&2|Location=&3':U
           vcContext = substitute(vcContext, vcDomainCode, icSite, icLocation)
           vcContext = replace(vcContext, '|':U, chr(2)).
    <M-4 run SetMessage
       (input  #T-2'The system cannot find mandatory records in the resulting dataset.':255(64086)t-2# (icMessage), 
        input  '':U (icArguments), 
        input  '':U (icFieldName), 
        input  '':U (icFieldValue), 
        input  'S':U (icType), 
        input  3 (iiSeverity), 
        input  '':U (icRowid), 
        input  'QadFin-6800':U (icFcMsgNumber), 
        input  '':U (icFcExplanation), 
        input  '':U (icFcIdentification), 
        input  vcContext (icFcContext), 
        output viFcReturnSuper (oiReturnStatus)) in BMfgLocation>
end.

if oiReturnStatus = -98 then assign oiReturnStatus = 0.