

FUNCTION ProcessChoice(typeidx)
local origview2 bdb
  while true
    tempcode="N"
    clear prodMRC
    clear #unitcost
    clear $seltype
    clear $itemtype
    clear #ordwidth
    clear $backing
    clear desMRC
    clear $unit
    vloadif(dpath|"cus_ent4.vw")
    error off
    #refnr = filemax([#refnr])         'message "#refnr) is:"&str(#refnr)
    if cerror
      #refnr = 0
    end if
    refcode = jobnr|"-"|str(right("00"|str(#refnr+1),2))'
    clearvar()             ' message "prodsel|$prodend is:"&str("prodsel"|$prodend)
    vloadif(dpath|"prodsel"|$prodend|".vw")
    order change index ipath|typeidx
    if prodcode = ""
      if $prodend="B"
        y2 = format(" Scroll to find - F3 to search - Esc for Temporary Code ","M72")
      else
        y2 = format(" Scroll to find ","M72")
      end if
      screen print 21 5 fgp bbd y2
      if $prodend = "A"
        bdb = bpopdb("prodsel"|$prodend,4,"","[Prod_Back]","L35","[abbrv]","L4","[Product_Code]",7,43,20,80,"",0)
      else
        bdb = bpopdb("prodsel"|$prodend,4,"i","[Prod_Back]","L42","[abbrv]","L4","[Product_Code]",7,36,20,80,"",0)
      end if
    else
      data goto record record-number #prodrec
      if $prodend="B"
        y2 = format(" Scroll to find - F3 to search - Esc for Temporary Code ","M72")
      else
        y2 = format(" Scroll to find ","M72")
      end if
      screen print 21 5 fgp bbd y2
      if $prodend = "A"
        bdb = bpopdb("prodsel"|$prodend,4,"","[Prod_Back]","L35","[abbrv]","L4","[Product_Code]",7,43,20,80,"",0)
      else
        bdb = bpopdb("prodsel"|$prodend,4,"i","[Prod_Back]","L42","[abbrv]","L4","[Product_Code]",7,36,20,80,"",0)
      end if
    end if
    if bdb = -1
      if $keypress = "F3" or $keypress = "F5" or $keypress = "F6"   ' or $keypress = "F7"
        x = vkeybox(9,29,"1Abandon˙this˙entry 1Enter˙temporary˙product","Escape to return")
        if x = -1
          AbandonEntry()
          exit while
        end if
        while true
          if ptstr == "a"
            AbandonEntry()
            return (-1)
          elseif ptstr == "e"                  ' "prodselb.vw" loaded
            messbox(" Enter a Temporary Product Code? (y/n) ",1,0,1)
            if ptstr == "y"
              screen shortrestore psa
              origview2=apinfo(ap_filex)
              x=TempProductCode()
              if x = -1
                AbandonEntry()
                exit while
'                 return (-1)
              end if
              vloadif(dpath|origview2)
            else
              AbandonEntry()
              return (-1)
            end if
            exit while
          end if
        end while
      else
        AbandonEntry()
        exit while
      end if
    else
      prodcode = ptstr               '
    end if
    #prodrec = record
    if tempcode="N"
      $backing = [Backing]
    end if
    $uos     = [Unit_Of_Sale]      ' message "$uos is:"&str($uos)
    if $prodend ="B"
      if [Note]="Y"
        CheckSupplier()
      end if
    end if

    screen shortrestore dsa
    x = Entries()
    if x = -1
      screen clear box 5 5 22 77 0 0 no-border
      screen shortrestore s_shwreq
      repaint off
      continue while
    elseif x = 0                   ' new entry made
      vloadif(dpath|"cus_ent4.vw")
      order change index "current.idx"
      data goto record last
      Title_A()                    ' message "prodsel|$prodend is:"&str("prodsel"|$prodend)
      vloadif(dpath|"prodsel"|$prodend|".vw")
      continue while
    end if
  end while
END FUNCTION ' ProcessChoice()
