Do not let any software impress you!

Only let it convince your intellect.
Slider img 1
Do not look for a business paradise!

It is a waste of time.
Slider img 2
Only yourself can push you uphill.

There is no easy road to prizes.
Slider img 3
Productivity is the name of the game.

And you have to conquer it.
Slider img 4
As long as you understand it,

you will start to build your know-how.
Slider img 5
We can help with that.

We have the tools and the method.
Slider img 6
Procedure : AU_ASSET_MAINT_PLANNER

AutoScript

start_agent_info
   AgentName = "AU_ASSET_MAINT_PLANNER"
   AgentDescr = "Asset Maintenance Planner"
end_agent_info

start_bpm_activity "Mail Attachements Characterization"
start_bpm_subactivity "Mail Attachment"
    
    
    
end_bpm_subactivity
end_bpm_activity

start_bpm_activity "Mail Attachments Characterization"
start_bpm_subactivity "Mail Attachments"
    
      mail = __params[1]
      date = __params[2]
      call OpenFormTop("ptBrowse","AU_DOCREL2_B.FM","QRY.DATA","ACTIVITY_MODE",mail,date)
      
end_bpm_subactivity
end_bpm_activity

start_bpm_activity "Bounced Mail Manipulation"
start_bpm_subactivity "Bounced Mail"
        
    mail = __params[1]        
    date = __params[2]
    call OpenFormTop("ptBrowse","AU_MAIL_BOUNCED_B.FM","QRY.DATA","ACTIVITY_MODE",mail,date)
    
end_bpm_subactivity
end_bpm_activity

start_action

   call trace("AU_ASSET_MAINT_PLANNER planner agent - out - _TraversingHour=",_TraversingHour)
   call trace("_CurrentDate_Num=",_CurrentDate_Num," fired_date=",fired_date)

   {........................................................PROCESS STARTING FOR EQUIPMENT INSPECTION}

   when ( _TraversingHour = 6) and ((_CurrentDate_Num > fired_date) or (fired_date = 0)) do

        start_sql "*" "KOSMOS"
         SELECT AU_GOOD.AU_TOPO, AU_GOOD_MAINT.ITEMIZED_FLAG
         FROM AU_GOOD_MAINT INNER JOIN AU_GOOD ON AU_GOOD_MAINT.AU_GOOD = AU_GOOD.AU_GOOD
         GROUP BY AU_GOOD.AU_TOPO, AU_GOOD_MAINT.ITEMIZED_FLAG
         HAVING (AU_GOOD_MAINT.NEXT_CHECK_DATE=:D)
        end_sql                                        
        q = QueryByName()
        call TSetParam(q,"D",crDate)
        call TExecute(q)
        count = TRecordCount(q)
   call trace("count=",count)
        call TFirst(q)
        for i = 1 to count                                                                                

         topo_id = TGetFld(q,"AU_TOPO")
         itmized = TGetFld(q,"ITEMIZED_FLAG")

         start_sql "*" "KOSMOS"
         INSERT INTO AU_CHECK_AREA
         end_sql
         q1 = QueryByName()
         call TSetFld(q1,"AU_TOPO","Float",topo_id)
         call TSetFld(q1,"ITEMIZED_FLAG","String",itmized)
         call TSetFld(q1,"CMODE","String","Maintenance")
         call TExecute(q1)
         call FreeEmbSQL(q1)
                                                        
         id = SelectIdentity()

         start_sql "*" "KOSMOS"
                SELECT AU_GOOD_MAINT.NEXT_CHECK_DATE, AU_GOOD.AU_TOPO,
                AU_GOOD_MAINT.AU_GOOD, AU_GOOD_MAINT.AU_POS, AU_GOOD_MAINT.SUP_CHECK_FLAG,
                AU_GOOD_MAINT.OUTOFORDER_FLAG, AU_GOOD_MAINT.ITEMIZED_FLAG
                FROM AU_GOOD_MAINT INNER JOIN AU_GOOD ON AU_GOOD_MAINT.AU_GOOD = AU_GOOD.AU_GOOD
                WHERE (AU_GOOD_MAINT.NEXT_CHECK_DATE=:D) AND (AU_GOOD.AU_TOPO=:T)
                AND (AU_GOOD_MAINT.ITEMIZED_FLAG=:IT)
         end_sql
         q1 = QueryByName()
         call TSetParam(q1,"D",crDate)
         call TSetParam(q1,"T",topo_id)
         call TSetParam(q1,"IT",itmized)
         call TExecute(q1)
         count1 = TRecordCount(q1)
         call TFirst(q1)
         for j = 1 to count1

                good_id = TGetFld(q1,"AU_GOOD")
                pos_id = TGetFld(q1,"AU_POS")
                sup = TGetFld(q1,"SUP_CHECK_FLAG")
                out = TGetFld(q1,"OUTOFORDER_FLAG")
                itm = TGetFld(q1,"ITEMIZED_FLAG")
                                                                
                start_sql "*" "KOSMOS"
                 INSERT INTO AU_CHECK_AREA_EQ
                end_sql
                q2 = QueryByName()
                call TSetFld(q2,"AU_GOOD","Float",good_id)
                call TSetFld(q2,"AU_CHECK_AREA","Float",id)
                call TSetFld(q2,"NOK_FLAG","String","1")
                call TSetFld(q2,"OK_FLAG","String","0")
                call TSetFld(q2,"SUP_CHECK_FLAG","String",sup)
                call TSetFld(q2,"OUTOFORDER_FLAG","String",out)
                call TSetFld(q2,"ITEMIZED_FLAG","String",itm)
                call TSetFld(q2,"RESP_POS","Float",pos_id)
                call TExecute(q2)
                call FreeEmbSQL(q2)

                call TNext(q1)                                
         next
         call FreeEmbSQL(q1)

         call bpm_startcoordinator ( "AU_ASSET_MAINT", id )

         call TNext(q)
        next
        call FreeEmbSQL(q)

   endwhen                              

end_action