Execution Summary

Total CDO Called: 169
Service Name: TestStoreLotCreate
Service User Name: InSiteAdmin
Service Start Process ID: 5400
Service Start Time: 2008-06-11 06:32:52Z.171
Last CDO End Time: 2008-06-11 06:32:53Z.578
Last CDO Elapsed seconds: 00:00:01.4070000
Service End Process ID: 5400
Service End Time: 2008-06-11 06:32:53Z.609
Total transaction duration seconds: 00:00:01.4380000

Called CDO

No. Depth CDO Name Field Event Perform Exec count Elapsed Milliseconds
11TestStoreLotCreateConstantsInitialize 20
21TestStoreLotCreate AfterInitialize 1047
31TestStoreLotCreate Execute 00
42TestStoreLotCreate BeforeValidate 10
53TestStoreLotCreate  PreValidate10
64TestStoreLotCreate  PreValidate_User231
74TestStoreLotCreate  PreValidate_Specific20
84TestStoreLotCreate  PreValidate_Generic10
92TestStoreLotCreate AfterValidate 316
104TestStoreLotCreate  Validate10
115TestStoreLotCreate  Validate_Generic20
126TestStoreLotCreate  ValidateWIPMsgs231
135TestStoreLotCreate  Validate_Specific20
145TestStoreLotCreate  ValidateElectronicSignatures20
155TestStoreLotCreate  ValidateNonConformances20
165TestStoreLotCreate  ValidateApplicationExtensions20
175TestStoreLotCreate  Validate_User116
186TestStoreLotCreateContainerNameOnGetValue 10
196TestStoreLotCreateErrorLabelNameAfterUpdate 20
206TestStoreLotCreateErrorLabelNameAfterUpdate 216
216TestStoreLotCreateErrorLabelNameAfterUpdate 20
226TestStoreLotCreateErrorLabelNameAfterUpdate 20
236TestStoreLotCreateWorkflowStepOnGetValue 115
246TestStoreLotCreateErrorLabelNameAfterUpdate 20
256TestStoreLotCreateWorkflowStepOnGetValue 116
266TestStoreLotCreateErrorLabelNameAfterUpdate 20
276TestStoreLotCreateWorkflowStepOnGetValue 10
286TestStoreLotCreateErrorLabelNameAfterUpdate 20
296TestStoreLotCreateWorkflowStepOnGetValue 10
306TestStoreLotCreateWorkflowStepOnGetValue 10
316TestStoreLotCreateErrorLabelNameAfterUpdate 215
326TestStoreLotCreateErrorLabelNameAfterUpdate 216
336TestStoreLotCreateErrorLabelNameAfterUpdate 20
346TestStoreLotCreateErrorLabelNameAfterUpdate 20
356TestStoreLotCreateErrorLabelNameAfterUpdate 20
366TestStoreLotCreateContainerNameOnGetValue 616
373UserAccessHandler  Execute40
382TestStoreLotCreate BeforeExecute 20
393PrintingHandler  Add562
404PrintingHandler  AddData463
413ScanningHandler  Verify40
424ScanningHandler  VerifyData115
435ScanningHandler  GetScanningSetup616
444TestStoreLotCreate  WriteTxnGUID216
454TestStoreLotCreate  Execute10
465TestStoreLotCreate  PreExecute_User20
475TestStoreLotCreate  InitializeHistoryMainline10
486TestStoreLotCreate  CreateHistoryMainline20
497HistoryMainline  Initialize462
507TestStoreLotCreate  RetrieveCalendarShift20
517TestStoreLotCreate  SetHistoryMainlineTxnDates563
525TestStoreLotCreate  RecordMainlinePreHistory315
537TestStoreLotCreateCalendarShiftNameOnGetValue 1047
547TestStoreLotCreateCalendarJulianDayOnGetValue 1031
557TestStoreLotCreateCalendarMonthOnGetValue 1016
567TestStoreLotCreateCalendarWorkWeekOnGetValue 100
577TestStoreLotCreateCalendarYearOnGetValue 1016
587TestStoreLotCreateIntegrationTxnTmpOnGetValue 40
595TestStoreLotCreate  InitSubServiceHistories20
605TestStoreLotCreate  ExecuteSubServices10
616TestStoreLotCreate  LotStart_StartLot115
627StartLotWIPMsgMgrInitialize 10
637StartLotConstantsInitialize 20
647StartLot AfterInitialize 110
657TestStoreLotCreateContainerNameOnGetValue 20
667TestStoreLotCreateWorkflowStepOnGetValue 20
677TestStoreLotCreateWorkflowStepOnGetValue 20
687TestStoreLotCreate  ExecuteService231
698TestStoreLotCreateCalendarShiftNameOnGetValue 1016
708TestStoreLotCreateCalendarJulianDayOnGetValue 100
718TestStoreLotCreateCalendarWorkWeekOnGetValue 1016
728TestStoreLotCreateCalendarYearOnGetValue 1115
738StartLot BeforeValidate 10
749StartLot  PreValidate10
7510StartLot  PreValidate_User20
7611StartLotErrorLabelNameAfterUpdate 20
7711StartLotErrorLabelNameAfterUpdate 20
7811StartLotErrorLabelNameAfterUpdate 20
7911StartLotErrorLabelNameAfterUpdate 316
8011CurrentStatusStartDetailsWorkflowStepOnGetValue 10
8111CurrentStatusStartDetailsWorkflowStepOnGetValue 50
8210StartLot  PreValidate_Specific20
8310StartLot  PreValidate_Generic30
848WIPMsgMgrWIPMsgsOnGetValue 162
858StartLotServiceAttrsDetailsSelectionOnGetValue 20
869ServiceAttrsHandler  GetServiceAttrs20
8710ServiceAttrsHandler  GetAccessLevel50
8810ServiceAttrsHandler  GetServiceAttrsSetup816
898StartLot AfterValidate 30
9010StartLot  Validate10
9111StartLot  Validate_Generic347
9213StartLot  ValidateWIPMsgs30
9311StartLot  Validate_Specific116
9412CurrentStatusStartDetailsWorkflowStepOnGetValue 415
9512CurrentStatusStartDetailsWorkflowStepOnGetValue 20
9612CurrentStatusStartDetailsWorkflowStepOnGetValue 116
9712CurrentStatusStartDetailsWorkflowStepOnGetValue 20
9812StartLotDetails  Validate415
9914StartLotDetails  ValidateDetails30
10013LotIdListHandler  Verify30
10114LotIdListHandler  VerifyContainer216
10215LotIdListHandlerErrorLabelNameAfterUpdate 20
10314LotIdListHandler  VerifyLotIdList30
10411StartLot  ValidateElectronicSignatures20
10511StartLot  ValidateNonConformances20
10611StartLot  ValidateApplicationExtensions20
10711StartLot  Validate_User30
1088StartLot BeforeExecute 20
1099PrintingHandler  Add50
11010PrintingHandler  AddData40
1119ScanningHandler  VerifyContainer60
11210StartLot  Execute20
11311StartLot  PreExecute_User50
11411StartLot  InitializeHistoryMainline10
11512StartLot  CreateHistoryMainline20
11613HistoryMainline  Initialize416
11713StartLot  RetrieveCalendarShift10
11814CurrentStatusStartDetailsWorkflowStepOnGetValue 20
11913StartLot  SetHistoryMainlineTxnDates50
12011StartLot  RecordPreHistory10
12112StartLot  RecordMainlinePreHistory20
12213CurrentStatusStartDetailsWorkflowStepOnGetValue 30
12312StartLot  RecordSummaryPreHistory20
12411StartLot  ModifyEntity10
12512StartLot  StartModifyingEntity115
12613StartLot  SetWFStack10
12714WorkflowNavigator  Reset10
12815CurrentStatusStartDetailsWorkflowStepOnGetValue 50
12914WorkflowNavigator  BuildWFStack532
13013CurrentStatusStartDetailsLocationOnGetValue 30
13113StartLotDetails  CreateContainer978
13214Lot  Initialize215
13314StartLotDetails  CreateContainer_User60
13413StartLot  SetSpecInContainer40
13513StartLot  MapLastMoveDate20
13613StartLotDetails  Execute10
13714StartLotDetails  RecordDetailPreHistory10
13815StartLotDetails  AddHistoryDetail416
13914StartLotDetails  ModifyEntityUsingDetail20
14014StartLotDetails  AccumulateSummaryHistoryData20
14114StartLotDetails  RecordDetailPostHistory20
14215LotWorkflowStackOnGetValue 50
14313LotCurrentStatus  StepPass_Initialize516
14412StartLot  ApplyDetails515
14512StartLot  FinishModifyingEntity10
14613StartLot  AccumulateSummaryHistoryData20
14712StartLot  MapLastActivityToContainer30
14811StartLot  RecordPostHistory10
14912StartLot  RecordSummaryPostHistory20
15012StartLot  RecordMainlinePostHistory20
15114StartLotCalendarShiftNameOnGetValue 1016
15214StartLotCalendarJulianDayOnGetValue 1015
15314StartLotCalendarMonthOnGetValue 1016
15414StartLotCalendarWorkWeekOnGetValue 1016
15514StartLotCalendarYearOnGetValue 1615
15611StartLot  Execute_User10
15712StartLot  StartLot_SetAttributes732
15812StartLot  StartLot_SetData1215
15912PrintingHandler  Add516
16013PrintingHandler  AddData915
1618StartLot AfterExecute 10
1629StartLot  _AfterExecute_UpdateIntegrationTxn60
1639StartLot  _AfterExecute_UpdateParentService40
1647TestStoreLotCreate  LotStart_SetAttributes50
1656LotAttributes  _DeleteMe316
1666PrintingHandler  Add50
1677PrintingHandler  AddData816
1685TestStoreLotCreate  RecordMainlinePostHistory40
1695TestStoreLotCreate  Execute_User031

Detail of transaction log:

    Field: Constants Event:Initialize CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:1
        IsVariableDefined(Result=>CLF::ConstDefined, Scope=>"Transaction", VariableName=>"__Const")
        SetFieldConditional(Condition=>CLF::ConstDefined, ElseFrom=>Constants, To=>Transaction::__Const)
    Event: AfterInitialize CDOType:CDOEvent CDOName:TestStoreLotCreate Depth:1
        IsVariableDefined(Result=>CLF::VariableDefined, Scope=>"Transaction", VariableName=>"____CDOTxnSequence")
        SetFieldConditional(Condition=>CLF::VariableDefined, ElseFrom=>0, ThenFrom=>Transaction::____CDOTxnSequence, To=>Transaction::____CDOTxnSequence)
        SetFieldConditional(Condition=>HistoryMainlineExists, ElseFrom=>Transaction::____CDOTxnSequence, ThenFrom=>Transaction::____CDOTxnSequence + 1, To=>Transaction::____CDOTxnSequence)
        SetFieldEx(From=>Transaction::____CDOTxnSequence, To=>CDOTxnSequence)
        GetCDOType(CDO=>CLF::__CDOID, TypeName=>CDOName)
        SetFieldConditional(Condition=>CallByCDOName = "", ElseFrom=>CallByCDOName, ThenFrom=>CDOName, To=>CallByCDOName)
        IsVariableDefined(Result=>CLF::VariableDefined, Scope=>"Transaction", VariableName=>"____IntegrationTxn")
        ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>CLF::VariableDefined, RightValue=>Constants.BooleanTrue)
        SetMultipleDataValues(From=>Constants.NullObject, To1=>Transaction::____IntegrationTxn, To2=>Transaction::____IntegrationTxn_Container, To3=>Transaction::____IntegrationTxn_Resource)
        SetFieldEx(From=>0, To=>Transaction::____IntegrationTxn_HistoryMainlineCount)
    Event: Execute CDOType:CDOEvent CDOName:TestStoreLotCreate Depth:1
        Event: BeforeValidate CDOType:CDOEvent CDOName:TestStoreLotCreate Depth:2
            Call(Event=>PreValidate)
            Perform: PreValidate CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:3
                Call(Event=>PreValidate_User)
                Perform: PreValidate_User CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:4
                    Noop(Comment1=>A customer may put here , Comment2=>specific shoploor service processing/validation that occurs , Comment3=>before the required value validations)
                    Call(Event=>PreValidate_Specific)
                Perform: PreValidate_Specific CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:4
                    Noop(Comment1=>Camstar may put here , Comment2=>specific shoploor service processing/validation that occurs , Comment3=>before the required value validations)
                    Call(Event=>PreValidate_Generic)
                Perform: PreValidate_Generic CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:4
                    Noop(Comment1=>Camstar may put here , Comment2=>generic shoploor service processing/validation that occurs , Comment3=>before the required value validations)
        Event: AfterValidate CDOType:CDOEvent CDOName:TestStoreLotCreate Depth:2
            StrToUpper(Result=>Comments, String=>Comments)
            CallSuper()
            Call(Event=>Validate)
                Perform: Validate CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:4
                    Call(Event=>Validate_Generic)
                    Perform: Validate_Generic CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>Camstar may put here , Comment2=>generic shoploor service processing/validation that occurs , Comment3=>after the required value validations)
                        Call(Event=>ValidateWIPMsgs)
                        Perform: ValidateWIPMsgs CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>CheckWIPMsgs, RightValue=>Constants.BooleanFalse)
                            Call(Event=>Validate_Specific)
                    Perform: Validate_Specific CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>Camstar may put here , Comment2=>specific shoploor service processing/validation that occurs , Comment3=>after the required value validations)
                        Call(Event=>ValidateElectronicSignatures)
                    Perform: ValidateElectronicSignatures CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>Camstar may put logic here to validate, Comment2=>Electronic Signatures in the future)
                        Call(Event=>ValidateNonConformances)
                    Perform: ValidateNonConformances CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>Camstar may put logic here, Comment2=>to validate NonConformances in the future)
                        Call(Event=>ValidateApplicationExtensions)
                    Perform: ValidateApplicationExtensions CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>Camstar may put logic here, Comment2=>to validate Application Extensions in the future)
                        Call(Event=>Validate_User)
                    Perform: Validate_User CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        SetFieldConditional(Condition=>ContainerName = "", ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0001, To=>ErrorLabelName)
                        Field: ContainerName Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>Workflow = Constants.NullObject, ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0002, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>(WorkflowObjectCategory = "%") OR (WorkflowObjectCategory = Workflow.ObjectCategory), ElseFrom=>\LotStart_E0003, ThenFrom=>Constants.EmptyString, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>(WorkflowObjectType = "%") OR (WorkflowObjectType = Workflow.ObjectType), ElseFrom=>\LotStart_E0004, ThenFrom=>Constants.EmptyString, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>WorkflowStep = Constants.NullObject, ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0005, To=>ErrorLabelName)
                        Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>(SpecObjectCategory = "%") OR (SpecObjectCategory = WorkflowStep.FirstSpecStep.Spec.ObjectCategory), ElseFrom=>\LotStart_E0006, ThenFrom=>Constants.EmptyString, To=>ErrorLabelName)
                        Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>(SpecObjectType = "%") OR (SpecObjectType = WorkflowStep.FirstSpecStep.Spec.ObjectType), ElseFrom=>\LotStart_E0007, ThenFrom=>Constants.EmptyString, To=>ErrorLabelName)
                        Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>((WorkflowStep.FirstSpecStep.Spec.ObjectType = "WAFERSORT") OR (WorkflowStep.FirstSpecStep.Spec.ObjectType = "WAFER")) AND (Qty2 <= 0), ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0008, To=>ErrorLabelName)
                        Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                        Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>Product = Constants.NullObject, ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0009, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>Product.ObjectType <> ProductObjectType, ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0010, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>Owner = Constants.NullObject, ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0011, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>StartReason = Constants.NullObject, ElseFrom=>Constants.EmptyString, ThenFrom=>\LotStart_E0012, To=>ErrorLabelName)
                        Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            ResolveContainerObjRef(ContainerLevelName=>\LOT, ContainerName=>ContainerName, ContainerObjRefField=>Container, ThrowError=>Constants.BooleanFalse)
                        Field: ContainerName Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:6
                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                            SetFieldConditional(Condition=>Container = Constants.NullObject, ElseFrom=>Constants.BooleanTrue, ThenFrom=>Constants.BooleanFalse, To=>ContainerExists)
                            If(Call=>LotStart_VerifyReuseLot, Value=>ContainerExists)
                            ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>CheckUserAccess, RightValue=>Constants.BooleanFalse)
                            ExitIf(Comparison=>Constants.CompareNotEqual, LeftValue=>CallByCDOName, RightValue=>CDOName)
                            Call(CDO=>UserAccessHandler, Event=>Execute, Name1=>Service, Value1=>CLF::__CDOID)
            Perform: Execute CDOType:CDOPerform CDOName:UserAccessHandler Depth:3
                SetFieldEx(From=>CLF::Service, To=>Service)
                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>(Employee.IsSuperUser = Transaction::__Const.BooleanTrue) OR (User.IsSuperUser = Transaction::__Const.BooleanTrue), RightValue=>Transaction::__Const.BooleanTrue)
                StrToUpper(Result=>CLF::Username, String=>User.Name)
                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>(CLF::Username = "INSITEADMIN") OR (CLF::Username = "ADMINISTRATOR"), RightValue=>Transaction::__Const.BooleanTrue)
        Event: BeforeExecute CDOType:CDOEvent CDOName:TestStoreLotCreate Depth:2
            SetFieldConditional(Condition=>(IsDoNothing = Constants.BooleanFalse) AND ((CheckPrinting = Constants.BooleanTrue) OR (CheckPrintingReportOnly = Constants.BooleanTrue) OR (CheckPrintingLabelOnly = Constants.BooleanTrue)), ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
            Call(CDO=>PrintingHandler, Event=>Add, Name1=>Service, Value1=>CLF::__CDOID)
            Perform: Add CDOType:CDOPerform CDOName:PrintingHandler Depth:3
                SetFieldEx(From=>CLF::Service, To=>Service)
                SetFieldEx(From=>0, To=>TxnContainersCount)
                SetFieldConditional(Condition=>IgnoreContainers = Transaction::__Const.BooleanFalse, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                GetListCount(ListCountLoc=>TxnContainersCount, ListExpr=>Containers)
                IfEqual(Call=>AddData, LeftValue=>TxnContainersCount, RightValue=>0)
                Perform: AddData CDOType:CDOPerform CDOName:PrintingHandler Depth:4
                    ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>Container, RightValue=>Transaction::__Const.NullObject)
                    ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>TxnContainersCount, RightValue=>0)
                    SetFieldConditional(Condition=>(IsDoNothing = Constants.BooleanFalse) AND (CheckScanning = Constants.BooleanTrue), ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                    Call(CDO=>ScanningHandler, Event=>Verify, Name1=>Service, Value1=>CLF::__CDOID)
            Perform: Verify CDOType:CDOPerform CDOName:ScanningHandler Depth:3
                SetFieldEx(From=>CLF::Service, To=>Service)
                SetFieldEx(From=>CLF::__CDOID, To=>TextHandler.Service)
                GetListCount(ListCountLoc=>TxnContainersCount, ListExpr=>Containers)
                IfEqual(Call=>VerifyData, LeftValue=>TxnContainersCount, RightValue=>\0)
                Perform: VerifyData CDOType:CDOPerform CDOName:ScanningHandler Depth:4
                    Call(Event=>GetScanningSetup)
                    Perform: GetScanningSetup CDOType:CDOPerform CDOName:ScanningHandler Depth:5
                        SetFieldEx(From=>Transaction::__Const.NullObject, To=>ScanningSetup)
                        ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>Container, RightValue=>Transaction::__Const.NullObject)
                        ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>ScanningSetup, RightValue=>Transaction::__Const.NullObject)
                        ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>TxnContainersCount, RightValue=>\0)
                        CallSuper()
                        If(Call=>WriteTxnGUID, Value=>TxnGUID)
                Perform: WriteTxnGUID CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:4
                    ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>Constants.EmptyString, RightValue=>Constants.EmptyString)
                    Call(Event=>Execute)
                Perform: Execute CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:4
                    Call(Event=>PreExecute_User)
                    Perform: PreExecute_User CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>A customer may put here , Comment2=>specific shoploor service processing that occurs , Comment3=>after validation is complete but , Comment4=>before service execution logic provided by Camstar)
                        Call(Event=>InitializeHistoryMainline)
                    Perform: InitializeHistoryMainline CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        If(Call=>ReplaceOldHistoryMainline, ElseCall=>CreateHistoryMainline, Value=>HistoryMainline)
                        Perform: CreateHistoryMainline CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:6
                            CreateCDO(CreateOnlyIfNotExists=>\0, Location=>HistoryMainline)
                            Call(CDO=>HistoryMainline, Event=>Initialize)
                            Perform: Initialize CDOType:CDOPerform CDOName:HistoryMainline Depth:7
                                SetSystemDateGMT(SystemDateField=>SystemDateGMT)
                                GMTToLocal(GMTDate=>SystemDateGMT, LocalDate=>SystemDate)
                                MapCDOFromSession(MapID=>238, MapTo=>CLF::__CDOID)
                                Call(Event=>RetrieveCalendarShift)
                            Perform: RetrieveCalendarShift CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>MfgCalendar, RightValue=>Constants.NullObject)
                                Call(Event=>SetHistoryMainlineTxnDates)
                            Perform: SetHistoryMainlineTxnDates CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:7
                                SetTxnDate(ServiceDateField=>TxnDate, SystemDateField=>HistoryMainline.SystemDate, TxnDateField=>HistoryMainline.TxnDate)
                                LocalToGMT(GMTDate=>HistoryMainline.TxnDateGMT, LocalDate=>HistoryMainline.TxnDate)
                                V3_EvalExpression(Expression=>HistoryMainline.CalendarShift ? (HistoryMainline.CalendarShift.Shift?HistoryMainline.CalendarShift.Shift.Name:Constants.EmptyString):Constants.EmptyString, Value=>HistoryMainline.ShiftName)
                                V3_EvalExpression(Expression=>HistoryMainline.CalendarShift ? HistoryMainline.CalendarShift.CalendarDate:HistoryMainline.TxnDate, Value=>HistoryMainline.MfgDate)
                                Call(Event=>RecordMainlinePreHistory)
                    Perform: RecordMainlinePreHistory CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        CallSuper()
                        Map(MapFrom=>Constants, MapID=>254, MapTo=>HistoryMainline)
                        Map(MapFrom=>CLF::__CDOID, MapID=>239, MapTo=>HistoryMainline)
                            Field: CalendarShiftName Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                GetCurrentField(CurrentFieldName=>CLF::ColName)
                                ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                            Field: CalendarJulianDay Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                GetCurrentField(CurrentFieldName=>CLF::ColName)
                                ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                            Field: CalendarMonth Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                GetCurrentField(CurrentFieldName=>CLF::ColName)
                                ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                            Field: CalendarWorkWeek Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                GetCurrentField(CurrentFieldName=>CLF::ColName)
                                ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                            Field: CalendarYear Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                GetCurrentField(CurrentFieldName=>CLF::ColName)
                                ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                            Field: IntegrationTxnTmp Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                SetMultipleDataValues(From=>HistoryMainline, To1=>IntegrationTxn, To2=>Transaction::____IntegrationTxn, To3=>Transaction::__Return)
                                GetCDOType(CDO=>CLF::__CDOID, Type=>HistoryMainline.TxnType)
                                GetCDOType(CDO=>CLF::__CDOID, Type=>HistoryMainline.CompoundTxnType)
                                Call(Event=>InitSubServiceHistories)
                    Perform: InitSubServiceHistories CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Noop(Comment1=>Use Call(SubService,InitializeHistoryMainline) to, Comment2=>force a sub-service to create a HistoryMainline, Comment3=>CDO. Use SetFieldEx to copy the HistoryMainline, Comment4=>OID of one service (including this one) to another, Comment5=>thereby causing the services to share. No special, Comment6=>code is needed for normal history processing.)
                        Call(Event=>ExecuteSubServices)
                    Perform: ExecuteSubServices CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        If(Call=>LotStart_RestartLot, ElseCall=>LotStart_StartLot, Value=>ContainerExists)
                        Perform: LotStart_StartLot CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:6
                            CreateCDO(CreateOnlyIfNotExists=>\0, Location=>StartLot)
                            Field: WIPMsgMgr Event:Initialize CDOType:CDOFieldEvent CDOName:StartLot Depth:7
                                FieldCreateCDO()
                            Field: Constants Event:Initialize CDOType:CDOFieldEvent CDOName:StartLot Depth:7
                                IsVariableDefined(Result=>CLF::ConstDefined, Scope=>"Transaction", VariableName=>"__Const")
                                SetFieldConditional(Condition=>CLF::ConstDefined, ElseFrom=>Constants, To=>Transaction::__Const)
                            Event: AfterInitialize CDOType:CDOEvent CDOName:StartLot Depth:7
                                IsVariableDefined(Result=>CLF::VariableDefined, Scope=>"Transaction", VariableName=>"____CDOTxnSequence")
                                SetFieldConditional(Condition=>CLF::VariableDefined, ElseFrom=>0, ThenFrom=>Transaction::____CDOTxnSequence, To=>Transaction::____CDOTxnSequence)
                                SetFieldConditional(Condition=>HistoryMainlineExists, ElseFrom=>Transaction::____CDOTxnSequence, ThenFrom=>Transaction::____CDOTxnSequence + 1, To=>Transaction::____CDOTxnSequence)
                                SetFieldEx(From=>Transaction::____CDOTxnSequence, To=>CDOTxnSequence)
                                GetCDOType(CDO=>CLF::__CDOID, TypeName=>CDOName)
                                SetFieldConditional(Condition=>CallByCDOName = "", ElseFrom=>CallByCDOName, ThenFrom=>CDOName, To=>CallByCDOName)
                                IsVariableDefined(Result=>CLF::VariableDefined, Scope=>"Transaction", VariableName=>"____IntegrationTxn")
                                ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>CLF::VariableDefined, RightValue=>Constants.BooleanTrue)
                                CreateCDO(CreateOnlyIfNotExists=>\0, Location=>StartLotDetails)
                                Map(MapFrom=>CLF::__CDOID, MapID=>671088918, MapTo=>StartLot.LotAttributes)
                                Map(MapFrom=>CLF::__CDOID, MapID=>671088906, MapTo=>StartLotDetails)
                            Field: ContainerName Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                                Map(MapFrom=>CLF::__CDOID, MapID=>671088907, MapTo=>CurrentStatusStartDetails)
                            Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                Map(MapFrom=>CLF::__CDOID, MapID=>671088905, MapTo=>StartLot)
                            Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:7
                                ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                Call(CDO=>CLF::__CDOID, Event=>ExecuteService, Name1=>SubService, Value1=>StartLot)
                            Perform: ExecuteService CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:7
                                SetFieldEx(From=>IsRemoteService, To=>CLF::SubService.IsRemoteService)
                                Map(MapFrom=>CLF::__CDOID, MapID=>251, MapTo=>CLF::SubService)
                                Field: CalendarShiftName Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:8
                                    ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                    ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                    SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    GetCurrentField(CurrentFieldName=>CLF::ColName)
                                    ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                Field: CalendarJulianDay Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:8
                                    ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                    ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                    SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    GetCurrentField(CurrentFieldName=>CLF::ColName)
                                    ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                Field: CalendarWorkWeek Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:8
                                    ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                    ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                    SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    GetCurrentField(CurrentFieldName=>CLF::ColName)
                                    ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                Field: CalendarYear Event:OnGetValue CDOType:CDOFieldEvent CDOName:TestStoreLotCreate Depth:8
                                    ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                    ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                    SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    GetCurrentField(CurrentFieldName=>CLF::ColName)
                                    ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                    ExecuteService(Service=>CLF::SubService)
                                Event: BeforeValidate CDOType:CDOEvent CDOName:StartLot Depth:8
                                    Call(Event=>PreValidate)
                                    Perform: PreValidate CDOType:CDOPerform CDOName:StartLot Depth:9
                                        Call(Event=>PreValidate_User)
                                        Perform: PreValidate_User CDOType:CDOPerform CDOName:StartLot Depth:10
                                            StrToUpper(Result=>Details.ContainerName, String=>Details.ContainerName)
                                            SetFieldConditional(Condition=>(Details.Qty <= 0) AND (Details.Qty2 <= 0), ElseFrom=>Constants.EmptyString, ThenFrom=>\StartLot_E0001, To=>ErrorLabelName)
                                            Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:StartLot Depth:11
                                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                                                SetFieldConditional(Condition=>(Details.Qty > 0) AND (Details.Qty <= Details.Qty2), ElseFrom=>Constants.EmptyString, ThenFrom=>\StartLot_E0002, To=>ErrorLabelName)
                                            Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:StartLot Depth:11
                                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                                                SetFieldConditional(Condition=>(Details.Qty < 0) OR (Details.Qty2 < 0), ElseFrom=>Constants.EmptyString, ThenFrom=>\StartLot_E0003, To=>ErrorLabelName)
                                            Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:StartLot Depth:11
                                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                                                SetFieldConditional(Condition=>Details.Product.IsAvailable = Constants.BooleanFalse, ElseFrom=>Constants.EmptyString, ThenFrom=>\StartLot_E0004, To=>ErrorLabelName)
                                            Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:StartLot Depth:11
                                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                                                ResolveNamedObjRef(NamedObjRefField=>Details.Level, ObjectName=>TxnLevel, ThrowError=>Constants.BooleanTrue)
                                                SetFieldConditional(Condition=>CurrentStatusDetails.WorkflowStep = Constants.NullObject, ElseFrom=>CurrentStatusDetails.WorkflowStep.FirstSpecStep.Spec.UOM, ThenFrom=>Constants.NullObject, To=>Details.UOM)
                                            Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:11
                                                ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                            Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:11
                                                ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                SetFieldConditional(Condition=>Details.UOM = Constants.NullObject, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                ResolveNamedObjRef(NamedObjRefField=>Details.UOM, ObjectName=>TxnUOM, ThrowError=>Constants.BooleanTrue)
                                                ResolveNamedObjRef(NamedObjRefField=>Details.UOM2, ObjectName=>TxnUOM2, ThrowError=>Constants.BooleanTrue)
                                                Call(Event=>PreValidate_Specific)
                                        Perform: PreValidate_Specific CDOType:CDOPerform CDOName:StartLot Depth:10
                                            Noop(Comment1=>Camstar may put here , Comment2=>specific shoploor service processing/validation that occurs , Comment3=>before the required value validations)
                                            Call(Event=>PreValidate_Generic)
                                        Perform: PreValidate_Generic CDOType:CDOPerform CDOName:StartLot Depth:10
                                            CallSuper()
                                            Noop(Comment1=>Camstar may put here , Comment2=>generic shoploor service processing/validation that occurs , Comment3=>before the required value validations)
                                            Noop(Comment1=>Camstar may put here , Comment2=>generic ContainerTxn service processing/validation that occurs , Comment3=>before the required value validations)
                                Field: WIPMsgs Event:OnGetValue CDOType:CDOFieldEvent CDOName:WIPMsgMgr Depth:8
                                    ParseDynamicExpression(Expression=>WIPMsgCriteria.WIPMsgs)
                                Field: ServiceAttrsDetailsSelection Event:OnGetValue CDOType:CDOFieldEvent CDOName:StartLot Depth:8
                                    CreateCDO(CreateOnlyIfNotExists=>\0, Location=>ServiceAttrsHandler)
                                    Call(CDO=>ServiceAttrsHandler, Event=>GetServiceAttrs, Name1=>Service, Value1=>CLF::__CDOID)
                                    Perform: GetServiceAttrs CDOType:CDOPerform CDOName:ServiceAttrsHandler Depth:9
                                        SetFieldEx(From=>CLF::Service, To=>Service)
                                        Call(Event=>GetAccessLevel)
                                        Perform: GetAccessLevel CDOType:CDOPerform CDOName:ServiceAttrsHandler Depth:10
                                            StrToUpper(Result=>CLF::Username, String=>Service.Username)
                                            SetFieldConditional(Condition=>(CLF::Username = "INSITEADMIN") OR (CLF::Username = "ADMINISTRATOR") OR (Service.Employee.IsSuperUser = Transaction::__Const.BooleanTrue), ElseFrom=>0, ThenFrom=>1, To=>AccessLevel)
                                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>AccessLevel, RightValue=>1)
                                            ExitIf(Comparison=>Transaction::__Const.CompareLessThan, LeftValue=>AccessLevel, RightValue=>1)
                                            Call(Event=>GetServiceAttrsSetup)
                                        Perform: GetServiceAttrsSetup CDOType:CDOPerform CDOName:ServiceAttrsHandler Depth:10
                                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>ServiceAttrsSetup, RightValue=>Transaction::__Const.NullObject)
                                            InitQueryParameters(ParamName1=>ServiceName, ParamName2=>ExternalLocationId, ParamName3=>SpecId, ParamName4=>StartReasonId, ParamValue1=>Service.CDOName, ParamValue2=>(ExternalLocation = Transaction::__Const.NullObject)?"%":ExternalLocation.InstanceID, ParamValue3=>(Spec = Transaction::__Const.NullObject)?"%":Spec.InstanceID, ParamValue4=>(StartReason = Transaction::__Const.NullObject)?"%":StartReason.InstanceID, QueryParameters=>CLF::QueryParams)
                                            ExecuteQueryEx(Parameters=>CLF::QueryParams, QueryName=>\_ServiceAttrsHandler_ServiceAttrsSetupName, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                            ConvertResultsetToListOrScalar(ColName=>\ServiceAttrsSetupName, FieldName=>CLF::ServiceAttrsSetupName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::ServiceAttrsSetupName, RightValue=>Transaction::__Const.EmptyString)
                                            SetFieldConditional(Condition=>ServiceAttrsSetup <> Transaction::__Const.NullObject, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>AttributeType, RightValue=>Transaction::__Const.EmptyString)
                                            SetFieldEx(From=>ServiceAttrsHandler.ServiceAttrsDetails, To=>Transaction::__Return)
                                Event: AfterValidate CDOType:CDOEvent CDOName:StartLot Depth:8
                                    StrToUpper(Result=>Comments, String=>Comments)
                                    CallSuper()
                                    Call(Event=>Validate)
                                        Perform: Validate CDOType:CDOPerform CDOName:StartLot Depth:10
                                            Call(Event=>Validate_Generic)
                                            Perform: Validate_Generic CDOType:CDOPerform CDOName:StartLot Depth:11
                                                CallSuper()
                                                Noop(Comment1=>Camstar may put here , Comment2=>generic shoploor service processing/validation that occurs , Comment3=>after the required value validations)
                                                Call(Event=>ValidateWIPMsgs)
                                                    Perform: ValidateWIPMsgs CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>CheckWIPMsgs, RightValue=>Constants.BooleanFalse)
                                                        ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>Container, RightValue=>Constants.NullObject)
                                                        Call(Event=>Validate_Specific)
                                            Perform: Validate_Specific CDOType:CDOPerform CDOName:StartLot Depth:11
                                                ValidateTransactionIsAllowed(DisallowedTransactions=>CurrentStatusDetails.SpecStep.Spec.Operation.DisallowedTxns, Transaction=>Transaction::__CurrentService)
                                                Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:12
                                                    ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                    ResolveContainerObjRef(ContainerLevelName=>Details.Level.Name, ContainerName=>Details.ContainerName, ContainerObjRefField=>Details.Container, ThrowError=>Constants.BooleanFalse)
                                                    ValidateEqual(ErrorID=>LabelId::DuplicateContainerRef, ErrorParmName1=>Name, ErrorParmValue1=>Details.ContainerName, LeftValue=>Details.Container, RightValue=>Constants.NullObject)
                                                    ValidateEqual(ErrorID=>LabelId::StepNotInWorkflow, LeftValue=>CurrentStatusDetails.WorkflowStep.Workflow, RightValue=>CurrentStatusDetails.Workflow)
                                                Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:12
                                                    ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                    ValidateEqual(ErrorID=>LabelId::ContainerNotAtThisOperation, ErrorParmName1=>Name, ErrorParmName2=>Name2, ErrorParmValue1=>Details.ContainerName, ErrorParmValue2=>Operation.DisplayName, LeftValue=>Operation, RightValue=>CurrentStatusDetails.SpecStep.Operation)
                                                Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:12
                                                    ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:12
                                                    ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                    ForEachRecursiveObject(CDO=>Details, EventName=>Validate, RecursionField=>ChildContainers)
                                                Perform: Validate CDOType:CDOPerform CDOName:StartLotDetails Depth:12
                                                    CallSuper()
                                                    ValidateNotLessThan(ErrorID=>LabelId::NoNegativeStartQty, LeftValue=>Qty, RightValue=>Transaction::__Const.IntegerZero)
                                                    ValidateNotLessThan(ErrorID=>LabelId::NoNegativeStartQty, LeftValue=>Qty2, RightValue=>Transaction::__Const.IntegerZero)
                                                    Call(Event=>ValidateDetails)
                                                        Perform: ValidateDetails CDOType:CDOPerform CDOName:StartLotDetails Depth:14
                                                            Noop()
                                                            CreateCDO(CreateOnlyIfNotExists=>\1, Location=>Parent.LotIdListHandler)
                                                            Call(CDO=>Parent.LotIdListHandler, Event=>Verify, Name1=>ContainerName, Value1=>ContainerName)
                                                    Perform: Verify CDOType:CDOPerform CDOName:LotIdListHandler Depth:13
                                                        SetFieldEx(From=>CLF::__CDOID, To=>TextHandler.Service)
                                                        SetFieldEx(From=>CLF::ContainerName, To=>ContainerName)
                                                        Call(Event=>VerifyContainer)
                                                        Perform: VerifyContainer CDOType:CDOPerform CDOName:LotIdListHandler Depth:14
                                                            ResolveContainerObjRef(ContainerLevelName=>\LOT, ContainerName=>ContainerName, ContainerObjRefField=>Container, ThrowError=>Transaction::__Const.BooleanFalse)
                                                            SetFieldConditional(Condition=>Container <> Transaction::__Const.NullObject, ElseFrom=>Transaction::__Const.EmptyString, ThenFrom=>\LotIdListHandler_E0003, To=>ErrorLabelName)
                                                            Field: ErrorLabelName Event:AfterUpdate CDOType:CDOFieldEvent CDOName:LotIdListHandler Depth:15
                                                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::__FieldValue, RightValue=>Transaction::__Const.EmptyString)
                                                                Call(Event=>VerifyLotIdList)
                                                        Perform: VerifyLotIdList CDOType:CDOPerform CDOName:LotIdListHandler Depth:14
                                                            ResolveNamedObjRef(NamedObjRefField=>LotIdList, ObjectName=>ContainerName, ThrowError=>Transaction::__Const.BooleanFalse)
                                                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>LotIdList, RightValue=>Transaction::__Const.NullObject)
                                                            Call(Event=>ValidateElectronicSignatures)
                                            Perform: ValidateElectronicSignatures CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Noop(Comment1=>Camstar may put logic here to validate, Comment2=>Electronic Signatures in the future)
                                                Call(Event=>ValidateNonConformances)
                                            Perform: ValidateNonConformances CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Noop(Comment1=>Camstar may put logic here, Comment2=>to validate NonConformances in the future)
                                                Call(Event=>ValidateApplicationExtensions)
                                            Perform: ValidateApplicationExtensions CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Noop(Comment1=>Camstar may put logic here, Comment2=>to validate Application Extensions in the future)
                                                Call(Event=>Validate_User)
                                            Perform: Validate_User CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Noop(Comment1=>A customer may put here , Comment2=>specific shoploor service processing/validation that occurs , Comment3=>after the required value validations)
                                                ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>CheckUserAccess, RightValue=>Constants.BooleanFalse)
                                                ExitIf(Comparison=>Constants.CompareNotEqual, LeftValue=>CallByCDOName, RightValue=>CDOName)
                                Event: BeforeExecute CDOType:CDOEvent CDOName:StartLot Depth:8
                                    SetFieldConditional(Condition=>(IsDoNothing = Constants.BooleanFalse) AND ((CheckPrinting = Constants.BooleanTrue) OR (CheckPrintingReportOnly = Constants.BooleanTrue) OR (CheckPrintingLabelOnly = Constants.BooleanTrue)), ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                    Call(CDO=>PrintingHandler, Event=>Add, Name1=>Service, Value1=>CLF::__CDOID)
                                    Perform: Add CDOType:CDOPerform CDOName:PrintingHandler Depth:9
                                        SetFieldEx(From=>CLF::Service, To=>Service)
                                        SetFieldEx(From=>0, To=>TxnContainersCount)
                                        SetFieldConditional(Condition=>IgnoreContainers = Transaction::__Const.BooleanFalse, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                        GetListCount(ListCountLoc=>TxnContainersCount, ListExpr=>Containers)
                                        IfEqual(Call=>AddData, LeftValue=>TxnContainersCount, RightValue=>0)
                                        Perform: AddData CDOType:CDOPerform CDOName:PrintingHandler Depth:10
                                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>Container, RightValue=>Transaction::__Const.NullObject)
                                            ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>TxnContainersCount, RightValue=>0)
                                            SetFieldConditional(Condition=>(IsDoNothing = Constants.BooleanFalse) AND (CheckScanning = Constants.BooleanTrue), ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                            Call(CDO=>ScanningHandler, Event=>VerifyContainer, Name1=>Service, Value1=>CLF::__CDOID)
                                    Perform: VerifyContainer CDOType:CDOPerform CDOName:ScanningHandler Depth:9
                                        SetFieldEx(From=>CLF::Service, To=>Service)
                                        SetFieldEx(From=>CLF::__CDOID, To=>TextHandler.Service)
                                        If(Call=>VerifyData, Value=>Container)
                                        CallSuper()
                                        If(Call=>WriteTxnGUID, Value=>TxnGUID)
                                        Call(Event=>Execute)
                                        Perform: Execute CDOType:CDOPerform CDOName:StartLot Depth:10
                                            Noop(Password=>Password, UserName=>User.Name)
                                            Call(Event=>PreExecute_User)
                                            Perform: PreExecute_User CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Noop(Comment1=>A customer may put here , Comment2=>specific shoploor service processing that occurs , Comment3=>after validation is complete but , Comment4=>before service execution logic provided by Camstar)
                                                Noop(Event=>ExportInfo_Initialize)
                                                Noop(Event=>ExportInfo_Validate)
                                                Noop(Event=>ExportInfo_PreExecute)
                                                Call(Event=>InitializeHistoryMainline)
                                            Perform: InitializeHistoryMainline CDOType:CDOPerform CDOName:StartLot Depth:11
                                                If(Call=>ReplaceOldHistoryMainline, ElseCall=>CreateHistoryMainline, Value=>HistoryMainline)
                                                Perform: CreateHistoryMainline CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    CreateCDO(CreateOnlyIfNotExists=>\0, Location=>HistoryMainline)
                                                    Call(CDO=>HistoryMainline, Event=>Initialize)
                                                    Perform: Initialize CDOType:CDOPerform CDOName:HistoryMainline Depth:13
                                                        SetSystemDateGMT(SystemDateField=>SystemDateGMT)
                                                        GMTToLocal(GMTDate=>SystemDateGMT, LocalDate=>SystemDate)
                                                        MapCDOFromSession(MapID=>238, MapTo=>CLF::__CDOID)
                                                        Call(Event=>RetrieveCalendarShift)
                                                    Perform: RetrieveCalendarShift CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>MfgCalendar, RightValue=>Constants.NullObject)
                                                        Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:14
                                                            ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                            Call(Event=>SetHistoryMainlineTxnDates)
                                                    Perform: SetHistoryMainlineTxnDates CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        SetTxnDate(ServiceDateField=>TxnDate, SystemDateField=>HistoryMainline.SystemDate, TxnDateField=>HistoryMainline.TxnDate)
                                                        LocalToGMT(GMTDate=>HistoryMainline.TxnDateGMT, LocalDate=>HistoryMainline.TxnDate)
                                                        V3_EvalExpression(Expression=>HistoryMainline.CalendarShift ? (HistoryMainline.CalendarShift.Shift?HistoryMainline.CalendarShift.Shift.Name:Constants.EmptyString):Constants.EmptyString, Value=>HistoryMainline.ShiftName)
                                                        V3_EvalExpression(Expression=>HistoryMainline.CalendarShift ? HistoryMainline.CalendarShift.CalendarDate:HistoryMainline.TxnDate, Value=>HistoryMainline.MfgDate)
                                                        Call(Event=>RecordPreHistory)
                                            Perform: RecordPreHistory CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Call(Event=>RecordMainlinePreHistory)
                                                Perform: RecordMainlinePreHistory CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    Map(MapFrom=>Constants, MapID=>254, MapTo=>HistoryMainline)
                                                    Map(MapFrom=>CLF::__CDOID, MapID=>239, MapTo=>HistoryMainline)
                                                    Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:13
                                                        ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                        GetCDOType(CDO=>CLF::__CDOID, Type=>HistoryMainline.TxnType)
                                                        Call(Event=>RecordSummaryPreHistory)
                                                Perform: RecordSummaryPreHistory CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    Noop()
                                                    Call(Event=>ModifyEntity)
                                            Perform: ModifyEntity CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Call(Event=>StartModifyingEntity)
                                                Perform: StartModifyingEntity CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    Call(Event=>SetWFStack)
                                                    Perform: SetWFStack CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        Call(CDO=>CurrentStatusDetails.WorkflowNavigator, Event=>Reset)
                                                        Perform: Reset CDOType:CDOPerform CDOName:WorkflowNavigator Depth:14
                                                            SetFieldEx(From=>Parent.WorkflowStep, To=>FromStep)
                                                            Field: WorkflowStep Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:15
                                                                ResolveSubEntity(ParentFieldName=>Workflow, ThrowError=>true)
                                                                SetFieldEx(From=>Parent.WorkflowStack, To=>WorkflowStack)
                                                                SetFieldEx(From=>\0, To=>ToStep)
                                                                SetFieldEx(From=>\0, To=>PathToUse)
                                                                Call(CDO=>CurrentStatusDetails.WorkflowNavigator, Event=>BuildWFStack)
                                                        Perform: BuildWFStack CDOType:CDOPerform CDOName:WorkflowNavigator Depth:14
                                                            WorkflowNavigator_BuildWFStack()
                                                            SetFieldEx(From=>CurrentStatusDetails.WorkflowNavigator.WorkflowStack, To=>CurrentStatusDetails.WorkflowStack)
                                                            SetFieldEx(From=>CurrentStatusDetails.WorkflowNavigator.ToStep, To=>CurrentStatusDetails.SpecStep)
                                                            FieldCreateCDO(FieldName=>CurrentStatus)
                                                            Map(MapFrom=>CurrentStatusDetails, MapID=>379, MapTo=>CurrentStatus)
                                                    Field: Location Event:OnGetValue CDOType:CDOFieldEvent CDOName:CurrentStatusStartDetails Depth:13
                                                        ResolveSubEntity(ParentFieldName=>Factory, ThrowError=>true)
                                                        MapCDOList(CreateNew=>Constants.BooleanTrue, FromListField=>ReworkStatusStartDetails, FromParent=>CurrentStatusDetails, MapID=>380, ToCDOType=>ReworkStatus, ToListField=>ReworkStatus, ToParent=>CurrentStatus)
                                                        Call(CDO=>Details, Event=>CreateContainer, Name1=>ParentContainer, Name2=>CurrentStatus, Value1=>Constants.NullObject, Value2=>CurrentStatus)
                                                    Perform: CreateContainer CDOType:CDOPerform CDOName:StartLotDetails Depth:13
                                                        CreateChildCDO(CDOObjRefFieldExpr=>Container, ChildListExpr=>CLF::ParentContainer.ChildContainers, ParentExpr=>CLF::ParentContainer)
                                                        SetFieldEx(From=>CLF::CurrentStatus, To=>Container.CurrentStatus)
                                                        Map(MapFrom=>Transaction::__CurrentService.HistoryMainline, MapID=>385, MapTo=>Container)
                                                        Map(MapFrom=>CLF::__CDOID, MapID=>6, MapTo=>Container)
                                                        If(Call=>SaveContainerDetail, Value=>Container.Detail)
                                                        Map(MapFrom=>Transaction::__CurrentService.HistoryMainline, MapID=>56, MapTo=>Container)
                                                        LocalToGMT(GMTDate=>Container.DueDateGMT, LocalDate=>Container.DueDate)
                                                        LocalToGMT(GMTDate=>Container.RequestDateGMT, LocalDate=>Container.RequestDate)
                                                        Call(CDO=>Container, Event=>Initialize)
                                                        Perform: Initialize CDOType:CDOPerform CDOName:Lot Depth:14
                                                            Noop()
                                                            Call(Event=>CreateContainer_User)
                                                        Perform: CreateContainer_User CDOType:CDOPerform CDOName:StartLotDetails Depth:14
                                                            Noop(Comment1=>A customer may put here , Comment2=>specific Container creation logic that occurs , Comment3=>after the Container creation logic provided by Camstar)
                                                            CreateCrossReferences(Container=>Container, CrossRefType=>Transaction::__CurrentService.Constants.XRefTypeContainer, Parent=>Container)
                                                            ForEachObject(Call=>CreateContainer, List=>ChildContainers, Name1=>ParentContainer, Name2=>CurrentStatus, Value1=>Container, Value2=>CLF::CurrentStatus)
                                                            StartDetails_AccumulateChildStats()
                                                            Map(MapFrom=>Container, MapID=>386, MapTo=>Container)
                                                            Call(Event=>SetSpecInContainer)
                                                    Perform: SetSpecInContainer CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        SetFieldEx(From=>Details.Container.WorkflowStep.Spec, To=>Details.Container.CurrentStatus.Spec)
                                                        SetFieldEx(From=>Details.Container, To=>HistoryMainline.HistoryId)
                                                        SetFieldEx(From=>Details.Container, To=>HistoryMainline.Container)
                                                        Call(Event=>MapLastMoveDate)
                                                    Perform: MapLastMoveDate CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        Map(MapFrom=>000988e000001b12, MapID=>57, MapTo=>4804b6e000001778)
                                                        Call(CDO=>Details, Event=>Execute)
                                                    Perform: Execute CDOType:CDOPerform CDOName:StartLotDetails Depth:13
                                                        Call(Event=>RecordDetailPreHistory)
                                                        Perform: RecordDetailPreHistory CDOType:CDOPerform CDOName:StartLotDetails Depth:14
                                                            If(ElseCall=>AddHistoryDetail, Value=>HistoryDetail)
                                                            Perform: AddHistoryDetail CDOType:CDOPerform CDOName:StartLotDetails Depth:15
                                                                CreateAddHistoryDetails(HistoryDetailRefField=>HistoryDetail, HistoryDetailsOwnerField=>Transaction::__CurrentService.HistoryMainline.HistoryDetails)
                                                                Map(MapFrom=>Transaction::__CurrentService.HistoryMainline, MapID=>76, MapTo=>HistoryDetail)
                                                                ForEachObject(Call=>RecordDetailPreHistory, List=>ChildContainers)
                                                                Call(Event=>ModifyEntityUsingDetail)
                                                        Perform: ModifyEntityUsingDetail CDOType:CDOPerform CDOName:StartLotDetails Depth:14
                                                            Noop()
                                                            Call(Event=>AccumulateSummaryHistoryData)
                                                        Perform: AccumulateSummaryHistoryData CDOType:CDOPerform CDOName:StartLotDetails Depth:14
                                                            Noop()
                                                            Call(Event=>RecordDetailPostHistory)
                                                        Perform: RecordDetailPostHistory CDOType:CDOPerform CDOName:StartLotDetails Depth:14
                                                            SetFieldEx(From=>Container, To=>HistoryDetail.Container)
                                                            Map(MapFrom=>Container, MapID=>65, MapTo=>HistoryDetail)
                                                            Field: WorkflowStack Event:OnGetValue CDOType:CDOFieldEvent CDOName:Lot Depth:15
                                                                ParseDynamicExpression(Expression=>CurrentStatus.WorkflowStack)
                                                                ForEachObject(Call=>RecordDetailPostHistory, List=>ChildContainers)
                                                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>Container.Detail, RightValue=>Transaction::__Const.NullObject)
                                                                SetFieldEx(From=>Constants.IntegerZero, To=>CurrentStatus.StepEntryTxnId)
                                                                Call(CDO=>CurrentStatus, Event=>StepPass_Initialize)
                                                    Perform: StepPass_Initialize CDOType:CDOPerform CDOName:LotCurrentStatus Depth:13
                                                        Noop(Comment1=>Do nothing here)
                                                        Map(MapFrom=>CLF::__CDOID, MapID=>43, MapTo=>HistoryMainline)
                                                        Map(MapFrom=>Details.Container, MapID=>387, MapTo=>HistoryMainline)
                                                        SetFieldEx(From=>HistoryMainline, To=>Transaction::InProcessHistoryCDO)
                                                        Call(Event=>ApplyDetails)
                                                Perform: ApplyDetails CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    IsFieldDefined(FieldName=>"ServiceDetails", Result=>CLF::ServiceDetailsPresent)
                                                    If(Call=>ApplyServiceDetails, Value=>CLF::ServiceDetailsPresent)
                                                    If(Call=>ApplyParametricDetails, Value=>ParametricData)
                                                    If(Call=>SaveContainerDetail, Value=>Container.Detail)
                                                    Call(Event=>FinishModifyingEntity)
                                                Perform: FinishModifyingEntity CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    Call(Event=>AccumulateSummaryHistoryData)
                                                    Perform: AccumulateSummaryHistoryData CDOType:CDOPerform CDOName:StartLot Depth:13
                                                        Noop()
                                                        Call(Event=>MapLastActivityToContainer)
                                                Perform: MapLastActivityToContainer CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    Map(MapFrom=>Transaction::__CurrentService.HistoryMainline, MapID=>56, MapTo=>Transaction::__CurrentService.Container)
                                                    Noop(Event=>ProcessWIPMsgs)
                                                    Call(Event=>RecordPostHistory)
                                            Perform: RecordPostHistory CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Call(Event=>RecordSummaryPostHistory)
                                                Perform: RecordSummaryPostHistory CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    Noop()
                                                    Call(Event=>RecordMainlinePostHistory)
                                                Perform: RecordMainlinePostHistory CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    CallSuper()
                                                    Map(MapFrom=>CLF::__CDOID, MapID=>240, MapTo=>HistoryMainline)
                                                        Field: CalendarShiftName Event:OnGetValue CDOType:CDOFieldEvent CDOName:StartLot Depth:14
                                                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                                            ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                                            SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            GetCurrentField(CurrentFieldName=>CLF::ColName)
                                                            ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                        Field: CalendarJulianDay Event:OnGetValue CDOType:CDOFieldEvent CDOName:StartLot Depth:14
                                                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                                            ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                                            SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            GetCurrentField(CurrentFieldName=>CLF::ColName)
                                                            ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                        Field: CalendarMonth Event:OnGetValue CDOType:CDOFieldEvent CDOName:StartLot Depth:14
                                                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                                            ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                                            SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            GetCurrentField(CurrentFieldName=>CLF::ColName)
                                                            ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                        Field: CalendarWorkWeek Event:OnGetValue CDOType:CDOFieldEvent CDOName:StartLot Depth:14
                                                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                                            ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                                            SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            GetCurrentField(CurrentFieldName=>CLF::ColName)
                                                            ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                        Field: CalendarYear Event:OnGetValue CDOType:CDOFieldEvent CDOName:StartLot Depth:14
                                                            ExitIf(Comparison=>Transaction::__Const.CompareNotEqual, LeftValue=>CLF::__FieldValue)
                                                            ExecuteQueryEx(QueryName=>\_GetCalendarData, Resultset=>CLF::Resultset, ResultsetSizeLimit=>-1, ResultsetStartRow=>1)
                                                            SetFieldConditional(Condition=>TxnDate = Transaction::__Const.BlankTimestamp, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarYear, FieldName=>CalendarYear, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarJulianDay, FieldName=>CalendarJulianDay, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarShiftName, FieldName=>CalendarShiftName, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarWorkWeek, FieldName=>CalendarWorkWeek, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            ConvertResultsetToListOrScalar(ColName=>\CalendarMonth, FieldName=>CalendarMonth, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            GetCurrentField(CurrentFieldName=>CLF::ColName)
                                                            ConvertResultsetToListOrScalar(ColName=>CLF::ColName, FieldName=>Transaction::__Return, FieldType=>Transaction::__Const.DataType.String, IsList=>Transaction::__Const.BooleanFalse, Resultset=>CLF::Resultset, UseFieldDataType=>Transaction::__Const.BooleanFalse)
                                                            Map(MapFrom=>Container, MapID=>250, MapTo=>HistoryMainline)
                                                            Noop(Event=>ExportInfo_Execute)
                                                            Noop(Event=>ProcessElectronicSignatures)
                                                            Noop(Event=>ProcessNonConformances)
                                                            Noop(Event=>ProcessApplicationExtensions)
                                                            Call(Event=>Execute_User)
                                            Perform: Execute_User CDOType:CDOPerform CDOName:StartLot Depth:11
                                                Call(Event=>StartLot_SetAttributes)
                                                Perform: StartLot_SetAttributes CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    SetFieldConditional(Condition=>Container.Priority = Constants.NullObject, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                    ResolveNamedObjRef(NamedObjRefField=>Container.Priority, ObjectName=>\NORMAL, ThrowError=>Constants.BooleanFalse)
                                                    ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>Details.Product.FinalTestSpecName, RightValue=>Constants.EmptyString)
                                                    Map(MapFrom=>CLF::__CDOID, MapID=>671088909, MapTo=>Container)
                                                    Map(MapFrom=>CLF::__CDOID, MapID=>671088910, MapTo=>LotAttributes)
                                                    Map(MapFrom=>CLF::__CDOID, MapID=>671089570, MapTo=>HistoryMainline)
                                                    ForEach(EachValue=>Transaction::List, ListExpr=>LotWaferRunNumbers, Perform=>StartLot_SetData)
                                                Perform: StartLot_SetData CDOType:CDOPerform CDOName:StartLot Depth:12
                                                    SetFieldEx(From=>Container, To=>Transaction::List.Parent)
                                                    SetFieldConditional(Condition=>Transaction::List.TxnTimestamp = Constants.BlankTimeStamp, ElseFrom=>Transaction::List.TxnTimestamp, ThenFrom=>TxnDate, To=>Transaction::List.TxnTimestamp)
                                                    SetFieldConditional(Condition=>Transaction::List.Username = Constants.EmptyString, ElseFrom=>Transaction::List.Username, ThenFrom=>EmployeeName, To=>Transaction::List.Username)
                                                    ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>TxnWaferSequence, RightValue=>\0)
                                                    ForEach(EachValue=>Transaction::List, ListExpr=>LotTestedTestParams, Perform=>StartLot_SetData)
                                                    ForEach(EachValue=>Transaction::List, ListExpr=>LotBins, Perform=>StartLot_SetData)
                                                    ForEach(EachValue=>Transaction::List, ListExpr=>LotMaterials, Perform=>StartLot_SetLotMaterials)
                                                    SetFieldEx(From=>\1, To=>TxnWaferSequence)
                                                    ForEach(EachValue=>Transaction::List, ListExpr=>LotWafers, Perform=>StartLot_SetData)
                                                    If(Call=>_ShipErrorsHandler_Clear, Value=>IsEShip)
                                                    ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>(IsDoNothing = Constants.BooleanFalse) AND ((CheckPrinting = Constants.BooleanTrue) OR (CheckPrintingReportOnly = Constants.BooleanTrue) OR (CheckPrintingLabelOnly = Constants.BooleanTrue)), RightValue=>Constants.BooleanFalse)
                                                    Call(CDO=>PrintingHandler, Event=>Add, Name1=>Service, Value1=>CLF::__CDOID)
                                                Perform: Add CDOType:CDOPerform CDOName:PrintingHandler Depth:12
                                                    SetFieldEx(From=>CLF::Service, To=>Service)
                                                    SetFieldEx(From=>0, To=>TxnContainersCount)
                                                    SetFieldConditional(Condition=>IgnoreContainers = Transaction::__Const.BooleanFalse, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                    GetListCount(ListCountLoc=>TxnContainersCount, ListExpr=>Containers)
                                                    IfEqual(Call=>AddData, LeftValue=>TxnContainersCount, RightValue=>0)
                                                    Perform: AddData CDOType:CDOPerform CDOName:PrintingHandler Depth:13
                                                        ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>Container, RightValue=>Transaction::__Const.NullObject)
                                                        SetFieldConditional(Condition=>ScanningName <> Transaction::__Const.NullObject, ElseFrom=>\3, ThenFrom=>\1, To=>CLF::__FlowVector)
                                                        InitQueryParameters(ParamName1=>ServiceName, ParamName2=>SpecId, ParamName3=>ProcessSpecObjectType, ParamName4=>CustomerCode, ParamValue1=>Service.CDOName, ParamValue2=>Container.Spec.InstanceID, ParamValue3=>ProcessSpecObjectType, ParamValue4=>Container.LotAttributes.CustomerCode, QueryParameters=>CLF::QueryParams)
                                                        ExecuteQuery(PreDefinedQuery=>true, Query=>\_PrintingHandler_PrintingAutomation, QueryValuesParamName=>CLF::QueryParams, ResultParamName=>CLF::QueryResult)
                                                        ConvertQueryResultToSingleValue(QueryResult=>CLF::QueryResult, Target=>CLF::PrintingAutomationName)
                                                        ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::PrintingAutomationName, RightValue=>Transaction::__Const.EmptyString)
                                                        ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>TxnContainersCount, RightValue=>0)
                                                        SetFieldEx(From=>HistoryMainline, To=>Transaction::InProcessHistoryCDO)
                                                        ExitIf(Comparison=>Constants.CompareNotEqual, LeftValue=>CDOName, RightValue=>CallByCDOName)
                                Event: AfterExecute CDOType:CDOEvent CDOName:StartLot Depth:8
                                    Call(Event=>_AfterExecute_UpdateIntegrationTxn)
                                    Perform: _AfterExecute_UpdateIntegrationTxn CDOType:CDOPerform CDOName:StartLot Depth:9
                                        SetFieldConditional(Condition=>HistoryMainlineExists, ElseFrom=>Transaction::____IntegrationTxn_HistoryMainlineCount, ThenFrom=>Transaction::____IntegrationTxn_HistoryMainlineCount + 1, To=>Transaction::____IntegrationTxn_HistoryMainlineCount)
                                        SetFieldEx(From=>IntegrationTxn, To=>HistoryMainline.IntegrationTxn)
                                        SetFieldConditional(Condition=>Transaction::____IntegrationTxn_Container = Constants.NullObject, ElseFrom=>Transaction::____IntegrationTxn_Container, ThenFrom=>HistoryMainline.Container, To=>Transaction::____IntegrationTxn_Container)
                                        SetFieldConditional(Condition=>Transaction::____IntegrationTxn_Resource = Constants.NullObject, ElseFrom=>Transaction::____IntegrationTxn_Resource, ThenFrom=>HistoryMainline.Resource, To=>Transaction::____IntegrationTxn_Resource)
                                        If(Call=>_DeleteMe, CDO=>HistoryMainline, Value=>(HistoryMainlineExists = Constants.BooleanFalse) AND (HistoryMainline <> Constants.NullObject))
                                        If(Call=>_AfterExecute_UpdateParentService, Value=>ParentService)
                                    Perform: _AfterExecute_UpdateParentService CDOType:CDOPerform CDOName:StartLot Depth:9
                                        ForEach(EachValue=>Transaction::AlertMessagesItem, ListExpr=>AlertMessages, Perform=>_AfterExecute_UpdateParentServiceAddAlertMessages)
                                        ExitIf(Comparison=>Constants.CompareNotEqual, LeftValue=>CDOName, RightValue=>CallByCDOName)
                                        SetFieldEx(From=>StartLotDetails.Container, To=>Container)
                                        Call(Event=>LotStart_SetAttributes)
                            Perform: LotStart_SetAttributes CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:7
                                SetFieldConditional(Condition=>LotAttributesExists, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                                ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>GetListCount(ServiceAttrsDetails), RightValue=>0)
                                GetListCount(ListCountLoc=>CLF::__FunctionRetVal, ListExpr=>ServiceAttrsDetails)
                                If(Call=>LotStart_ScheduleLot, Value=>ProcessSpec)
                                Call(CDO=>LotAttributes, Event=>_DeleteMe)
                        Perform: _DeleteMe CDOType:CDOPerform CDOName:LotAttributes Depth:6
                            DeleteCDO(CDOFieldName=>CLF::__CDOID)
                            ExitIf(Comparison=>Constants.CompareEqual, LeftValue=>(IsDoNothing = Constants.BooleanFalse) AND ((CheckPrinting = Constants.BooleanTrue) OR (CheckPrintingReportOnly = Constants.BooleanTrue) OR (CheckPrintingLabelOnly = Constants.BooleanTrue)), RightValue=>Constants.BooleanFalse)
                            Call(CDO=>PrintingHandler, Event=>Add, Name1=>Service, Value1=>CLF::__CDOID)
                        Perform: Add CDOType:CDOPerform CDOName:PrintingHandler Depth:6
                            SetFieldEx(From=>CLF::Service, To=>Service)
                            SetFieldEx(From=>0, To=>TxnContainersCount)
                            SetFieldConditional(Condition=>IgnoreContainers = Transaction::__Const.BooleanFalse, ElseFrom=>\2, ThenFrom=>\1, To=>CLF::__FlowVector)
                            GetListCount(ListCountLoc=>TxnContainersCount, ListExpr=>Containers)
                            IfEqual(Call=>AddData, LeftValue=>TxnContainersCount, RightValue=>0)
                            Perform: AddData CDOType:CDOPerform CDOName:PrintingHandler Depth:7
                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>Container, RightValue=>Transaction::__Const.NullObject)
                                SetFieldConditional(Condition=>ScanningName <> Transaction::__Const.NullObject, ElseFrom=>\3, ThenFrom=>\1, To=>CLF::__FlowVector)
                                InitQueryParameters(ParamName1=>ServiceName, ParamName2=>SpecId, ParamName3=>ProcessSpecObjectType, ParamName4=>CustomerCode, ParamValue1=>Service.CDOName, ParamValue2=>Container.Spec.InstanceID, ParamValue3=>ProcessSpecObjectType, ParamValue4=>Container.LotAttributes.CustomerCode, QueryParameters=>CLF::QueryParams)
                                ExecuteQuery(PreDefinedQuery=>true, Query=>\_PrintingHandler_PrintingAutomation, QueryValuesParamName=>CLF::QueryParams, ResultParamName=>CLF::QueryResult)
                                ConvertQueryResultToSingleValue(QueryResult=>CLF::QueryResult, Target=>CLF::PrintingAutomationName)
                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>CLF::PrintingAutomationName, RightValue=>Transaction::__Const.EmptyString)
                                ExitIf(Comparison=>Transaction::__Const.CompareEqual, LeftValue=>TxnContainersCount, RightValue=>0)
                                Call(Event=>RecordMainlinePostHistory)
                    Perform: RecordMainlinePostHistory CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5
                        Map(MapFrom=>CLF::__CDOID, MapID=>240, MapTo=>HistoryMainline)
                        Noop(Event=>ProcessWIPMsgs)
                        Noop(Event=>ProcessElectronicSignatures)
                        Call(Event=>Execute_User)
                    Perform: Execute_User CDOType:CDOPerform CDOName:TestStoreLotCreate Depth:5