General Subroutines
Uncategorized subroutines
Subroutine count: 243
Table of Contents
VB_0304.REV1VB_0312.REV1VB_2402.DELVB_2402LVB_2403VB_2450VB_2452.UPDVB_2470VB_2470LVB_2472.UPDVB_A7270VB_A7280VB_ACCOUNT.REV1VB_ACCOUNTLISTVB_ACCOUNTLIST.REV1VB_ACCOUNTLIST.REV2VB_ACCOUNTLIST.REV3VB_ACTIVITY.REV1VB_ACTIVITYLISTVB_ACTIVITYLIST.REV2VB_AFTECDOCVB_BKPLOT.1.REV1VB_BKPLOTA.REV1VB_BLIST.REV1VB_BMF.REV1VB_BMFUPDT.REV1VB_BOMEXPLORER.1VB_BOMEXPLORER.1.REV2VB_BOMEXPLORER.1.REV3VB_BOMEXPLORER.2VB_BOMEXPLORER.2.REV2VB_BOMEXPLORER.2.REV3VB_BOMEXPLORER.3VB_BOMEXPLORER.3.REV3VB_BOMLIST.REV1VB_BOMLIST.REV1_DOTNETVB_BOMLIST.REV1AVB_BOMNOTROUTED.REV1VB_BOMNOTROUTED.REV2VB_BOMNOTROUTED.REV3VB_BOMX.REV1VB_C7270VB_C7285VB_CA1768VB_CA1768CVB_CA1803VB_CA1832VB_CHKCHANGEVB_COCELISTVB_COMPETITORLIST.REV1VB_CONTACTLISTVB_CONTACTLIST.REV1VB_CONTACTLIST.REV2VB_CONTACTSVB_CONVERTNCNVB_CUSTOMERLISTVB_CUSTOMERLIST.REV1VB_D7270VB_DATE.PLANVB_DELETE.SIMVB_DELETE_PDMVB_DELETE0001VB_DICTLIST.REV1VB_DIRDEPOSITLIST.REV1VB_E0052AVB_E0052A.REV1VB_E0065.REV1VB_EMPLOYEELISTVB_EMPLOYEELIST.REV1VB_EMPLOYEEPUBLICLIST.REV1VB_ENGCHGLISTVB_ENGCHGLIST.REV1VB_FINSTATCHECKVB_FIX.ITEMCAVB_FIX.SROUTE.LINEVB_FS8040VB_GET.EMPLISTVB_GET.INVENTORYVB_GET.ITEMHISTVB_GET.PARTINFOVB_GETLOCKNAMEVB_GETMFGCODEVB_GETPDMLIST.REV1VB_GETREADUVB_GETRECPTDATE.REV1VB_GLCATEGORYVB_GLCHARTSVB_GLCHARTS.BAKVB_GLCHARTS.NEWVB_GLJOURNALVB_GLRECAP.REV1VB_GLTRANSVB_I.0026VB_I.0028VB_I.1280VB_I.1281VB_I.1601VB_I.1656VB_I.1656BVB_I.1656CVB_I.1656GLVB_IMPORTBOM.REV1VB_INACT.INVNTYVB_INDSECTORLISTVB_INVAUDPOSTVB_INVINQ.1VB_INVINQ.2VB_INVOICELIST.REV1VB_INVOICELIST.REV2VB_INVOICELIST.REV3VB_ITEMCA.REV1VB_ITEMMANF.REV1VB_ITEMORD.REV1VB_ITREQUESTLIST.REV1VB_JOBBOM.REV1VB_JOBLISTVB_JOBLIST.REV1VB_JOBLIST2VB_LABORHISTLIST.REV1VB_LDS.INDEX.REV1VB_LDSINDXVB_LOAD.SIMVB_MACHPROCESSTYPELIST.REV1VB_MACHTYPELIST.REV1VB_MAILCODELIST.REV1VB_MESPROGLIST.REV1VB_MYNEWFILESVB_NCNCHGLISTVB_NCNLISTVB_OPENORDLISTVB_PARTINFO.REV1VB_PARTINFO.REV2VB_PARTPHOTO.REV1VB_PARTPHOTOLIST.REV1VB_PARTTYPELISTVB_PARTTYPELIST.REV1VB_PAYMENTS.REV1VB_PAYREGLIST.REV1VB_PDMXREFVB_PHANTOMVB_PHANTOM.REV2VB_PLANORD.REV1VB_PLANORD.REV2VB_PLANORD.REV3VB_PLANORD.REV4VB_PLANORD.REV5VB_PLANORD.REV6VB_PLANORDLIST.REV1VB_POCHECKLOT.REV1VB_POF.REV1VB_POFLIST.REV1VB_POHIST.REV1VB_POHIST.REV2VB_POHIST.REV3VB_POLINE.NOTEVB_POMAINT.REV1VB_POMAINT.REV2VB_POMAINT.REV3VB_POMAINT2.REV1VB_POMAINTWRITE.REV1VB_POMAINTWRITE.REV2VB_POMAINTWRITE.REV4VB_POMAINTWRITE.REV5VB_PORECEIPT.REV1VB_PORECEIPT.REV2VB_PROCESSTYPELISTVB_PRODUCTCLASS_LISTVB_PRODUCTCLASSLIST.REV1VB_PRODUCTLDS.REV1VB_PRODUCTLIST.REV1VB_PRODUCTS.REV1VB_PROJECTLISTVB_PROJECTLIST.REV1VB_PROJECTLIST.REV2VB_PROJECTORDERS.REV1VB_PROJECTPAYMENTS.REV1VB_PROJECTTASKS.REV1VB_PRUNEAUTOWO.1VB_PVXREF.REV1VB_QUOTELIST.REV1VB_QUOTEPARA.REV1VB_QUOTEPARALIST.REV1VB_QUOTEPARALIST.REV2VB_R7270VB_READ.SP.QUOTE.REV1VB_READDICTIDVB_READINVOICE.REV1VB_RECEIPTUPDVB_REDBOOKLISTVB_REFXLIST.REV1VB_S8040VB_SERVICELISTVB_SHIPTOVB_SHIPTOLISTVB_SHOWREADUVB_SPNLISTVB_SPNLIST.REV1VB_SPNLIST.REV2VB_SPNQUOTELIST.REV1VB_SPQUOTEMAINT2.REV1VB_SPQUOTEMAINT2.REV2VB_SPQUOTEMAINT2.REV3VB_SPR.REV1VB_TABLE.LOOKUP.REV2OLDVB_TESTCODEVB_TIMESHEETINQVB_TIMESHEETINQ.REV2VB_TIMESHEETINQ.REV3VB_UPD.WIPCOSTVB_UPDATE.ROUTE.LEADVB_UPDATE_ACTIVITYVB_UPDATECOSTVB_VENDORLISTVB_VENDORLIST.REV1VB_W.7277VB_W.7285VB_WIPBMFVB_WIPBMF.REV2VB_WIPBMF.REV3VB_WIPBMF.REV4VB_WIPBMF.REV5VB_WODATA.REV1VB_WOINQUIRY.1VB_WOINQUIRY.2VB_WOINQUIRY.REV1VB_WOOP.HOURSVB_WOPLAN.REV1VB_WORELEASE.1VB_WORELEASE.2VB_WORELEASE.3VB_WORELEASE.4VB_WORELEASE.REV3VB_WORELEASEPLANNINGVB_WPDOCLISTVB_WPPLOT.REV1VB_WPPLOT.REV2VB_WRITEPRODUCTVB_XREFLIST.REV1VB_XREFLIST.REV2VB_XREFLIST.REV3VB_XREFLIST.REV4VB_XREFLIST.REV5VB_XREFPRODLIST.REV1
VB_0304.REV1
Signature: SUBROUTINE VB_0304(CO,REQTYPE,CUSTNO,CREDITREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_0304.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | Saves customer credit record. Converts the CREDITREC dimensioned array to a dynamic record and writes it to the CREDIT file keyed by company and customer number. Logs the transaction to the audit register via VB_S0910. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type (not branched on; always writes) |
| 2 | CUSTNO | in | Customer number used as part of the CREDIT file key |
| 3 | CREDITREC | in | Dimensioned credit record array to be written to CREDIT file via MATWRITE |
| 4 | ADDFLAG | in | Add flag (not used in current code) |
| 5 | MESSAGE | out | Error or status message returned to caller |
Tables Referenced: CREDIT
Tables Written: CREDIT, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_0304.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_0312.REV1
Signature: SUBROUTINE VB_0312(CO,REQTYPE,CUSTNO,SHIPNO,SHIPREC,SHIPOEREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_0312.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 7 |
| Description | Saves or deletes ship-to address records. When REQTYPE is DELETE, removes records from SHIPTO, SHIPTO.OE, and SHIPTO.1287. Otherwise converts the dimensioned SHIPREC and SHIPOEREC arrays and writes them to the corresponding files. Logs changes via VB_S0910. |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type; DELETE triggers record removal |
| 2 | CUSTNO | in | Customer number for file key construction |
| 3 | SHIPTO | in | Ship-to sequence number for file key construction |
| 4 | SHIPREC | in | Dimensioned ship-to record to be written via MATWRITE to SHIPTO file |
| 5 | SHIPOEREC | in | Dimensioned ship-to OE record to be written via MATWRITE to SHIPTO.OE file |
| 6 | MESSAGE | out | Error or status message returned to caller |
Tables Referenced: SHIPTO, SHIPTO.OE, SHIPTO.1287
Tables Written: SHIPTO, SHIPTO.OE, SHIPTO.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_0312.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": ""
}
}VB_2402.DEL
Signature: SUBROUTINE DUMMY(CO.STDS,CO.STDS.COST,OPEN.ORD.LINE,OPEN.ORD.CHRGS,OPEN.ORD.NOTES,PRODUCT,ITEMQTY,ITEMCA,LOT,LOTCOST,LOTCOSTXREF,LOTHIST,LOTHIST.AUDIT,LOTXREF,SOREQ,JOBXREF,JOB.BIN,JOB.BINXREF,JOB.PRODUCT,MLOSTSLS,MODELREQ,WBOOKING,UNITCONV,TRANSREG,DTRANSREG,CO,ORDNO,ZLINE,INITS,FILE,PGM,CRTNO,AUDIT,PURGEHEAD,CODE,MAT HREC,CWS,CES,BEL,BIN,BIN.PRODUCT,BINXREF,LOCODE,OPENWO,OPEN.ORD.LINE.1287)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2402.DEL
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Internal |
| Args | 45 |
| Description | Deletes a sales order line item and updates all related files. Removes the line from OPEN.ORD.LINE, OPEN.ORD.NOTES, OPEN.ORD.CHRGS, and their .1287 counterparts. Adjusts ITEMQTY allocations, SOREQ cross-references, MODELREQ, lot allocations in ALLOCXREF, master schedule demand, and recalculates header totals. Logs changes via VB_S0910. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO.STDS | in | |
| 1 | CO.STDS.COST | in | |
| 2 | OPEN.ORD.LINE | in | |
| 3 | OPEN.ORD.CHRGS | in | |
| 4 | OPEN.ORD.NOTES | in | |
| 5 | PRODUCT | in | |
| 6 | ITEMQTY | in | |
| 7 | ITEMCA | in | |
| 8 | LOT | in | |
| 9 | LOTCOST | in | |
| 10 | LOTCOSTXREF | in | |
| 11 | LOTHIST | in | |
| 12 | LOTHIST.AUDIT | in | |
| 13 | LOTXREF | in | |
| 14 | SOREQ | in | |
| 15 | JOBXREF | in | |
| 16 | JOB.BIN | in | |
| 17 | JOB.BINXREF | in | |
| 18 | JOB.PRODUCT | in | |
| 19 | MLOSTSLS | in | |
| 20 | MODELREQ | in | |
| 21 | WBOOKING | in | |
| 22 | UNITCONV | in | |
| 23 | TRANSREG | in | |
| 24 | DTRANSREG | in | |
| 25 | CO | in | |
| 26 | ORDNO | in | |
| 27 | ZLINE | in | |
| 28 | INITS | in | |
| 29 | FILE | in | |
| 30 | PGM | in | |
| 31 | CRTNO | in | |
| 32 | AUDIT | in | |
| 33 | PURGEHEAD | in | |
| 34 | CODE | in | |
| 35 | HREC | inout | Order header record; modified with recalculated totals |
| 36 | CWS | in | |
| 37 | CES | in | |
| 38 | BEL | in | |
| 39 | BIN | in | |
| 40 | BIN.PRODUCT | in | |
| 41 | BINXREF | in | |
| 42 | LOCODE | in | |
| 43 | OPENWO | in | |
| 44 | OPEN.ORD.LINE.1287 | in |
Tables Referenced: ALLOCXREF, CO.STDS.ORD, CUSTOE, ITEMMANF, ITEMORD, ITEMORD.MS, ITEMQTY, JOBXREF, MODELREQ, MS.DEMAND, OPEN.ORD.CHRGS, OPEN.ORD.HEAD, OPEN.ORD.LINE, OPEN.ORD.LINE.1287, OPEN.ORD.NOTES, OPEN.ORD.XREF, PRODUCT, SOREQ, WBOOKING, WORKLOTSUM.MS
Tables Written: ALLOCXREF, ITEMQTY, ITEMORD.MS, JOBXREF, MODELREQ, MS.DEMAND, OPEN.ORD.CHRGS, OPEN.ORD.HEAD, OPEN.ORD.LINE, OPEN.ORD.LINE.1287, OPEN.ORD.NOTES, OPEN.ORD.XREF, SOREQ, TRANSREG, WBOOKING, WORKLOTSUM.MS
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2402.DEL",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": "",
"31": "",
"32": "",
"33": "",
"34": "",
"36": "",
"37": "",
"38": "",
"39": "",
"40": "",
"41": "",
"42": "",
"43": "",
"44": ""
}
}VB_2402L
Signature: SUBROUTINE VB_2402L(INDATA,LREC,LREC2,NREC,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2402L
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 5 |
| Description | Saves or deletes a sales order line item with department-based security. Checks @LOGNAME against department groups (accounting, parts, planning, shipping, other) to control field-level write access. Updates PRODUCT weight, ITEMQTY allocations, SOREQ cross-references, and JOBXREF. Shipping department users can only update item weight. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Packed input: CO, SONO, LINENO, FORMATSO flag |
| 1 | LREC | in | OPEN.ORD.LINE record from UI |
| 2 | LREC2 | in | OPEN.ORD.LINE.1287 record from UI |
| 3 | NREC | in | OPEN.ORD.NOTES record from UI |
| 4 | MESSAGE | out | Error or status message returned to caller |
Tables Referenced: OPEN.ORD.HEAD, OPEN.ORD.LINE, OPEN.ORD.LINE.1287, OPEN.ORD.NOTES, PRODUCT, ITEMQTY, SOREQ, JOBXREF
Tables Written: OPEN.ORD.LINE, OPEN.ORD.LINE.1287, OPEN.ORD.NOTES, PRODUCT, ITEMQTY, SOREQ, JOBXREF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2402L",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_2403
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2403
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Internal |
| Args | 0 |
| Description | Daily order register report program. Reads open order headers, formats and prints a report of orders not yet marked as printed, then stamps each order as printed. Not a callable subroutine (no SUBROUTINE declaration). |
Tables Referenced: CO.STDS.ORD, CUSTOMER, OPEN.ORD.HEAD, OPEN.ORD.LINE, ORDTYPE, SALESMAN, SHIPTO
Tables Written: OPEN.ORD.HEAD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2403",
"args": {
}
}VB_2450
Signature: SUBROUTINE VB_2450(INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2450
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 4 |
| Description | Two-step invoice entry. Validates the sales order, copies open order header/line/notes/charges to WORK2450 staging files, and calls VB_2452.UPD to perform the actual invoice file updates. Returns the generated invoice number in OUTDATA and any error in MESSAGE. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Packed input: CO, SONO, INVNO (blank for new), INVDATE, POSTDATE |
| 1 | INVREC | in | Dimensioned invoice header record from UI (not used in this entry sub) |
| 2 | OUTDATA | out | Packed output: generated invoice number |
| 3 | MESSAGE | out | Error or status message |
Tables Referenced: CO.STDS.ORD, CUSTOMER, GL-COMPANY, OPEN.ORD.CHRGS, OPEN.ORD.HEAD, OPEN.ORD.LINE, OPEN.ORD.NOTES, ORDTYPE, PRODUCT, SHIPTO, WORK2450.CHRGS, WORK2450.HEAD, WORK2450.LINE, WORK2450.NOTES
Tables Written: WORK2450.CHRGS, WORK2450.HEAD, WORK2450.LINE, WORK2450.NOTES
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2450",
"args": {
"0": "",
"1": ""
}
}VB_2452.UPD
Signature: SUBROUTINE DUMMY(CO.STDS,CO.STDS.COST,CREDIT,INVAUDIT,INVAUDPOXREF,INVAUDWOXREF,INVHIST,INVXREF,INVOICE.HEAD,INVOICE.LINE,INVOICE.CHRGS,INVOICE.NOTES,INVOICE.TRAIL,ITEMCA,ITEMHIST,ITEMQTY,JOB.BIN,JOB.BINXREF,JOB.PRODUCT,LOT,LOTCOST,LOTCOSTXREF,LOTHIST,LOTHIST.AUDIT,LOTXREF,MLOSTSLS,MODELREQ,OPEN.ORD.HEAD,OPEN.ORD.LINE,OPEN.ORD.CHRGS,OPEN.ORD.NOTES,PRODUCT,SOREQ,SPECAUDIT,TRANSCRT,TRANSREG,DTRANSREG,UNITCONV,WBOOKING,WORK2450,WORK2450L,WORK2450C,WORK2450N,WOXREF,CES,CEL,BEL,CWS,CO,ORDNO,INVNO,CRTNO,FILE,INITS,SEL,AUDIT,MAT HREC,OLDH15,MAT TREC,BIN,BIN.PRODUCT,BINXREF,LOCODE,OPENWO)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2452.UPD
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Internal |
| Args | 64 |
| Description | Invoice file update engine (called by VB_2450). Copies work file records to INVOICE.HEAD/LINE/NOTES/CHRGS, updates OPEN.ORD allocations and back-orders, adjusts ITEMQTY on-hand and committed quantities, posts to WIPLEDGER.SUM, creates GL transactions via WPOSTGL, updates bookings, and handles lot-tracked and drop-ship items. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO.STDS | in | |
| 1 | CO.STDS.COST | in | |
| 2 | CREDIT | in | |
| 3 | INVAUDIT | in | |
| 4 | INVAUDPOXREF | in | |
| 5 | INVAUDWOXREF | in | |
| 6 | INVHIST | in | |
| 7 | INVXREF | in | |
| 8 | INVOICE.HEAD | in | |
| 9 | INVOICE.LINE | in | |
| 10 | INVOICE.CHRGS | in | |
| 11 | INVOICE.NOTES | in | |
| 12 | INVOICE.TRAIL | in | |
| 13 | ITEMCA | in | |
| 14 | ITEMHIST | in | |
| 15 | ITEMQTY | in | |
| 16 | JOB.BIN | in | |
| 17 | JOB.BINXREF | in | |
| 18 | JOB.PRODUCT | in | |
| 19 | LOT | in | |
| 20 | LOTCOST | in | |
| 21 | LOTCOSTXREF | in | |
| 22 | LOTHIST | in | |
| 23 | LOTHIST.AUDIT | in | |
| 24 | LOTXREF | in | |
| 25 | MLOSTSLS | in | |
| 26 | MODELREQ | in | |
| 27 | OPEN.ORD.HEAD | in | |
| 28 | OPEN.ORD.LINE | in | |
| 29 | OPEN.ORD.CHRGS | in | |
| 30 | OPEN.ORD.NOTES | in | |
| 31 | PRODUCT | in | |
| 32 | SOREQ | in | |
| 33 | SPECAUDIT | in | |
| 34 | TRANSCRT | in | |
| 35 | TRANSREG | in | |
| 36 | DTRANSREG | in | |
| 37 | UNITCONV | in | |
| 38 | WBOOKING | in | |
| 39 | WORK2450 | in | |
| 40 | WORK2450L | in | |
| 41 | WORK2450C | in | |
| 42 | WORK2450N | in | |
| 43 | WOXREF | in | |
| 44 | CES | in | |
| 45 | CEL | in | |
| 46 | BEL | in | |
| 47 | CWS | in | |
| 48 | CO | in | |
| 49 | ORDNO | in | |
| 50 | INVNO | in | |
| 51 | CRTNO | in | |
| 52 | FILE | in | |
| 53 | INITS | in | |
| 54 | SEL | in | |
| 55 | AUDIT | in | |
| 56 | HREC | inout | Invoice header record; modified during processing |
| 57 | OLDH15 | in | |
| 58 | TREC | inout | Invoice transaction record; modified during processing |
| 59 | BIN | in | |
| 60 | BIN.PRODUCT | in | |
| 61 | BINXREF | in | |
| 62 | LOCODE | in | |
| 63 | OPENWO | in |
Tables Referenced: ALLOCXREF, BMF, CO.STDS.COST, CO.STDS.MS, CO.STDS.ORD, CREDIT, CUSTOE, CUSTOMER, DISCOUNT, FREIGHT, GL-COMPANY, INVOICE.CHRGS, INVOICE.HEAD, INVOICE.LINE, INVOICE.NOTES, ITEMMANF, ITEMORD, ITEMORD.MS, ITEMQTY, JOBMASTER, JOBXREF, MISCHG, MODELREQ, MS.DEMAND, OPEN.ORD.CHRGS, OPEN.ORD.HEAD, OPEN.ORD.LINE, OPEN.ORD.NOTES, OPEN.ORD.XREF, ORDTYPE, PCLASS, PRD.PRICE, PRODUCT, SALESMAN, SHIPTO, SOREQ, UNIT, UNITCONV, WBOOKING, WIPLEDGER.SUM, WORK2450.CHRGS, WORK2450.HEAD, WORK2450.LINE, WORK2450.NOTES, WORKLOTSUM.MS, WOSTATUS
Tables Written: ALLOCXREF, CREDIT, CUSTOE, INVOICE.CHRGS, INVOICE.HEAD, INVOICE.LINE, INVOICE.NOTES, ITEMORD.MS, ITEMQTY, JOBXREF, MODELREQ, MS.DEMAND, OPEN.ORD.CHRGS, OPEN.ORD.HEAD, OPEN.ORD.LINE, OPEN.ORD.NOTES, OPEN.ORD.XREF, SOREQ, TRANSREG, WBOOKING, WIPLEDGER.SUM, WORKLOTSUM.MS
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2452.UPD",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": "",
"31": "",
"32": "",
"33": "",
"34": "",
"35": "",
"36": "",
"37": "",
"38": "",
"39": "",
"40": "",
"41": "",
"42": "",
"43": "",
"44": "",
"45": "",
"46": "",
"47": "",
"48": "",
"49": "",
"50": "",
"51": "",
"52": "",
"53": "",
"54": "",
"55": "",
"57": "",
"59": "",
"60": "",
"61": "",
"62": "",
"63": ""
}
}VB_2470
Signature: SUBROUTINE VB_2470(INDATA,HDATA,TDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2470
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 4 |
| Description | Credit memo header entry. Validates the customer, generates the next credit memo number from CO.STDS.ORD, creates work file staging records in WORK2470.HEAD, and calls VB_2472.UPD to perform the actual credit memo file updates. Returns the generated credit number in OUTDATA. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Packed input: CO, CUSTNO, CREDITNO (blank for new), CREDITDATE, POSTDATE, INVNO |
| 1 | CRDREC | in | Dimensioned credit header record from UI |
| 2 | OUTDATA | out | Packed output: generated credit memo number |
| 3 | MESSAGE | out | Error or status message |
Tables Referenced: CO.STDS.ORD, CUSTOMER, GL-COMPANY, INVOICE.HEAD, ORDTYPE, SALESMAN, SHIPTO, WORK2470.HEAD
Tables Written: CO.STDS.ORD, WORK2470.HEAD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2470",
"args": {
"0": "",
"1": ""
}
}VB_2470L
Signature: SUBROUTINE VB_2470L(INDATA,LREC,NREC,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2470L
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 4 |
| Description | Saves a credit memo line item to staging work files. Writes the line record to WORK2470L and optional notes to WORK2470N. Handles note type assignment for multi-line notes. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Packed input: CO, CREDITNO, LINENO |
| 1 | LREC | in | Credit memo line record to write |
| 2 | NREC | in | Credit memo notes record to write |
| 3 | MESSAGE | out | Error or status message |
Tables Referenced: WORK2470L, WORK2470N
Tables Written: WORK2470L, WORK2470N
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2470L",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_2472.UPD
Signature: SUBROUTINE DUMMY(CO.STDS,CO.STDS.COST,INVAUDIT,INVAUDPOXREF,INVAUDWOXREF,INVHIST,INVXREF,INVOICE.HEAD,INVOICE.LINE,INVOICE.CHRGS,INVOICE.NOTES,INVOICE.TRAIL,ITEMCA,ITEMHIST,ITEMQTY,JOB.BIN,JOB.BINXREF,JOB.PRODUCT,LOT,LOTCOST,LOTCOSTXREF,LOTHIST,LOTHIST.AUDIT,LOTXREF,PRODUCT,SPECAUDIT,TRANSCRT,TRANSREG,DTRANSREG,WORK2470L,WORK2470C,WORK2470N,WOXREF,CES,CEL,BEL,CWS,CO,ORDNO,CREDNO,CRTNO,FILE,INITS,SEL,AUDIT,MAT HREC,MAT TREC,BIN,BIN.PRODUCT,BINXREF,LOCODE,OPENWO)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_2472.UPD
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Internal |
| Args | 52 |
| Description | Credit memo file update engine (called by VB_2470). Copies work file records to INVOICE.HEAD/LINE/NOTES (as credit type), reverses ITEMQTY quantities for returned items, posts GL transactions via WPOSTGL, updates customer credit balance, handles lot-tracked inventory returns, and adjusts bookings and master schedule records. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO.STDS | in | |
| 1 | CO.STDS.COST | in | |
| 2 | INVAUDIT | in | |
| 3 | INVAUDPOXREF | in | |
| 4 | INVAUDWOXREF | in | |
| 5 | INVHIST | in | |
| 6 | INVXREF | in | |
| 7 | INVOICE.HEAD | in | |
| 8 | INVOICE.LINE | in | |
| 9 | INVOICE.CHRGS | in | |
| 10 | INVOICE.NOTES | in | |
| 11 | INVOICE.TRAIL | in | |
| 12 | ITEMCA | in | |
| 13 | ITEMHIST | in | |
| 14 | ITEMQTY | in | |
| 15 | JOB.BIN | in | |
| 16 | JOB.BINXREF | in | |
| 17 | JOB.PRODUCT | in | |
| 18 | LOT | in | |
| 19 | LOTCOST | in | |
| 20 | LOTCOSTXREF | in | |
| 21 | LOTHIST | in | |
| 22 | LOTHIST.AUDIT | in | |
| 23 | LOTXREF | in | |
| 24 | PRODUCT | in | |
| 25 | SPECAUDIT | in | |
| 26 | TRANSCRT | in | |
| 27 | TRANSREG | in | |
| 28 | DTRANSREG | in | |
| 29 | WORK2470L | in | |
| 30 | WORK2470C | in | |
| 31 | WORK2470N | in | |
| 32 | WOXREF | in | |
| 33 | CES | in | |
| 34 | CEL | in | |
| 35 | BEL | in | |
| 36 | CWS | in | |
| 37 | CO | in | |
| 38 | ORDNO | in | |
| 39 | CREDNO | in | |
| 40 | CRTNO | in | |
| 41 | FILE | in | |
| 42 | INITS | in | |
| 43 | SEL | in | |
| 44 | AUDIT | in | |
| 45 | HREC | inout | Credit memo header record; modified during processing |
| 46 | TREC | inout | Credit memo transaction record; modified during processing |
| 47 | BIN | in | |
| 48 | BIN.PRODUCT | in | |
| 49 | BINXREF | in | |
| 50 | LOCODE | in | |
| 51 | OPENWO | in |
Tables Referenced: ALLOCXREF, BMF, CO.STDS.COST, CO.STDS.MS, CO.STDS.ORD, CREDIT, CUSTOE, CUSTOMER, DISCOUNT, FREIGHT, GL-COMPANY, INVOICE.CHRGS, INVOICE.HEAD, INVOICE.LINE, INVOICE.NOTES, ITEMMANF, ITEMORD, ITEMORD.MS, ITEMQTY, MISCHG, MODELREQ, MS.DEMAND, OPEN.ORD.HEAD, OPEN.ORD.LINE, ORDTYPE, PCLASS, PRD.PRICE, PRODUCT, SALESMAN, SHIPTO, UNIT, UNITCONV, WBOOKING, WIPLEDGER.SUM, WORK2470.HEAD, WORK2470L, WORK2470N, WORKLOTSUM.MS
Tables Written: ALLOCXREF, CREDIT, CUSTOE, INVOICE.CHRGS, INVOICE.HEAD, INVOICE.LINE, INVOICE.NOTES, ITEMORD.MS, ITEMQTY, MODELREQ, MS.DEMAND, TRANSREG, WBOOKING, WIPLEDGER.SUM, WORKLOTSUM.MS
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_2472.UPD",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": "",
"31": "",
"32": "",
"33": "",
"34": "",
"35": "",
"36": "",
"37": "",
"38": "",
"39": "",
"40": "",
"41": "",
"42": "",
"43": "",
"44": "",
"47": "",
"48": "",
"49": "",
"50": "",
"51": ""
}
}VB_A7270
Signature: SUBROUTINE VB_A7270(ASSY.NOTES.XREF,BMF,BMF.ASSY.NOTES,BMF.NOTES,ITEMQTY,ALLOCXREF,ITEMMANF,WIPBMF,WIPBMF.ASSY.NOTES,WIPBMF.NOTES,OPENWO,PRODUCT,WO.ASSY.NOTES.XREF,CO,WONO,ASSY,REV,FCOMP,ORIGORDQTY,WOTYPE,BOMFLAG,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_A7270
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Internal |
| Args | 22 |
| Description | Builds the WIP bill of material for a work order by exploding the product structure. Recursively walks the BOM tree, copies component records to WIPBMF tables, allocates inventory in ALLOCXREF and ITEMQTY, and handles substitute parts. Returns the first component record and any error message. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ASSY.NOTES.XREF | in | |
| 1 | BMF | in | |
| 2 | BMF.ASSY.NOTES | in | |
| 3 | BMF.NOTES | in | |
| 4 | ITEMQTY | in | |
| 5 | ALLOCXREF | in | |
| 6 | ITEMMANF | in | |
| 7 | WIPBMF | in | |
| 8 | WIPBMF.ASSY.NOTES | in | |
| 9 | WIPBMF.NOTES | in | |
| 10 | OPENWO | in | |
| 11 | PRODUCT | in | |
| 12 | WO.ASSY.NOTES.XREF | in | |
| 13 | CO | in | |
| 14 | WONO | in | |
| 15 | ASSY | in | |
| 16 | REV | in | |
| 17 | FCOMP | inout | First component record returned to caller |
| 18 | ORIGORDQTY | in | |
| 19 | WOTYPE | in | |
| 20 | BOMFLAG | in | |
| 21 | MSG | out | Error message returned to caller |
Tables Referenced: ALLOCXREF, BMF, BMF.NOTES, CO.STDS.WIP, ITEMMANF, ITEMQTY, OPENWO, PRODUCT, WIPBMF, WIPBMF.NOTES, WIPBMFCOST
Tables Written: ALLOCXREF, ITEMQTY, WIPBMF, WIPBMF.NOTES
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_A7270",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"18": "",
"19": "",
"20": ""
}
}VB_A7280
Signature: SUBROUTINE A7280(ALLOCXREF,BMF.NOTES,ITEMCA,ITEMMANF,ITEMQTY,OPENWO,PRODUCT,WIPBMF,WIPBMFCOST,WIPBMF.NOTES,CO,WONO,WOTYPE,COMP,NEWREC,FUNC,FINSTAT)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_A7280
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Internal |
| Args | 17 |
| Description | Adds or deletes a single WIP BOM component for a work order. On add, writes the component to WIPBMF, calculates material cost in WIPBMFCOST, copies notes from BMF.NOTES, and allocates inventory. On delete, reverses allocations and removes records. Updates the parent work order material cost in OPENWO. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ALLOCXREF | in | |
| 1 | BMF.NOTES | in | |
| 2 | ITEMCA | in | |
| 3 | ITEMMANF | in | |
| 4 | ITEMQTY | in | |
| 5 | OPENWO | in | |
| 6 | PRODUCT | in | |
| 7 | WIPBMF | in | |
| 8 | WIPBMFCOST | in | |
| 9 | WIPBMF.NOTES | in | |
| 10 | CO | in | |
| 11 | WONO | in | |
| 12 | WOTYPE | in | |
| 13 | COMP | in | |
| 14 | NEWREC | inout | New component record; modified during processing |
| 15 | FUNC | in | |
| 16 | FINSTAT | in |
Tables Referenced: ALLOCXREF, BMF.NOTES, CO.STDS.WIP, ITEMMANF, ITEMQTY, OPENWO, PRODUCT, WIPBMF, WIPBMFCOST, WIPBMF.NOTES
Tables Written: ALLOCXREF, ITEMMANF, ITEMQTY, OPENWO, WIPBMF, WIPBMFCOST, WIPBMF.NOTES
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_A7280",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"15": "",
"16": ""
}
}VB_ACCOUNT.REV1
Signature: SUBROUTINE VB_ACCOUNT(CO,REQTYPE,ACCTNO,A1287REC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACCOUNT.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Saves or deletes an account (customer) record. When REQTYPE is DELETE, removes the account from ACCOUNT.1287. Otherwise converts the dimensioned A1287REC array and writes it to ACCOUNT.1287. Logs changes via VB_S0910. |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type; DELETE triggers record removal |
| 2 | ACCOUNTNO | in | Account number used as part of the file key |
| 3 | A1287REC | in | Dimensioned account record array to be written via MATWRITE to ACCOUNT.1287 |
| 4 | ADDFLAG | in | Add flag (passed to audit subroutine for add vs change tracking) |
| 5 | MESSAGE | out | Error or status message returned to caller |
Tables Referenced: ACCOUNT.1287
Tables Written: ACCOUNT.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACCOUNT.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_ACCOUNTLIST
Signature: SUBROUTINE VB_ACCOUNTLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACCOUNTLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 4 |
| Description | Returns a list of account numbers and names. Executes a SQL SELECT against the ACCOUNT file, then reads each selected record to build a two-column output array (account number and name). Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | SQL | in | SQL SELECT statement to filter accounts |
| 2 | DATA | out | Multi-valued result: <1>=account numbers, <2>=account names |
| 3 | MESSAGE | out | Error message if file open or read fails |
Tables Referenced: ACCOUNT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACCOUNTLIST",
"args": {
"0": "",
"1": ""
}
}VB_ACCOUNTLIST.REV1
Signature: SUBROUTINE VB_ACCOUNTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACCOUNTLIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_ACCOUNTLIST.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACCOUNTLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_ACCOUNTLIST.REV2
Signature: SUBROUTINE VB_ACCOUNTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACCOUNTLIST.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_ACCOUNTLIST.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACCOUNTLIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_ACCOUNTLIST.REV3
Signature: SUBROUTINE VB_ACCOUNTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACCOUNTLIST.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns an extended account list with 14 columns including sector, industry class, location, PTI sales group, account type, and custom fields. Supports both SQL query and pre-built ID list inputs. Joins data from ACCOUNT.1287, INDSECTOR.1287, INDCLASS, EMPLOYEE.PUBLIC.1287, and ACCOUNTTYPE.1287. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Pre-built list of account IDs (alternative to SQL) |
| 2 | SQL | in | SQL SELECT statement to filter accounts (alternative to IDLIST) |
| 3 | DATA | out | Multi-valued result with 14 attributes: account number, name, sector, industry, location, PTI sales, class, type name, and custom fields |
| 4 | MESSAGE | out | Error message if file open or read fails |
Tables Referenced: ACCOUNT.1287, ACCOUNTTYPE.1287, EMPLOYEE.PUBLIC.1287, INDCLASS, INDSECTOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACCOUNTLIST.REV3",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_ACTIVITY.REV1
Signature: SUBROUTINE VB_ACTIVITY.REV1(CO,REQTYPE,ACTNO,ACTREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACTIVITY.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Saves or deletes an activity log record. When REQTYPE is DELETE, removes the record from ACTIVITY.LOG.1287. Otherwise converts the dimensioned ACTREC array and writes it to ACTIVITY.LOG.1287. Logs changes via VB_S0910. |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type; DELETE triggers record removal |
| 2 | ACTID | in | Activity log record ID |
| 3 | ACTREC | in | Dimensioned activity log record array to be written via MATWRITE |
| 4 | ADDFLAG | in | Add flag (passed to audit subroutine for add vs change tracking) |
| 5 | MESSAGE | out | Error or status message returned to caller |
Tables Referenced: ACTIVITY.LOG.1287
Tables Written: ACTIVITY.LOG.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACTIVITY.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_ACTIVITYLIST
Signature: SUBROUTINE VB_ACTIVITYLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACTIVITYLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 4 |
| Description | Returns an activity log list via SQL query. Executes a SQL SELECT against ACTIVITY.LOG.1287, then reads each selected record and joins employee name from EMPLOYEE.PUBLIC.1287, account name from ACCOUNT.1287, and activity type from ACTIVITYTYPE.1287. Returns a 7-column result array. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | SQL | in | SQL SELECT statement to filter activity log records |
| 2 | DATA | out | Multi-valued result with 7 attributes: activity ID, date, employee name, account name, type, subject, and detail |
| 3 | MESSAGE | out | Error message if file open or read fails |
Tables Referenced: ACCOUNT.1287, ACTIVITY.LOG.1287, ACTIVITYTYPE.1287, EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACTIVITYLIST",
"args": {
"0": "",
"1": ""
}
}VB_ACTIVITYLIST.REV2
Signature: SUBROUTINE VB_ACTIVITYLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ACTIVITYLIST.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns an activity log list using BSELECT with support for ID list or SQL input. Reads each selected record and joins employee name, account name, and activity type. Returns a 10-column result array with additional fields (employee number, account number, completed flag) compared to REV1. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Pre-built list of activity log IDs (alternative to SQL) |
| 2 | SQL | in | SQL SELECT statement to filter activity log records (alternative to IDLIST) |
| 3 | DATA | out | Multi-valued result with 10 attributes: activity ID, date, employee name/number, account name/number, type, subject, detail, completed |
| 4 | MESSAGE | out | Error message if file open or read fails |
Tables Referenced: ACCOUNT.1287, ACTIVITY.LOG.1287, ACTIVITYTYPE.1287, EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ACTIVITYLIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_AFTECDOC
Signature: SUBROUTINE VB_AFTECDOC(FILENAME,DOCNAME,TEXTFILE,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_AFTECDOC
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Reads documentation text files with support for nested .READ directives (up to 3 levels). Opens the named documentation file, reads its contents line by line, and recursively includes referenced files. Returns the assembled text and any error messages. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DOCNAME | inout | Documentation file name to read; may be modified during nested .READ processing |
| 1 | TEXTFILE | out | Assembled text content from the documentation file and any nested includes |
| 2 | ERRMSG | out | Error message if file cannot be opened or read |
Tables Referenced: AFTEC.DOC
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_AFTECDOC",
"args": {
}
}VB_BKPLOT.1.REV1
Signature: SUBROUTINE VB_BKPLOT(CO,STOPCOMPONENT,PRN_LAYOUT,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BKPLOT.1.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 5 |
| Description | BOM explosion for book plot reports. Reads the product structure recursively to build a flattened bill of material, writes results to WORK.BKPLOTA.1287 staging file, and optionally updates the BK.HDR tracking record. Returns the exploded BOM data for reporting. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | PARTNO | in | Part number for BOM explosion |
| 2 | OPTIONS | in | Options flags controlling explosion depth and output format |
| 3 | DATA | out | Exploded BOM data result |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: BMF, CO.STDS.WIP, PRODUCT, WORK.BKPLOTA.1287
Tables Written: BK.HDR, WORK.BKPLOTA.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BKPLOT.1.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_BKPLOTA.REV1
Signature: SUBROUTINE VB_BKPLOTA(PLOTTYPE,DRAWLIST,PLOTINFO,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BKPLOTA.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 4 |
| Description | Generates CAD book plots by exploding BOM tree, building drawing lists, and sending plot requests. Creates headers for book plot batches. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PLOTTYPE | in | Company number |
| 1 | DRAWLIST | in | Top-level assembly part number |
| 2 | PLOTINFO | in | Book plot type or configuration |
| 3 | MSG | out | Return message (status/error) |
Tables Referenced: COACCESS, GL-COMPANY, ITEMMANF, PRODUCT, BMF, PLOT.PARAMS, LOCKFILE, PRODUCT.1287, BMF.1287
Tables Written: WORK.BKPLOTA.1287, BK.HDR, WPDOCS, LOCKFILE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BKPLOTA.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_BLIST.REV1
Signature: SUBROUTINE VB_BLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Utility |
| Args | 5 |
| Description | Executes a SQL/UniQuery select statement and returns the resulting list of keys. Used as a generic query executor. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | SQL/UniQuery SELECT statement to execute |
| 2 | SQL | in | Unused/reserved |
| 3 | DATA | out | Resulting select list of keys |
| 4 | MESSAGE | out | Return message (status/error) |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_BMF.REV1
Signature: SUBROUTINE VB_BMF(CO,REQTYPE,ASSYNO,COMPNO,REV,BMFREC,BMF1287REC,NREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BMF.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 10 |
| Description | Saves, updates, or deletes BMF (Bill of Material File) records based on REQTYPE. Handles BMF, BMF.1287, and BMF.NOTES records with audit trail support. |
| Dangerous REQTYPE | DELETE, SAVENOTE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type (DELETE, SAVENOTE, or save) |
| 2 | ASSYNO | in | Assembly part number |
| 3 | COMPNO | in | Component part number |
| 4 | REV | in | Revision level |
| 5 | BMFREC | in | BMF record data to write |
| 6 | BMF1287REC | in | BMF.1287 record data to write |
| 7 | NREC | in | Notes record data to write |
| 8 | ADDFLAG | in | Add flag (true=add, false=update) |
| 9 | MESSAGE | out | Return message (status/error) |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, CO.STDS.COST, CO.STDS.ENG, CO.STDS.CONF, ECN.DOCHIST, ECN.HEAD, EBATERR, ENG.STAT.MASTER.1287, GL-COMPANY, ITEMMANF, OPERATION, PRODUCT, PRODUCT.1287, PRODXREF, REVXREF, SP.CAT.1287, TRANSREG, PASSWORDS
Tables Written: BMF, BMF.1287, BMF.NOTES, PRODUCT.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BMF.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": ""
}
}VB_BMFUPDT.REV1
Signature: SUBROUTINE VB_BMFUPDT(BMF,BMF.NOTES,EBATERR,DEBATERR,ITEMMANF,PRODUCT,REVXREF,CO,ASSY,COMP,REV,BREC,ACTION,MODE,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BMFUPDT.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 15 |
| Description | Updates BMF linked-list pointers (first/next/previous component, first/next/previous where-used) in BMF and ITEMMANF files. Internal routine called by BOM management programs. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | BMF | in | BMF file handle |
| 1 | BMF.NOTES | in | ITEMMANF file handle |
| 2 | EBATERR | in | PRODUCT file handle |
| 3 | DEBATERR | in | EBATERR file handle |
| 4 | ITEMMANF | in | D_EBATERR dict file handle |
| 5 | PRODUCT | in | GL-COMPANY file handle |
| 6 | REVXREF | in | PRODXREF file handle |
| 7 | CO | in | Company number |
| 8 | ASSY | in | Assembly part number |
| 9 | COMP | in | Component part number |
| 10 | REV | in | Action code (A=add, D=delete) |
| 11 | BREC | inout | BMF record (read/modified in place) |
| 12 | ACTION | in | Revision level |
| 13 | MODE | in | Mode (B=batch, O=online) |
| 14 | MSG | out | Return message (status/error) |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BMFUPDT.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"12": "",
"13": ""
}
}VB_BOMEXPLORER.1
Signature: SUBROUTINE VB_BOMEXPLORER(TOPPART,PARTDATA,GTCODEDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_BOMEXPLORER.3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | TOPPART | in | |
| 1 | PARTDATA | out | |
| 2 | GTCODEDATA | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.1",
"args": {
"0": ""
}
}VB_BOMEXPLORER.1.REV2
Signature: SUBROUTINE VB_BOMEXPLORER(TOPPART,PARTDATA,GTCODEDATA,SEQDATA,UMDATA,QTYDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.1.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_BOMEXPLORER.1.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | TOPPART | in | |
| 1 | PARTDATA | out | |
| 2 | GTCODEDATA | out | |
| 3 | SEQDATA | out | |
| 4 | UMDATA | out | |
| 5 | QTYDATA | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.1.REV2",
"args": {
"0": ""
}
}VB_BOMEXPLORER.1.REV3
Signature: SUBROUTINE VB_BOMEXPLORER(CO,TOPPART,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.1.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Returns single-level BOM data for a given assembly. Provides part numbers, GT codes, sequences, units of measure, quantities, and descriptions. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | TOPPART | in | Assembly part number |
| 2 | DATA | out | Returned BOM data (parts, GT codes, seq, UM, qty, desc) |
Tables Referenced: PRODUCT, ITEMMANF, BMF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.1.REV3",
"args": {
"0": "",
"1": ""
}
}VB_BOMEXPLORER.2
Signature: SUBROUTINE VB_BOMEXPLORER.2(SONO,PARTS,GTCODES)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_BOMEXPLORER.3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SONO | in | |
| 1 | PARTS | in | |
| 2 | GTCODES | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.2",
"args": {
"0": "",
"1": ""
}
}VB_BOMEXPLORER.2.REV2
Signature: SUBROUTINE VB_BOMEXPLORER.2(SONO,PARTS,GTCODES,LINES,UMS,QTYS)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.2.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_BOMEXPLORER.2.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SONO | in | |
| 1 | PARTS | in | |
| 2 | GTCODES | in | |
| 3 | LINES | in | |
| 4 | UMS | in | |
| 5 | QTYS | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.2.REV2",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_BOMEXPLORER.2.REV3
Signature: SUBROUTINE VB_BOMEXPLORER.2(CO,SONO,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.2.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Returns BOM data for a sales order by reading SO line items and resolving their BOM structures. Includes order quantities and line details. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | SONO | in | Sales order number |
| 2 | DATA | out | Returned BOM data for all SO lines |
Tables Referenced: OPEN.ORD.LINE, OPEN.ORD.HEAD, PRODUCT, ITEMMANF, BMF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.2.REV3",
"args": {
"0": "",
"1": ""
}
}VB_BOMEXPLORER.3
Signature: SUBROUTINE VB_BOMEXPLORER(TOPPART,PARTDATA,GTCODEDATA,SEQDATA,UMDATA,QTYDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 6 |
| Description | Older BOM explorer that resolves product-to-physical part number mappings via PRODUCT.1287. Returns data in 5 separate output arguments. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | TOPPART | in | Assembly part number (company!partno format) |
| 1 | PARTDATA | out | Returned component part numbers |
| 2 | GTCODEDATA | out | Returned GT codes |
| 3 | SEQDATA | out | Returned sequence numbers |
| 4 | UMDATA | out | Returned units of measure |
| 5 | QTYDATA | out | Returned quantities |
Tables Referenced: PRODUCT, PRODUCT.1287, ITEMMANF, BMF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.3",
"args": {
"0": ""
}
}VB_BOMEXPLORER.3.REV3
Signature: SUBROUTINE VB_BOMEXPLORER(CO,TOPPART,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMEXPLORER.3.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Company-aware BOM explorer that resolves product-to-physical part number mappings via PRODUCT.1287. Returns consolidated data in a single output argument. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | TOPPART | in | Assembly part number |
| 2 | DATA | out | Returned BOM data with physical/product resolution |
Tables Referenced: PRODUCT, PRODUCT.1287, ITEMMANF, BMF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMEXPLORER.3.REV3",
"args": {
"0": "",
"1": ""
}
}VB_BOMLIST.REV1
Signature: SUBROUTINE VB_BOMLIST(CO,ASSYNO,BMFDATA,BMFNOTES,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Returns single-level BOM with 13 attributes per component (part, seq, desc, status, MRP, qty, UM, MTBF, spare, category, rec qty, in manual, manufacturer) plus line notes. Has sunset date check (09/30/21). |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | ASSYNO | in | Assembly part number |
| 2 | BMFDATA | out | Returned BOM data array (13 attributes per component) |
| 3 | BMFNOTES | out | Returned BOM line notes array |
| 4 | MESSAGE | out | Return message (status/error) |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, GL-COMPANY, ITEMMANF, PRODUCT, PRODUCT.1287, PRODXREF, JOBMASTER.1287, OPENWO
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMLIST.REV1",
"args": {
"0": "",
"1": ""
}
}VB_BOMLIST.REV1_DOTNET
Signature: SUBROUTINE VB_BOMLIST(CO,ASSYNO,BMFDATA,BMFNOTES,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMLIST.REV1_DOTNET
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_BOMLIST.REV1 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | ASSYNO | in | |
| 2 | BMFDATA | out | |
| 3 | BMFNOTES | in | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMLIST.REV1_DOTNET",
"args": {
"0": "",
"1": "",
"3": ""
}
}VB_BOMLIST.REV1A
Signature: SUBROUTINE VB_BOMLIST(CO,ASSYNO,BMFDATA,BMFNOTES,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMLIST.REV1A
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Returns single-level BOM with 13 attributes per component plus line notes. Same as REV1 but without sunset date check. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | ASSYNO | in | Assembly part number |
| 2 | BMFDATA | out | Returned BOM data array (13 attributes per component) |
| 3 | BMFNOTES | out | Returned BOM line notes array |
| 4 | MESSAGE | out | Return message (status/error) |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, GL-COMPANY, ITEMMANF, PRODUCT, PRODUCT.1287, PRODXREF, JOBMASTER.1287, OPENWO
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMLIST.REV1A",
"args": {
"0": "",
"1": ""
}
}VB_BOMNOTROUTED.REV1
Signature: SUBROUTINE VB_BOMNOTROUTED.REV1(CO,REQTYPE,INCL.PARTS,NUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMNOTROUTED.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_BOMNOTROUTED.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INCL.PARTS | in | |
| 3 | NUMBER | in | |
| 4 | DATA | out | |
| 5 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMNOTROUTED.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_BOMNOTROUTED.REV2
Signature: SUBROUTINE VB_BOMNOTROUTED.REV1(CO,REQTYPE,INCL.PARTS,NUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMNOTROUTED.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_BOMNOTROUTED.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INCL.PARTS | in | |
| 3 | NUMBER | in | |
| 4 | DATA | out | |
| 5 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMNOTROUTED.REV2",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_BOMNOTROUTED.REV3
Signature: SUBROUTINE VB_BOMNOTROUTED.REV1(CO,REQTYPE,INCL.PARTS,NUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMNOTROUTED.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Inquiry |
| Args | 6 |
| Description | Explodes multi-level BOM for non-routed parts. Returns 27 attributes per component including inventory data, costs, and lead times. Supports SO, PART, and PAINT request types. Deletes empty BMF.NOTES records. |
| Safe REQTYPE | SO, PART, PAINT |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type (SO, PART, or PAINT) |
| 2 | INCL.PARTS | in | Part number or SO number depending on REQTYPE |
| 3 | NUMBER | in | Revision level or SO line number |
| 4 | DATA | out | Returned BOM explosion data (27 attributes per component) |
| 5 | MESSAGE | out | Return message (status/error) |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, PRODUCT, PRODUCT.1287, ITEMMANF, ITEMQTY, GL-COMPANY, OPERATION, PRODXREF, OPEN.ORD.LINE, REVXREF, CO.STDS.ENG, JOBMASTER.1287, OPENWO
Tables Written: BMF.NOTES
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMNOTROUTED.REV3",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_BOMX.REV1
Signature: SUBROUTINE BOMX(CO,REQTYPE,INCL.PARTS,MLEVEL,LDS,NUMBER,TQTY,TWBS,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_BOMX.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 10 |
| Description | Multi-level BOM explosion for PART, SO, or JOB request types. Returns 20 attributes per component including inventory quantities, costs, lead times, and where-used data. |
| Safe REQTYPE | SO, PART, JOB |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type (SO, PART, or JOB) |
| 2 | INCL.PARTS | in | Part number, SO number, or job/WO number |
| 3 | MLEVEL | in | Revision level or line number |
| 4 | LDS | in | Unused/reserved |
| 5 | NUMBER | in | Unused/reserved |
| 6 | TQTY | in | Unused/reserved |
| 7 | TWBS | in | Unused/reserved |
| 8 | DATA | out | Returned BOM explosion data (20 attributes per component) |
| 9 | MESSAGE | out | Return message (status/error) |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, PRODUCT, PRODUCT.1287, ITEMMANF, ITEMQTY, GL-COMPANY, OPERATION, PRODXREF, OPEN.ORD.LINE, REVXREF, CO.STDS.ENG, JOBMASTER.1287, OPENWO, WIPBMF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_BOMX.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": ""
}
}VB_C7270
Signature: SUBROUTINE C7270(ITEMQTY,ALLOCXREF,ITEMMANF,WIPBMF,OPENWO,PRODUCT,CO,WONO,ASSY,FCOMP,ORIGORDQTY,WOTYPE,OWOTYPE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_C7270
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 13 |
| Description | Recalculates WIP BOM allocation quantities in WIPBMF and ALLOCXREF when work order quantities change. Internal routine that receives file handles as arguments. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ITEMQTY | in | ITEMQTY file handle |
| 1 | ALLOCXREF | in | ALLOCXREF file handle |
| 2 | ITEMMANF | in | ITEMMANF file handle |
| 3 | WIPBMF | in | WIPBMF file handle |
| 4 | OPENWO | in | OPENWO file handle |
| 5 | PRODUCT | in | PRODUCT file handle |
| 6 | CO | in | Company number |
| 7 | WONO | in | Work order number |
| 8 | ASSY | in | Assembly part number |
| 9 | FCOMP | in | First component in BOM linked list |
| 10 | ORIGORDQTY | in | Original order quantity |
| 11 | WOTYPE | in | New work order type |
| 12 | OWOTYPE | in | Old work order type |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_C7270",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": ""
}
}VB_C7285
Signature: SUBROUTINE VB_C7285(ALLOCXREF,ITEMQTY,PRODUCT,WIPBMF,CO,WONO,FCOMP,WOTYPE,CONAME,BEL,CES)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_C7285
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 11 |
| Description | Closes out WIP BOM allocations when a work order is completed or closed. Internal routine that receives file handles as arguments. Removes allocation records and updates inventory quantities. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ALLOCXREF | in | ITEMQTY file handle |
| 1 | ITEMQTY | in | ALLOCXREF file handle |
| 2 | PRODUCT | in | ITEMMANF file handle |
| 3 | WIPBMF | in | WIPBMF file handle |
| 4 | CO | in | OPENWO file handle |
| 5 | WONO | in | PRODUCT file handle |
| 6 | FCOMP | in | Company number |
| 7 | WOTYPE | in | Work order number |
| 8 | CONAME | in | Assembly part number |
| 9 | BEL | in | First component in BOM linked list |
| 10 | CES | in | Cost element structure data |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_C7285",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": ""
}
}VB_CA1768
Signature: SUBROUTINE VB_CA1768(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CA1768
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Generates Outside Operation Receipts Register report. Reads vendor receipt transactions and produces a summary report written to WORK1768. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input data array (company, fiscal period) |
| 1 | DATAOUT | in | Unused/reserved |
| 2 | MESSAGE | out | Return message (status/error) |
Tables Referenced: GL-COMPANY, GL.CHARTS, VENDOR, OPENPO, OPENPO.1287, CLOSEDPO, CLOSEDPO.1287, WORK1768
Tables Written: WORK1768
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CA1768",
"args": {
"0": "",
"1": ""
}
}VB_CA1768C
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CA1768C
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 0 |
| Description | Standalone program fragment (no SUBROUTINE declaration) that reads GL.CHARTS, GL-COMPANY, and WORK1768 data. Appears to be a continuation or include segment for CA1768 processing. |
Tables Referenced: GL.CHARTS, GL-COMPANY, WORK1768
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CA1768C",
"args": {
}
}VB_CA1803
Signature: SUBROUTINE VB_CA1803(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CA1803
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Generates Inventory Valuation Report. Reads product and inventory data, calculates valuations, and writes results to WORKPBS1803.1287. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input data array (company, report parameters) |
| 1 | DATAOUT | in | Unused/reserved |
| 2 | MESSAGE | out | Return message (status/error) |
Tables Referenced: GL-COMPANY, GL.CHARTS, PRODUCT, ITEMQTY, ITEMMANF, CO.STDS.COST, OPERATION
Tables Written: WORKPBS1803.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CA1803",
"args": {
"0": "",
"1": ""
}
}VB_CA1832
Signature: SUBROUTINE VB_CA1832(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CA1832
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Generates Open Work Order Report by G/L account. Reads open work orders and calculates WIP costs by G/L classification. Writes to WIPCOST.1287, JOB.IP.1287, and OPENWO. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input data array (company, report parameters) |
| 1 | DATAOUT | in | Unused/reserved |
| 2 | MESSAGE | out | Return message (status/error) |
Tables Referenced: GL-COMPANY, GL.CHARTS, OPENWO, WIPBMF, WIPLAB, JOBMASTER, JOBMASTER.1287, PRODUCT, ITEMMANF, OPERATION, CO.STDS.COST
Tables Written: WIPCOST.1287, JOB.IP.1287, OPENWO
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CA1832",
"args": {
"0": "",
"1": ""
}
}VB_CHKCHANGE
Signature: SUBROUTINE VB_ENGCHGLIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CHKCHANGE
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Lists engineering change notices. File contains VB_ENGCHGLIST source code. DATA argument is inout: passes search filter criteria in, receives results out. Reads ENG.CHG.1287. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | inout | Search filter criteria (in) / result data (out) |
| 1 | MESSAGE | out | Return message (status/error) |
Tables Referenced: ENG.CHG.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CHKCHANGE",
"args": {
}
}VB_COCELIST
Signature: SUBROUTINE VB_COCELIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_COCELIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a sorted list of cost center (COCE) numbers and descriptions. Reads the COCE table and builds a two-attribute response array. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | Returned cost center data (numbers and descriptions) |
| 1 | MESSAGE | out | Return message (status/error) |
Tables Referenced: COCE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_COCELIST",
"args": {
}
}VB_COMPETITORLIST.REV1
Signature: SUBROUTINE VB_COMPETITORLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_COMPETITORLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of competitors with their numbers and names from COMPETITOR.1287, filtered by SQL query or ID list |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-mark delimited list of competitor IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to filter competitors |
| 3 | DATA | out | Multi-valued array: <1>=competitor number, <2>=name |
| 4 | MESSAGE | out | Error message if any |
Tables Referenced: COMPETITOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_COMPETITORLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_CONTACTLIST
Signature: SUBROUTINE VB_CONTACTLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CONTACTLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Returns a list of contacts from CONTACT.1287 based on an SQL query, including name, company, address, and phone details |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to filter contacts |
| 1 | DATA | out | Multi-valued array: contact no, first name, last name, company, address, city, state, country, zip, phone |
| 2 | MESSAGE | out | Error message if any |
Tables Referenced: CONTACT.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CONTACTLIST",
"args": {
"0": ""
}
}VB_CONTACTLIST.REV1
Signature: SUBROUTINE VB_CONTACTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CONTACTLIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_CONTACTLIST.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CONTACTLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_CONTACTLIST.REV2
Signature: SUBROUTINE VB_CONTACTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CONTACTLIST.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a contact list from CONTACT.1287 using BSELECT for performance, filtered by SQL query or ID list, with department field |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-mark delimited list of contact IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to filter contacts |
| 3 | DATA | out | Multi-valued array: contact no, first name, last name, company, address, city, state, country, zip, dept |
| 4 | MESSAGE | out | Error message if any |
Tables Referenced: CONTACT.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CONTACTLIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_CONTACTS
Signature: SUBROUTINE VB_CONTACTS(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CONTACTS
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Returns contact details from CONTACT.1287 based on an SQL query, including name, phone, address, and company information |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to filter contacts |
| 1 | DATA | out | Multi-valued array: contact no, first name, last name, phone, address, city, state, country, zip, company |
| 2 | MESSAGE | out | Error message if any |
Tables Referenced: CONTACT.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CONTACTS",
"args": {
"0": ""
}
}VB_CONVERTNCN
Signature: SUBROUTINE VB_ENGCHGLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CONVERTNCN
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Reads NCN records from NCN.1287 based on an SQL query and returns all 53 fields as a data array |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to filter NCN records |
| 1 | DATA | inout | Input: search criteria; Output: multi-valued array of NCN fields |
| 2 | MESSAGE | out | Error message if any |
Tables Referenced: NCN.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CONVERTNCN",
"args": {
"0": ""
}
}VB_CUSTOMERLIST
Signature: SUBROUTINE VB_CUSTOMERLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CUSTOMERLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Returns a customer list from CUSTOMER and CREDIT files based on SQL query, including name, phone, fax, contact, class, and credit hold |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to filter customers |
| 1 | DATA | out | Multi-valued array: customer no, name, phone, fax, contact, class, credit hold, address, city |
| 2 | MESSAGE | out | Error message if any |
Tables Referenced: CUSTOMER, CREDIT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CUSTOMERLIST",
"args": {
"0": ""
}
}VB_CUSTOMERLIST.REV1
Signature: SUBROUTINE VB_CUSTOMERLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_CUSTOMERLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a customer list from CUSTOMER and CREDIT files, filtered by SQL query or ID list, with company-prefixed keys |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-mark delimited list of customer IDs |
| 2 | SQL | in | SQL SELECT statement to filter customers |
| 3 | DATA | out | Multi-valued array: customer no, name, phone, fax, contact, class, credit hold, address, city |
| 4 | MESSAGE | out | Error message if any |
Tables Referenced: CUSTOMER, CREDIT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_CUSTOMERLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_D7270
Signature: SUBROUTINE D7270 (BMF,ITEMQTY,ALLOCXREF,ITEMMANF,WIPBMF,WIPBMF.NOTES,WIPBMFCOST,OPENWO,CA.XREF,CO,WONO,ASSY,COMP,WOTYPE,JOBNO,CANO,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_D7270
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Process |
| Args | 17 |
| Description | Internal subroutine that deletes WIP-BOM links and updates ITEMMANF/ITEMQTY records for work order component removal |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | BMF | in | File handle to BMF table |
| 1 | ITEMQTY | in | File handle to ITEMQTY table |
| 2 | ALLOCXREF | in | File handle to ALLOCXREF table |
| 3 | ITEMMANF | in | File handle to ITEMMANF table |
| 4 | WIPBMF | in | File handle to WIPBMF table |
| 5 | WIPBMF.NOTES | in | File handle to WIPBMF.NOTES table |
| 6 | WIPBMFCOST | in | File handle to WIPBMFCOST table |
| 7 | OPENWO | in | File handle to OPENWO table |
| 8 | CA.XREF | in | File handle to CA.XREF table |
| 9 | CO | in | Company number |
| 10 | WONO | in | Work order number |
| 11 | ASSY | in | Assembly part number |
| 12 | COMP | in | Component part number |
| 13 | WOTYPE | in | Work order type |
| 14 | JOBNO | in | Job number |
| 15 | CANO | in | CA number |
| 16 | MSG | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_D7270",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": ""
}
}VB_DATE.PLAN
Signature: SUBROUTINE DATE.PLAN(CAP.REQ.LAB,CAP.REQ.LAB.XREF,CAP.REQ.MACH,CAP.REQ.MACH.XREF,CAP.SIM.LAB,CAP.SIM.LAB.XREF,CAP.SIM.MACH,CAP.SIM.MACH.XREF,OPENWO,OPENWO.SIM,SF.CAL,SF.CAL.WOCE,ROUTELINEFILE,WOCE,CO,WO.PART,HEADID,SLN,SLREC,SDTE,LASTLINE,FB,CLERICAL,ERRCODE,ERRDATE,ERRDATE2,ERRLN,ERROP,ERRWKCEN,ONESHOT,STD,SQTY,YQFLAG,STDREC,SIMULATION,DUMMY1,DUMMY2)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_DATE.PLAN
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Process |
| Args | 37 |
| Description | Internal subroutine that performs complex date planning and scheduling for work order route lines, calculating start/due dates based on capacity and calendar |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ROUTELINEFILE | in | File handle to ROUTELINE table |
| 1 | WORKCENTERFILE | in | File handle to WORKCENTER table |
| 2 | CALENDARFILE | in | File handle to CALENDAR table |
| 3 | OPENWOFILE | in | File handle to OPENWO table |
| 4 | WCCAPFILE | in | File handle to WCCAP table |
| 5 | WCCAPDAYFILE | in | File handle to WCCAPDAY table |
| 6 | PRODUCTFILE | in | File handle to PRODUCT table |
| 7 | SHIFTDEFFILE | in | File handle to SHIFTDEF table |
| 8 | ROUTELINKFILE | in | File handle to ROUTELINK table |
| 9 | WCOVERRIDESFILE | in | File handle to WC.OVERRIDES table |
| 10 | WCSHIFTFILE | in | File handle to WC.SHIFT table |
| 11 | EMPPUBFILE | in | File handle to EMPLOYEE.PUBLIC table |
| 12 | LABORHEADERFILE | in | File handle to LABORHEADER table |
| 13 | WCSUMMARYFILE | in | File handle to WCSUMMARY table |
| 14 | CO | in | Company number |
| 15 | WESSION | in | Work order number |
| 16 | KEY | in | Route key |
| 17 | DIRECTION | in | Schedule direction (F=Forward, B=Backward) |
| 18 | STARTDATE | in | Start or due date |
| 19 | QTY | in | Quantity to schedule |
| 20 | MODE | in | Scheduling mode flags |
| 21 | OVERLAP | in | Overlap control |
| 22 | FINITE | in | Finite/infinite scheduling flag |
| 23 | ERRFLAG | out | Error flag |
| 24 | ERRMSG | out | Error message |
| 25 | CALCSTART | out | Calculated start date |
| 26 | CALCDUE | out | Calculated due date |
| 27 | RESULTS | out | Schedule results array |
| 28 | CAPRESULTS | out | Capacity results array |
| 29 | SETUPHRS | in | Setup hours override |
| 30 | RUNHRS | in | Run hours override |
| 31 | MOVEDAYS | in | Move days override |
| 32 | QUEUEDAYS | in | Queue days override |
| 33 | EFFICIENCY | in | Efficiency override |
| 34 | UTILIZATION | in | Utilization override |
| 35 | CREWSIZE | in | Crew size override |
| 36 | MACHINES | in | Machines override |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_DATE.PLAN",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"29": "",
"30": "",
"31": "",
"32": "",
"33": "",
"34": "",
"35": "",
"36": ""
}
}VB_DELETE.SIM
Signature: SUBROUTINE VB_DELETE.SIM(INDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_DELETE.SIM
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 2 |
| Description | Deletes simulated work order data from OPENWO.SIM, WIPROUTE.SIM.HEAD, and WIPROUTE.SIM.LINE tables |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Multi-valued input: <1>=company, <2>=work order list |
| 1 | MESSAGE | out | Error message if any |
Tables Referenced: OPENWO.SIM, WIPROUTE.SIM.HEAD, WIPROUTE.SIM.LINE
Tables Written: OPENWO.SIM, WIPROUTE.SIM.HEAD, WIPROUTE.SIM.LINE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_DELETE.SIM",
"args": {
"0": ""
}
}VB_DELETE_PDM
Signature: SUBROUTINE DELETE_PDM(INREC,OUTREC,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_DELETE_PDM
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 3 |
| Description | Deletes PDM records from PDM.1287 and updates cross-reference via VB_PDMXREF |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INREC | in | Input record: <1>=company, <2>=PDM ID to delete |
| 1 | OUTREC | out | Output record (empty on success) |
| 2 | MESSAGE | out | Error message if any |
Tables Referenced: PDM.1287
Tables Written: PDM.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_DELETE_PDM",
"args": {
"0": ""
}
}VB_DELETE0001
Signature: SUBROUTINE VB_DELETE0001(CO,PARTNO,PARTREC,PROBLEM)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_DELETE0001
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 3 |
| Description | Deletes a part number and all related records across 15+ tables with validation checks for open orders, lots, and revisions |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | PARTREC | in | Part record used for audit trail logging |
| 2 | PROBLEM | out | Error/problem description if deletion cannot proceed |
Tables Referenced: ITEMQTY, LOTXREF, REVXREF, ITEMMANF, REQ, PASSWORDS
Tables Written: PRODUCT.1287, PRODUCT, ITEMCA, ITEMQTY, ITEMORD, ITEMMANF, ITEMHIST, PRODUCT.NOTES, PRD.PRICE, POPRTSPEC, PVXREF, PRODVEND, PRODXREF, XREFINDEX, REFXPROD, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_DELETE0001",
"args": {
"0": "",
"1": ""
}
}VB_DICTLIST.REV1
Signature: SUBROUTINE VB_DICTLIST(DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_DICTLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 1 |
| Description | Returns a list of files from VOC that have associated D_ dictionary files |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | Multi-valued list of file names that have D_ dictionaries |
Tables Referenced: VOC
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_DICTLIST.REV1",
"args": {
}
}VB_DIRDEPOSITLIST.REV1
Signature: SUBROUTINE VB_DIRDEPOSITLIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_DIRDEPOSITLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a list of employee direct deposit accounts from EMPLOYEE and DIRDEP.1287 tables |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | Multi-valued array: employee no, name, bank, account, routing, amount, type |
| 1 | MESSAGE | out | Error message if any |
Tables Referenced: EMPLOYEE, DIRDEP.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_DIRDEPOSITLIST.REV1",
"args": {
}
}VB_E0052A
Signature: SUBROUTINE E0052A(CO,ASSY,COMP,REV,BREC,ACTION,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_E0052A
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Process |
| Args | 7 |
| Description | Adds or deletes BOM structure links between assembly and component parts, updating BMF, ITEMMANF, and revision cross-references |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | ESSION | in | Assembly part number |
| 2 | COMP | in | Component part number |
| 3 | ACTION | in | Action: A=Add, D=Delete |
| 4 | BREC | inout | BOM record data (input for delete, output after add/update) |
| 5 | REV | in | Revision level |
| 6 | ERRMSG | out | Error message if any |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, ITEMMANF, PRODUCT, PRODUCT.1287, REVXREF
Tables Written: BMF, BMF.1287, BMF.NOTES, ITEMMANF, PRODUCT.1287, REVXREF, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_E0052A",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"5": ""
}
}VB_E0052A.REV1
Signature: SUBROUTINE VB_E0052A(CO,ASSY,COMP,REV,BREC,ACTION,MODE,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_E0052A.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Process |
| Args | 8 |
| Description | Enhanced BOM structure link manager with batch mode support, adds or deletes BOM links with optional batch error logging |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | ESSION | in | Assembly part number |
| 2 | COMP | in | Component part number |
| 3 | ACTION | in | Action: A=Add, D=Delete |
| 4 | BREC | inout | BOM record data (input for delete, output after add/update) |
| 5 | REV | in | Revision level |
| 6 | MODE | in | Mode: O=Online, B=Batch |
| 7 | MESSAGE | out | Error message if any |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, ITEMMANF, PRODUCT, PRODUCT.1287, REVXREF
Tables Written: BMF, BMF.1287, BMF.NOTES, ITEMMANF, PRODUCT.1287, REVXREF, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_E0052A.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"5": "",
"6": ""
}
}VB_E0065.REV1
Signature: SUBROUTINE VB_E0065(CO,ASSY,REV,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_E0065.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 4 |
| Description | Deletes an entire single-level BOM by iterating all components and calling VB_E0052A.REV1 to remove each link |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | ESSION | in | Assembly part number whose BOM is being deleted |
| 2 | REV | in | Revision level |
| 3 | MESSAGE | out | Error message if any |
Tables Referenced: BMF, BMF.1287, BMFLOCK, ITEMMANF, PRODUCT.1287, REVXREF
Tables Written: BMF, BMF.1287, BMF.NOTES, BMFLOCK, ITEMMANF, PRODUCT.1287, REVXREF, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_E0065.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_EMPLOYEELIST
Signature: SUBROUTINE VB_EMPLOYEELIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_EMPLOYEELIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a list of employee titles from EMPLOYEE.PUBLIC.1287 based on search criteria |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | inout | Input: search criteria; Output: multi-valued array of employee data (ID, name, title) |
| 1 | MESSAGE | out | Error message if any |
Tables Referenced: EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_EMPLOYEELIST",
"args": {
}
}VB_EMPLOYEELIST.REV1
Signature: SUBROUTINE VB_EMPLOYEELIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_EMPLOYEELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns comprehensive payroll and employee data from EMPLOYEE, EMPLOYEE.401K.1287, and EMPLOYEE.PUBLIC.1287 with security restrictions by login |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-mark delimited list of employee IDs |
| 2 | SQL | in | SQL SELECT statement to filter employees |
| 3 | DATA | out | Multi-valued array: 51 fields per employee including pay rates, tax info, deductions, 401K data |
| 4 | MESSAGE | out | Error message if any |
Tables Referenced: EMPLOYEE, EMPLOYEE.401K.1287, EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_EMPLOYEELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_EMPLOYEEPUBLICLIST.REV1
Signature: SUBROUTINE VB_EMPLOYEEPUBLICLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_EMPLOYEEPUBLICLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a public employee list from EMPLOYEE.PUBLIC.1287, filtered by SQL query or ID list |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-mark delimited list of employee IDs |
| 2 | SQL | in | SQL SELECT statement to filter employees |
| 3 | DATA | out | Multi-valued array: employee no, first name, last name, title, department |
| 4 | MESSAGE | out | Error message if any |
Tables Referenced: EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_EMPLOYEEPUBLICLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_ENGCHGLIST
Signature: SUBROUTINE VB_ENGCHGLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ENGCHGLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Retrieves engineering change list records via SQL select and returns project number, change number, description, completion status, and department |
| Superseded By | VB_ENGCHGLIST.REV1 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL select statement to filter engineering change records |
| 1 | DATA | out | Multi-valued array: <1>=project no, <2>=change no, <3>=description, <4>=complete status, <5>=department |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: ENG.CHG.1287, EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ENGCHGLIST",
"args": {
"0": ""
}
}VB_ENGCHGLIST.REV1
Signature: SUBROUTINE VB_ENGCHGLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ENGCHGLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Retrieves engineering change list via SQL select returning project no, change no, description, status, department, and change code |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL select to filter eng change records |
| 1 | DATA | out | Array: <1>=project, <2>=change no, <3>=desc, <4>=complete, <5>=dept, <6>=change code |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: ENG.CHG.1287, EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ENGCHGLIST.REV1",
"args": {
"0": ""
}
}VB_FINSTATCHECK
Signature: SUBROUTINE FINSTATCHECK(CO,BEL,CES,FILE,PGM,WONO,JOBNO,TYPE,CODELIST,COST.ACCOUNT,JOBMASTER,JOBTERMS,JOB.DET.FC,OPENWO,PASSWORDS,WIP.DET.FC,FAIL,ERR)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_FINSTATCHECK
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Utility |
| Args | 18 |
| Description | Validates financial status of work orders and jobs checking open/closed status of jobs, cost accounts, WO financial release, and detail records |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | BEL | in | Bell char (terminal) |
| 2 | CES | in | Clear screen char (terminal) |
| 3 | FILE | in | File variable (unused) |
| 4 | PGM | in | Program name (unused) |
| 5 | WONO | in | Work order number |
| 6 | JOBNO | in | Job number |
| 7 | TYPE | in | Type: M=material, L=labor, O=overhead, OD=ODC |
| 8 | CODELIST | in | Cost codes to validate |
| 9 | COST.ACCOUNT | in | COST.ACCOUNT file var (pre-opened) |
| 10 | JOBMASTER | in | JOBMASTER file var (pre-opened) |
| 11 | JOBTERMS | in | JOBTERMS file var (pre-opened) |
| 12 | JOB.DET.FC | in | JOB.DET.FC file var (pre-opened) |
| 13 | OPENWO | in | OPENWO file var (pre-opened) |
| 14 | PASSWORDS | in | PASSWORDS file var (unused) |
| 15 | WIP.DET.FC | in | WIP.DET.FC file var (pre-opened) |
| 16 | FAIL | out | Fail flag (1=invalid type) |
| 17 | ERR | out | Error message |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_FINSTATCHECK",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": ""
}
}VB_FIX.ITEMCA
Signature: SUBROUTINE FIX.ITEMCA (CO,CODE,FPER,WONO)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_FIX.ITEMCA
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 4 |
| Description | Fixes last cost for a work order by clearing outside flag on OPENWO, setting reprocess flag on WIP.CLOSE, and executing CA1776B |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | CODE | in | Cost code for CA1776B |
| 2 | FPER | in | Fiscal period |
| 3 | WONO | in | Work order number |
Tables Referenced: OPENWO.1287
Tables Written: OPENWO.1287, WIP.CLOSE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_FIX.ITEMCA",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_FIX.SROUTE.LINE
Signature: SUBROUTINE FIX.ROUTE.LINE(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_FIX.SROUTE.LINE
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Adjusts standard routing lines for a part via ADJUST.ROUTE for outside ops machine parameters, rewrites records, calls VB_SF3081 for MLT |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input: <1>=part number |
| 1 | DATAOUT | out | Output: <1>=manufacturing lead time |
| 2 | MESSAGE | out | Status/error message |
Tables Referenced: SROUTE.HEAD, SROUTE.LINE, OPERATION, WOCE.1287
Tables Written: SROUTE.LINE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_FIX.SROUTE.LINE",
"args": {
"0": ""
}
}VB_FS8040
Signature: SUBROUTINE VB_FS8040(CO,DATA,REPNUM,FMTNUM,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_FS8040
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Generates financial statement report data by reading schedule totals and formatting debit/credit amounts for current and prior year periods |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | DATA | out | Financial data array with period amounts by schedule line |
| 2 | REPNUM | in | Report number (e.g. 300) |
| 3 | FMTNUM | in | Format number for headings |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: FS.REPORT, FS.SCHED.TOTAL, FS.HEADINGS.FMT, FS.HEADINGS, FS.SCHED.REP.HEAD, FS.CALC.SALES, FS.JOB.STREAM
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_FS8040",
"args": {
"0": "",
"2": "",
"3": ""
}
}VB_GET.EMPLIST
Signature: SUBROUTINE VB_EMPLOYEELIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GET.EMPLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Retrieves comprehensive list of active employees with personal details, pay, shift/department, contractor status, vendor linkage |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | 27-row employee data array |
| 1 | MESSAGE | out | Error or status message |
Tables Referenced: EMPLOYEE, EMPLOYEE.1287, EMPLOYEE.SUPP, EMPLOYEE.PUBLIC.1287, VENDOR
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GET.EMPLIST",
"args": {
}
}VB_GET.INVENTORY
Signature: SUBROUTINE VB_GET.INVENTORY(INDATA,OUTDATA,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GET.INVENTORY
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Retrieves detailed inventory data including bins, lots, job quantities for a part or bin across MRP locations |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input: <1>=type (PART/BIN), <2>=part no, <3>=bin no, <4>=location |
| 1 | OUTDATA | out | 15-row output: location, bin, qty, stk qty, lot, date, lot qty, job, job qty, part, desc, MRP, LCF, part qty, last date |
| 2 | ERRMSG | out | Error message |
Tables Referenced: ITEMQTY, PRODUCT, PRODUCT.1287, BINXREF, BIN.PRODUCT, LOTHIST, BIN
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GET.INVENTORY",
"args": {
"0": ""
}
}VB_GET.ITEMHIST
Signature: SUBROUTINE VB_GET.ITEMHIST(INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GET.ITEMHIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Returns 24-month inventory movement history for a part with balances, receipts, issues, returns, sales, scrap, adjustments |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input: <1>=part number |
| 1 | OUTDATA | out | 10x25 array: month, balances, receipts, issues, returns, FS issues, sales, scrap, adjustments |
| 2 | MSG | out | Error or status message |
Tables Referenced: ITEMHIST, PRODUCT, PRODUCT.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GET.ITEMHIST",
"args": {
"0": ""
}
}VB_GET.PARTINFO
Signature: SUBROUTINE VB_GET.PARTINFO(INDATA,PR,PR1287,IM,IM1287,IQ,IH,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GET.PARTINFO
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 8 |
| Description | Tracks PO line receiving progress by updating status, notes, promise dates, and WIP route status for outside processing |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input: <1>=PO no, <2>=line no, <3>=rcv progress (0/1/2), <4>=pack slip no, <5>=note |
| 1 | PR | in | Unused (PR) |
| 2 | PR1287 | in | Unused (PR1287) |
| 3 | IM | in | Unused (IM) |
| 4 | IM1287 | in | Unused (IM1287) |
| 5 | IQ | in | Unused (IQ) |
| 6 | IH | in | Unused (IH) |
| 7 | ERRMSG | out | Error message |
Tables Referenced: PRODUCT, BINXREF, LOTHIST, WIPROUTE.LINE, BIN, OPEN.PO.LINES, OPEN.PO.LINES.1287, WIPROUTE.HEAD
Tables Written: OPEN.PO.LINES, OPEN.PO.LINES.1287, WIPROUTE.LINE.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GET.PARTINFO",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": ""
}
}VB_GETLOCKNAME
Signature: SUBROUTINE VB_GETLOCKNAME(NAME,FILE,ID)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GETLOCKNAME
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 3 |
| Description | Returns username holding a record lock on a file/record ID via GETREADU() lock table |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | NAME | out | Lock holder name (empty if not locked) |
| 1 | FILE | in | File name to check |
| 2 | ID | in | Record ID to check |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GETLOCKNAME",
"args": {
"1": "",
"2": ""
}
}VB_GETMFGCODE
Signature: SUBROUTINE VB_GETMFGCODE(LIST)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GETMFGCODE
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 1 |
| Description | Retrieves all manufacturer codes and names from MFG.1287 |
Tables Referenced: MFG.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GETMFGCODE",
"args": {
}
}VB_GETPDMLIST.REV1
Signature: SUBROUTINE VB_BOMLIST(CO,ASSYNO,BMFDATA,BMFNOTES,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GETPDMLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns single-level BOM for an assembly with component details and line notes |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | ASSYNO | in | Assembly part number |
| 2 | BMFDATA | out | BOM data: 13 rows (comp, seq, desc, status, MRP, qty, UM, MTBF, spare, cat, rec qty, manual, mfg) |
| 3 | BMFNOTES | out | BOM notes: <1>=component, <2>=notes (SVM) |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: BMF, BMF.1287, BMF.NOTES, GL-COMPANY, ITEMMANF, PRODUCT, PRODUCT.1287, PRODXREF, JOBMASTER.1287, OPENWO
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GETPDMLIST.REV1",
"args": {
"0": "",
"1": ""
}
}VB_GETREADU
Signature: SUBROUTINE VB_GETREADU(INREC,OUTREC,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GETREADU
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 3 |
| Description | Checks if a user holds a lock on a record via GETREADU() lock table |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INREC | in | Input: <1>=user ID, <2>=record ID |
| 1 | OUTREC | out | Lock holder name if found |
| 2 | MESSAGE | out | Message (unused) |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GETREADU",
"args": {
"0": ""
}
}VB_GETRECPTDATE.REV1
Signature: SUBROUTING GETRECPTDATE(CO,PARTNO,RCPTDATE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GETRECPTDATE.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 3 |
| Description | Looks up most recent receipt date for a part by traversing inventory history, skipping adjustments (types 20,21,27,29) |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | PARTNO | in | Part number |
| 2 | RCPTDATE | out | Formatted receipt date |
Tables Referenced: INVXREF, INVHIST
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GETRECPTDATE.REV1",
"args": {
"0": "",
"1": ""
}
}VB_GLCATEGORY
Signature: SUBROUTINE VB_GLCATEGORY(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLCATEGORY
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | List |
| Args | 3 |
| Description | Returns GL category list or rebuilds GL.CHARTS.1287 cross-reference when update flag set |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input: <1>=GL acct, <2>=cat no, <3>=update flag (Y=rebuild) |
| 1 | DATAOUT | out | Output: <1>=cat no, <2>=type, <3>=description |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: GL.CHARTS, GL.CHARTS.1287, CATEGORY, D CATEGORY
Tables Written: GL.CHARTS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLCATEGORY",
"args": {
"0": ""
}
}VB_GLCHARTS
Signature: SUBROUTINE VB_GLCHARTS(CO,GLNO,FP.CUT,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLCHARTS
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Retrieves GL chart of accounts with YTD debits/credits/balances for a fiscal period cutoff |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | GLNO | in | GL account number (empty for full list) |
| 2 | FP.CUT | in | Fiscal period cutoff YY-MM |
| 3 | DATA | out | GL data: acct no, name, type, bal type, FY, YTD deb/crd, balance, period, per deb/crd, activity, beg bal |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: GL.CHARTS, COCE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLCHARTS",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_GLCHARTS.BAK
Signature: SUBROUTINE VB_GLCHARTS(CO,GLNO,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLCHARTS.BAK
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_GLCHARTS |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | GLNO | in | |
| 2 | DATA | out | |
| 3 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLCHARTS.BAK",
"args": {
"0": "",
"1": ""
}
}VB_GLCHARTS.NEW
Signature: SUBROUTINE VB_GLCHARTS(CO,GLNO,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLCHARTS.NEW
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | Earlier VB_GLCHARTS version hardcoded to FY 15 |
| Superseded By | VB_GLCHARTS |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | GLNO | in | GL account number (empty for full list) |
| 2 | DATA | out | GL data: acct no, name, type, bal type, FY, YTD deb/crd, balance, period, per deb/crd, activity |
| 3 | MESSAGE | out | Error or status message |
Tables Referenced: GL.CHARTS
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLCHARTS.NEW",
"args": {
"0": "",
"1": ""
}
}VB_GLJOURNAL
Signature: SUBROUTINE VB_GLJOURNAL(CO,JC,FPER,DOCNO,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLJOURNAL
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 6 |
| Description | Retrieves GL journal transaction details for a journal code, fiscal period, and document number |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | JC | in | Journal code (e.g. GJ) |
| 2 | FPER | in | Fiscal period YY-MM |
| 3 | DOCNO | in | Document number (or ALL) |
| 4 | DATA | out | Array: doc no, date, acct no, desc, net amount, annotation, debit, credit |
| 5 | MESSAGE | out | Error or status message |
Tables Referenced: GL.CHARTS, GL.SOURCE.PERIOD, GL.XREF, GL.TRANS, GL.DOCUMENT.AUX
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLJOURNAL",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_GLRECAP.REV1
Signature: SUBROUTINE VB_GLRECAP(CO,GLDATA,GL.PER,RUN.DATE,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLRECAP.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 5 |
| Description | Saves ADP payroll GL data to GLRECAP then executes MDSGLUPD to update WORKMDS |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | GLDATA | in | GL data: <1>=GL nos, <2>=debits, <3>=credits, <4>=D/C indicator |
| 2 | GL.PER | in | GL fiscal period |
| 3 | RUN.DATE | in | Run date for MDSGLUPD |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: GLRECAP
Tables Written: GLRECAP
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLRECAP.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_GLTRANS
Signature: SUBROUTINE VB_GLTRANS(CO,GLNO,FPER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_GLTRANS
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | GL transaction inquiry. Validates company/GL account, reads GL chart of accounts, then traverses the GL.XREF linked list for the specified fiscal period to collect transaction records from GL.TRANS. Returns document numbers, dates, descriptions, debit/credit amounts, and running balance. Reads auxiliary document data from GL.DOCUMENT.AUX when available. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | GLNO | in | GL account number |
| 2 | FPER | in | Fiscal period (1-13) |
| 3 | DATA | out | Multi-valued array: document number, date, description, debit, credit, balance per transaction |
| 4 | MESSAGE | out | Error message if company or GL account not found |
Tables Referenced: GL.CHARTS, GL.DOCUMENT.AUX, GL.TRANS, GL.XREF, GL-COMPANY, HOLD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_GLTRANS",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_I.0026
Signature: SUBROUTINE VB_I.0026(DATAIN, DATAOUT, MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.0026
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_I.1656 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | out | |
| 1 | DATAOUT | out | |
| 2 | MESSAGE | out |
Tables Referenced: OWNERSHIP, PWD.AUDIT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.0026",
"args": {
}
}VB_I.0028
Signature: SUBROUTINE VB_I.0028(DATAIN, DATAOUT, MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.0028
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_I.1656 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | out | |
| 1 | DATAOUT | out | |
| 2 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.0028",
"args": {
}
}VB_I.1280
Signature: SUBROUTINE VB_I.1280(DATAIN, DATAOUT, MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1280
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_I.1656 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | out | |
| 1 | DATAOUT | out | |
| 2 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1280",
"args": {
}
}VB_I.1281
Signature: SUBROUTINE VB_I.1281(DATAIN, DATAOUT, MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1281
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_I.1656 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | out | |
| 1 | DATAOUT | out | |
| 2 | MESSAGE | out |
Tables Referenced: ALLOCXREF, COST.ACCOUNT, GL.CHARTS, GL-COMPANY, GL.ISSUE, ITEMHIST, ITEMQTY, JOB.DET.FC, JOBMASTER, JOBTERMS, OPENWO, PASSWORDS, PWD.AUDIT, WIP.DET.FC, WIPBMF, WIPBMFCOST, WIPLEDGER.AP, WIPLEDGER.LAB, WIPLEDGER.MAT, WIPLEDGER.OUT, WIPLEDGER.SUM
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1281",
"args": {
}
}VB_I.1601
Signature: SUBROUTINE VB_I.1601(DATAIN, DATAOUT, MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1601
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_I.1656 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | out | |
| 1 | DATAOUT | out | |
| 2 | MESSAGE | out |
Tables Referenced: PWD.AUDIT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1601",
"args": {
}
}VB_I.1656
Signature: SUBROUTINE VB_I.1656(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1656
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Orchestrator for the daily inventory audit update process (report 1656). Checks for a LOCKFILE lock, then EXECUTEs sub-programs VB_I.1656B (work file builder), VB_I.1656C (report printer), and VB_I.1656GL (GL recap). Returns status via DATAOUT and MESSAGE. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input parameters (currently unused, overridden internally) |
| 1 | DATAOUT | out | Status data returned after processing |
| 2 | MESSAGE | out | Error/status message |
Tables Referenced: LOCKFILE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1656",
"args": {
"0": ""
}
}VB_I.1656B
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1656B
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 0 |
| Description | Work file builder for the daily inventory audit update (1656). No SUBROUTINE declaration - this is a code fragment EXECUTEd by VB_I.1656. Iterates inventory history records, calculates material/labor/overhead costs, compares WIP costs against standard costs, and writes variance records to WORK1656 work files. Also updates LOTHIST.GL and corrects INVHIST/OPENWO records. |
Tables Referenced: CACLASS, CATEGORY, CO.STDS.COST, CO.STDS.GL, INVHIST, LOCKFILE, LOTHIST, OPENWO, PRODUCT, WIPBMFCOST, WORK1656, WORK1656A, WORK1656B, WORK1656C
Tables Written: INVHIST, LOTHIST.GL, OPENWO, WORK1656, WORK1656A, WORK1656B, WORK1656C, WORK1656D
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1656B",
"args": {
}
}VB_I.1656C
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1656C
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 0 |
| Description | Report printer for the daily inventory audit update (1656C). No SUBROUTINE declaration - this is a code fragment EXECUTEd by VB_I.1656. Reads WORK1656A/B work files and prints a detailed variance report with transaction type descriptions, GL account breakdowns, and company totals. Also writes corrected INVHIST records. |
Tables Referenced: GL.CHARTS, GL-COMPANY, INVHIST, LOCKFILE, LOTHIST, OPENWO, TRANSTYPE, WORK1656A, WORK1656B
Tables Written: INVHIST
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1656C",
"args": {
}
}VB_I.1656GL
Source: S:\LinuxShare\pro3prog\VBBASE\VB_I.1656GL
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 0 |
| Description | GL recap report for the daily inventory audit update (1656GL). No SUBROUTINE declaration - this is a code fragment EXECUTEd by VB_I.1656. Reads summarized data from WORK1656, looks up GL account descriptions from GL.CHARTS, and prints a GL recap report grouped by company. |
Tables Referenced: GL.CHARTS, GL-COMPANY, WORK1656
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_I.1656GL",
"args": {
}
}VB_IMPORTBOM.REV1
Signature: SUBROUTINE IMPORTBOM(CO,TOPPART,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_IMPORTBOM.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | BOM hierarchy reader for CAD import integration. Given a top-level part number, recursively explodes the bill of materials through all levels. Returns a flattened array of component parts with level, quantity, unit of measure, description, part type, revision, and manufacturer data from ITEMMANF. Also returns BOM notes. Read-only - does not write any tables. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | TOPPART | in | Top-level part number to explode |
| 2 | DATA | out | Multi-valued array of BOM data: level, part, qty, UOM, description, part type, revision, manufacturer info, and BOM notes |
| 3 | MESSAGE | out | Error message if company or part not found |
Tables Referenced: BMF, BMF.NOTES, GL-COMPANY, ITEMMANF, PRODUCT, PRODUCT.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_IMPORTBOM.REV1",
"args": {
"0": "",
"1": ""
}
}VB_INACT.INVNTY
Signature: SUBROUTINE VB_INACT.INVNTY(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INACT.INVNTY
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Inactive inventory work file builder. Selects all ITEMQTY records with on-hand quantity, traverses INVHIST linked list to find last meaningful activity date (skipping adjustments, transfers, and scrap transactions), then writes detailed lot/bin records to WORK.IAINVNTY.1287 for items inactive before the cut date. Also updates PRODUCT.1287 with last activity date. Uses COMO logging. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Cut date - items with no activity since this date are considered inactive (overridden to DATE() internally) |
| 1 | DATAOUT | out | Status data (set to DATA RECEIVED in test mode) |
| 2 | MESSAGE | out | Error/status message |
Tables Referenced: BIN, GL-COMPANY, INVHIST, INVXREF, ITEMCA, ITEMQTY, LOTHIST, LOTXREF, POHIST, PRODUCT, PRODUCT.1287, VENDOR
Tables Written: D WORK.IAINVNTY.1287, PRODUCT.1287, WORK.IAINVNTY.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INACT.INVNTY",
"args": {
"0": ""
}
}VB_INDSECTORLIST
Signature: SUBROUTINE VB_INDSECTORS(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INDSECTORLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Industry sector list. Executes a SQL SELECT against INDSECTOR.1287 and returns sector codes and names as a multi-valued array. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to filter INDSECTOR.1287 records |
| 1 | DATA | out | Multi-valued array: sector code (attr 1), sector name (attr 2) |
| 2 | MESSAGE | out | Error message if file open fails |
Tables Referenced: INDSECTOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INDSECTORLIST",
"args": {
"0": ""
}
}VB_INVAUDPOST
Signature: SUBROUTINE INVAUDPOST(INVAUDIT,INVHIST,INVXREF,LOTHIST,OPENWO,TRANSCRT,WOXREF,CO,FILE,PGM,INITS,CRTNO,PARTNO,RDATE,FLD,RQTY,DOCNOS,CODE,COSTPER,LOCS,LOTS,ADJQTYS,CLOTS,CQTYS,OFFLOTS,BINS,BQTYS,MSGFLAG,CEL,BEL,INVAUDPOXREF,INVAUDWOXREF,DUMMY3,DUMMY4,DUMMY5,CUSTDUMMY1,CUSTDUMMY2,CUSTDUMMY3,CUSTDUMMY4,CUSTDUMMY5)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INVAUDPOST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 40 |
| Description | Inventory audit posting engine. Receives pre-opened file handles and transaction data, then creates INVAUDIT records, updates INVHIST linked lists, writes INVXREF cross-references, posts to TRANSCRT, and maintains WOXREF/INVAUDPOXREF/INVAUDWOXREF cross-reference files. Handles lot-controlled and non-lot parts, bin adjustments, cost calculations, and work order transfers. Returns the assigned audit number via DUMMY3. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INVAUDIT | in | Pre-opened file handle to INVAUDIT table |
| 1 | INVHIST | in | Pre-opened file handle to INVHIST table |
| 2 | INVXREF | in | Pre-opened file handle to INVXREF table |
| 3 | LOTHIST | in | Pre-opened file handle to LOTHIST table |
| 4 | OPENWO | in | Pre-opened file handle to OPENWO table |
| 5 | TRANSCRT | in | Pre-opened file handle to TRANSCRT table |
| 6 | WOXREF | in | Pre-opened file handle to WOXREF table |
| 7 | CO | in | Company number |
| 8 | FILE | in | Source file name for audit trail |
| 9 | PGM | in | Program name that initiated the posting |
| 10 | INITS | in | User initials |
| 11 | CRTNO | in | Terminal/CRT number |
| 12 | PARTNO | in | Part number |
| 13 | RDATE | in | Transaction date (internal format) |
| 14 | FLD | in | Field code array for inventory update type |
| 15 | RQTY | in | Quantity array for each transaction |
| 16 | DOCNOS | in | Document number array (PO, WO, etc.) |
| 17 | CODE | in | Transaction type code |
| 18 | COSTPER | in | Cost per unit |
| 19 | LOCS | in | Location codes array |
| 20 | LOTS | in | Lot numbers array |
| 21 | ADJQTYS | in | Adjustment quantities array |
| 22 | CLOTS | in | Counter lot numbers for transfers |
| 23 | CQTYS | in | Counter quantities for transfers |
| 24 | OFFLOTS | in | Offline lot numbers |
| 25 | BINS | in | Bin numbers array |
| 26 | BQTYS | in | Bin quantities array |
| 27 | MSGFLAG | out | Message/error flag returned to caller |
| 28 | CEL | in | Cost element array for lot cost breakdown |
| 29 | BEL | in | Burden element array for overhead allocation |
| 30 | INVAUDPOXREF | in | Pre-opened file handle to INVAUDPOXREF table |
| 31 | INVAUDWOXREF | in | Pre-opened file handle to INVAUDWOXREF table |
| 32 | DUMMY3 | out | Returns the assigned audit number (AUDNO) |
| 33 | DUMMY4 | in | Reserved for future use |
| 34 | DUMMY5 | in | Reserved for future use |
| 35 | CUSTDUMMY1 | in | Customer-reserved dummy parameter 1 |
| 36 | CUSTDUMMY2 | in | Customer-reserved dummy parameter 2 |
| 37 | CUSTDUMMY3 | in | Customer-reserved dummy parameter 3 |
| 38 | CUSTDUMMY4 | in | Customer-reserved dummy parameter 4 |
| 39 | CUSTDUMMY5 | in | Customer-reserved dummy parameter 5 |
Tables Referenced: LOTHIST, OPENWO
Tables Written: INVAUDIT, INVAUDPOXREF, INVAUDWOXREF, INVHIST, INVXREF, TRANSCRT, WOXREF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INVAUDPOST",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"28": "",
"29": "",
"30": "",
"31": "",
"33": "",
"34": "",
"35": "",
"36": "",
"37": "",
"38": "",
"39": ""
}
}VB_INVINQ.1
Signature: SUBROUTINE VB_INV.INQ.1(PARTNO,LOCATIONS,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INVINQ.1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_INVINQ.2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PARTNO | in | |
| 1 | LOCATIONS | in | |
| 2 | DATA | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INVINQ.1",
"args": {
"0": "",
"1": ""
}
}VB_INVINQ.2
Signature: SUBROUTINE VB_INV.INQ.1(PARTNO,LOCATIONS,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INVINQ.2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Inventory inquiry by location. Given a part number and optional location filter, reads BIN and BINXREF to collect lot/bin/quantity data, then enriches with lot history dates and costs from LOTHIST. Returns product description from PRODUCT. Read-only inquiry with no table writes. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PARTNO | in | Part number (company!partno format) |
| 1 | LOCATIONS | in | Location filter (blank for all locations) |
| 2 | DATA | out | Multi-valued array: lot, bin, qty, date received, job, location, cost elements, part description |
Tables Referenced: BIN, BINXREF, LOTHIST, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INVINQ.2",
"args": {
"0": "",
"1": ""
}
}VB_INVOICELIST.REV1
Signature: SUBROUTINE VB_INVOICELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INVOICELIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_INVOICELIST.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INVOICELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_INVOICELIST.REV2
Signature: SUBROUTINE VB_INVOICELIST(CO,IDLIST,SQL,HIST,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INVOICELIST.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_INVOICELIST.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | HIST | in | |
| 4 | DATA | out | |
| 5 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INVOICELIST.REV2",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_INVOICELIST.REV3
Signature: SUBROUTINE VB_INVOICELIST(INDATA,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_INVOICELIST.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Comprehensive invoice list with filtering. Reads INDATA for company, search mode (SQL/IDLIST), and optional filters (date range, customer, job, PO, part, status). Queries INVOICE and joins data from CUSTOMER, EMPLOYEE, JOBMASTER, OPEN.SO.HEAD, PRODUCT, SHIPPER, and other tables. Returns detailed invoice line data including amounts, costs, margins, and shipping info. Read-only. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input parameters: company, search mode, SQL/IDLIST, and optional filters (date range, customer, job, PO, part number, status, detail level) |
| 1 | DATA | out | Multi-valued array of invoice data: header and line-level detail with amounts, costs, margins, shipping, and customer info |
| 2 | MESSAGE | out | Error message if company validation or file open fails |
Tables Referenced: CO.STDS.SO, CUSTOMER, EMPLOYEE, EMPLOYEE.1287, EMPLOYEE.PUBLIC.1287, GL-COMPANY, INVOICE, INVOICE.LINE, INVOICE.SUM, ITEMCA, JOBMASTER, OPEN.SO.HEAD, OPEN.SO.LINES, PRODUCT, SHIPPER, SHIPPER.LINE, SHPVIA, SOLDTO, SOTERMS, TAXCODE, WHSE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_INVOICELIST.REV3",
"args": {
"0": ""
}
}VB_ITEMCA.REV1
Signature: SUBROUTINE VB_ITEMCA.REV1(CO,REQTYPE,ITEMCANO,ITEMCAREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ITEMCA.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | ITEMCA (item cost accounting) CRUD. Supports READ, WRITE, and DELETE operations on ITEMCA records. On WRITE, validates the part exists in PRODUCT, applies ADDFLAG logic for new vs existing records, MATWRITEs the ITEMCAREC to ITEMCA, and posts to TRANSREG for audit. On READ, MATREADs and returns the record. On DELETE, removes the record. |
| Safe REQTYPE | READ |
| Dangerous REQTYPE | WRITE, DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: READ, WRITE, or DELETE |
| 2 | ITEMCANO | in | Item cost accounting record key (company!partno) |
| 3 | ITEMCAREC | in | Dimensioned array (50) of ITEMCA record fields to be written |
| 4 | ADDFLAG | in | Add flag: 1=new record, 0=existing record update |
| 5 | MESSAGE | out | Error/status message |
Tables Referenced: GL-COMPANY, ITEMCA, PRODUCT, TRANSREG
Tables Written: ITEMCA, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ITEMCA.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_ITEMMANF.REV1
Signature: SUBROUTINE VB_ITEMMANF(CO,REQTYPE,PARTNO,ITEMREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ITEMMANF.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | ITEMMANF (item manufacturer) CRUD with cross-reference maintenance. Supports READ, WRITE, and DELETE on ITEMMANF records. On WRITE, MATWRITEs the ITEMREC, updates PRODXREF/REFXPROD bidirectional cross-references, maintains XREFINDEX, posts to TRANSREG, and logs changes to PART.XREF.AUDIT. On READ, MATREADs and returns the record. |
| Safe REQTYPE | READ |
| Dangerous REQTYPE | WRITE, DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: READ, WRITE, or DELETE |
| 2 | PARTNO | in | Part number (company!partno) |
| 3 | ITEMREC | in | Dimensioned array (75) of ITEMMANF record fields to be written |
| 4 | ADDFLAG | in | Add flag: 1=new record, 0=existing record update |
| 5 | MESSAGE | out | Error/status message |
Tables Referenced: GL-COMPANY, ITEMMANF, PART.XREF.AUDIT, PRODXREF, REFXPROD, TRANSREG, XREFINDEX
Tables Written: ITEMMANF, PART.XREF.AUDIT, PRODXREF, REFXPROD, TRANSREG, XREFINDEX
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ITEMMANF.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_ITEMORD.REV1
Signature: SUBROUTINE VB_ITEMORD.REV1(CO,REQTYPE,ITEMORDNO,ITEMORDREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ITEMORD.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | ITEMORD (item ordering parameters) CRUD. Supports READ, WRITE, and DELETE on ITEMORD records. On WRITE, validates the part exists in PRODUCT, applies ADDFLAG logic, MATWRITEs the ITEMORDREC to ITEMORD, and posts to TRANSREG. On READ, MATREADs and returns the record. |
| Safe REQTYPE | READ |
| Dangerous REQTYPE | WRITE, DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: READ, WRITE, or DELETE |
| 2 | ITEMORDNO | in | Item ordering record key (company!partno) |
| 3 | ITEMORDREC | in | Dimensioned array (50) of ITEMORD record fields to be written |
| 4 | ADDFLAG | in | Add flag: 1=new record, 0=existing record update |
| 5 | MESSAGE | out | Error/status message |
Tables Referenced: GL-COMPANY, ITEMORD, PRODUCT, TRANSREG
Tables Written: ITEMORD, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ITEMORD.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_ITREQUESTLIST.REV1
Signature: SUBROUTINE VB_ITREQUESTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_ITREQUESTLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | IT request list with employee name enrichment. Queries ITREQUESTS.1287 by SQL or IDLIST, joins with EMPLOYEE.PUBLIC.1287 for requester/assignee names and ITREQUESTTYPE.1287 for request type descriptions. Returns request details including status, priority, dates, and resolution info. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-marked list of specific IT request IDs (alternative to SQL) |
| 2 | SQL | in | SQL SELECT statement to filter ITREQUESTS.1287 |
| 3 | DATA | out | Multi-valued array of IT request data: ID, type, description, requester, assignee, status, priority, dates |
| 4 | MESSAGE | out | Error message if file open fails |
Tables Referenced: EMPLOYEE.PUBLIC.1287, ITREQUESTS.1287, ITREQUESTTYPE.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_ITREQUESTLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_JOBBOM.REV1
Source: S:\LinuxShare\pro3prog\VBBASE\VB_JOBBOM.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 0 |
| Description | Creates job BOM and JOBXREF for all projects by exploding BOM hierarchy, collecting part info (qty, cost, lead times), and writing results to JOBBOM.1287. Also deletes empty BOM notes. |
Tables Written: JOBBOM.1287, BMF.NOTES
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_JOBBOM.REV1",
"args": {
}
}VB_JOBLIST
Signature: SUBROUTINE VB_JOBLIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_JOBLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a list of jobs from JOBMASTER (excluding type 40), optionally filtered by customer number. Returns job number, description, and price. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | inout | Input: customer number search criteria; Output: array of job number, description, price |
| 1 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_JOBLIST",
"args": {
}
}VB_JOBLIST.REV1
Signature: SUBROUTINE VB_JOBLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_JOBLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of projects/jobs from JOBMASTER by SQL query or ID list. Returns job number, description, and price. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Optional list of job IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to execute against JOBMASTER |
| 3 | DATA | out | Array of job number, description, price |
| 4 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_JOBLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_JOBLIST2
Signature: SUBROUTINE VB_JOBLIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_JOBLIST2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a list of jobs from JOBMASTER by executing a SQL command passed via DATA. Returns job number, description, and price. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | inout | Input: SQL command to execute; Output: array of job number, description, price |
| 1 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_JOBLIST2",
"args": {
}
}VB_LABORHISTLIST.REV1
Signature: SUBROUTINE VB_LABORHISTLIST(CO,REQ.BY,RPT.LST,WE.DATE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_LABORHISTLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | List |
| Args | 6 |
| Description | Returns labor history timesheet data for a pay period. Calculates regular, OT, DT, sick, holiday, vacation hours with salary/hourly/exempt rules. Includes employees with no timesheets and contract vendor info. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQ.BY | in | Employee number of the requester |
| 2 | RPT.LST | in | Report-to list filter, or ‘ALL’ for all employees |
| 3 | WE.DATE | in | Week-ending date for the pay period (MM/DD/YY) |
| 4 | DATA | out | Array with dept, empno, name, card details, hours breakdown (reg/OT/DT/sick/hol/vac/misc/total), pay type, shift, exempt status, contract info, errors |
| 5 | MESSAGE | out | Error message if any |
Tables Written: HOLD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_LABORHISTLIST.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_LDS.INDEX.REV1
Signature: SUBROUTINE VB_LDS.INDEX.REV1(INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_LDS.INDEX.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Displays LDS (Facility/Assembly/Module/Physical) portion of a BOM hierarchy for a given part. Returns BOM level, WBS, part number, description, MRP, UM, quantities, and group tech classification. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input: INDATA<1>=company number, INDATA<2>=part number |
| 1 | OUTDATA | out | BOM hierarchy array with level, WBS, part, desc, MRP, UM, qty, group tech |
| 2 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_LDS.INDEX.REV1",
"args": {
"0": ""
}
}VB_LDSINDX
Signature: SUBROUTINE VB_LDSINDX(JOBNO,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_LDSINDX
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 2 |
| Description | Returns the LDS index for a job by navigating facility/assembly/module/physical hierarchy from JOBMASTER. Returns product number, part number, quantity, description, and LDS position for each component. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | JOBNO | in | Job number to look up |
| 1 | DATA | out | Array with product number, part number, quantity, description, LDS position |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_LDSINDX",
"args": {
"0": ""
}
}VB_LOAD.SIM
Signature: SUBROUTINE VB_LOAD.SIM(INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_LOAD.SIM
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 3 |
| Description | Loads simulated work orders for a given job from OPENWO.SIM. Returns work order number, part number, and due date for each simulated order. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input: INDATA<1>=company number, INDATA<2>=job number |
| 1 | OUTDATA | out | Array of WO number, part number, due date |
| 2 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_LOAD.SIM",
"args": {
"0": ""
}
}VB_MACHPROCESSTYPELIST.REV1
Signature: SUBROUTINE VB_MACHPROCESSTYPELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_MACHPROCESSTYPELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of machine process types from MACHPROCESSTYPE.1287 by SQL query or ID list. Returns process type code and name. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Optional list of machine process type IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to execute against MACHPROCESSTYPE.1287 |
| 3 | DATA | out | Array of machine process type code and name |
| 4 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_MACHPROCESSTYPELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_MACHTYPELIST.REV1
Signature: SUBROUTINE VB_MACHTYPELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_MACHTYPELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of machine types from MACHTYPE.1287 by SQL query or ID list. Returns machine type code and name. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Optional list of machine type IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to execute against MACHTYPE.1287 |
| 3 | DATA | out | Array of machine type code and name |
| 4 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_MACHTYPELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_MAILCODELIST.REV1
Signature: SUBROUTINE VB_MAILCODELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_MAILCODELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of contact mail codes from CONTACT.MAILCODE.1287 by SQL query or ID list. Returns mail code number and name. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Optional list of mail code IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to execute against CONTACT.MAILCODE.1287 |
| 3 | DATA | out | Array of mail code number and name |
| 4 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_MAILCODELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_MESPROGLIST.REV1
Signature: SUBROUTINE VB_MESPROGLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_MESPROGLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of MES programs from MESPROGRAMS.1287 by SQL query or ID list. Returns program number, name, and broadcast types. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Optional list of MES program IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to execute against MESPROGRAMS.1287 |
| 3 | DATA | out | Array of program number, name, broadcast types |
| 4 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_MESPROGLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_MYNEWFILES
Signature: SUBROUTINE VB_MYNEWFILES(INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_MYNEWFILES
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 3 |
| Description | Compares a list of local PDM file names against PDM.1287 records to identify new files not yet in the system. Returns the difference list with description, MRP, and GT code for each. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | FM-delimited list of local file names with CO! prefix (e.g. 1!000007.SLDPRT) |
| 1 | OUTDATA | out | Array of new file names not in PDM.1287, with description, MRP, and GT code |
| 2 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_MYNEWFILES",
"args": {
"0": ""
}
}VB_NCNCHGLIST
Signature: SUBROUTINE VB_NCNCHGLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_NCNCHGLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Returns a list of NCN (Non-Conformance Notice) change records from NCN.CHG.1287 by SQL query. Returns NCN number, part number, part description, and reason. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to execute against NCN.CHG.1287 |
| 1 | DATA | out | Array of NCN number, part number, part description, reason |
| 2 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_NCNCHGLIST",
"args": {
"0": ""
}
}VB_NCNLIST
Signature: SUBROUTINE VB_NCNLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_NCNLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Returns a list of NCN records from NCN.CHG.1287 by SQL query. Returns NCN number, part number, completed status, and reason. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to execute against NCN.CHG.1287 |
| 1 | DATA | out | Array of NCN number, part number, completed status, reason |
| 2 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_NCNLIST",
"args": {
"0": ""
}
}VB_OPENORDLIST
Signature: SUBROUTINE VB_OPENORDLIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_OPENORDLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a list of open sales orders (non-purchase) from OPEN.ORD.HEAD, optionally filtered by customer number. Returns SO number, date, PO, value, ship value, and type (Spare/Warranty). |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | inout | Input: customer number search criteria; Output: array of SO number, date, PO, value, ship value, type |
| 1 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_OPENORDLIST",
"args": {
}
}VB_PARTINFO.REV1
Signature: SUBROUTINE VB_PARTINFO(CO,REQTYPE,INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PARTINFO.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_PARTINFO.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INDATA | out | |
| 3 | OUTDATA | out | |
| 4 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PARTINFO.REV1",
"args": {
"0": "",
"1": ""
}
}VB_PARTINFO.REV2
Signature: SUBROUTINE VB_PARTINFO(CO,INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PARTINFO.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | Returns detailed part information for a given part number including description, MRP, UM, last cost, on-hand quantity, last activity date, lot control flag, and reserved bin. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | INDATA | in | INDATA<1>=part number to look up |
| 2 | OUTDATA | out | Part info: partno, desc, desc2, MRP, UM, last cost, last activity date, on-hand qty, lot control flag, reserved bin |
| 3 | MSG | out | Error message if part not found |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PARTINFO.REV2",
"args": {
"0": "",
"1": ""
}
}VB_PARTPHOTO.REV1
Signature: SUBROUTINE VB_PARTPHOTO(CO,REQTYPE,PARTPHOTO,P1287REC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PARTPHOTO.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | Saves, updates, or deletes part photo records in PART.PHOTOS.1287 based on REQTYPE. Supports audit trail logging via TRANSREG. |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: ‘DELETE’ to delete, otherwise add/update |
| 2 | PARTPHOTO | in | Part photo record ID |
| 3 | P1287REC | in | Part photo record data to write (dynamic array) |
| 4 | ADDFLAG | in | True if adding a new record, false if updating |
| 5 | MESSAGE | out | Result message (DELETE SUCCEEDED or WRITE SUCCEEDED) |
Tables Written: PART.PHOTOS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PARTPHOTO.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_PARTPHOTOLIST.REV1
Signature: SUBROUTINE VB_PARTPHOTOLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PARTPHOTOLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Returns a list of part photos from PART.PHOTOS.1287 by SQL query or ID list. Returns photo number, filename, description, part type, project number, and SPN. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Optional list of part photo IDs to retrieve |
| 2 | SQL | in | SQL SELECT statement to execute against PART.PHOTOS.1287 |
| 3 | DATA | out | Array of photo number, filename, description, type description, project number, SPN |
| 4 | MESSAGE | out | Error message if any |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PARTPHOTOLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PARTTYPELIST
Signature: SUBROUTINE VB_PARTTYPELIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PARTTYPELIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Part type list (simple version). Executes a SQL SELECT against PARTTYPE.1287 and returns part type codes and names as a multi-valued array. Names are title-cased via MCT conversion. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL SELECT statement to filter PARTTYPE.1287 records |
| 1 | DATA | out | Multi-valued array: part type code (attr 1), part type name (attr 2) |
| 2 | MESSAGE | out | Error message if file open fails |
Tables Referenced: PARTTYPE.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PARTTYPELIST",
"args": {
"0": ""
}
}VB_PARTTYPELIST.REV1
Signature: SUBROUTINE VB_PARTTYPELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PARTTYPELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Part type list with industry sector enrichment (REV1). Queries PARTTYPE.1287 by SQL or IDLIST, joins with INDSECTOR.1287 for industry sector names. Returns part type code, name, and associated industry sector. Read-only lookup. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-marked list of specific part type IDs (alternative to SQL) |
| 2 | SQL | in | SQL SELECT statement to filter PARTTYPE.1287 |
| 3 | DATA | out | Multi-valued array: part type code, name, industry sector code and name |
| 4 | MESSAGE | out | Error message if file open fails |
Tables Referenced: INDSECTOR.1287, PARTTYPE.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PARTTYPELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PAYMENTS.REV1
Signature: SUBROUTINE VB_PAYMENTS(CO,REQTYPE,MSNO,MSREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PAYMENTS.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Task/payment milestone CRUD with password-protected DELETE. Supports READ, WRITE, and DELETE on TASK.1287 records. On WRITE, validates the record and MATWRITEs MSREC to TASK.1287, posting to TRANSREG. DELETE requires password verification against PASSWORDS table. On READ, MATREADs and returns the record. |
| Safe REQTYPE | READ |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: READ, WRITE, or DELETE |
| 2 | MSNO | in | Task/milestone record key |
| 3 | MSREC | in | Dimensioned array of task/payment record fields to be written |
| 4 | ADDFLAG | in | Add flag: 1=new record, 0=existing record update |
| 5 | MESSAGE | out | Error/status message |
Tables Referenced: GL-COMPANY, PASSWORDS, TASK.1287, TRANSREG
Tables Written: TASK.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PAYMENTS.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_PAYREGLIST.REV1
Signature: SUBROUTINE VB_PAYREGLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PAYREGLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Payroll register list with hours adjustment logic. Queries PAYREG by SQL or IDLIST, joins with EMPLOYEE, EMPLOYEE.1287, and EMPLOYEE.PUBLIC.1287 for employee details. Adjusts regular/overtime hours based on pay type (deducts overtime from regular for hourly employees). Returns comprehensive payroll data including hours, rates, gross pay, and employee info. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-marked list of specific payroll register IDs (alternative to SQL) |
| 2 | SQL | in | SQL SELECT statement to filter PAYREG records |
| 3 | DATA | out | Multi-valued array of payroll data: employee info, hours (regular/OT/DT/holiday), rates, gross pay, check date |
| 4 | MESSAGE | out | Error message if file open fails |
Tables Referenced: EMPLOYEE, EMPLOYEE.1287, EMPLOYEE.PUBLIC.1287, PAYREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PAYREGLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PDMXREF
Signature: SUBROUTINE VB_PDMXREF(INREC,OUTREC,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PDMXREF
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 3 |
| Description | PDM (Product Data Management) cross-reference maintenance. Reads the input record (INREC) containing employee ID, part number, and PDM file path, validates against EMPLOYEE.ACCESS.1287 and PDM.1287, then writes or updates the cross-reference in PDMXREF.1287. Returns the current PDMXREF record in OUTREC. Also handles DELETE requests when INREC<4> is set. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INREC | in | Input record: employee ID (attr 1), part number (attr 2), PDM file path (attr 3), delete flag (attr 4) |
| 1 | OUTREC | out | Current PDMXREF.1287 record after operation |
| 2 | MESSAGE | out | Error/status message |
Tables Referenced: EMPLOYEE.ACCESS.1287, PDM.1287, PDMXREF.1287
Tables Written: PDMXREF.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PDMXREF",
"args": {
"0": ""
}
}VB_PHANTOM
Signature: SUBROUTINE VB_PHANTOM(PROGNAME)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PHANTOM
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 1 |
| Description | Runs a PHANTOM process by name. On weekends (Saturday/Sunday), clears the MRP.INCR.1287 file before executing the named program. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PROGNAME | in | Name of the program to run as a PHANTOM process |
Tables Referenced: MRP.INCR.1287
Tables Written: MRP.INCR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PHANTOM",
"args": {
"0": ""
}
}VB_PHANTOM.REV2
Signature: SUBROUTINE VB_PHANTOM.REV2(PROGNAME)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PHANTOM.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 1 |
| Description | Runs the full MRP batch sequence as a PHANTOM process when PROGNAME is MRP. Executes MRP, component availability, grouper, planned orders, capacity requirements, and MRP report generation in order. Clears MRP.INCR.1287 on weekends. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PROGNAME | in | Name of program to run; only MRP triggers the full batch sequence |
Tables Referenced: MRP.INCR.1287
Tables Written: MRP.INCR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PHANTOM.REV2",
"args": {
"0": ""
}
}VB_PLANORD.REV1
Signature: SUBROUTINE VB_PLANORD.REV1(CO,REQTYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORD.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_PLANORD.REV6 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | DATA | out | |
| 3 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORD.REV1",
"args": {
"0": "",
"1": ""
}
}VB_PLANORD.REV2
Signature: SUBROUTINE VB_PLANORD.REV2(CO,REQTYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORD.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_PLANORD.REV6 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | DATA | out | |
| 3 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORD.REV2",
"args": {
"0": "",
"1": ""
}
}VB_PLANORD.REV3
Signature: SUBROUTINE VB_PLANORD.REV3(CO,REQTYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORD.REV3
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_PLANORD.REV6 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | DATA | out | |
| 3 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORD.REV3",
"args": {
"0": "",
"1": ""
}
}VB_PLANORD.REV4
Signature: SUBROUTINE VB_PLANORD.REV4(CO,REQTYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORD.REV4
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_PLANORD.REV6 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | DATA | out | |
| 3 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORD.REV4",
"args": {
"0": "",
"1": ""
}
}VB_PLANORD.REV5
Signature: SUBROUTINE VB_PLANORD.REV5(CO,REQTYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORD.REV5
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_PLANORD.REV6 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | DATA | out | |
| 3 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORD.REV5",
"args": {
"0": "",
"1": ""
}
}VB_PLANORD.REV6
Signature: SUBROUTINE VB_PLANORD.REV6(CO,REQTYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORD.REV6
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Process |
| Args | 4 |
| Description | Generates or retrieves a planned order report. When REQTYPE is a date string, reads a previously saved report from PLANORD.1287. When REQTYPE is ALL or empty, generates a new report by selecting REQ records, looking up product/routing/supplier data from 20+ tables, and writing results to PLANORD.1287. |
| Safe REQTYPE | (date string) |
| Dangerous REQTYPE | ALL, |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number (hardcoded to 1 internally) |
| 1 | REQTYPE | inout | Request type: date string to read saved report, ALL or empty to generate new report |
| 2 | DATA | out | Planned order report data array |
| 3 | MESSAGE | out | Error or status message |
Tables Referenced: ALTROUTE.HEAD, ALTROUTE.LINE, BUYER.XREF.1287, CO.STDS.COST, CO.STDS.MRP, CO.STDS.SF, ITEMCA, ITEMMANF, ITEMORD, ITEMQTY, JOBMASTER, OPEN.PO.HEAD, OPEN.PO.LINES, OPENWO, PLANORD.1287, PRODUCT, PRODXREF, REQ, SF.CAL, SF.CAL.WOCE, SROUTE.HEAD, SROUTE.LINE, VENDOR, WOCE
Tables Written: PLANORD.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORD.REV6",
"args": {
"0": ""
}
}VB_PLANORDLIST.REV1
Signature: SUBROUTINE VB_PLANORDLIST.REV1(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PLANORDLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Lists the dates of previously saved planned order reports by selecting record IDs from PLANORD.1287 and returning them as a delimited list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | List of saved planned order report date IDs |
| 1 | MESSAGE | out | Error or status message |
Tables Referenced: PLANORD.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PLANORDLIST.REV1",
"args": {
}
}VB_POCHECKLOT.REV1
Signature: SUBROUTINE VB_POCHECKLOT.REV1(CO,RECNO,PONO,LINENO,PARTNO,OKFLAG,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POCHECKLOT.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 7 |
| Description | Validates a PO receiver lot number by checking it against DTSD, LOTHIST, POHIST, and PO.REC tables. Returns an OK flag and message indicating whether the lot already exists. Uses READU for existence checking but releases locks. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | PARTNO | in | Part number |
| 2 | PESSION | in | PO number |
| 3 | PESSION2 | in | PO line number |
| 4 | RECNO | in | Receiver lot number to validate |
| 5 | OKFLAG | out | OK flag: 1 if lot is valid/unique, 0 if already exists |
| 6 | MSG | out | Error or validation message |
Tables Referenced: DTSD, LOTHIST, PO.REC, POHIST
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POCHECKLOT.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_POF.REV1
Signature: SUBROUTINE VB_POF.REV1(ID,REQTYPE,AUTHORIZED,HEADDATA,LINEDATA,LINENOTEDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POF.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 8 |
| Description | Reads or writes planned order form data to/from HOLD file. READ retrieves saved PO form data. WRITE saves PO header, line, and note data. When AUTHORIZED is TRUE during a read, deletes the record after reading. |
| Safe REQTYPE | READ |
| Dangerous REQTYPE | WRITE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: READ to retrieve, WRITE to save |
| 2 | PESSION | in | PO form ID (used as key for HOLD record) |
| 3 | HEADDATA | inout | PO header data array |
| 4 | LINEDATA | inout | PO line data array |
| 5 | LINENOTEDATA | inout | PO line note data array |
| 6 | MESSAGE | out | Error or status message |
| 7 | AUTHORIZED | in | Authorization flag: TRUE allows delete after read |
Tables Referenced: HOLD
Tables Written: HOLD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POF.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"7": ""
}
}VB_POFLIST.REV1
Signature: SUBROUTINE VB_POFLIST.REV1(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POFLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Lists saved purchase order form IDs from the HOLD file by selecting records matching the pattern POF* and returning them as a delimited list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | List of saved POF record IDs from HOLD |
| 1 | MESSAGE | out | Error or status message |
Tables Referenced: HOLD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POFLIST.REV1",
"args": {
}
}VB_POHIST.REV1
Signature: SUBROUTINE VB_POHIST(CO,REQTYPE,INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POHIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_POHIST.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INDATA | out | |
| 3 | OUTDATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POHIST.REV1",
"args": {
"0": "",
"1": ""
}
}VB_POHIST.REV2
Signature: SUBROUTINE VB_POHIST(CO,REQTYPE,INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POHIST.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_POHIST.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INDATA | out | |
| 3 | OUTDATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POHIST.REV2",
"args": {
"0": "",
"1": ""
}
}VB_POHIST.REV3
Signature: SUBROUTINE VB_POHIST(CO,REQTYPE,INDATA,OUTDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POHIST.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Multi-mode purchase order history inquiry. Supports REQTYPE modes: UNCONFIRMED, APHIST, POHIST-PART, INVHIST, and LOTHIST. Reads from 28+ tables. Returns formatted result data. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: UNCONFIRMED, APHIST, POHIST-PART, INVHIST, or LOTHIST |
| 2 | INDATA | in | Input criteria (part number, PO number, or filter values depending on REQTYPE) |
| 3 | OUTDATA | out | Result data array formatted per REQTYPE |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: AP.HEAD, AP.LINE, CATEGORY, CO.STDS.COST, DTSD, FOB, GL-COMPANY, INSPECTION, INVAUDIT, ITEMCA, ITEMMANF, ITEMORD, ITEMQTY, JOBMASTER, LOTHIST, MFG.1287, OPEN.PO.CHRGS, OPEN.PO.HEAD, OPEN.PO.HEAD.1287, OPEN.PO.LINES, OPEN.PO.LINES.1287, OPEN.PO.NOTES, PO.REC, POHIST, PRODUCT, PRODXREF, STOCK.PAR, TERMS, VENDOR, VENDOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POHIST.REV3",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_POLINE.NOTE
Signature: SUBROUTINE VB_POLINE.NOTE(INREC, OUTREC, MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POLINE.NOTE
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 3 |
| Description | Reads or saves PO line editor data. TYPE R reads line data from OPEN.PO.LINES and related tables. TYPE S writes updated line and note data to OPEN.PO.LINES, OPEN.PO.LINES.1287, and VENDOR.1287. |
| Safe REQTYPE | R |
| Dangerous REQTYPE | S |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INREC | in | Pipe-delimited input: TYPE |
| 1 | OUTREC | out | Output data: line details on read, status on save |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: CATEGORY, CO.STDS.COST, GL-COMPANY, ITEMCA, ITEMMANF, MFG.1287, OPEN.PO.HEAD, OPEN.PO.LINES, OPEN.PO.LINES.1287, OPEN.PO.NOTES, PRODUCT, VENDOR.1287
Tables Written: OPEN.PO.LINES, OPEN.PO.LINES.1287, OPEN.PO.NOTES, VENDOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POLINE.NOTE",
"args": {
"0": ""
}
}VB_POMAINT.REV1
Signature: SUBROUTINE VB_POMAINT.REV1(CO,PONO,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINT.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 7 |
| Superseded By | VB_POMAINT.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | PONO | in | |
| 2 | HEADDATA | out | |
| 3 | HEADNOTEDATA | out | |
| 4 | LINEDATA | out | |
| 5 | LINENOTEDATA | out | |
| 6 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINT.REV1",
"args": {
"0": "",
"1": ""
}
}VB_POMAINT.REV2
Signature: SUBROUTINE VB_POMAINT.REV2(CO,PONO,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINT.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 7 |
| Superseded By | VB_POMAINT.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | PONO | in | |
| 2 | HEADDATA | out | |
| 3 | HEADNOTEDATA | out | |
| 4 | LINEDATA | out | |
| 5 | LINENOTEDATA | out | |
| 6 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINT.REV2",
"args": {
"0": "",
"1": ""
}
}VB_POMAINT.REV3
Signature: SUBROUTINE VB_POMAINT.REV3(CO,PONO,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINT.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 7 |
| Description | Reads a purchase order and returns all header and line details. Reads the PO header from OPEN.PO.HEAD, vendor info from VENDOR, and iterates through all PO lines reading from OPEN.PO.LINES and related tables. Returns comprehensive PO data including ship-to, terms, stock paragraphs, and line-level part/cost/schedule details. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | PONO | in | Purchase order number |
| 2 | HEADDATA | out | PO header data array (vendor, ship-to, terms, dates, etc.) |
| 3 | HEADNOTEDATA | out | PO header notes data |
| 4 | LINEDATA | out | PO line data array (parts, quantities, costs, schedules) |
| 5 | LINENOTEDATA | out | PO line notes data array |
| 6 | MSG | out | Error or status message |
Tables Referenced: CATEGORY, CO.STDS.COST, FOB, GL-COMPANY, ITEMMANF, ITEMORD, JOBMASTER, MFG.1287, OPEN.PO.HEAD, OPEN.PO.HEAD.1287, OPEN.PO.HEAD.NOTES, OPEN.PO.LINES, OPEN.PO.LINES.1287, OPEN.PO.NOTES, OPEN.RFQ.HEAD.1287, OPENWO, PRODUCT, STOCK.PAR, TERMS, VENDOR, VENDOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINT.REV3",
"args": {
"0": "",
"1": ""
}
}VB_POMAINT2.REV1
Signature: SUBROUTINE VB_POMAINT2(CO,REQTYPE,INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINT2.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Validates purchase order field entries by request type. Supports VENDNO, STKPAR, TERMS, PARTNO, FOB, and GLCATEGORY modes. Returns validated data with descriptions. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: VENDNO, STKPAR, TERMS, PARTNO, FOB, or GLCATEGORY |
| 2 | INDATA | in | Input value to validate (vendor number, part number, etc.) |
| 3 | OUTDATA | out | Validated output data with descriptions and related info |
| 4 | MSG | out | Error or status message |
Tables Referenced: CATEGORY, FOB, ITEMCA, ITEMMANF, PRODUCT, STOCK.PAR, TERMS, VENDOR, VENDOR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINT2.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_POMAINTWRITE.REV1
Signature: SUBROUTINE VB_POMAINTWRITE.REV1(CO,PONO,REQTYPE,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,LINECHARGEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINTWRITE.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 9 |
| Superseded By | VB_POMAINTWRITE.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | PONO | in | |
| 2 | REQTYPE | in | |
| 3 | HEADDATA | out | |
| 4 | HEADNOTEDATA | out | |
| 5 | LINEDATA | out | |
| 6 | LINENOTEDATA | out | |
| 7 | LINECHARGEDATA | out | |
| 8 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINTWRITE.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_POMAINTWRITE.REV2
Signature: SUBROUTINE VB_POMAINTWRITE.REV2(CO,PONO,REQTYPE,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,LINECHARGEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINTWRITE.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 9 |
| Superseded By | VB_POMAINTWRITE.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | PONO | in | |
| 2 | REQTYPE | in | |
| 3 | HEADDATA | out | |
| 4 | HEADNOTEDATA | out | |
| 5 | LINEDATA | out | |
| 6 | LINENOTEDATA | out | |
| 7 | LINECHARGEDATA | out | |
| 8 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINTWRITE.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_POMAINTWRITE.REV4
Signature: SUBROUTINE VB_POMAINTWRITE.REV4(CO,PONO,REQTYPE,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,LINECHARGEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINTWRITE.REV4
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 9 |
| Superseded By | VB_POMAINTWRITE.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | PONO | in | |
| 2 | REQTYPE | in | |
| 3 | HEADDATA | out | |
| 4 | HEADNOTEDATA | out | |
| 5 | LINEDATA | out | |
| 6 | LINENOTEDATA | out | |
| 7 | LINECHARGEDATA | out | |
| 8 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINTWRITE.REV4",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_POMAINTWRITE.REV5
Signature: SUBROUTINE VB_POMAINTWRITE.REV5(CO,PONO,REQTYPE,HEADDATA,HEADNOTEDATA,LINEDATA,LINENOTEDATA,LINECHARGEDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_POMAINTWRITE.REV5
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 9 |
| Description | Creates or updates purchase orders. Supports NEWPO, OLDPO, OLDPO-HEADER, and OLDPO-DELETE modes. Writes to OPEN.PO.HEAD, OPEN.PO.LINES, OPEN.PO.NOTES, and 13+ related tables. Manages PO number allocation, vendor cross-references, transaction registers, and GL postings. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: NEWPO, OLDPO, OLDPO-HEADER, or OLDPO-DELETE |
| 2 | PESSION | inout | PO number (input for updates, output with new number for NEWPO) |
| 3 | HEADDATA | in | PO header data array |
| 4 | HEADNOTEDATA | in | PO header notes data |
| 5 | LINEDATA | in | PO line data array |
| 6 | LINENOTEDATA | in | PO line notes data array |
| 7 | AUTHORIZED | in | User initials for audit trail |
| 8 | MSG | out | Error or status message |
Tables Referenced: BUYER.XREF.1287, CATEGORY, CO.STDS.COST, CO.STDS.MRP, FOB, GL-COMPANY, INSPECTION, INVAUDIT, ITEMCA, ITEMMANF, ITEMORD, ITEMQTY, JOBMASTER, MFG.1287, OPEN.PO.CHRGS, OPEN.PO.HEAD, OPEN.PO.HEAD.1287, OPEN.PO.HEAD.NOTES, OPEN.PO.LINES, OPEN.PO.LINES.1287, OPEN.PO.NOTES, POPART.XREF, PRODUCT, PRODXREF, REQ, STOCK.PAR, TERMS, TRANSREG, VENDOR, VENDOR.1287, VENDXREF
Tables Written: CO.STDS.COST, INVAUDIT, OPEN.PO.HEAD, OPEN.PO.HEAD.1287, OPEN.PO.HEAD.NOTES, OPEN.PO.LINES, OPEN.PO.LINES.1287, OPEN.PO.NOTES, POPART.XREF, PWD.AUDIT, REQ, TRANSREG, VENDOR.1287, VENDXREF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_POMAINTWRITE.REV5",
"args": {
"0": "",
"1": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": ""
}
}VB_PORECEIPT.REV1
Signature: SUBROUTINE VB_PORECEIPT.REV1(CO,LCODE,PONO,DATE.REC,VENO,LINEDATA,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PORECEIPT.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 7 |
| Superseded By | VB_PORECEIPT.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | LCODE | in | |
| 2 | PONO | in | |
| 3 | DATE.REC | out | |
| 4 | VENO | in | |
| 5 | LINEDATA | out | |
| 6 | ERRMSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PORECEIPT.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"4": ""
}
}VB_PORECEIPT.REV2
Signature: SUBROUTINE VB_PORECEIPT(HDATA,LINEDATA,RECNO,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PORECEIPT.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 5 |
| Description | Processes purchase order receipts. Validates receipt data against the PO, updates received quantities on PO lines, writes receiver records to PO.REC, creates inventory audit trail entries in INVAUDIT, and updates item quantity records in ITEMQTY. Handles lot tracking and FIFO cost updates. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | HDATA | in | Receipt header data (PO number, vendor, dates) |
| 2 | RECNO | out | Generated receiver number |
| 3 | ERRMSG | out | Error message if validation or processing fails |
| 4 | LINEDATA | in | Receipt line data array (parts, quantities, lots) |
Tables Referenced: CO.STDS.COST, CO.STDS.MRP, INSPECTION, ITEMCA, ITEMORD, ITEMQTY, LOTHIST, OPEN.PO.HEAD, OPEN.PO.LINES, OPEN.PO.LINES.1287, PO.REC, PRODUCT
Tables Written: CO.STDS.COST, INVAUDIT, ITEMQTY, LOTHIST, OPEN.PO.LINES, PO.REC
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PORECEIPT.REV2",
"args": {
"0": "",
"1": "",
"4": ""
}
}VB_PROCESSTYPELIST
Signature: SUBROUTINE VB_PROCESSTYPELIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROCESSTYPELIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Lists all process types by selecting records from PROCESSTYPE.1287 and returning their IDs and descriptions as a delimited list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | DATA | out | List of process type IDs and descriptions |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: PROCESSTYPE.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROCESSTYPELIST",
"args": {
"0": ""
}
}VB_PRODUCTCLASS_LIST
Signature: SUBROUTINE VB_PRODUCT_LIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCTCLASS_LIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Lists non-obsolete products with their class and manufacturer data. Selects from PRODUCT where MRP is not O (obsolete), joins with ITEMMANF for manufacturer info. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | Product list data with part, description, class, and manufacturer |
| 1 | MESSAGE | out | Error or status message |
Tables Referenced: ITEMMANF, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PRODUCTCLASS_LIST",
"args": {
}
}VB_PRODUCTCLASSLIST.REV1
Signature: SUBROUTINE VB_PRODUCTCLASSLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCTCLASSLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Lists product classes from PRODUCT.CLASS.1287. Selects all records and returns class IDs and descriptions as a delimited list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type (unused) |
| 2 | INDATA | in | Input data (unused) |
| 3 | DATA | out | List of product class IDs and descriptions |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: PRODUCT.CLASS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PRODUCTCLASSLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PRODUCTLDS.REV1
Signature: SUBROUTINE VB_PRODUCTLDS(CO,REQTYPE,PRODNO,P1287REC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCTLDS.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | CRUD operations for product LDS (Lot/Date/Serial) records in PRODUCT.LDS.1287. Supports READ, WRITE, and DELETE modes. WRITE creates/updates with audit trail. DELETE soft-deletes by setting delete flag. The P1287REC argument contains the record data that gets written via MATWRITE. |
| Safe REQTYPE | READ |
| Dangerous REQTYPE | WRITE, DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: READ, WRITE, or DELETE |
| 2 | INDATA | in | Product LDS record ID |
| 3 | P1287REC | in | Record data array to write (used for WRITE/DELETE) |
| 4 | AUTHORIZED | in | User initials for audit trail |
| 5 | MESSAGE | out | Error or status message |
Tables Referenced: PRODUCT.LDS.1287
Tables Written: PRODUCT.LDS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PRODUCTLDS.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_PRODUCTLIST.REV1
Signature: SUBROUTINE VB_PRODUCTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCTLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Lists product LDS records from PRODUCT.LDS.1287. Selects non-deleted records and returns their IDs and key fields as a delimited list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type (unused) |
| 2 | INDATA | in | Input data (unused) |
| 3 | DATA | out | List of product LDS record IDs and data |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: PRODUCT.LDS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PRODUCTLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PRODUCTS.REV1
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCTS.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 0 |
| Description | Internal batch utility that populates PRODUCT.LDS.1287 from PRODUCT data. No SUBROUTINE declaration; not callable via API. Iterates through products and writes LDS records. |
Tables Referenced: PRODUCT, PRODUCT.LDS.1287
Tables Written: PRODUCT.LDS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PRODUCTS.REV1",
"args": {
}
}VB_PROJECTLIST
Signature: SUBROUTINE VB_JOBLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROJECTLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Lists active projects/jobs from JOBMASTER. Selects records where status indicates active, and returns job numbers, descriptions, and customer information as a delimited list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | DATA | out | List of project/job numbers with descriptions |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: JOBMASTER
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROJECTLIST",
"args": {
"0": ""
}
}VB_PROJECTLIST.REV1
Signature: SUBROUTINE VB_PROJECTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROJECTLIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_PROJECTLIST.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROJECTLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PROJECTLIST.REV2
Signature: SUBROUTINE VB_PROJECTLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROJECTLIST.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Lists projects with status, quote counts, and filtering by ID list or SQL criteria |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | IDLIST | in | Delimited list of project IDs to filter (optional) |
| 2 | SQL | in | SQL criteria string for project selection (optional) |
| 3 | DATA | out | VM/AM delimited array of project data (12 fields per project) |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: PROJECT.1287, SPN.QUOTES.1287, PROJECT.STATUS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROJECTLIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_PROJECTORDERS.REV1
Signature: SUBROUTINE VB_PROJECTORDERS(CO,REQTYPE,SOIDNO,SOREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROJECTORDERS.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Adds, updates, or deletes project sales order line items with audit trail |
| Safe REQTYPE | ADD, UPDATE |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | REQTYPE | in | Request type: ADD, UPDATE, or DELETE |
| 2 | SOIDNO | in | Sales order ID number (CO!ProjectID!LineNo) |
| 3 | SOREC | in | Sales order record data to write (dynamic array) |
| 4 | ADDFLAG | in | Add flag - Y if new record |
| 5 | MESSAGE | out | Result message (SAVED or DELETED) |
Tables Referenced: PROJECT.SALESORDERS.1287, PASSWORDS, TRANSREG
Tables Written: PROJECT.SALESORDERS.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROJECTORDERS.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_PROJECTPAYMENTS.REV1
Signature: SUBROUTINE VB_PROJECTPAYMENTS(CO,REQTYPE,PAYIDNO,PAYREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROJECTPAYMENTS.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Adds, updates, or deletes project payment line items with audit trail |
| Safe REQTYPE | ADD, UPDATE |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | REQTYPE | in | Request type: ADD, UPDATE, or DELETE |
| 2 | PAYIDNO | in | Payment ID number (CO!ProjectID!LineNo) |
| 3 | PAYREC | in | Payment record data to write (dynamic array) |
| 4 | ADDFLAG | in | Add flag - Y if new record |
| 5 | MESSAGE | out | Result message (SAVED or DELETED) |
Tables Referenced: PROJECT.PAYMENTS.1287, PASSWORDS, TRANSREG
Tables Written: PROJECT.PAYMENTS.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROJECTPAYMENTS.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_PROJECTTASKS.REV1
Signature: SUBROUTINE VB_PROJECTTASKS(CO,REQTYPE,TASKIDNO,TASKREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PROJECTTASKS.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Adds, updates, or deletes project task line items with audit trail |
| Safe REQTYPE | ADD, UPDATE |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | REQTYPE | in | Request type: ADD, UPDATE, or DELETE |
| 2 | TASKIDNO | in | Task ID number (CO!ProjectID!LineNo) |
| 3 | TASKREC | in | Task record data to write (dynamic array) |
| 4 | ADDFLAG | in | Add flag - Y if new record |
| 5 | MESSAGE | out | Result message (SAVED or DELETED) |
Tables Referenced: PROJECT.TASKS.1287, PASSWORDS, TRANSREG
Tables Written: PROJECT.TASKS.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PROJECTTASKS.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_PRUNEAUTOWO.1
Signature: SUBROUTINE PRUNEAUTOWO.1(AUTOWOS)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRUNEAUTOWO.1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 1 |
| Description | Returns list of auto-generated work order numbers from OPENWO.AUTO file |
Tables Referenced: OPENWO.AUTO.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PRUNEAUTOWO.1",
"args": {
}
}VB_PVXREF.REV1
Signature: SUBROUTINE VB_PVXREF(CO,REQTYPE,DATAIN,DATAOUT,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_PVXREF.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 5 |
| Description | Maintains part-vendor cross-reference records and updates lead times in ITEMORD |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | REQTYPE | in | Request type (unused in current code) |
| 2 | DATAIN | in | Input data: <1>=PartNo, <2>=VendorList, <3>=LeadTime |
| 3 | DATAOUT | out | Output data (unused in current code) |
| 4 | MSG | out | Error or status message |
Tables Referenced: GL-COMPANY, PRODUCT, PVXREF, ITEMORD, VENDOR, VENDXREF, VPXREF, PRODVEND, PASSWORDS, TRANSREG
Tables Written: PVXREF, PRODVEND, ITEMORD, VPXREF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_PVXREF.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_QUOTELIST.REV1
Signature: SUBROUTINE VB_QUOTELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_QUOTELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Lists spare parts quotes with filtering by ID list or SQL criteria |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | IDLIST | in | Delimited list of quote IDs to filter (optional) |
| 2 | SQL | in | SQL criteria for quote selection (optional) |
| 3 | DATA | out | VM/AM delimited array of quote data (10 fields per quote) |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: SPN.QUOTES.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_QUOTELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_QUOTEPARA.REV1
Signature: SUBROUTINE VB_QUOTEPARA(CO,REQTYPE,PARANO,P1287REC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_QUOTEPARA.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Adds, updates, or deletes spare parts quote paragraph records with audit trail |
| Safe REQTYPE | ADD, UPDATE |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | REQTYPE | in | Request type: ADD, UPDATE, or DELETE |
| 2 | PARANO | in | Paragraph ID (CO!QuoteID!ParaNo) |
| 3 | P1287REC | in | Paragraph record data to write (dynamic array) |
| 4 | ADDFLAG | in | Add flag - Y if new record |
| 5 | MESSAGE | out | Result message (SAVED or DELETED) |
Tables Referenced: SPN.QUOTEPARA.1287, PASSWORDS, TRANSREG
Tables Written: SPN.QUOTEPARA.1287, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_QUOTEPARA.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_QUOTEPARALIST.REV1
Signature: SUBROUTINE VB_QUOTEPARALIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_QUOTEPARALIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_QUOTEPARALIST.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_QUOTEPARALIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_QUOTEPARALIST.REV2
Signature: SUBROUTINE VB_QUOTEPARALIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_QUOTEPARALIST.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Lists spare parts quote paragraphs with item category descriptions |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | IDLIST | in | Delimited list of quote paragraph IDs to filter (optional) |
| 2 | SQL | in | SQL criteria for paragraph selection (optional) |
| 3 | DATA | out | VM/AM delimited array of paragraph data (7 fields per record) |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: SPN.QUOTEPARA.1287, ITEMCA
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_QUOTEPARALIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_R7270
Signature: SUBROUTINE R7270(CO.STDS.COST,FHEADFILE,FLINEFILE,FNOTEFILE,THEADFILE,TLINEFILE,TNOTEFILE,CO,ROUTENO,WONO,ORDQTY,BEL,FPBSFILE,TPBSFILE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_R7270
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 14 |
| Description | Copies a standard routing to a WIP routing for a work order, with quantity adjustments |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO.STDS.COST | in | Pre-opened CO.STDS.COST file handle |
| 1 | FHEADFILE | in | Pre-opened source routing header file handle |
| 2 | FLINEFILE | in | Pre-opened source routing line file handle |
| 3 | FNOTEFILE | in | Pre-opened source routing note file handle |
| 4 | THEADFILE | in | Pre-opened target routing header file handle |
| 5 | TLINEFILE | in | Pre-opened target routing line file handle |
| 6 | TNOTEFILE | in | Pre-opened target routing note file handle |
| 7 | CO | in | Company code |
| 8 | ROUTENO | in | Standard routing number to copy from |
| 9 | WONO | in | Work order number to copy to |
| 10 | ORDQTY | in | Order quantity for route quantity calculations |
| 11 | BEL | in | Bell character for terminal alerts |
| 12 | FPBSFILE | in | Pre-opened source PBS line file handle |
| 13 | TPBSFILE | in | Pre-opened target PBS line file handle |
Tables Referenced: CO.STDS.COST
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_R7270",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": ""
}
}VB_READ.SP.QUOTE.REV1
Signature: SUBROUTINE VB_READ.SP.QUOTE(CO,ASSYNO,SPREC,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_READ.SP.QUOTE.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | Reads a spare parts quote and enriches line items with manufacturer, description, UM, lead time, and where-used data |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | ASSYNO | in | Assembly/quote number to read |
| 2 | SPREC | out | Spare parts quote record with enriched line item data |
| 3 | MSG | out | Error or status message |
Tables Referenced: SP.QUOTE.1287, ITEMMANF, PRODUCT, ITEMORD, BMF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_READ.SP.QUOTE.REV1",
"args": {
"0": "",
"1": ""
}
}VB_READDICTID
Signature: SUBROUTINE VB_READDICT(DICTFILE,DATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_READDICTID
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 2 |
| Description | Reads dictionary field IDs from a specified file DICT and returns them as a delimited list |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DICTFILE | in | Name of the file whose DICT to read |
| 1 | DATA | out | AM-delimited list of dictionary field IDs |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_READDICTID",
"args": {
"0": ""
}
}VB_READINVOICE.REV1
Signature: SUBROUTINE VB_READINVOICE(CO,INVNO,H.DATA,L.DATA,NOTES,TOTALS,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_READINVOICE.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 7 |
| Description | Reads a complete invoice with header, lines, notes, totals, and related customer/shipping data from 21 tables |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | INVNO | in | Invoice number to read |
| 2 | H.DATA | out | Invoice header record (dynamic array) |
| 3 | L.DATA | out | Invoice line records (AM-delimited) |
| 4 | NOTES | out | Invoice notes and comments data |
| 5 | TOTALS | out | Invoice totals and tax calculations |
| 6 | MESSAGE | out | Error or status message |
Tables Referenced: INVOICE.1287, INVLINE.1287, INVNOTES.1287, INVMISC.1287, INVMISC2.1287, INVMEMO.1287, INVCOMMENTS, CUSTOMER, SHIPTO, SHIPTO.OE, COMPANY.STDS, TAXJURIS, SALESREP, SALESTERR, PAYMETH, CONTACT, SHIPVIA, FOB, PRODUCT, HSCODE, COUNTRYCODE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_READINVOICE.REV1",
"args": {
"0": "",
"1": ""
}
}VB_RECEIPTUPD
Signature: SUBROUTINE DUMMY(BIN,BIN.PRODUCT,BINXREF,BINFLAG,BINLIST,CAGE,CATEGORY,CO.STDS,CO.STDS.COST,CONTAINER.TYPE,DTSD,DTSX,GLCOMPANY,ITEMCA,LOCODE,ITEMHIST,ITEMQTY,INVAUDIT,INVAUDPOXREF,INVAUDWOXREF,INVHIST,INVXREF,JOB.BIN,JOB.BINXREF,JOB.PRODUCT,LOT,LOTCOST,LOTCOSTXREF,LOTHIST,LOTHIST.AUDIT,LOTHIST.GL,LOTXREF,OPEN.PO.HEAD,OPEN.PO.LINES,OPENWO,OUTAUDIT,OWNERSHIP,PO.CARRIER,PO.REC,POHIST,POHISTINDX,POHIST.OUTXREF,POHIST.RATING,POXUCAP,PRODUCT,REQ,TRANSCRT,VENDOR,VIXUCAP,WOXREF,BEL,CEL,CES,CO,CO.CONFIRM,CONFIRM,CRTNO,CWS,DATE.REC,DES,EXDATES,EXPDATES,FILE,MAT HEAD,HCARR,HCTNS,HCTYPE,HEXDATE,HOCODE,HPACK,IFLAG,INITS,JOBNO,KEY,LREC,LFLAG,LINE9,LINENO,MARK,MSGFLAG,NIFLAG,OPENQTYS,PONO,PGM,MAT PREC,PRINTSUB,MAT PRODREC,QTYLIST,RECNO,STDRDS,UM,VNAME)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_RECEIPTUPD
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 92 |
| Description | Internal receipt processing engine that updates PO, inventory, vendor, and history records during receipt entry |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | BIN | in | |
| 1 | BIN.PRODUCT | in | |
| 2 | BINXREF | in | |
| 3 | BINFLAG | in | |
| 4 | BINLIST | in | |
| 5 | CAGE | in | |
| 6 | CATEGORY | in | |
| 7 | CO.STDS | in | |
| 8 | CO.STDS.COST | in | |
| 9 | CONTAINER.TYPE | in | |
| 10 | DTSD | in | |
| 11 | DTSX | in | |
| 12 | GLCOMPANY | in | |
| 13 | ITEMCA | in | |
| 14 | LOCODE | in | |
| 15 | ITEMHIST | in | |
| 16 | ITEMQTY | in | |
| 17 | INVAUDIT | in | |
| 18 | INVAUDPOXREF | in | |
| 19 | INVAUDWOXREF | in | |
| 20 | INVHIST | in | |
| 21 | INVXREF | in | |
| 22 | JOB.BIN | in | |
| 23 | JOB.BINXREF | in | |
| 24 | JOB.PRODUCT | in | |
| 25 | LOT | in | |
| 26 | LOTCOST | in | |
| 27 | LOTCOSTXREF | in | |
| 28 | LOTHIST | in | |
| 29 | LOTHIST.AUDIT | in | |
| 30 | LOTHIST.GL | in | |
| 31 | LOTXREF | in | |
| 32 | OPEN.PO.HEAD | in | |
| 33 | OPEN.PO.LINES | in | |
| 34 | OPENWO | in | |
| 35 | OUTAUDIT | in | |
| 36 | OWNERSHIP | in | |
| 37 | PO.CARRIER | in | |
| 38 | PO.REC | in | Purchase order record (dynamic array) |
| 39 | POHIST | in | |
| 40 | POHISTINDX | in | |
| 41 | POHIST.OUTXREF | in | |
| 42 | POHIST.RATING | in | |
| 43 | POXUCAP | in | |
| 44 | PRODUCT | in | Pre-opened PRODUCT file handle |
| 45 | REQ | in | |
| 46 | TRANSCRT | in | |
| 47 | VENDOR | in | Pre-opened VENDOR file handle |
| 48 | VIXUCAP | in | |
| 49 | WOXREF | in | |
| 50 | BEL | in | |
| 51 | CEL | in | |
| 52 | CES | in | |
| 53 | CO | in | Company code |
| 54 | CO.CONFIRM | in | |
| 55 | CONFIRM | in | |
| 56 | CRTNO | in | |
| 57 | CWS | in | |
| 58 | DATE.REC | in | Date record data |
| 59 | DES | in | |
| 60 | EXDATES | in | |
| 61 | EXPDATES | in | |
| 62 | FILE | in | |
| 63 | HEAD | in | |
| 64 | HCARR | in | |
| 65 | HCTNS | in | |
| 66 | HCTYPE | in | |
| 67 | HEXDATE | in | |
| 68 | HOCODE | in | |
| 69 | HPACK | in | |
| 70 | IFLAG | in | |
| 71 | INITS | in | |
| 72 | JOBNO | in | |
| 73 | KEY | in | |
| 74 | LREC | in | Line record data |
| 75 | LFLAG | in | |
| 76 | LINE9 | in | |
| 77 | LINENO | in | |
| 78 | MARK | in | |
| 79 | MSGFLAG | in | Message flag indicator |
| 80 | NIFLAG | in | |
| 81 | OPENQTYS | in | |
| 82 | PONO | in | |
| 83 | PGM | in | |
| 84 | PREC | in | Product record data |
| 85 | PRINTSUB | in | |
| 86 | PRODREC | in | Production record data |
| 87 | QTYLIST | in | |
| 88 | RECNO | in | Receipt number |
| 89 | STDRDS | in | |
| 90 | UM | in | |
| 91 | VNAME | in |
Tables Referenced: PASSWORDS, TRANSREG, PRODUCT, ITEMORD, ITEMLOC, VENDOR, COMPANY.STDS, POHIST, POHIST.RATING, GL-COMPANY
Tables Written: POHIST, POHIST.RATING, POHISTINDX, POHIST.OUTXREF, POXUCAP, VENDOR, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_RECEIPTUPD",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
"11": "",
"12": "",
"13": "",
"14": "",
"15": "",
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": "",
"31": "",
"32": "",
"33": "",
"34": "",
"35": "",
"36": "",
"37": "",
"38": "",
"39": "",
"40": "",
"41": "",
"42": "",
"43": "",
"44": "",
"45": "",
"46": "",
"47": "",
"48": "",
"49": "",
"50": "",
"51": "",
"52": "",
"53": "",
"54": "",
"55": "",
"56": "",
"57": "",
"58": "",
"59": "",
"60": "",
"61": "",
"62": "",
"63": "",
"64": "",
"65": "",
"66": "",
"67": "",
"68": "",
"69": "",
"70": "",
"71": "",
"72": "",
"73": "",
"74": "",
"75": "",
"76": "",
"77": "",
"78": "",
"79": "",
"80": "",
"81": "",
"82": "",
"83": "",
"84": "",
"85": "",
"86": "",
"87": "",
"88": "",
"89": "",
"90": "",
"91": ""
}
}VB_REDBOOKLIST
Signature: SUBROUTINE VB_REDBOOKLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_REDBOOKLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Lists red book (RFC) entries with filtering by ID list or SQL criteria |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL criteria or filter for red book selection |
| 1 | DATA | out | VM/AM delimited array of red book data (4 fields per record) |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: REDBOOK.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_REDBOOKLIST",
"args": {
"0": ""
}
}VB_REFXLIST.REV1
Signature: SUBROUTINE VB_REFXLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_REFXLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Lists reference cross-reference product entries with filtering by ID list or SQL criteria |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL criteria or filter for cross-reference selection |
| 1 | DATA | out | VM/AM delimited array of cross-reference data (2 fields per record) |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: REFXPROD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_REFXLIST.REV1",
"args": {
"0": ""
}
}VB_S8040
Signature: SUBROUTINE VB_FS8040(CO,REPNUM,FMTNUM,WORKFILE,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_S8040
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Reads financial schedule data from FS.* tables and returns amounts and percentages for schedule line items |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company code |
| 1 | REPNUM | in | Report number |
| 2 | FMTNUM | in | Format number |
| 3 | WORKFILE | inout | Schedule IDs in (AM-delimited), amounts and percentages returned |
| 4 | MESSAGE | out | Error or status message |
Tables Referenced: FS.SCHED, FS.REVENUE, FS.EXPENSE, FS.ASSETS, FS.LIABILITY, FS.CAPITAL, FS.STATISTIC
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_S8040",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_SERVICELIST
Signature: SUBROUTINE VB_SERVICELIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SERVICELIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Lists service records with assigned employee names and filtering by ID list or SQL criteria |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL criteria or filter for service record selection |
| 1 | DATA | out | VM/AM delimited array of service data (4 fields per record) |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: SERVICE.1287, EMPLOYEE.PUBLIC.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SERVICELIST",
"args": {
"0": ""
}
}VB_SHIPTO
Signature: SUBROUTINE VB_SHIPTO(INDATA,SHIPREC,SHIPOEREC,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SHIPTO
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 4 |
| Description | Adds, updates, or deletes ship-to address records with audit trail logging |
| Safe REQTYPE | ADD, UPDATE |
| Dangerous REQTYPE | DELETE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input data: <1>=CO, <2>=CustNo, <3>=ShipToNo, <4>=ReqType (ADD/DELETE) |
| 1 | SHIPREC | in | Ship-to address record data to write (dynamic array) |
| 2 | SHIPOEREC | in | Ship-to OE record data to write (dynamic array) |
| 3 | MESSAGE | out | Result message (SAVED or DELETED) |
Tables Referenced: PASSWORDS, TRANSREG, SHIPTO, SHIPTO.OE
Tables Written: SHIPTO, SHIPTO.1287, SHIPTO.OE, TRANSREG
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SHIPTO",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_SHIPTOLIST
Signature: SUBROUTINE VB_SHIPTOLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SHIPTOLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Lists ship-to addresses for a customer with 10-field address detail data |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL criteria with customer number filter |
| 1 | DATA | out | VM/AM delimited array of ship-to data (10 fields per address) |
| 2 | MESSAGE | out | Error or status message |
Tables Referenced: SHIPTO
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SHIPTOLIST",
"args": {
"0": ""
}
}VB_SHOWREADU
Signature: SUBROUTINE VB_SHOWREADU(ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SHOWREADU
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 1 |
| Description | Displays who is locking a record. Uses STATUS() and GETREADU() to find the user holding a lock and returns a descriptive error message identifying the lock holder. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ERRMSG | out | Returns lock holder description or generic lock message |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SHOWREADU",
"args": {
}
}VB_SPNLIST
Signature: SUBROUTINE VB_SPNLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPNLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Reads SPN list. Executes SQL on SPN.1287 and returns SPN numbers and names. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL select statement |
| 1 | DATA | out | Return array: SPN numbers and names |
| 2 | MESSAGE | out | Error/status message |
Tables Referenced: SPN.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPNLIST",
"args": {
"0": ""
}
}VB_SPNLIST.REV1
Signature: SUBROUTINE VB_SPNLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPNLIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_SPNLIST.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | IDLIST | in | |
| 2 | SQL | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPNLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_SPNLIST.REV2
Signature: SUBROUTINE VB_SPNLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPNLIST.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Extended SPN list. Returns 22-column array with SPN details including account info, status, order values, dates, quotes, sales rep, last activity, project data, industry class/sector, process/machine types, lost competitor/reason/notes. Supports SQL or ID list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-marked list of SPN IDs |
| 2 | SQL | in | SQL select statement |
| 3 | DATA | out | Return array with 22 columns |
| 4 | MESSAGE | out | Error/status message |
Tables Referenced: ACCOUNT.1287, ACTIVITY.LOG.1287, ACTIVITY.XREF.1287, COMPETITOR.1287, EMPLOYEE.PUBLIC.1287, INDCLASS, INDSECTOR.1287, MACHPROCESSTYPE.1287, MACHTYPE.1287, PROJECT.1287, SPN.1287, SPN.QUOTES.1287, SPN.REASON.1287, SPN.STATUS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPNLIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_SPNQUOTELIST.REV1
Signature: SUBROUTINE VB_SPNQUOTELIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPNQUOTELIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Reads SPN quote list. Returns 8-column array with quote ID, quote number, contact, SPN number, author initials, description, create/modify dates. Supports SQL or ID list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-marked list of SPN quote IDs |
| 2 | SQL | in | SQL select statement |
| 3 | DATA | out | Return array with 8 columns |
| 4 | MESSAGE | out | Error/status message |
Tables Referenced: CONTACT.1287, EMPLOYEE.PUBLIC.1287, SPN.QUOTES.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPNQUOTELIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_SPQUOTEMAINT2.REV1
Signature: SUBROUTINE VB_QUOTEMAINT2(CO,REQTYPE,INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPQUOTEMAINT2.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_SPQUOTEMAINT2.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INDATA | out | |
| 3 | OUTDATA | out | |
| 4 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPQUOTEMAINT2.REV1",
"args": {
"0": "",
"1": ""
}
}VB_SPQUOTEMAINT2.REV2
Signature: SUBROUTINE VB_QUOTEMAINT2(CO,REQTYPE,INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPQUOTEMAINT2.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_SPQUOTEMAINT2.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | INDATA | out | |
| 3 | OUTDATA | out | |
| 4 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPQUOTEMAINT2.REV2",
"args": {
"0": "",
"1": ""
}
}VB_SPQUOTEMAINT2.REV3
Signature: SUBROUTINE VB_QUOTEMAINT2(CO,REQTYPE,INDATA,OUTDATA,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPQUOTEMAINT2.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 5 |
| Description | Quote maintenance with REQTYPE-driven operations. Supports CUSTNO, STKPAR, TERMS, PARTNO, FOB, SAVEPRICE (writes to PRD.PRICE.1287), GLCATEGORY, SHIPTONO, FREIGHT, and QUOTELIST. |
| Safe REQTYPE | CUSTNO, STKPAR, TERMS, PARTNO, FOB, GLCATEGORY, SHIPTONO, FREIGHT, QUOTELIST |
| Dangerous REQTYPE | SAVEPRICE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type |
| 2 | INDATA | in | Input data depending on REQTYPE |
| 3 | OUTDATA | inout | Output data array; for SAVEPRICE contains price record to write |
| 4 | MSG | out | Error/status message |
Tables Referenced: CATEGORY, CREDIT, CUSTOMER, CUSTOMER.1287, CUSTOMER.OE, FOB, FREIGHT, ITEMCA, ITEMORD, PRD.PRICE, PRD.PRICE.1287, PRODUCT, PRODUCT.1287, PRODUCT.NOTES, SHIPTO, SHIPTO.OE, SP.VBQUOTE.1287, STOCK.PAR, TMF
Tables Written: PRD.PRICE.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPQUOTEMAINT2.REV3",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_SPR.REV1
Signature: SUBROUTINE VB_SPR.REV1(CO,REQTYPE,REQNO,REQREC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPR.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | Saves or deletes SPR request records. REQTYPE DELETE removes from SPR.1287. Otherwise MATWRITE passed record data to SPR.1287. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: DELETE or add/update |
| 2 | REQNO | in | SPR record key |
| 3 | REQREC | in | Dynamic array of SPR record data (MATWRITE to SPR.1287) |
| 4 | ADDFLAG | in | Add flag (unused) |
| 5 | MESSAGE | out | Status: DELETED or SAVED |
Tables Referenced: SPR.1287
Tables Written: SPR.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_SPR.REV1",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_TABLE.LOOKUP.REV2OLD
Signature: SUBROUTINE VB_TABLE_LOOKUP(VTABLE,VFIELDNUM,VFIELDNAME,VSQL,VSORT,VLIST,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_TABLE.LOOKUP.REV2OLD
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 8 |
| Description | Generic table lookup utility. Opens any UniData table dynamically, performs SSELECT or BSELECT, returns two-column array of IDs and field values. Supports field number/name, SQL filtering, sort, and ID list. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | VTABLE | in | Table name to open and query |
| 1 | VFIELDNUM | in | Field number(s) to return |
| 2 | VFIELDNAME | in | Field name(s) from dictionary |
| 3 | VSQL | in | SQL WHERE clause |
| 4 | VSORT | in | Sort clause |
| 5 | VLIST | in | Value-marked list of record IDs |
| 6 | DATA | out | Return array: IDs and descriptions |
| 7 | MESSAGE | out | Error/status message |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_TABLE.LOOKUP.REV2OLD",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": ""
}
}VB_TESTCODE
Signature: SUBROUTINE TESTCODE(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_TESTCODE
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Utility |
| Args | 3 |
| Description | Test subroutine returning hardcoded values. Sets DATAOUT<1>=SOME TEXT and DATAOUT<2>=12/31/19, then returns. Dead code after RETURN (routing ops never executed since OPTION is empty). |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input data array (read but not used in active code) |
| 1 | DATAOUT | out | Output data (hardcoded values) |
| 2 | MESSAGE | out | Message (not populated) |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_TESTCODE",
"args": {
"0": ""
}
}VB_TIMESHEETINQ
Signature: SUBROUTINE VB_TIMESHEETINQ(INFO,EMPNO,FROMDATE,TODATE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_TIMESHEETINQ
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | Timesheet inquiry. Retrieves labor history for an employee across a date range. Reads time cards from TS.XREF.1287, iterates labor history lines to build array with date, line#, work center, WO#, hours, rates, part info, WO dates, route completion dates. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INFO | out | Return array with labor detail and daily summary lines |
| 1 | EMPNO | in | Employee number |
| 2 | FROMDATE | in | From date (internal format) |
| 3 | TODATE | in | To date (internal format, upper bound of FOR loop) |
Tables Referenced: LABORHIST, LABORHIST.HEAD, LABORHIST.HEAD.1287, OPENWO, PRODUCT, TS.XREF.1287, WIP.CLOSE, WIPROUTE.LINE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_TIMESHEETINQ",
"args": {
"1": "",
"2": "",
"3": ""
}
}VB_TIMESHEETINQ.REV2
Signature: SUBROUTINE VB_TIMESHEETINQ(INFO,EMPNO,FROMDATE,TODATE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_TIMESHEETINQ.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_TIMESHEETINQ.REV3 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INFO | in | |
| 1 | EMPNO | in | |
| 2 | FROMDATE | in | |
| 3 | TODATE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_TIMESHEETINQ.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_TIMESHEETINQ.REV3
Signature: SUBROUTINE VB_TIMESHEETINQ.REV3(INFO,EMPNO,FROMDATE,TODATE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_TIMESHEETINQ.REV3
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | Enhanced timesheet inquiry (REV3). Adds date validation, excludes empno 9999, calculates REG+OT+DT summation, includes misc hours and card ID. Returns daily labor detail plus summary with total hours, indirect, OT, off-duty, misc, card date, card ID. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INFO | out | Return array with labor detail and daily summary lines |
| 1 | EMPNO | in | Employee number (9999 excluded) |
| 2 | FROMDATE | in | From date (internal format) |
| 3 | TODATE | in | To date (must be >= FROMDATE) |
Tables Referenced: LABORHIST, LABORHIST.HEAD, LABORHIST.HEAD.1287, OPENWO, PRODUCT, TS.XREF.1287, WIP.CLOSE, WIPROUTE.LINE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_TIMESHEETINQ.REV3",
"args": {
"1": "",
"2": "",
"3": ""
}
}VB_UPD.WIPCOST
Signature: SUBROUTINE VB_UPD.WIPCOST(DATAIN,DATAOUT,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_UPD.WIPCOST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Updates WIP cost summary for WOs closed on a given date. Selects from WIP.CLOSE by date, reads OPENWO and WIPLEDGER.SUM to calculate AP/labor/material/outside costs, writes summary to WIPCOST.1287. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input data (DATAIN<1>=closing date; cleared after reading) |
| 1 | DATAOUT | out | Output data (cleared, not populated) |
| 2 | MESSAGE | out | Error/status message |
Tables Referenced: COACCESS, GL-COMPANY, GL.CHARTS, OPENWO, WIP.CLOSE, WIPLEDGER.SUM
Tables Written: WIPCOST.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_UPD.WIPCOST",
"args": {
"0": ""
}
}VB_UPDATE.ROUTE.LEAD
Source: S:\LinuxShare\pro3prog\VBBASE\VB_UPDATE.ROUTE.LEAD
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [INT] internal |
| Pattern | Internal |
| Args | 0 |
| Description | Batch script to update standard routing lines with outside ops and recalculate lead times. Selects SROUTE.HEAD, reads PRODUCT for MRP=M, calls VB_FIX.SROUTE.LINE. Not a callable subroutine (no SUBROUTINE declaration). |
Tables Referenced: ITEMORD, PRODUCT, SROUTE.HEAD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_UPDATE.ROUTE.LEAD",
"args": {
}
}VB_UPDATE_ACTIVITY
Signature: SUBROUTINE VB_UPDATE_ACTIVITY(CO,REQTYPE,ACTIVITYID,P1287REC,ADDFLAG,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_UPDATE_ACTIVITY
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 6 |
| Description | Saves or deletes activity log records. DELETE removes from ACTIVITY.LOG.1287. Otherwise MATWRITE DIM(50) to ACTIVITY.LOG.1287. Opens TRANSREG/PASSWORDS for audit (currently commented out). |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: DELETE or add/update |
| 2 | ACTIVITYID | in | Activity log record ID |
| 3 | P1287REC | in | Dynamic array of record data (MATWRITE to ACTIVITY.LOG.1287) |
| 4 | ADDFLAG | in | Add flag (unused) |
| 5 | MESSAGE | out | Status: DELETE SUCCEEDED or WRITE SUCCEEDED |
Tables Referenced: ACTIVITY.LOG.1287, PASSWORDS, TRANSREG
Tables Written: ACTIVITY.LOG.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_UPDATE_ACTIVITY",
"args": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": ""
}
}VB_UPDATECOST
Signature: SUBROUTINE VB_UPDATECOST(INDATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_UPDATECOST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 2 |
| Description | Updates last cost and vendor for parts. Reads tab-delimited purchase price list from WPDOCS/PURCHASEPRICE.txt, writes new price to ITEMCA (fields 8,38) and vendor to PVXREF (field 1). Sends email via PROCESS.NOTIFY. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | in | Input data (cleared and reused for notification) |
| 1 | MESSAGE | out | Status: SUCCESS on completion |
Tables Referenced: ITEMCA, PVXREF, WPDOCS
Tables Written: ITEMCA, PVXREF
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_UPDATECOST",
"args": {
"0": ""
}
}VB_VENDORLIST
Signature: SUBROUTINE VB_VENDORLIST(SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_VENDORLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 3 |
| Description | Reads vendor list. Selects VENDOR sorted by name, excluding deleted and class E. Search text via DATA filters by name pattern. Returns 6-column array: vendor#, name, phone, fax, contact, class. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | SQL | in | SQL parameter (search text passed via DATA) |
| 1 | DATA | out | Return array with 6 columns |
| 2 | MESSAGE | out | Error/status message |
Tables Referenced: VENDOR
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_VENDORLIST",
"args": {
"0": ""
}
}VB_VENDORLIST.REV1
Signature: SUBROUTINE VB_VENDORLIST(CO,IDLIST,SQL,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_VENDORLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Extended vendor list. Returns 8-column array: vendor#, name, phone, fax, contact, class, website, status name. Supports SQL or ID list. Reads VENDOR, VENDOR.1287, VENDORSTATUS.1287, ACCOUNT.1287. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | IDLIST | in | Value-marked list of vendor IDs |
| 2 | SQL | in | SQL select statement |
| 3 | DATA | out | Return array with 8 columns |
| 4 | MESSAGE | out | Error/status message |
Tables Referenced: ACCOUNT.1287, VENDOR, VENDOR.1287, VENDORSTATUS.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_VENDORLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_W.7277
Signature: SUBROUTINE VB_W.7277(DATAIN,DATAOUT,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_W.7277
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 3 |
| Superseded By | VB_W.7285 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | out | |
| 1 | DATAOUT | out | |
| 2 | ERRMSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_W.7277",
"args": {
}
}VB_W.7285
Signature: SUBROUTINE VB_W.7285(DATAIN,DATAOUT,ERRMSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_W.7285
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 3 |
| Description | Work order receipts to stock. Processes WO completion moving material from WIP to lot file, updating on-hand qtys, posting inventory transactions. Single WO or batch from WO.CLOSE.1287. Updates OPENWO, REQ, ITEMQTY, ITEMHIST, ITEMMANF.1287, PRODUCT, lot files, LOTHIST, LOTHIST.GL, ITEMCA. Sends notifications. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATAIN | in | Input data: <1>=CO, <2>=WO#, <3>=date, <4>=P/C, <5>=qty, <6>=bin, <7>=REQTYPE, <8>=WO type, <9>=initials |
| 1 | DATAOUT | out | Output data (not populated) |
| 2 | ERRMSG | out | Error message |
Tables Referenced: ALLOCXREF, CATEGORY, GL-COMPANY, ITEMHIST, ITEMMANF.1287, ITEMQTY, JOBMASTER, OPENWO, PRODUCT, REQ, TRANSREG, WIPBMF, WIPLEDGER.AP, WIPLEDGER.LAB, WIPLEDGER.MAT, WIPLEDGER.OUT, WIPLEDGER.SUM, WO.CLOSE.1287
Tables Written: ITEMCA, ITEMHIST, ITEMMANF.1287, ITEMQTY, LOTHIST, LOTHIST.GL, OPENWO, PRODUCT, REQ
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_W.7285",
"args": {
"0": ""
}
}VB_WIPBMF
Signature: SUBROUTINE VB_WIPBMF(CO,WONO,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WIPBMF
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | WIP BOM display for single work order. Reads OPENWO header, assembles WO status info, reads/sorts WIPBMF components. Returns multi-row array with WO header (rows 1-11) and BOM lines (rows 15+) with part, desc, MRP, qty, alloc, issued, returned, on-hand, on-order. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | WONO | in | Work order number |
| 2 | DATA | out | Return array with WO header and BOM lines |
| 3 | MESSAGE | out | Error/status message |
Tables Referenced: GL-COMPANY, ITEMQTY, OPENWO, PRODUCT, WIPBMF, WOCE, WOTYPE
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WIPBMF",
"args": {
"0": "",
"1": ""
}
}VB_WIPBMF.REV2
Signature: SUBROUTINE VB_WIPBMF.REV2(CO,REQTYPE,WONO,JOBNUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WIPBMF.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_WIPBMF.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | WONO | in | |
| 3 | JOBNUMBER | in | |
| 4 | DATA | out | |
| 5 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WIPBMF.REV2",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_WIPBMF.REV3
Signature: SUBROUTINE VB_WIPBMF.REV3(CO,REQTYPE,WONO,JOBNUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WIPBMF.REV3
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_WIPBMF.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | WONO | in | |
| 3 | JOBNUMBER | in | |
| 4 | DATA | out | |
| 5 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WIPBMF.REV3",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_WIPBMF.REV4
Signature: SUBROUTINE VB_WIPBMF.REV4(CO,REQTYPE,WONO,JOBNUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WIPBMF.REV4
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_WIPBMF.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | REQTYPE | in | |
| 2 | WONO | in | |
| 3 | JOBNUMBER | in | |
| 4 | DATA | out | |
| 5 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WIPBMF.REV4",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_WIPBMF.REV5
Signature: SUBROUTINE VB_WIPBMF(CO,REQTYPE,WONO,JOBNUMBER,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WIPBMF.REV5
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Inquiry |
| Args | 6 |
| Description | Enhanced WIP BOM (REV5) with WO/WOLIST/JOB/JOBWRITE modes. Includes bin/picking info, paint prefix, component availability (WORKJ7272A/B), hold status from OPENWO.1287, gross requirement allocation via VB_PART_ALLOCATION_INQUIRY.REV5. JOBWRITE writes cache to HOLD. |
| Safe REQTYPE | WO, WOLIST, JOB |
| Dangerous REQTYPE | JOBWRITE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | REQTYPE | in | Request type: WO, WOLIST, JOB, JOBWRITE |
| 2 | WONO | in | Work order number(s) |
| 3 | JOBNUMBER | in | Job number |
| 4 | DATA | out | Return array with WO header and BOM lines |
| 5 | MESSAGE | out | Error/status message |
Tables Referenced: BIN, GL-COMPANY, ITEMMANF, ITEMQTY, JOBMASTER, JOBMASTER.1287, JOBXFER.1287, LOTHIST, LOTXREF, OPEN.ORD.LINE, OPENWO, OPENWO.1287, PRODUCT, PRODUCT.1287, WIPBMF, WOCE, WORKJ7272A.1287, WORKJ7272B.1287, WOTYPE
Tables Written: HOLD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WIPBMF.REV5",
"args": {
"0": "",
"1": "",
"2": "",
"3": ""
}
}VB_WODATA.REV1
Signature: SUBROUTINE VB_WODATA(CO,WOLIST,DATAOUT)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WODATA.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Inquiry |
| Args | 3 |
| Description | Retrieves WIP route, hours, and issue status for WO list. Assembles detail with part, status, job, qty, dates, routed vs actual hours by cost center, hours-to-go, issue status. Writes HOLD: jobno.WO, jobno.RTE, jobno.AT, jobno.NOT. |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | WOLIST | in | Attribute-marked list of WO IDs (CO!WONO) |
| 2 | DATAOUT | out | Output data (results written to HOLD files) |
Tables Referenced: ITEMMANF, NOTROUTED.1287, OPENWO, PRODUCT, SROUTE.LINE, WIP.CLOSE, WIPBMF, WIPLEDGER.HRS.1287, WIPROUTE.LINE
Tables Written: HOLD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WODATA.REV1",
"args": {
"0": "",
"1": ""
}
}VB_WOINQUIRY.1
Signature: SUBROUTINE VB_WOINQUIRY.1(CO,PARTNO,WODATA,ROUTEDATA,EMPDATA,OPENONLY)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WOINQUIRY.1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 6 |
| Superseded By | VB_WOINQUIRY.2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | PARTNO | in | |
| 2 | WODATA | out | |
| 3 | ROUTEDATA | out | |
| 4 | EMPDATA | out | |
| 5 | OPENONLY | in |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WOINQUIRY.1",
"args": {
"0": "",
"1": "",
"5": ""
}
}VB_WOINQUIRY.2
Signature: SUBROUTINE VB_WOINQUIRY.1(CO,WO,WODATA,ROUTEDATA,EMPDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WOINQUIRY.2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 5 |
| Description | Returns work order details, WIP route operation data, and employee labor history for a given work order |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | WO | in | Work order number |
| 2 | WODATA | out | Work order header: part number, description, status, job, qty, labor/setup/total hours |
| 3 | ROUTEDATA | out | WIP route operations: description, completion date, labor/setup/total hours per operation |
| 4 | EMPDATA | out | Employee labor details per operation: employee number, name, date, labor/setup/total hours |
Tables Referenced: OPENWO, PRODUCT, WIPROUTE.HEAD, WIPROUTE.LINE, LABORHIST, LABORXREF, OPERATION, EMPLOYEE.PUBLIC.1287, LABORHIST.HEAD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WOINQUIRY.2",
"args": {
"0": "",
"1": ""
}
}VB_WOINQUIRY.REV1
Signature: SUBROUTINE VB_WOINQUIRY(INDATA,WODATA,ROUTEDATA,EMPDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WOINQUIRY.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_WOINQUIRY.2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | INDATA | out | |
| 1 | WODATA | out | |
| 2 | ROUTEDATA | out | |
| 3 | EMPDATA | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WOINQUIRY.REV1",
"args": {
}
}VB_WOOP.HOURS
Signature: SUBROUTINE VB_WOOP.HOURS(CO,WO,WODATA,ROUTEDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WOOP.HOURS
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | Inquiry |
| Args | 4 |
| Description | Returns labor hours by operation for a work order, including WO header data and per-operation labor/setup totals |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | WO | in | Work order number |
| 2 | WODATA | out | Work order header: part number, description, status, job, qty, labor/setup/total hours |
| 3 | ROUTEDATA | out | Route operation data: description, completion date, labor/setup/total hours per operation |
Tables Referenced: OPENWO, PRODUCT, WIPROUTE.HEAD, WIPROUTE.LINE, LABORHIST, LABORXREF, OPERATION, LABORHIST.HEAD
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WOOP.HOURS",
"args": {
"0": "",
"1": ""
}
}VB_WOPLAN.REV1
Signature: SUBROUTINE VB_WOPLAN.REV1(WOLIST,REQTYPE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WOPLAN.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | Process |
| Args | 2 |
| Description | Releases, unreleases, or prints shop floor packets for a list of work orders based on REQTYPE |
| Safe REQTYPE | P |
| Dangerous REQTYPE | R, U |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | WOLIST | in | Delimited list of work order numbers to process |
| 1 | REQTYPE | in | Request type: R=Release, U=Unrelease, P=Print SF packets |
Tables Referenced: CO.STDS.WIP, JOBMASTER.1287
Tables Written: OPENWO, OPENWO.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WOPLAN.REV1",
"args": {
"0": "",
"1": ""
}
}VB_WORELEASE.1
Signature: SUBROUTINE VB_WORELEASE.1(WONODATA,JOBNODATA,PARTNODATA,DESCDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WORELEASE.1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_WORELEASE.4 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | WONODATA | out | |
| 1 | JOBNODATA | out | |
| 2 | PARTNODATA | out | |
| 3 | DESCDATA | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WORELEASE.1",
"args": {
}
}VB_WORELEASE.2
Signature: SUBROUTINE VB_WORELEASE.2(WONO,PIFLAG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WORELEASE.2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 2 |
| Superseded By | VB_WORELEASE.4 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | WONO | in | |
| 1 | PIFLAG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WORELEASE.2",
"args": {
"0": ""
}
}VB_WORELEASE.3
Signature: SUBROUTINE VB_WORELEASE.3(WONO,RELEASABLE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WORELEASE.3
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 2 |
| Superseded By | VB_WORELEASE.4 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | WONO | in | |
| 1 | RELEASABLE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WORELEASE.3",
"args": {
"0": ""
}
}VB_WORELEASE.4
Signature: SUBROUTINE VB_WORELEASE.4(WONODATA,JOBNODATA,PARTNODATA,DESCDATA)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WORELEASE.4
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 4 |
| Description | Lists unreleased work orders prepared today that are eligible for release |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | WONODATA | out | Array of work order numbers prepared today and not yet released |
| 1 | JOBNODATA | out | Array of job numbers (or STOCK if blank) |
| 2 | PARTNODATA | out | Array of part numbers for each work order |
| 3 | DESCDATA | out | Array of part descriptions in title case |
Tables Referenced: OPENWO, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WORELEASE.4",
"args": {
}
}VB_WORELEASE.REV3
Signature: SUBROUTINE VB_WORELEASE.REV3(WOLIST,PIFLAG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WORELEASE.REV3
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 2 |
| Superseded By | VB_WORELEASE.4 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | WOLIST | in | |
| 1 | PIFLAG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WORELEASE.REV3",
"args": {
"0": ""
}
}VB_WORELEASEPLANNING
Signature: SUBROUTINE VB_VB_WORELEASEPLANNING(JOBNO,WONOLIST,PARTNOLIST,DESCLIST,EXCEPTLIST,RELEASABLELIST)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WORELEASEPLANNING
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 6 |
| Description | Lists unreleased work orders for a job with part details, exception flags, and releasable flags for release planning |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | JOBNO | in | Job number to look up (or STOCK for unassigned work orders) |
| 1 | WONOLIST | out | Array of unreleased work order numbers |
| 2 | PARTNOLIST | out | Array of part numbers for each work order |
| 3 | DESCLIST | out | Array of part descriptions in title case |
| 4 | EXCEPTLIST | out | Array of exception flags (1=exception, 0=normal) from JOBMASTER.1287 |
| 5 | RELEASABLELIST | out | Array of releasable flags (1=releasable, 0=not) from JOBMASTER.1287 |
Tables Referenced: OPENWO, JOB.WO.XREF, JOBMASTER.1287, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WORELEASEPLANNING",
"args": {
"0": ""
}
}VB_WPDOCLIST
Signature: SUBROUTINE VB_WPDOCLIST(DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WPDOCLIST
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 2 |
| Description | Returns a list of all word processing document IDs from the WPDOCS table |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | DATA | out | Multivalued array of WPDOCS record IDs |
| 1 | MESSAGE | out | Error message if file open fails, empty on success |
Tables Referenced: WPDOCS
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WPDOCLIST",
"args": {
}
}VB_WPPLOT.REV1
Signature: SUBROUTINE VB_WPPLOT(PLOTTYPE,DRAWLIST,PLOTINFO,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WPPLOT.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 4 |
| Superseded By | VB_WPPLOT.REV2 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PLOTTYPE | in | |
| 1 | DRAWLIST | in | |
| 2 | PLOTINFO | in | |
| 3 | MSG | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WPPLOT.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_WPPLOT.REV2
Signature: SUBROUTINE VB_WPPLOT(PLOTTYPE,DRAWLIST,PLOTINFO,MSG)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WPPLOT.REV2
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | Process |
| Args | 4 |
| Description | Sends CAD drawings from a word processing document to plotters/printers, writing a header sheet and calling SEND.PLOT.INFO.REV1 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | PLOTTYPE | in | Plot type (e.g. Cad Plot for CAD-specific processing) |
| 1 | DRAWLIST | in | List of drawing names/numbers to plot |
| 2 | PLOTINFO | in | Plot parameters array: plotter, size, elements, propnote, date, time, doc name, PP flag, auto-sort, CAD dir, options, owner |
| 3 | MSG | out | Status/error message |
Tables Referenced: GL-COMPANY, WPDOCS, PLOT.PARAMS
Tables Written: WP.HDR
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WPPLOT.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_WRITEPRODUCT
Signature: SUBROUTINE VB_WRITEPRODUCT(ID,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_WRITEPRODUCT
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [WARN] dangerous |
| Pattern | CRUD |
| Args | 3 |
| Description | Updates a product record description fields and engineering status in PRODUCT and PRODUCT.1287 tables |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | ID | in | Product record ID (company!partno format) |
| 1 | DATA | in | Update data: DATA<3>=engineering status, DATA<4>=second description, DATA<5>=first description |
| 2 | MESSAGE | out | Error message if file open fails, empty on success |
Tables Written: PRODUCT, PRODUCT.1287
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_WRITEPRODUCT",
"args": {
"0": "",
"1": ""
}
}VB_XREFLIST.REV1
Signature: SUBROUTINE VB_XREFLIST(CO,XREF,TYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_XREFLIST.REV1
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_XREFLIST.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | XREF | in | |
| 2 | TYPE | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_XREFLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_XREFLIST.REV2
Signature: SUBROUTINE VB_XREFLIST(CO,XREF,TYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_XREFLIST.REV2
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_XREFLIST.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | XREF | in | |
| 2 | TYPE | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_XREFLIST.REV2",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_XREFLIST.REV3
Signature: SUBROUTINE VB_XREFLIST(CO,XREF,TYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_XREFLIST.REV3
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_XREFLIST.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | XREF | in | |
| 2 | TYPE | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_XREFLIST.REV3",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_XREFLIST.REV4
Signature: SUBROUTINE VB_XREFLIST(CO,XREF,TYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_XREFLIST.REV4
| Property | Value |
|---|---|
| Status | [X] deprecated |
| Args | 5 |
| Superseded By | VB_XREFLIST.REV5 |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | |
| 1 | XREF | in | |
| 2 | TYPE | in | |
| 3 | DATA | out | |
| 4 | MESSAGE | out |
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_XREFLIST.REV4",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_XREFLIST.REV5
Signature: SUBROUTINE VB_XREFLIST(CO,XREF,TYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_XREFLIST.REV5
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Looks up a product cross-reference by company, XREF name, and type, returning part details via BSELECT |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | XREF | in | Cross-reference name to look up |
| 2 | TYPE | in | Cross-reference type (e.g. ENG) |
| 3 | DATA | out | Multivalue array of part data: part no, desc, desc2, MFG, UM, MRP type, last cost, on-hand, last recv date, footprint, GT code, INC/OBS |
| 4 | MESSAGE | out | Error message if XREF not found or inputs missing, empty on success |
Tables Referenced: PRODXREF, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_XREFLIST.REV5",
"args": {
"0": "",
"1": "",
"2": ""
}
}VB_XREFPRODLIST.REV1
Signature: SUBROUTINE VB_XREFLIST(CO,XREF,TYPE,DATA,MESSAGE)
Source: S:\LinuxShare\pro3prog\VBBASE\VB_XREFPRODLIST.REV1
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Searches product cross-references with fuzzy matching (LIKE …XREF…) and returns grouped part data per matching XREF via BSELECT |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number |
| 1 | XREF | in | Cross-reference search term (exact match first, then fuzzy LIKE match) |
| 2 | TYPE | in | Cross-reference type (e.g. ENG) |
| 3 | DATA | out | Array per matching XREF with nested part data |
| 4 | MESSAGE | out | Error message if no matches found or inputs missing, empty on success |
Tables Referenced: PRODXREF, PRODUCT
API Call Example:
POST /api/admin/subroutine/call
{
"name": "VB_XREFPRODLIST.REV1",
"args": {
"0": "",
"1": "",
"2": ""
}
}Last updated: 2026-02-05 11:29 PM