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_CAMPAIGN_COORDINATOR

AutoScript

start_agent_info
   AgentName = "AU_CAMPAIGN_COORDINATOR"
   AgentDescr = "Campaign Coordinator"
   PR_FNAME = ""
   PR_TNAME = ""
end_agent_info

start_bpm_activity "Define Campaign Participants"
start_bpm_subactivity "Campaign Form"
                        
    rec = __params[1]        
    expr = strcat(rec,"=AU_MAILCAMP_MASS")
    call OpenFormTop("ptEdit","AU_MAILCAMP_MASS_E.FM","WORK.AU_MAILCAMP_MASS",1,expr)
    
end_bpm_subactivity
start_bpm_subactivity "Define Participants"

    call OpenFormTop("ptBrowse","AU_SELLCONTACT_TO_MAIL_B.FM","QRY.DATA")

end_bpm_subactivity
end_bpm_activity

start_bpm_activity "New Campaign"
start_bpm_subactivity "Campaign Form"
                        
    rec = __params[1]        
    expr = strcat(rec,"=AU_MAILCAMP_MASS")
    call OpenFormTop("ptEdit","AU_MAILCAMP_MASS_E.FM","WORK.AU_MAILCAMP_MASS",1,expr)
    
end_bpm_subactivity
start_bpm_validation
                
    {.....you can ommit this section if result is always (1) i.e. valid!}
    
    result = 1
    
end_bpm_validation
end_bpm_activity

start_bpm_activity "Wait Answer"
start_bpm_subactivity "Contact Form"

    rec = __params[1]
                
    if (__contact_form_processing = 1) then
       
       html_form        = __params[2]       
       __html_mail       = __params[3]       
       __sending_email = __params[4]
       __mail_subject = __params[5]       
       __receiving_email = __params[6]       
       __sched_date = __params[7]       
       __sched_hour = __params[8]       
                                        
       if (html_form <> "") then

         col = dcol_start("Basic Campaign",__au_contact,__au_step,__au_process)
       
         str = SelectFrom("SELECT DATCOL_LAB1, DATCOL_LAB2, DATCOL_LAB3, DATCOL_LAB4, DATCOL_LAB5 FROM AU_MAILCAMP_MASS WHERE (AU_MAILCAMP_MASS=",rec,")")

         lab[1] = GetSQLSelectItem(str,1)        
         lab[2] = GetSQLSelectItem(str,2)
         lab[3] = GetSQLSelectItem(str,3)
         lab[4] = GetSQLSelectItem(str,4)
         lab[5] = GetSQLSelectItem(str,5)
                                        
         cname = __params[9]        
         call dcol_item(col,"Name","AU_CONTACT","DISP_NAME",cname,__au_contact,0,1,6)        

         for i = 1 to 5
         if (lab[i] <> "") then
                 call dcol_item(col,lab[i],"",i,"","",0,0,6)        
         endif
         next
        
         call html_processfile(html_form, col, __au_step, __postforward)
       
       endif
    else                                    
    
       call OpenContactForm()
       
    endif
    
end_bpm_subactivity
start_bpm_validation
    
    result = 1
    
end_bpm_validation
end_bpm_activity

start_bpm_activity "Inspect Drafts"
start_bpm_subactivity "Subactivity Name To Change"
    
    {.....a sample snipet of code is the following (CHANGE IT!)}
    {.....you can add as many (start_bpm_activity...end_bpm_subactivity) sections you want}
    
    rec = __params[1] {...usualy the rec_id passed to bpm_assign_job}
    expr = strcat(rec,"=SOME_UNIQUE_FIELD_NAME")
    call OpenFormTop("ptEdit","THE_FORM_NAME_FOR_EDITING.FM","WORK.THE_TABLE_NAME",1,expr)
    
end_bpm_subactivity
start_bpm_validation
    
    {.....you can ommit this section if result is always (1) i.e. valid!}
    
    result = 1
    
end_bpm_validation
end_bpm_activity

start_bpm_activity "Inspect Drafts"
start_bpm_subactivity "Campaign Activities"
    
    
end_bpm_subactivity
start_bpm_subactivity "Campaign Draft Mails"
    
    
end_bpm_subactivity
start_bpm_validation
        
    result = 1
    
end_bpm_validation
end_bpm_activity

start_bpm_activity "Campaign Summary"
start_bpm_subactivity "Campaign Mails"
                        
   proc_id = __params[2]
   call OpenFormTop("ptBrowse","AU_CONTACT_MAIL_B.FM","QRY.DATA","PROCESS_MODE",proc_id)   

end_bpm_subactivity
start_bpm_subactivity "Activities to Contacts"
    
   proc_id = __params[2]
   call OpenFormTop("ptBrowse";"AU_BPM_JOBS11.FM";"QRY.DATA","CONTACT_PROCESS_MODE",proc_id)
   
end_bpm_subactivity
start_bpm_subactivity "Collected Data"
                                
   proc_id = __params[2]   
   call OpenFormTop("ptBrowse","AU_DATACOLLECT_CONT_B.FM","QRY.DATA","PROCESS_MODE",proc_id)
   
end_bpm_subactivity
end_bpm_activity

start_bpm_activity "Create Mails"
start_bpm_subactivity "Campaign Form"
                        
    rec = __params[1]        
    expr = strcat(rec,"=AU_MAILCAMP_MASS")
    call OpenFormTop("ptEdit","AU_MAILCAMP_MASS_E.FM","WORK.AU_MAILCAMP_MASS",1,expr)
    
end_bpm_subactivity
start_bpm_subactivity "Define Participants"

    call OpenFormTop("ptBrowse","AU_SELLCONTACT_TO_MAIL_B.FM","QRY.DATA")

end_bpm_subactivity
end_bpm_activity

start_action

     rec_id = __params[1]

     str = SelectFrom("SELECT SMAIL, AU_POS, AU_USER, MSUBJECT, HTML_FILE, HTML_MAIL, SUBJECT, SDATE, SHOUR FROM AU_MAILCAMP_MASS WHERE (AU_MAILCAMP_MASS=",rec_id,")")

     smail     = GetSQLSelectItem(str,1)
     pos_id = GetSQLSelectItem(str,2)                              
     user_id = GetSQLSelectItem(str,3)
     msubj     = GetSQLSelectItem(str,4)
     html_form = GetSQLSelectItem(str,5)
     html_mail = GetSQLSelectItem(str,6)
     comm      = GetSQLSelectItem(str,7)
     sdate     = GetSQLSelectItem(str,8)
     shour     = GetSQLSelectItem(str,9)

     uname = LookUpId("AU_USER",user_id,"UNAME")
     rname = LookUpId("AU_POS",pos_id,"POS_D")

     call bpm_setprocedureowner(uname,rname)      {.....set the procedure owner}

     call UpdateField("AU_MAILCAMP_MASS",rec_id,"AU_PROCESS",__au_process,"")

     {......................................... New Campaign....................................}
     call bpm_setstepcomment(comm)
     callwait bpm_assign_job ( "New Campaign", uname, rname, 0, rec_id )

     {.................................... Define Campaign Participants .........................}

     call bpm_setstepcomment(comm)
     callwait bpm_assign_job ("Define Campaign Participants", uname, rname, 0, rec_id )

     {.................................Create participant records for the campaign...............}

     start_sql "*" "KOSMOS"
         SELECT AU_MAILADDRESS.MADDRESS, AU_CONTACT.DISP_NAME, AU_CONTACT_MAILADDR.AU_BUSINESS,
         AU_CONTACT_MAILADDR.AU_CONTACT, AU_CONTACT_MAILADDR.SEND_MAIL_FLAG,
         AU_CONTACT_MAILADDR.AU_CONTACT_MAILADDR
         FROM AU_MAILADDRESS INNER JOIN (AU_CONTACT INNER JOIN AU_CONTACT_MAILADDR
         ON AU_CONTACT.AU_CONTACT = AU_CONTACT_MAILADDR.AU_CONTACT)
         ON AU_MAILADDRESS.AU_MAILADDRESS = AU_CONTACT_MAILADDR.AU_MAILADDRESS
         WHERE (SEND_MAIL_FLAG = '1')
     end_sql
     q0 = QueryByName()
     call TExecute(q0)
     count = TRecordCount(q0)
     call TFirst(q0)
     for i = 1 to count

         send_id = TGetFld(q0,"AU_CONTACT_MAILADDR")

         id = InsertInto ( "AU_MAILCAMP_MASS_ITM", "AU_MAILCAMP_MASS", rec_id, "AU_CONTACT_MAILADDR", send_id, "" )

         {........blank again "SEND_MAIL_FLAG"...........}

         call UpdateField ( "AU_CONTACT_MAILADDR", send_id, "SEND_MAIL_FLAG", "0", "" )

         call TNext(q0)
     next
     call FreeEmbSQL(q0)

     {...........................................................create mails (after forward)}

     call bpm_setstepcomment(comm)
     callwait bpm_assign_job ("Create Mails", uname, rname, 0, rec_id )

     {..........................Create activities for the paricipants............................}

     start_sql "*" "KOSMOS"
        SELECT AU_MAILADDRESS.MADDRESS, AU_CONTACT.DISP_NAME, AU_CONTACT_MAILADDR.AU_BUSINESS,
        AU_CONTACT_MAILADDR.AU_CONTACT, AU_CONTACT_MAILADDR.SEND_MAIL_FLAG, AU_CONTACT_MAILADDR.AU_CONTACT_MAILADDR
        FROM (AU_MAILADDRESS INNER JOIN (AU_CONTACT INNER JOIN AU_CONTACT_MAILADDR
        ON AU_CONTACT.AU_CONTACT = AU_CONTACT_MAILADDR.AU_CONTACT)
        ON AU_MAILADDRESS.AU_MAILADDRESS = AU_CONTACT_MAILADDR.AU_MAILADDRESS)
        INNER JOIN AU_MAILCAMP_MASS_ITM
        ON AU_CONTACT_MAILADDR.AU_CONTACT_MAILADDR = AU_MAILCAMP_MASS_ITM.AU_CONTACT_MAILADDR
        WHERE (AU_MAILCAMP_MASS_ITM.AU_MAILCAMP_MASS = :R)
     end_sql
     q0 = QueryByName()
     call TSetParam(q0,"R",rec_id)
     call TExecute(q0)
     count = TRecordCount(q0)

     call TFirst(q0)
     for i = 1 to count

         cont_id = TGetFld(q0,"AU_CONTACT")
         bus_id = TGetFld(q0,"AU_BUSINESS")
         cmail = TGetFld(q0,"MADDRESS")
         cname = TGetFld(q0,"DISP_NAME")
         send_id = TGetFld(q0,"AU_CONTACT_MAILADDR")

         call bpm_setactivitycontact(cont_id)
         call bpm_setactivitybusiness(bus_id)
         call bpm_setsteppostforward()
         call bpm_setstepcomment(comm)
         call bpm_assign_job ( "Wait Answer", uname, rname, 0, rec_id, html_form, html_mail, smail, msubj, cmail, sdate, shour, cname )

         {........blank again "SEND_MAIL_FLAG"...........}

         call UpdateField ( "AU_CONTACT_MAILADDR", send_id, "SEND_MAIL_FLAG", "0", "" )

         call TNext(q0)
     next
     call FreeEmbSQL(q0)

    {.........................................Campaign Summary................................}
                                                                
    call bpm_setstepcomment(comm)
    callwait bpm_assign_job ( "Campaign Summary", uname, rname, 0, rec_id, __au_process )

end_action