Browsing Form 1

This examples shows the code of a browsing form that takes data directly from a "select" query of the database. Almost all the code is created automatically during the creation of the form.

 

This example code is taken from form "Activities in Progress" (AU_BPM_JOBS3.FM). The procedures Lst_DblClick, Form_Start, Panels_Start are standard procedures for AutoPilot code into a form. The Flowchart procedure is developer defined, activated in a toolbars button pressing. Note the keyword lib at the top of code that makes all variables to have global visibility over the entire code unit.

 

lib

 

proc Lst_DblClick()

 

    call OpenBPMStep()

 

end

 

proc Form_Start()

    f = TopForm()

    call SetRefreshTimer(f,30)

 

    call SetCaption("Activities in Progress")

end

 

proc Panels_Start()

 

    start_sql "DATA" "KOSMOS"

        SELECT

          AU_STEP.STEP_DESCR, AU_STEP.STEP_CODE, AU_STEP.AU_STEP, AU_STEP.STEP_ID,

          AU_STEP.TOSTART_AT_DATE, AU_STEP.TOSTART_AT_TIME,

          AU_STEP.BRANCH_ID, AU_STEP.ASSIGNED_AT_DATE, AU_STEP.ASSIGNED_AT_TIME,

          AU_PROCESS.AGENT_NAME, AU_PROCESS.AGENT_ID, AU_STEP.FINISHED_AT_DATE,

          AU_STEP.FINISHED_AT_TIME, AU_STEP.UNAME AS STEP_UNAME, AU_STEP.COMM,

          AU_STEP.FINISHED, AU_STEP.AU_PROCESS, AU_STEP.RNAME, AU_STEP.UNAME,

          AU_PROCESS.PARENT_AGENT_ID

        FROM

            AU_PROCESS INNER JOIN AU_STEP ON AU_PROCESS.AU_PROCESS = AU_STEP.AU_PROCESS

        WHERE (((AU_STEP.FINISHED)=0 Or (AU_STEP.FINISHED) Is Null))

        ORDER BY AU_STEP.ASSIGNED_AT_DATE, AU_STEP.ASSIGNED_AT_TIME,

    end_sql

 

    q = QueryByName("DATA")

    user = GetUserName()

    call TSetParam(q,"U",user)

 

    call TPrepare(q)

end

 

proc Flowchart()

 

    name = getfprevfield("AGENT_NAME")

    id   = getfprevfield("AGENT_ID")

    fullname = strcat(name,".",id)

    call agent_flowchart(fullname)

 

end