FPLs of ppljobreg_1


ppljobregentry_1         1
ppljobregexit_1          0
ppljobregfrmext_1        1
ppljobregins_1       1
ppljobregupd_1       1
ppljrdel_1       1
ppljobregcls_1       1
ppljramnd_1          0
ppljobregprn_1       1
ppljobregscr_1       1
ppljobregprn_1       1
ppljobregprint_1         0
ppljrjobnoent_1          1
ppljobregjobnoext_1          1
jobregclntcdentr_1       1
ppljobregclcdexit_1          1
ppljobregjrordnoext_1        1
ppljrorddtext_1          1
pplcdsent_1          1
ppljrcdsrecvdtext_1          1
ppljobregjrdestinext_1       1
ppljrdesmodeent_1        1
ppljrdesmodeext_1        1
ppljrbktabset_1          1
ppljrcnddtext_1          1
ppljrotsrecvdtent_1          1
ppljrbktabset_1          1
ppljrotsrecvdtext_1          1
ppljrbmrecvdtent_1       1
ppljrbktabset_1          1
ppljrbmrecvdtext_1       1
ppljrbktabset_1          1
jobregmodlentr_1         1
pplpmodel1_1         1
pplpmodel2_1         1
pplpmodel3_1         1
jobregcatext_1       1
ppljrindreledtent_1          1
ppljrindreledtext_1          1
ppljobregqtyexit_1       0
ppljcdrvvalentr_1        1
ppljrdrvvalext_1         1
ppljobdespvalexit_1          1
ppljrmndtvalext_1        1
ppljobregjrinspext_1         1
ppljrcalljp_1        1
ppljrcalljc_1        0
ppljrcalljd_1        1
pplsprlstsl_1        0
ppljrconsdet_1       1
ppljobchngfcall_1        0



                  /  ^
                        Close  ^
                  Insert  ^
                  Update  ^
                  Delete  ^
                  Clear  ^
                  Amend  ^
                  Print  ^
                        Screen  ^
                        Printer  ^
                  jrjobno  ^
                  jrslno  ^
                  jrclientcd  ^
                  jrqtnno  ^
                  jrqtndt  ^
                  jrordno  ^
                  jrorddt  ^
                  jrcdsrecvdt  ^
                  jrdestin  ^
                  jrdesmode  ^
                  jrcondeldt  ^
                  jrotsrecvdt  ^
                  jrbmrecvdt  ^
                  jrpumpmodel  ^
                  pmodel1  ^
                  pmodel2  ^
                  pmodel3  ^
                  jrpumpcat  ^
                  jrindreledt  ^
                  jrqty  ^
                  jrdrvval  ^
                  jrpmpval  ^
                  jrmndtval  ^
                  jrinsp  ^
                  clntnam  ^
                  lstsprsl  ^
                  field_19  ^
                  field_20  ^
                  field_21  ^
                  field_25  ^
                  field_26  ^
                  jrconsdet  ^
                  jramdno  ^
                  jramddt  ^
                  field_30  ^
                  fromdt  ^
                  todt  ^
                  bkflag  ^
                  jobyear  ^
                  fjobreghead  ^
                  jrordplby  ^
                  frompg  ^
                  topg  ^
                  f02  ^
                  f03  ^
                  f04  ^
                  f05  ^
                  Help  ^
                  Doit  ^
                  f01  ^





ppljobregentry_1 (fpl)
++++++++++++
create apt proc ppljobregentry_1() as
begin
    useform ppljobreg_1
    channel mychannel3
    variable uname char(10)
    global variable utag char(1)

    ins:active = FALSE
    upd:active = FALSE
    del:active = FALSE

    jrslno :visible = FALSE
    jramdno:visible = FALSE
    jramddt:visible = FALSE

    if (mychannel3:open = FALSE)
     connect mychannel3

    submit local on mychannel3
    sqlbegin
        select uname=user_name()
    sqlend

    if uname="cospr"
       utag="C"
       else
          utag="P"
    
    submit on mychannel3
    sqlbegin
/*      if ((select count(*) from sysobjects where name = "tmpjobreg" */
/*                  and type = "U" and uid in(select uid from sysusers */
/*                  where  name=user_name())) > 0) */
/*          drop table ..tmpjobreg */
    sqlend

    if (mychannel3:open = TRUE)
       disconnect mychannel3
    return
end
------------


ppljobregexit_1 (fpl)
++++++++++++
create apt proc ppljobregexit_1() as
begin
    useform ppljobreg_1
    channel mychannel3

    if ( mychannel3:open = FALSE )
       connect mychannel3

    submit nomsg[0-16] on mychannel3
    sqlbegin
/*     drop table ..tmpjobcomp */
/*     drop table ..tmpjobpln */
/*     drop table ..tmpjobdesp */
    sqlend

    submit nomsg[0-16] on mychannel3
    sqlbegin
/*      if ((select count(*) from sysobjects where name = "tmpjobreg" */
/*                  and type = "U" and uid in(select uid from sysusers */
/*                  where name=user_name() ))  > 0) */
/*          drop table tmpjobreg */
    sqlend
    
    disconnect mychannel3

    return
end
------------


ppljobregfrmext_1 (fpl)
++++++++++++
create apt proc ppljobregfrmext_1() as
begin
    useform ppljobreg_1
    
    CHANNEL mychannel

    if (mychannel:open = FALSE)
        connect mychannel

    submit nomsg[0-16] on mychannel
    sqlbegin

/*      drop table ..tmpjobreg */
/*      drop table ..tmpjobcomp */
/*      drop table ..tmpjobpln */
/*         drop table ..tmpjobdesp */
/*      drop table ..tmpjobchng */
/*      drop table ..tmpjobscrpdet */

    sqlend

    disconnect mychannel

    return
end
------------


ppljobregins_1 (fpl)
++++++++++++
create apt proc ppljobregins_1() as
begin
    useform ppljobreg_1
    global variable mssg char(30)
    global variable sflag bit
    global variable utag char(1)
    channel mychannel

    if ( mychannel:open = FALSE )
       connect mychannel

    mychannel:errors = NULL

    submit on mychannel
    sqlbegin
       begin transaction
    sqlend

    if (mychannel:errors is NULL)
    submit on mychannel
    sqlbegin

       insert jobreg (jrjobno,jrflag,jrslno,jrclientcd,jrqtnno,jrqtndt,
                      jrordno,jrconsdet,jrordplby,jrorddt,jrcdsrecvdt,jrdestin,
                      jrdesmode,jrotsrecvdt,jrbmrecvdt,jrpumpcat,
                jrqty,jrpmpval,jrmndtval,jrinsp,jrdrvval,
                jrcondeldt,jrpumpmodel,jrindreledt,
                user_id,systime ) 
      values ("{jrjobno}","S",{jrslno},"{jrclientcd}","{jrqtnno}","{jrqtndt}",
              "{jrordno}","{jrconsdet}","{jrordplby}",
                "{jrorddt}","{jrcdsrecvdt}","{jrdestin}",
                "{jrdesmode}","{jrotsrecvdt}","{jrbmrecvdt}",
                {sqlexpr(jrpumpcat)},{sqlexpr(jrqty)},
                {jrpmpval},{jrmndtval},"{jrinsp}",{jrdrvval},"{jrcondeldt}",
                "{jrpumpmodel}",{sqlexpr(jrindreledt)},
                user_name(),getdate() )

    sqlend

    if utag="P"
    begin

    if (mychannel:errors is NULL)
    submit on mychannel
    sqlbegin
        insert into jobplndesp
        select * from tmpjobpln
    sqlend

    if (mychannel:errors is NULL)
    submit  on mychannel
    sqlbegin
        insert into jobcomp
        select * from tmpjobcomp
    sqlend

    if (mychannel:errors is NULL)
    submit  on mychannel
    sqlbegin
       insert into jobactdesp
       select * from tmpjobdesp
    sqlend

    end

    if (mychannel:errors is NULL)
    submit  on mychannel
    sqlbegin
        insert into jobchng
        select * from tmpjobchng
    sqlend

    if sflag = 1
    begin
        if (mychannel:errors is NULL)
        submit on mychannel
        sqlbegin
            insert into jobscrpdet
            select * from tmpjobscrpdet
        sqlend
    end

    if (mychannel:errors is NULL)
    begin
        submit on mychannel
        sqlbegin
           commit transaction
        sqlend
        mssg = "Record Inserted Successfully"
        callform msgbox_1
        call ppljobregcls_1()
    end
    else
    begin
        submit on mychannel
        sqlbegin
           rollback transaction
        sqlend
        mssg = "INSERT UNSUCCESSFULL"
        callform msgbox_1
    end

    disconnect mychannel

    return
end
------------


ppljobregupd_1 (fpl)
++++++++++++
create apt proc ppljobregupd_1() as
begin
    useform ppljobreg_1
       
    global variable mssg char(30)
    global variable sflag bit
    global variable utag char(1)
    global variable utabname char(10)

    channel mychannel

    if ( mychannel:open = FALSE )

       connect mychannel

    submit local on mychannel
    sqlbegin
        select utabname=ltrim(rtrim(user_id))
        from jobreg
        where jrjobno="{jrjobno}"
    sqlend

    if (utabname="plan1" and utag="C")
    begin
        mssg="Allready Updated from Panihati"
        callform msgbox_1
        mssg="You are not Authorised ..."
        callform msgbox_1
        return
    end

    submit on mychannel
    sqlbegin
      begin transaction 
            update jobreg
          set jrslno      = {sqlexpr(jrslno)},
              jrclientcd  = {sqlexpr(jrclientcd)},
                          jrqtnno     = {sqlexpr(jrqtnno)},
              jrqtndt     = {sqlexpr(jrqtndt)},
              jrordno     = {sqlexpr(jrordno)},
              jrorddt     = {sqlexpr(jrorddt)},
                  jrcdsrecvdt = {sqlexpr(jrcdsrecvdt)},
              jrbmrecvdt  = {sqlexpr(jrbmrecvdt)},
              jrconsdet   = "{jrconsdet}",
              jrordplby   = "{jrordplby}",
              jrdestin    = {sqlexpr(jrdestin)},
              jrdesmode   = {sqlexpr(jrdesmode)},
              jrotsrecvdt = {sqlexpr(jrotsrecvdt)},
              jrpumpcat   = {sqlexpr(jrpumpcat)},
              jrpumpmodel = {sqlexpr(jrpumpmodel)},
              jrqty       = {sqlexpr(jrqty)},
              jrpmpval    = {sqlexpr(jrpmpval)},
              jrmndtval   = {sqlexpr(jrmndtval)},
              jrinsp      = {sqlexpr(jrinsp)} ,
              jrdrvval    = {sqlexpr(jrdrvval)},
              jrcondeldt  = {sqlexpr(jrcondeldt)},
              jrindreledt = {sqlexpr(jrindreledt)},
              user_id     = user_name(),
              systime     = getdate()
           where jobreg.jrjobno = {sqlexpr(jrjobno)}
    sqlend

    if ( mychannel:errors is not NULL )
    begin
        mssg = "Record Could Not Be Updated"
        callform msgbox_1()
        call ppljobregcls
        submit on mychannel
        sqlbegin
            rollback transaction
        sqlend
        disconnect mychannel
        return
    end
    
    if utag="P"
    begin
    submit  on mychannel
    sqlbegin
       delete jobcomp
       where jcjobno = "{jrjobno}"

       delete from jobplndesp
       where jpjobno = "{jrjobno}"

       delete from jobactdesp
       where jdjobno = "{jrjobno}"
    sqlend
    end

    submit  on mychannel
    sqlbegin
       delete from jobchng
       where chjobno = "{jrjobno}"
    sqlend

    if sflag = 1
    begin
        submit on mychannel
        sqlbegin
            delete from jobscrpdet
            where jscjobno = "{jrjobno}"
            insert into jobscrpdet
            select * from tmpjobscrpdet
        sqlend
    end

    if utag="P"
    begin
    submit  on mychannel
    sqlbegin
       insert into jobcomp
       select * from tmpjobcomp

       insert into jobplndesp
       select * from tmpjobpln

       insert into jobactdesp
       select * from tmpjobdesp
    sqlend
    end

    submit on mychannel
    sqlbegin
       insert into jobchng
       select * from tmpjobchng
    sqlend


    if ( mychannel:errors is NULL )
    begin
        mssg = "Record Successfully Updated"
        callform msgbox_1()
        submit on mychannel
        sqlbegin
            commit transaction
        sqlend
        call ppljobregcls_1()
        positionform jrjobno
    end
    else
    begin
        submit on mychannel
        sqlbegin
            rollback transaction
        sqlend

        mssg = "Updation Failure! Retry ..."
        callform msgbox_1()
    end

    disconnect mychannel

    return
end
------------


ppljrdel_1 (fpl)
++++++++++++
create apt proc ppljrdel_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)
    global variable rem char(60)
    global variable cnf char(1)

    variable amndno smallint

    channel mychannel

    callform strconf_1
    if cnf="N"
        return

    if ( mychannel:open = FALSE )
       connect mychannel
    mychannel:errors = NULL

    submit on mychannel
    sqlbegin
       begin transaction
    sqlend

    submit on mychannel
    sqlbegin
        delete jobreg
        where jobreg.jrjobno = {sqlexpr(jrjobno)}
    sqlend

    if (mychannel:errors is NULL)
    submit on mychannel
    sqlbegin
       delete jobcomp
       where jcjobno = "{jrjobno}"
    sqlend

    if (mychannel:errors is NULL)
    submit on mychannel
    sqlbegin
       delete from jobplndesp
       where jpjobno = "{jrjobno}"
    sqlend

    if (mychannel:errors is NULL)
    submit on mychannel
    sqlbegin
       delete from jobactdesp
       where jdjobno = "{jrjobno}"
    sqlend

    if ( mychannel:errors is not NULL )
    begin
        mssg = "Record Could Not Be Deleted"
        submit on mychannel
        sqlbegin
            rollback transaction
        sqlend
        callform msgbox_1()
        return
    end
    else
    begin
        mssg = "Record Deleted Successfully"
        submit on mychannel
        sqlbegin
            commit transaction
        sqlend
        callform msgbox_1
        call ppljobregcls_1
    end

    disconnect mychannel
    return
end
------------


ppljobregcls_1 (fpl)
++++++++++++
create apt proc ppljobregcls_1() as
begin
    useform ppljobreg_1
    channel mychannel3

    foreach f in $curform
    begin
          if ( f:datatype = 50 )
             f = f:default
          else
             f = NULL
          f:modified = FALSE
    end

    save form
    foreach j in $curform
    begin
        positionform j
        break
    end

    jrqty    :visible = TRUE
    jrdrvval :visible = TRUE
    jrmndtval:visible = TRUE
    jrpmpval :visible = TRUE
    jrpmpval :visible = TRUE

    lstsprsl : visible = FALSE

    if (mychannel3:open = FALSE)
     connect mychannel3

    submit on mychannel3
    sqlbegin
/*      if ((select count(*) from sysobjects where name = "tmpjobreg" */
/*                  and type = "U") > 0) */
/*          drop table tmpjobreg */
    sqlend


    if (mychannel3:open = TRUE)
        disconnect mychannel3
    
    call ppljobregentry_1()
        positionform jrjobno

    return
end
------------


ppljramnd_1 (fpl)
++++++++++++
create apt proc ppljramnd_1() as
begin
    useform ppljobreg_1
    global variable mssg char(30)
    global variable rem char(60)
    variable amndno smallint
    variable yflag int
    channel mychannel

    if ( mychannel:open = FALSE )
       connect mychannel
    mychannel:errors = NULL

    submit local on mychannel
    sqlbegin
/* ACTIVE */
/*     if ((select count(*) from tmpjobreg */
/*         where jrjobno      = "{jrjobno}"      and */
/*             jrslno         = {jrslno}         and */
/*             jrclientcd     = "{jrclientcd}"   and */
/*             jrqtnno        = "{jrqtnno}"      and */
/*             jrqtndt        = "{jrqtndt}"      and */
/*             jrordno        = "{jrordno}"      and */
/*             jrorddt        = "{jrorddt}"      and */
/*             jrcdsrecvdt    = "{jrcdsrecvdt}"  and */
/*             jrdestin       = "{jrdestin}"     and */
/*             jrdesmode      = "{jrdesmode}"    and */
/*             jrotsrecvdt    = "{jrotsrecvdt}"  and */
/*             jrbmrecvdt     = "{jrbmrecvdt}"   and */
/*             jrpumpcat      = {jrpumpcat}      and */
/*             jrindreledt    = "{jrindreledt}"  and */
/*             jrpumpmodel    = "{jrpumpmodel}"  and */
/*             jrqty          = {jrqty}          and */
/*             jrpmpval       = {jrpmpval}       and */
/*             jrmndtval      = {jrmndtval}      and */
/*             jrinsp         = "{jrinsp}"       and */
/*             jrdrvval       = {jrdrvval}       and */
/*             jrcondeldt     = "{jrcondeldt}"   and */
/*             jrconsdet      = "{jrconsdet}"    and */
/*             jrordplby      = "{jrordplby}"    and */
/*             jramdno        = {jramdno}        and */
/*             jramddt        = "{jramddt}") = 1) */
/*             select yflag = 1 */
/*         else */
/*             select yflag = 0 */
    sqlend

    disconnect mychannel

    if yflag = 1
    begin
        mssg = "NO CHANGE DONE ..."
        callform msgbox_1
        return
    end

    callform ppljobrem_1

if (mychannel:open = FALSE)
     connect mychannel

    submit on mychannel
    sqlbegin
       begin transaction
    sqlend

    if ( mychannel:errors is NULL )
    submit local on mychannel
    sqlbegin
        select amndno = goamndno,gojobno
        from garbageord
        where gojobno = "{jrjobno}"
        having goamndno = max(goamndno)
    sqlend

    if mychannel:count = 0
        amndno = 1
    else
        amndno = amndno + 1

    if (mychannel:errors is NULL)  /* Update Job Register with new rec */
    submit on mychannel
    sqlbegin
       update jobreg
          set jrclientcd  = {sqlexpr(jrclientcd)},
              jrqtnno     = {sqlexpr(jrqtnno)},
              jrqtndt     = {sqlexpr(jrqtndt)},
              jramdno     = {amndno},
              jramddt     = getdate(),
              jrordno     = {sqlexpr(jrordno)},
              jrorddt     = {sqlexpr(jrorddt)},
              jrcdsrecvdt = {sqlexpr(jrcdsrecvdt)},
              jrconsdet   = "{jrconsdet}",
              jrdestin    = {sqlexpr(jrdestin)},
              jrdesmode   = {sqlexpr(jrdesmode)},
              jrotsrecvdt = {sqlexpr(jrotsrecvdt)},
              jrpumpcat   = {sqlexpr(jrpumpcat)},
              jrqty       = {sqlexpr(jrqty)},
              jrpmpval    = {sqlexpr(jrpmpval)},
              jrmndtval   = {sqlexpr(jrmndtval)},
              jrinsp      = {sqlexpr(jrinsp)} ,
              jrdrvval    = {sqlexpr(jrdrvval)},
              jrcondeldt  = {sqlexpr(jrcondeldt)},
              user_id     = user_name(),
              systime     = getdate()
           where jobreg.jrjobno = {sqlexpr(jrjobno)}
    sqlend

    if ( mychannel:errors is NULL ) /* Deleting Current Job Comp Det */
    submit on mychannel
    sqlbegin
       delete jobcomp
       where jcjobno = "{jrjobno}"
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
       delete from jobplndesp
       where jpjobno = "{jrjobno}"
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
       delete from jobactdesp
       where jdjobno = "{jrjobno}"
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
        insert into jobcomp
        select * from tmpjobcomp
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
        insert into jobplndesp
        select * from tmpjobpln
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
        insert into jobactdesp
        select * from tmpjobdesp
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
        insert garbageord(goamndno,gojobno)
        values ({amndno},"{jrjobno}")
    sqlend

    if ( mychannel:errors is NULL )
    submit on mychannel
    sqlbegin
        update garbageord 
        set goflag      = tmpjobreg.jrflag,
            goslno      = tmpjobreg.jrslno,
            goclientcd  = tmpjobreg.jrclientcd,
            goconsdet   = tmpjobreg.jrconsdet,
            goordno     = tmpjobreg.jrordno,
            goorddt     = tmpjobreg.jrorddt,
            gocdsrecvdt = tmpjobreg.jrcdsrecvdt,
            godestin    = tmpjobreg.jrdestin,
            godesmode   = tmpjobreg.jrdesmode,
            gootsrecvdt = tmpjobreg.jrotsrecvdt,
            gobmrecvdt  = tmpjobreg.jrbmrecvdt,
            gopumpcat   = tmpjobreg.jrpumpcat,
            goindreledt = tmpjobreg.jrindreledt,
            gopumpmodel = tmpjobreg.jrpumpmodel,
            goqty       = tmpjobreg.jrqty,
            gopmpval    = tmpjobreg.jrpmpval,
            gomndtval   = tmpjobreg.jrmndtval,
            godrvval    = tmpjobreg.jrdrvval,
            gocondeldt  = tmpjobreg.jrcondeldt,
            goamnd      = tmpjobreg.jramnd,
            gorem       = "{rem}",
            user_id     = tmpjobreg.user_id,
            systime     = tmpjobreg.systime
        from    tmpjobreg
        where   goamndno    = {amndno} and
                gojobno     = "{jrjobno}"
    sqlend

    if ( mychannel:errors is NULL )
    begin
        mssg = "Record Successfully Amended"
        callform msgbox_1()
        submit on mychannel
        sqlbegin
            commit transaction
        sqlend

        if (mychannel:open = TRUE)
            disconnect mychannel

        call ppljobregcls_1()
    end
    else
    begin
        submit on mychannel
        sqlbegin
            rollback transaction
        sqlend

        if (mychannel:open = TRUE)
            disconnect mychannel

        mssg = "Amendment Failure! Retry ..."
        callform msgbox_1
    end

    return
end
------------


ppljobregprn_1 (fpl)
++++++++++++
create apt proc ppljobregprn_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)

    channel mychannel
    
    variable  sqlquery char(500)

    if jobyear is NULL and fromdt is NULL
        return 

    if mychannel:open = FALSE
        connect mychannel

    submit on mychannel
    sqlbegin
/*      if exists ( select * from sysobjects */
/*                  where name = "tmprepjobreg" and type = "U") */
/*          drop table tmprepjobreg */
/*      if exists ( select * from sysobjects */
/*                  where name = "tmprepjobreg2" and type = "U") */
/*          drop table tmprepjobreg2 */
    sqlend

    if fromdt is NOT NULL
    begin
        submit on mychannel
        sqlbegin

            SELECT fjobreghead = "JOB REGISTER FROM " +
                  rtrim(convert(char(2),datepart(dd,"{fromdt}")))+ "/" + 
                  rtrim(convert(char(2),datepart(mm,"{fromdt}")))+ "/" + 
                  convert(char(4),datepart(yy,"{fromdt}")) + " TO " +
                  rtrim(convert(char(2),datepart(dd,"{todt}")))+ "/" + 
                  rtrim(convert(char(2),datepart(mm,"{todt}")))+ "/" + 
                  convert(char(4),datepart(yy,"{todt}"))
        sqlend

        submit on mychannel
        sqlbegin
            SELECT  jrjobno,jrslno,jramdno,jrclientcd,jrordno,
                jrcondeldt,jrconsdet,jrorddt,jrpumpmodel,jrpumpcat,jrcdsrecvdt,
                    jrdestin,jrotsrecvdt,jrbmrecvdt,jrdesmode,
                    jrindreledt,jrpmpval,jrtotdespval=convert(float,0)
            INTO    tmprepjobreg
            FROM    jobreg
            WHERE   systime between "{fromdt}" and "{todt}"
        sqlend
    end
    else
    begin

        submit on mychannel
        sqlbegin
            select fjobreghead = "      JOB REGISTER FOR ["+
                        upper("{jobyear}")+"] JOBS" 
        sqlend

        submit on mychannel
        sqlbegin
            SELECT  jrjobno,jrslno,jramdno,jrclientcd,jrordno,
                jrcondeldt,jrconsdet,jrorddt,jrpumpmodel,jrpumpcat,jrcdsrecvdt,
                    jrdestin,jrotsrecvdt,jrbmrecvdt,jrdesmode,
                    jrindreledt, jrpmpval,jrtotdespval=convert(float,0)
            INTO    tmprepjobreg
            FROM    jobreg
            WHERE   substring(jrjobno,2,2) = upper("{jobyear}")
            
        sqlend
    end
    
    if mychannel:errors is NULL
    begin
        submit on mychannel
        sqlbegin
            select jcjobno,totdesp = sum(jcprtval) 
            into tmprepjobreg2
            from jobcomp,tmprepjobreg
            where jobcomp.jcjobno = tmprepjobreg.jrjobno
            group by jcjobno
        sqlend
    end

    if mychannel:errors is NULL
    begin
        submit on mychannel
        sqlbegin
            update tmprepjobreg
            set jrtotdespval = totdesp
            from tmprepjobreg2 a, tmprepjobreg b
            where a.jcjobno = b.jrjobno
        sqlend
    end

    if mychannel:errors is NOT NULL
    begin
        mssg = "ERROR IN CREATING REPORT..."
        callform msgbox_1
        jobyear = NULL    /* This ensures that the report is not printed */
        fromdt  = NULL
    end

    return
end
------------


ppljobregscr_1 (fpl)
++++++++++++
create apt proc ppljobregscr_1() as
begin
    useform ppljobreg_1

    variable from_ln int
    variable to_ln int

    if jobyear is NULL and fromdt is NULL
        return

    system "runrw wpilppc.plan1.ppljobreg -U $LOGNAME -P $PASSWORD -W 132 -H 72 -o report.jobreg -V jobreghead \"%\"" ,fjobreghead

    if frompg is null or topg is null
    begin
        system "ted -r report.jobreg"
        system "tput clear"
        system "echo PRESS [CTRL]W TO REFREASH SCREEN"
        system "rm report.jobreg"
        return
    end

    if frompg > topg  or frompg < 1
    begin   
        print "Invalid page range "
        system "rm report.jobreg"
        return
    end

    to_ln = topg * 72
    from_ln = ((frompg - 1) * 72) + 1

    system "head -\"%\" report.jobreg > rep.jobreg",to_ln
    system "tail +\"%\" rep.jobreg > rep1.jobreg",from_ln 
    system "ted -r rep1.jobreg"
    system "tput clear"
    system "echo PRESS [CTRL]W TO REFREASH SCREEN"
    system "rm report.jobreg"
    system "rm rep.jobreg"
    system "rm rep1.jobreg" 
    return
end
------------


ppljobregprn_1 (fpl)
++++++++++++
create apt proc ppljobregprn_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)

    channel mychannel
    
    variable  sqlquery char(500)

    if jobyear is NULL and fromdt is NULL
        return 

    if mychannel:open = FALSE
        connect mychannel

    submit on mychannel
    sqlbegin
/*      if exists ( select * from sysobjects */
/*                  where name = "tmprepjobreg" and type = "U") */
/*          drop table tmprepjobreg */
/*      if exists ( select * from sysobjects */
/*                  where name = "tmprepjobreg2" and type = "U") */
/*          drop table tmprepjobreg2 */
    sqlend

    if fromdt is NOT NULL
    begin
        submit on mychannel
        sqlbegin

            SELECT fjobreghead = "JOB REGISTER FROM " +
                  rtrim(convert(char(2),datepart(dd,"{fromdt}")))+ "/" + 
                  rtrim(convert(char(2),datepart(mm,"{fromdt}")))+ "/" + 
                  convert(char(4),datepart(yy,"{fromdt}")) + " TO " +
                  rtrim(convert(char(2),datepart(dd,"{todt}")))+ "/" + 
                  rtrim(convert(char(2),datepart(mm,"{todt}")))+ "/" + 
                  convert(char(4),datepart(yy,"{todt}"))
        sqlend

        submit on mychannel
        sqlbegin
            SELECT  jrjobno,jrslno,jramdno,jrclientcd,jrordno,
                jrcondeldt,jrconsdet,jrorddt,jrpumpmodel,jrpumpcat,jrcdsrecvdt,
                    jrdestin,jrotsrecvdt,jrbmrecvdt,jrdesmode,
                    jrindreledt,jrpmpval,jrtotdespval=convert(float,0)
            INTO    tmprepjobreg
            FROM    jobreg
            WHERE   systime between "{fromdt}" and "{todt}"
        sqlend
    end
    else
    begin

        submit on mychannel
        sqlbegin
            select fjobreghead = "      JOB REGISTER FOR ["+
                        upper("{jobyear}")+"] JOBS" 
        sqlend

        submit on mychannel
        sqlbegin
            SELECT  jrjobno,jrslno,jramdno,jrclientcd,jrordno,
                jrcondeldt,jrconsdet,jrorddt,jrpumpmodel,jrpumpcat,jrcdsrecvdt,
                    jrdestin,jrotsrecvdt,jrbmrecvdt,jrdesmode,
                    jrindreledt, jrpmpval,jrtotdespval=convert(float,0)
            INTO    tmprepjobreg
            FROM    jobreg
            WHERE   substring(jrjobno,2,2) = upper("{jobyear}")
            
        sqlend
    end
    
    if mychannel:errors is NULL
    begin
        submit on mychannel
        sqlbegin
            select jcjobno,totdesp = sum(jcprtval) 
            into tmprepjobreg2
            from jobcomp,tmprepjobreg
            where jobcomp.jcjobno = tmprepjobreg.jrjobno
            group by jcjobno
        sqlend
    end

    if mychannel:errors is NULL
    begin
        submit on mychannel
        sqlbegin
            update tmprepjobreg
            set jrtotdespval = totdesp
            from tmprepjobreg2 a, tmprepjobreg b
            where a.jcjobno = b.jrjobno
        sqlend
    end

    if mychannel:errors is NOT NULL
    begin
        mssg = "ERROR IN CREATING REPORT..."
        callform msgbox_1
        jobyear = NULL    /* This ensures that the report is not printed */
        fromdt  = NULL
    end

    return
end
------------


ppljobregprint_1 (fpl)
++++++++++++
create apt proc ppljobregprint_1() as
begin
    useform ppljobreg_1

    variable from_ln int
    variable to_ln int

    if jobyear is NULL and fromdt is NULL
        return

    system "runrw wpilppc.plan1.ppljobreg -U $LOGNAME -P $PASSWORD -W 132 -H 72 -o report.jobreg -V jobreghead \"%\"" ,fjobreghead

    if frompg is null or topg is null
    begin
        system "lcpr2  report.jobreg"
        system "tput clear"
        system "echo PRESS [CTRL]W TO REFREASH SCREEN"
        system "rm report.jobreg"
        return
    end

    if frompg > topg  or frompg < 1
    begin   
        print "Invalid page range "
        system "rm report.jobreg"
        return
    end

    to_ln = topg * 72
    from_ln = ((frompg - 1) * 72) + 1

    system "head -\"%\" report.jobreg > rep.jobreg",to_ln
    system "tail +\"%\" rep.jobreg > rep1.jobreg",from_ln 
    system "lcpr2  rep1.jobreg"
    system "tput clear"
    system "echo PRESS [CTRL]W TO REFREASH SCREEN"
    system "rm report.jobreg"
    system "rm rep.jobreg"
    system "rm rep1.jobreg" 
    return
end
------------


ppljrjobnoent_1 (fpl)
++++++++++++
create apt proc ppljrjobnoent_1() as
begin
    useform ppljobreg_1
      if $curfield is NULL
         return
    save field $curfield
        
    return
end
------------


ppljobregjobnoext_1 (fpl)
++++++++++++
create apt proc ppljobregjobnoext_1() as
begin
    useform ppljobreg_1
    global variable mssg char(30)
    global variable jobno char(13)          /* Job No */
    global variable qty tinyint             /* Total number of pumps */
    global variable pmprate float           /* Rate of each pump */
    global variable pmpval float            /* Value of Pumps */
    global variable gjrorddt datetime       /* Order Date     */
    global variable bmdt datetime           /* B/M Recv. Dt.  */
    global variable drvrate float           /* Drive Value */
    global variable sprval float    /* Total Value for SPARES job */
    global variable mndtval float           /* Mandatory Spares Value */
    global variable utag  char(1) /* P for planning, C for Contracts */
    global variable sflag bit     /* 1 for Spares , else 0  */
    global variable pflag bit    
    global variable mflag bit   
    global variable jcflag bit
    global variable jpflag bit
    global variable jdflag bit
    variable slno int
    variable firstpump  char(4)      /* First Pump Number */
    variable lastpump   char(4)      /* Last  Pump Number */
    variable  merrflag int    
    variable regflg char(1)

    channel mychannel

    if ($curfield is NULL)               /* Cannot leave Job Number Blank */
    begin
        positionform $curfield
        return
    end

    if ( mychannel:open = FALSE )
       connect mychannel
       submit local on mychannel
       sqlbegin
       select regflg = substring("{$curfield}",4,1) 
       sqlend

   disconnect mychannel

   if regflg = " " or regflg = "0" or regflg > "9"
    begin
        positionform $curfield
        return
    end

    if ($curfield = $curfield:savedvalue)  /* If no change - Don't process */
        return
    
    $curfield  = upper($curfield)   /* Newly entered JobNo To Global Variable */
    jobno      = $curfield        
    gjrorddt = NULL             /* Order Date */
    jcflag = 1
    jpflag = 1
    jdflag = 1

    pflag = 0
    mflag = 0
    sflag = 0

    if substring($curfield,13,1) = "S"    /* Spares Job */
    begin

        jrqty = NULL
        qty   = NULL

        jrqty:visible     = FALSE
        jrmndtval:visible = FALSE
        jrpmpval:visible  = TRUE
        jrslno:visible    = TRUE
        lstsprsl:visible  = TRUE
        positionform jrslno  /* Enter Spares Serial No */ 

        sflag = 1
        mflag = 0
        pflag = 0

    end
    
    if (utag="C" and sflag=0)
    begin
        mssg="U are not Authorised for PUMPS"
        callform msgbox_1
        $curfield = NULL
        positionform $curfield
        return
    end

    if ( mychannel:open = FALSE )
       connect mychannel

    submit on mychannel     /* FIND JOB DETAILS IN JOB REGISTER */
    sqlbegin
       select * from   jobreg where  jrjobno = "{jrjobno}" 
    sqlend

    if mychannel:count > 0 
    begin

        submit on mychannel   /* FIND QUOTATION No. AND DATE from bomh */
        sqlbegin
          select clntnam from client where clntcd = "{jrclientcd}"

          select jrqtnno=bmhquotno,jrqtndt=bmhquotdt
          from   bomh
          where  bmhjobno="{$curfield}"
        sqlend
        
                   /* FOR VERTICAL PUMP */
                   /* HORIZONTAL PUMP */


        if jrpumpmodel is NOT NULL    /* Break Up for Pump Model */
        begin
           if substring(jrjobno,1,1) = "H"  
           begin
                pmodel1 = substring(jrpumpmodel,1,2)
                pmodel2 = substring(jrpumpmodel,3,2)
                pmodel3 = substring(jrpumpmodel,5,7)
           end
           else      
           begin
                pmodel1 = substring(jrpumpmodel,1,2)
                pmodel2 = substring(jrpumpmodel,4,2)
                pmodel3 = substring(jrpumpmodel,7,5)
           end
        end

        if jramdno is NULL
        begin
            jramdno:visible = FALSE
            jramddt:visible = FALSE
        end
        else
        begin
            jramdno:visible = TRUE
            jramddt:visible = TRUE
        end

        qty     = jrqty
        bmdt    = jrbmrecvdt
        pmpval  = jrpmpval 
        pmprate = jrpmpval / jrqty
        drvrate = jrdrvval / jrqty

        if (jrqty is not NULL) 
            pflag = 1

        /* Mandatory Value */

        mndtval = jrmndtval
        if mndtval is NULL
            mndtval = 0

        /* Total Value for the Job */
        if sflag = 1
            sprval = jrpmpval
        else
            pmpval = jrpmpval 


        submit  on mychannel
        sqlbegin
/*          if ((select count(*) from sysobjects */
/*              where name = "tmpjobreg" and type = "U" and uid in( select */
/*              uid from sysusers where name=user_name() ))  = 1) */
/*              drop table ..tmpjobreg */
        sqlend


        submit  on mychannel
        sqlbegin
            select * into tmpjobreg
            from   jobreg
            where  jobreg.jrjobno = "{jrjobno}" 
        sqlend

        ins:active = FALSE
        upd:active = TRUE

        if utag!="C"
            del:active = TRUE
    end
    else   
    begin
        jramdno:visible = FALSE
        jramddt:visible = FALSE

        ins:active = TRUE
        upd:active = FALSE
        del:active = FALSE
        
        if sflag = 0        /* No check for Spares job */
        begin
            
            submit local on mychannel
            sqlbegin
                select firstpump = rtrim(ltrim(substring("{jrjobno}",4,4)))
                select lastpump  = rtrim(ltrim(substring("{jrjobno}",8,4)))
            sqlend

            merrflag = 0
            
            if lastpump is NULL
                lastpump = firstpump
            
            if firstpump is NOT NULL
            begin
            submit local on mychannel
            sqlbegin
/*    ACTIVE        if (char_length("{firstpump}") < 4) */
/*                         select merrflag = 1 */
            sqlend
            end
            else
                merrflag = 1

            if merrflag = 0
            begin
            submit nomsg[0-16] on mychannel
            sqlbegin
                select jrqty = ( convert(int,"{lastpump}") 
                               - convert(int,"{firstpump}") ) + 1
            sqlend
            end

            if jrqty <=0 or merrflag = 1 or mychannel:errors is NOT NULL
            begin
                mssg = "Invalid Job No."
                if (mychannel:open = TRUE)
                   disconnect mychannel
                callform msgbox_1
                $curfield = NULL
                jrqty     = NULL
                positionform $curfield
                return
            end
            else
            begin
                submit on mychannel
                sqlbegin
                    select jrjobno = substring("{jrjobno}",1,3) + 
                            "{firstpump}" + "{lastpump}" + 
                            substring("{jrjobno}",12,2)
                sqlend
            end

        end
    end
    
    submit  on mychannel
    sqlbegin
/*      if exists(select * from sysobjects */
/*                  where name = "tmpjobcomp" and type = "U" and uid in(select */
/*                   uid from sysusers where name=user_name() )) */
/*          drop table ..tmpjobcomp */
/* */
/*      if exists(select * from sysobjects */
/*                  where name = "tmpjobpln" and type = "U" and uid in(select */
/*                   uid from sysusers where name=user_name() )) */
/*          drop table ..tmpjobpln */
/* */
/*      if  exists(select * from sysobjects */
/*                  where name = "tmpjobdesp" and type = "U" and uid in(select */
/*                   uid from sysusers where name=user_name() )) */
/*          drop table ..tmpjobdesp */
/* */
/*      if  exists(select * from sysobjects */
/*                  where name = "tmpjobchng" and type = "U" and uid in (select */
/*                   uid from sysusers where name=user_name() )) */
/*          drop table ..tmpjobchng */
/* */
/*      if  exists(select * from sysobjects */
/*                  where name ="tmpjobscrpdet" and type="U" and uid in (select */
/*                   uid from sysusers where name=user_name() )) */
/*          drop table ..tmpjobscrpdet */

    sqlend

    if sflag = 1          /* Spares    */
    begin
        submit  on mychannel
        sqlbegin
/*          if  exists(select * from sysobjects */
/*                  where name ="tmpjobscrpdet" and type ="U" and uid in (select                    uid from sysusers where name=user_name() )) */
/*              drop table ..tmpjobscrpdet */
        sqlend

        submit nomsg[0-16] on mychannel
        sqlbegin
            select * into  tmpjobscrpdet from jobscrpdet
            where jscjobno = "{jrjobno}"
        sqlend
    end

    if utag="P"
    begin
    submit  on mychannel
    sqlbegin

        /*  Job Despatch Schedule  */
        select *
        into  tmpjobpln from jobplndesp
        where jpjobno = "{jrjobno}"
        order by jpyr,jpmth

        /*  Actual Completion Details */
        select *
        into  tmpjobcomp from jobcomp
        where jcjobno = "{jrjobno}"

        /* Job Actual Despatch      */
        select *
        into  tmpjobdesp from jobactdesp
        where jdjobno = "{jrjobno}"
     
    sqlend
    end

    submit  on mychannel
    sqlbegin
        /* Job Change Order Details */
        select *
        into  tmpjobchng from jobchng
        where chjobno = "{jrjobno}"

    sqlend

if (mychannel:open = TRUE)
    disconnect mychannel

    return
end
------------


jobregclntcdentr_1 (fpl)
++++++++++++
create apt proc jobregclntcdentr_1() as
begin
    useform ppljobreg_1
    if jrjobno IS NULL
     positionform jrjobno
    return
end
------------


ppljobregclcdexit_1 (fpl)
++++++++++++
create apt proc ppljobregclcdexit_1() as
begin
    useform ppljobreg_1

    global variable utag char(1) 
    global variable mssg char(30)

    channel mychannel

    if ( mychannel:open = FALSE )
       connect mychannel

        if jrjobno IS NULL
         begin
         positionform jrjobno
        return
        end

    if ( jrclientcd is NULL )
    begin
        positionform $curfield
       return
    end

    $curfield =upper($curfield)
    submit  on mychannel
    sqlbegin
          select clntnam from client where clntcd = "{jrclientcd}"
    sqlend

    if ( mychannel:count = 0 )
       begin
          mssg = "Invalid Client Code ... "
          callform msgbox_1()
          positionform $curfield
          return
       end

    if utag="P"
        positionform jrordno

    disconnect mychannel    
    return
end
------------


ppljobregjrordnoext_1 (fpl)
++++++++++++
create apt proc ppljobregjrordnoext_1() as
begin
    useform ppljobreg_1
    global variable utag char(1)
    global variable sflag bit   

    $curfield = upper($curfield)

    if $curform:backtab = TRUE
        if utag="P"
            positionform  jrclientcd

    return
end
------------


ppljrorddtext_1 (fpl)
++++++++++++
create apt proc ppljrorddtext_1() as
begin
    useform ppljobreg_1
    global variable gjrorddt datetime
    gjrorddt = $curfield

    return
end
------------


pplcdsent_1 (fpl)
++++++++++++
create apt proc pplcdsent_1() as
begin
    useform ppljobreg_1
    global variable utag char(1)

    if utag="C"
        positionform jrdestin

    return
end
------------


ppljrcdsrecvdtext_1 (fpl)
++++++++++++
create apt proc ppljrcdsrecvdtext_1() as
begin
    useform ppljobreg_1
   
    global variable mssg char(30)
   
    if $curfield is NULL
        return

    if $curfield < jrorddt
    begin
        mssg = "Error ! Smaller than Order Dt"
        callform msgbox_1
        $curfield = $curfield:savedvalue
        positionform $curfield
    end

    return
end
------------


ppljobregjrdestinext_1 (fpl)
++++++++++++
create apt proc ppljobregjrdestinext_1() as
begin
    useform ppljobreg_1
    global variable utag char(1)

    $curfield = upper($curfield)

    if $curform:backtab=TRUE
        if utag="C"
            positionform jrorddt

    return
end
------------


ppljrdesmodeent_1 (fpl)
++++++++++++
create apt proc ppljrdesmodeent_1() as
begin
    useform ppljobreg_1
    save field $curfield
    return
end
------------


ppljrdesmodeext_1 (fpl)
++++++++++++
create apt proc ppljrdesmodeext_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)

    channel mychannel 

    if $curfield is NULL or $curfield:savedvalue = $curfield
         return
         $curfield = upper($curfield)

    if (mychannel:open = FALSE)
         connect mychannel

    submit on mychannel
    sqlbegin
        select * from desmodemst where dmno = "{$curfield}"
    sqlend

    if (mychannel:count = 0)
    begin
        mssg = "Invalid Input ..."
        callform msgbox_1
        positionform $curfield
        $curfield = NULL
    end
    
    disconnect mychannel

    return
end
------------


ppljrbktabset_1 (fpl)
++++++++++++
create apt proc ppljrbktabset_1() as
begin
    useform ppljobreg_1
    
    global variable sflag bit

    if sflag = 1     /* for Spares no check */
        return

    if $curform:backtab = FALSE
        bkflag = 0
    else
        bkflag = 1
    return
end
------------


ppljrcnddtext_1 (fpl)
++++++++++++
create apt proc ppljrcnddtext_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)

    if $curfield is NULL
        return

    if ( $curfield <= jrorddt )
    begin
        mssg = "ERROR ! Smaller than order dt"
        callform msgbox_1
        $curfield = NULL
        positionform $curfield
    end

    return
end
------------


ppljrotsrecvdtent_1 (fpl)
++++++++++++
create apt proc ppljrotsrecvdtent_1() as
begin
    useform ppljobreg_1
    global variable utag char(1)

    if utag="C"
        positionform  jrdrvval

/*
    save field $curfield

    if (jrorddt is NULL)
    begin
         if (bkflag = 0)
             positionform jrbmrecvdt
         else
             positionform jrcondeldt
    end
*/
    return
end
------------


ppljrbktabset_1 (fpl)
++++++++++++
create apt proc ppljrbktabset_1() as
begin
    useform ppljobreg_1
    
    global variable sflag bit

    if sflag = 1     /* for Spares no check */
        return

    if $curform:backtab = FALSE
        bkflag = 0
    else
        bkflag = 1
    return
end
------------


ppljrotsrecvdtext_1 (fpl)
++++++++++++
create apt proc ppljrotsrecvdtext_1() as
begin
    useform ppljobreg_1
   
    global variable mssg char(30)
    global variable sflag bit
   
    if $curfield is NULL
    begin
        if sflag = 0         /* for spares no check for BM Recv dt */
            jrbmrecvdt  = NULL
        jrindreledt = NULL
        return
    end

    if $curfield < jrorddt
    begin
        mssg = "Error ! Smaller than Order Dt"
        callform msgbox_1
        $curfield = NULL
        positionform $curfield
    end

    return
end
------------


ppljrbmrecvdtent_1 (fpl)
++++++++++++
create apt proc ppljrbmrecvdtent_1() as
begin
    useform ppljobreg_1
        

    global variable sflag bit

    if sflag = 1     /* for Spares no check */
        return

    save field $curfield

    if (jrotsrecvdt is NULL)
         if (bkflag = 0)
             positionform jrpumpmodel
         else
             positionform jrotsrecvdt

    return
end
------------


ppljrbktabset_1 (fpl)
++++++++++++
create apt proc ppljrbktabset_1() as
begin
    useform ppljobreg_1
    
    global variable sflag bit

    if sflag = 1     /* for Spares no check */
        return

    if $curform:backtab = FALSE
        bkflag = 0
    else
        bkflag = 1
    return
end
------------


ppljrbmrecvdtext_1 (fpl)
++++++++++++
create apt proc ppljrbmrecvdtext_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)
    global variable bmdt datetime
    global variable sflag bit

    if $curfield is NULL
    begin
        jrindreledt = NULL
        return
    end


    if sflag = 1     /* for Spares no check */
        return

    if ($curfield <  jrotsrecvdt )
    begin
        mssg = "ERROR ! Smaller than OTS recv dt"
        callform msgbox_1
        $curfield = $curfield:savedvalue
        positionform $curfield 
        return
    end

    bmdt = $curfield
    return
end
------------


ppljrbktabset_1 (fpl)
++++++++++++
create apt proc ppljrbktabset_1() as
begin
    useform ppljobreg_1
    
    global variable sflag bit

    if sflag = 1     /* for Spares no check */
        return

    if $curform:backtab = FALSE
        bkflag = 0
    else
        bkflag = 1
    return
end
------------


jobregmodlentr_1 (fpl)
++++++++++++
create apt proc jobregmodlentr_1() as
begin
    useform ppljobreg_1
    if substring(jrjobno,13,1)="S"
       positionform jrpumpcat
    return
end
------------


pplpmodel1_1 (fpl)
++++++++++++
create apt proc pplpmodel1_1() as
begin
    useform ppljobreg_1
    
    global variable mssg char(30)

    variable mpmodel1   char(2)
    variable mpmodel2   char(2)
    variable mpmodel3   char(7)

    variable lpmodel1   int

    channel mychannel 
    
    if substring(jrjobno,1,1) = "H"     /* FOR HORIZENTAL PUMP */
         jrpumpmodel = pmodel1 + pmodel2 + pmodel3
    else
    begin                               /* FOR VERTICAL PUMP */

        if (mychannel:open = FALSE)
             connect mychannel

        if pmodel1 is NOT NULL
            submit on mychannel
            sqlbegin
                select pmodel1 = ltrim(rtrim("{pmodel1}"))
            sqlend

        if pmodel1 is NOT NULL
            submit local on mychannel
            sqlbegin
                select lpmodel1 = char_length("{pmodel1}")
            sqlend

        if (mychannel:open = TRUE)
            disconnect mychannel

        if pmodel1 is NULL
           lpmodel1 = 0
    

        pmodel1 = substring("  ",1,2-lpmodel1) + pmodel1

        jrpumpmodel = pmodel1 + "-" + pmodel2 + "-" + pmodel3

    end

    return
end
------------


pplpmodel2_1 (fpl)
++++++++++++
create apt proc pplpmodel2_1() as
begin
    useform ppljobreg_1
    
    global variable mssg char(30)

    variable mpmodel1   char(2)
    variable mpmodel2   char(2)
    variable mpmodel3   char(7)

    variable lpmodel1   int

    channel mychannel 
    
    if substring(jrjobno,1,1) = "H"     /* FOR HORIZENTAL PUMP */
         jrpumpmodel = pmodel1 + pmodel2 + pmodel3
    else
    begin                               /* FOR VERTICAL PUMP */

        if (mychannel:open = FALSE)
             connect mychannel

        if pmodel2 is NOT NULL
        submit on mychannel
        sqlbegin
            select pmodel2 = ltrim(rtrim("{pmodel2}"))
        sqlend
            
        if pmodel2 is NOT NULL
        submit local on mychannel
        sqlbegin
            select lpmodel1 = char_length("{pmodel2}")
        sqlend

        if (mychannel:open = TRUE)
            disconnect mychannel

        if pmodel2 is NULL
           lpmodel1 = 0
    

        pmodel2 = substring("  ",1,2-lpmodel1) + pmodel2

        jrpumpmodel = pmodel1 + "-" + pmodel2 + "-" + pmodel3

    end

    return
end
------------


pplpmodel3_1 (fpl)
++++++++++++
create apt proc pplpmodel3_1() as
begin
    useform ppljobreg_1
    
    variable lpmodel1   int
    
    pmodel1 = upper(pmodel1)
    pmodel2 = upper(pmodel2)
    $curfield = upper($curfield)


    if substring(jrjobno,1,1) = "H"     /* FOR HORIZENTAL PUMP */
         jrpumpmodel = pmodel1 + pmodel2 + pmodel3
    else
        jrpumpmodel = pmodel1 + "-" + pmodel2 + "-" + pmodel3


    return
end
------------


jobregcatext_1 (fpl)
++++++++++++
create apt proc jobregcatext_1() as
begin
    useform ppljobreg_1
    if $curform:backtab=TRUE
    begin
    if substring(jrjobno,13,1)="S"
       positionform jrbmrecvdt
    return
    end 
    return
end
------------


ppljrindreledtent_1 (fpl)
++++++++++++
create apt proc ppljrindreledtent_1() as
begin
    useform ppljobreg_1

    if jrbmrecvdt is NULL
       if $curform:backtab = FALSE
           positionform jrdrvval
        else
           positionform jrpumpcat

    return
end
------------


ppljrindreledtext_1 (fpl)
++++++++++++
create apt proc ppljrindreledtext_1() as
begin
    useform ppljobreg_1

    global variable mssg char(30)
    if $curfield is NULL
        return

    if ($curfield < jrbmrecvdt)
    begin
        mssg = "ERROR ! Smaller than BM recv dt"
        callform msgbox_1
        $curfield = $curfield:savedvalue
        positionform $curfield
    end
    return
end
------------


ppljobregqtyexit_1 (fpl)
++++++++++++
create apt proc ppljobregqtyexit_1() as
begin
    useform ppljobreg_1
    global variable qty tinyint
    global variable mflag bit
    global variable sflag bit
    global variable pflag bit
    global variable mssg char(30)

    qty = jrqty

    if $curfield is NULL
    begin
        mssg = "Please Enter Quantity ..."
        callform msgbox_1
    end

    return
end
------------


ppljcdrvvalentr_1 (fpl)
++++++++++++
create apt proc ppljcdrvvalentr_1() as
begin
    useform ppljobreg_1
    global variable sflag bit

    if (jrqty is NULL) and (sflag != 1)
        positionform jrqty
    return
end
------------


ppljrdrvvalext_1 (fpl)
++++++++++++
create apt proc ppljrdrvvalext_1() as
begin
    useform ppljobreg_1
    global variable drvrate float
    global variable utag char(1)

    if $curform:backtab=TRUE
        if utag="C"
            positionform jrcondeldt

    drvrate = jrdrvval / jrqty
    return
end
------------


ppljobdespvalexit_1 (fpl)
++++++++++++
create apt proc ppljobdespvalexit_1() as
begin
    useform ppljobreg_1
    global variable pmprate float
    global variable sflag bit
    global variable sprval float
    global variable pmpval float

    if sflag != 1
    begin
        pmprate = jrpmpval / jrqty
        pmpval = jrpmpval
    end
    else
        sprval = $curfield

    return
end
------------


ppljrmndtvalext_1 (fpl)
++++++++++++
create apt proc ppljrmndtvalext_1() as
begin
    useform ppljobreg_1
    global variable mndtval float
    global variable mflag bit

    mndtval = $curfield
    if mndtval is NULL
        mndtval = 0

    mflag = 1
    return
end
------------


ppljobregjrinspext_1 (fpl)
++++++++++++
create apt proc ppljobregjrinspext_1() as
begin
    useform ppljobreg_1

    $curfield = upper($curfield)

    return
end
------------


ppljrcalljp_1 (fpl)
++++++++++++
create apt proc ppljrcalljp_1() as
begin
    useform ppljobreg_1

    global variable sflag bit
    global variable utag char(1)

    global variable gjrbmrecvdt  datetime  /* BM Recv date */
    global variable gjrorddt  datetime     /* Order date */

    global variable mssg char(30)

    if utag="C"
    begin
        mssg="You are not Authorised..."
        callform msgbox_1
        return
    end

/*
    if jrorddt is NULL   /* Ord Dt not given */
    begin
        mssg = "Order Date Not Entered"
        callform msgbox_1
        return
    end
 */   
    if jrpmpval is NULL
    begin
        mssg = "Pump Value not Entered ..."
        callform msgbox_1
        return
    end

    if jrjobno is NOT NULL     
    begin
        if sflag = 0    /* Not Spares Job */
        begin
            gjrorddt = jrorddt
            callform ppljobpln_1
        end
        else
        begin
            gjrbmrecvdt = jrbmrecvdt
            if jrbmrecvdt is NULL      /* BM Recv date must for Spares */
            begin
                mssg = "B/M Recv. Date Not Entered"
                callform msgbox_1
            end
            else
               callform ppljobsprpln_1
        end
    end
    else
    begin
        mssg = "JOB Number Not Entered ..."
        callform msgbox_1
    end

    return
end
------------


ppljrcalljc_1 (fpl)
++++++++++++
create apt proc ppljrcalljc_1() as
begin
    useform ppljobreg_1

    global variable jcflag bit
    global variable sflag bit
    global variable utag char(1)
    global variable mssg char(30)

    channel mychannel 

    if utag="C"
    begin
        mssg="You are not Authorised ..."
        callform msgbox_1
        return
    end

    /*
    if jrorddt is NULL or jrbmrecvdt is NULL /* Ord Dt or BM Dt not given */
    begin
        mssg = "Order Dt/ BM recv.Dt Not Entered"
        callform msgbox_1
        return
    end
    */

    if jrbmrecvdt is NULL /* BM Dt not given */
    begin
        mssg = "BM recv.Dt Not Entered"
        callform msgbox_1
        return
    end
    
    if (mychannel:open = FALSE)
         connect mychannel
    mychannel:errors = NULL 

    submit on mychannel 
    sqlbegin
        select * from tmpjobpln
    sqlend
    
    if mychannel:errors is NOT NULL or mychannel:count = 0
    begin
        mssg = "Despatch Plan not entered"
        callform msgbox_1
        disconnect mychannel
        return
    end

if (mychannel:open = TRUE)
    disconnect mychannel

    if jcflag = 1
    /*  callform ppljobcomp_1(jrmndtval,jrpmpval)*/
    begin
        if sflag = 0    /* Not Spares Job */
            callform ppljobcomp_1(jrmndtval,jrpmpval)
        else
            callform ppljobcomps_1(jrmndtval,jrpmpval)
    end

    return
end
------------


ppljrcalljd_1 (fpl)
++++++++++++
create apt proc ppljrcalljd_1() as
begin
    useform ppljobreg_1
    global variable jdflag bit
    global variable sflag bit
    global variable utag char(1)

    global variable mssg char(30)

    channel mychannel 

    if utag="C"
    begin
        mssg="You are not Authorised ..."
        callform msgbox_1
        return
    end

    /*
    if jrorddt is NULL or jrbmrecvdt is NULL /* Ord Dt or BM Dt not given */
    begin
        mssg = "Order Dt/ BM recv.Dt Not Entered"
        callform msgbox_1
        return
    end
    */

    if jrbmrecvdt is NULL /* BM Dt not given */
    begin
        mssg = "BM recv.Dt Not Entered"
        callform msgbox_1
        return
    end
    
    if (mychannel:open = FALSE)
         connect mychannel
    mychannel:errors = NULL 

    submit on mychannel 
    sqlbegin
        select * from tmpjobpln
    sqlend
    
    if mychannel:errors is NOT NULL or mychannel:count = 0
    begin
        mssg = "Despatch Plan not entered"
        callform msgbox_1
        disconnect mychannel
        return
    end

if (mychannel:open = TRUE)
    disconnect mychannel

    if jdflag = 1
    begin
        if sflag = 0    /* Not Spares Job */
            callform ppljobdesp_1
        else
           callform ppljobdesps_1
    end
    return
end
------------


pplsprlstsl_1 (fpl)
++++++++++++
create apt proc pplsprlstsl_1() as
begin
    useform ppljobreg_1
    global variable sflag bit
    global variable mssg char(30)
    variable slno  char(6)
    variable jobno char(13)
    channel mychannel

    if sflag!=1
        return
    
    if mychannel:open = FALSE
        connect mychannel
    mychannel:errors=NULL

    submit local on mychannel
    sqlbegin
        select slno=convert(char(6),jrslno),jobno=jrjobno 
        from jobreg
        where jrslno in (select max(jrslno) from jobreg where jrslno < 9000)
    sqlend
    
    mssg="Sl:"+slno+"  Job :"+jobno
    callform msgbox_1
    
    return
end
------------


ppljrconsdet_1 (fpl)
++++++++++++
create apt proc ppljrconsdet_1() as
begin
    useform ppljobreg_1
    if jrjobno is not NULL
        callform ppljrconsdet_1(jrordplby,jrconsdet )
    return
end
------------


ppljobchngfcall_1 (fpl)
++++++++++++
create apt proc ppljobchngfcall_1() as
begin
    useform ppljobreg_1
    callform ppljobchng_1(jrjobno)
    return
end
------------


