Parts Subroutines

Part/Product master data - part info, descriptions, search

Subroutine count: 17

Table of Contents


VB_MATCHDESC

Signature: SUBROUTINE VB_MATCHDESC(CO,KEYWORD,PARTLIST,NEWLIST,NOTFLAG,ERRMSG)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_MATCHDESC

PropertyValue
Status[+] analyzed
Safety[SAFE] safe
PatternUtility
Args6
DescriptionFilters a list of part numbers by matching a keyword against part descriptions, secondary descriptions, and GT codes from PRODUCT and ITEMMANF tables. Supports inclusive and exclusive (NOT) matching.

Arguments:

IndexNameDirectionDescription
0COinCompany number
1KEYWORDinSearch keyword to match against part descriptions
2PARTLISTinValue-mark delimited list of part numbers to search within
3NEWLISToutFiltered list of matching (or non-matching if NOTFLAG) part numbers
4NOTFLAGinIf true, returns parts that do NOT match the keyword (exclusion mode)
5ERRMSGoutError message or filtered result list (NEWLIST is also copied here)

Tables Referenced: ITEMMANF, PRODUCT

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_MATCHDESC",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "2":  "",
                 "4":  ""
             }
}

VB_PART.REV1

Signature: SUBROUTINE VB_PRODUCT1287(CO,REQTYPE,PRODUCT1287NO,PRODUCT1287REC,ADDFLAG,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART.REV1

PropertyValue
Status[+] analyzed
Safety[WARN] dangerous
PatternCRUD
Args6
DescriptionSaves or deletes PRODUCT1287 records based on REQTYPE. Writes the record with MATWRITE and logs changes to the TRANSREG audit trail via S0912.
Dangerous REQTYPEDELETE, ADD, UPDATE

Arguments:

IndexNameDirectionDescription
0COinCompany number
1REQTYPEinRequest type: ‘DELETE’ to remove record, any other value to add/update
2PRODUCT1287NOinProduct 1287 record key/ID
3PRODUCT1287RECinoutDynamic array of the PRODUCT1287 record data to write
4ADDFLAGinFlag indicating add (true) vs update (false) for audit logging
5MESSAGEoutStatus message: ‘WRITE SUCCEEDED’ or ‘DELETE SUCCEEDED’

Tables Referenced: PRODUCT1287, TRANSREG, PASSWORDS

Tables Written: PRODUCT1287

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART.REV1",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "2":  "",
                 "4":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY(CO,PARTNO,DATA)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY

PropertyValue
Status[+] analyzed
Safety[SAFE] safe
PatternInquiry
Args3
DescriptionReturns part allocation data including on-hand qty, qty needed, work orders, jobs, sales orders, and allocated quantities for a given part number. Read-only inquiry that collects demand pegging from gross requirements.

Arguments:

IndexNameDirectionDescription
0COinCompany number
1PARTNOinPart number to inquire on
2DATAoutMulti-valued allocation data array: <1>=OH qty, <2>=needed qty, <3,X>=WO, <4,X>=job, <5,X>=status, <6,X>=SO, <7,X>=SO line, <8,X>=part, <9,X>=alloc qty

Tables Referenced: GROSSXREF, GROSSREQ, JOBMASTER.1287, OPENWO, OPENWO.1287, ITEMQTY, OPEN.ORD.LINE, WIPBMF, PRODUCT

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY",
    "args":  {
                 "0":  "",
                 "1":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV2

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV2(CO,PARTNO,DATA)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV2

PropertyValue
Status[X] deprecated
Args3
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV6

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV2",
    "args":  {
                 "0":  "",
                 "1":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV3

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV3(CO,PARTNO,DATA,JOBQTYREC)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV3

PropertyValue
Status[X] deprecated
Args4
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV6

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout
3JOBQTYRECout

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV3",
    "args":  {
                 "0":  "",
                 "1":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV4

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV4(CO,PARTNO,DATA,JOBQTYREC,REQTYPE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV4

PropertyValue
Status[X] deprecated
Args5
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV6

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout
3JOBQTYRECout
4REQTYPEin

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV4",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "4":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV5

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV5(CO,PARTNO,DATA,JOBQTYREC,REQTYPE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV5

PropertyValue
Status[X] deprecated
Args5
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV6

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout
3JOBQTYRECout
4REQTYPEin

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV5",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "4":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV5.20211207

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV5(CO,PARTNO,DATA,JOBQTYREC,REQTYPE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV5.20211207

PropertyValue
Status[X] deprecated
Args5
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV5

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout
3JOBQTYRECout
4REQTYPEin

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV5.20211207",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "4":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV5.20211214

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV5(CO,PARTNO,DATA,JOBQTYREC,REQTYPE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV5.20211214

PropertyValue
Status[X] deprecated
Args5
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV5

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout
3JOBQTYRECout
4REQTYPEin

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV5.20211214",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "4":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV6

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV6(CO,PARTNO,DATA,JOBQTYREC,REQTYPE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV6

PropertyValue
Status[+] analyzed
Safety[COND] conditional
PatternInquiry
Args5
DescriptionComprehensive part allocation inquiry with time-phased component availability. Returns on-hand, allocated qty, work orders, sales orders, peg types, priority, schedule dates, and availability codes. REQTYPE controls whether work files are updated for component availability reporting.
Safe REQTYPEREADONLY, READ
Dangerous REQTYPEWRITE

Arguments:

IndexNameDirectionDescription
0COinCompany number
1PARTNOinPart number to inquire on
2DATAoutMulti-valued allocation data: <1>=OH, <2>=needed, <3>=WO, <4>=job, <5>=status, <6>=SO, <7>=SO line, <8>=peg part, <9>=alloc qty, <10-13>=avail qtys, <14>=priority, <15>=peg type, <16>=sched date, <17>=avail code, <18>=ref, <19>=ref date
3JOBQTYRECoutJob quantity record: <1>=jobs, <2>=alloc, <3>=OH, <4>=OO, <5-8>=PO/WO detail, <9>=ord avail, <10>=planned ord, <11>=first due date, <12>=first priority
4REQTYPEinRequest type: ‘READONLY’ returns data only; ‘WRITE’ also updates work files for component availability; ‘READ’ computes availability without work file updates

Tables Referenced: GROSSXREF2, GROSSREQ2, JOBMASTER.1287, OPENWO, OPENWO.1287, ITEMORD, ITEMQTY, OPEN.ORD.LINE, WIPBMF, PRODUCT, JOBPARTS.1287, BINXREF, BIN

Tables Written: WORKJ7272A.1287, WORKJ7272B.1287, WORKJ7272C.1287, HOLD

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV6",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "4":  ""
             }
}

VB_PART_ALLOCATION_INQUIRY.REV6.20211214

Signature: SUBROUTINE VB_PART_ALLOCATION_INQUIRY.REV5(CO,PARTNO,DATA,JOBQTYREC,REQTYPE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PART_ALLOCATION_INQUIRY.REV6.20211214

PropertyValue
Status[X] deprecated
Args5
Superseded ByVB_PART_ALLOCATION_INQUIRY.REV6

Arguments:

IndexNameDirectionDescription
0COin
1PARTNOin
2DATAout
3JOBQTYRECout
4REQTYPEin

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PART_ALLOCATION_INQUIRY.REV6.20211214",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "4":  ""
             }
}

VB_PRODUCT.REV1

Signature: SUBROUTINE VB_PRODUCT.REV1(CO,REQTYPE,PRODUCTNO,PREC,P1287REC,PNOTES,ADDFLAG,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCT.REV1

PropertyValue
Status[+] analyzed
Safety[WARN] dangerous
PatternCRUD
Args8
DescriptionSaves PRODUCT, PRODUCT.1287, and PRODUCT.NOTES records via MATWRITE. Logs changes to the TRANSREG audit trail. Note: contains a sunset date check (09/30/22) that returns an obsolete message after that date.

Arguments:

IndexNameDirectionDescription
0COinCompany number
1REQTYPEinRequest type (not branched on in code; all calls perform add/update)
2PRODUCTNOinProduct number (record key)
3PRECinoutDynamic array of PRODUCT record fields to write
4P1287RECinoutDynamic array of PRODUCT.1287 record fields to write
5PNOTESinoutDynamic array of PRODUCT.NOTES record fields to write
6ADDFLAGinFlag indicating add (true) vs update (false) for audit logging
7MESSAGEoutStatus message: ‘WRITE SUCCEEDED’ or ‘OBSOLETE, PLS USE NEW VERSION OF PRODUCT MANAGER’

Tables Referenced: PRODUCT, PRODUCT.1287, PRODUCT.NOTES, TRANSREG, PASSWORDS

Tables Written: PRODUCT, PRODUCT.1287, PRODUCT.NOTES

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PRODUCT.REV1",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "2":  "",
                 "6":  ""
             }
}

VB_PRODUCT.REV1_DOTNET

Signature: SUBROUTINE VB_PRODUCT.REV1(CO,REQTYPE,PRODUCTNO,PREC,P1287REC,PNOTES,ADDFLAG,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCT.REV1_DOTNET

PropertyValue
Status[X] deprecated
Args8
Superseded ByVB_PRODUCT.REV1

Arguments:

IndexNameDirectionDescription
0COin
1REQTYPEin
2PRODUCTNOin
3PRECout
4P1287RECout
5PNOTESin
6ADDFLAGin
7MESSAGEout

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PRODUCT.REV1_DOTNET",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "2":  "",
                 "5":  "",
                 "6":  ""
             }
}

VB_PRODUCT_DB

Signature: SUBROUTINE VB_PRODUCT_DB(DATA,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCT_DB

PropertyValue
Status[+] analyzed
Safety[SAFE] safe
PatternList
Args2
DescriptionReads all non-obsolete products from ITEMMANF (GT code = ‘PRODUCT’) and returns an array with part number, engineering status, physical number, descriptions. Designed to export product data to an Access database.

Arguments:

IndexNameDirectionDescription
0DATAoutMulti-valued product data array: <N,1>=part, <N,2>=eng status, <N,3>=phys no, <N,4>=phys eng status, <N,5>=desc2, <N,6>=desc1
1MESSAGEoutError/status message

Tables Referenced: ITEMMANF, PRODUCT, PRODUCT.1287

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PRODUCT_DB",
    "args":  {
 
             }
}

VB_PRODUCT_DB_2

Signature: SUBROUTINE VB_PRODUCT_DB(REQTYPE,DATAIN,DATAOUT,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCT_DB_2

PropertyValue
Status[+] analyzed
Safety[SAFE] safe
PatternList
Args4
DescriptionEnhanced version of product DB export. Supports REQTYPE ‘LIST’ to return data for a specific list of part numbers passed via DATAIN, or returns all non-obsolete products. Returns part number, engineering status, physical number, and descriptions.
Safe REQTYPELIST

Arguments:

IndexNameDirectionDescription
0REQTYPEinRequest type: ‘LIST’ to query specific parts from DATAIN, any other value returns all non-obsolete products
1DATAINinInput part number list (value-mark delimited in <1,N>) when REQTYPE=‘LIST’
2DATAOUToutProduct data array: <1,N>=part, <2,N>=eng status, <3,N>=phys no, <4,N>=phys eng status, <5,N>=desc2, <6,N>=desc1
3MESSAGEoutError/status message

Tables Referenced: PRODUCT, PRODUCT.1287

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PRODUCT_DB_2",
    "args":  {
                 "0":  "",
                 "1":  ""
             }
}

VB_PRODUCT_LIST

Signature: SUBROUTINE VB_PRODUCT_LIST(DATA,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCT_LIST

PropertyValue
Status[+] analyzed
Safety[SAFE] safe
PatternList
Args2
DescriptionReturns a simplified list of all non-obsolete products (GT code = ‘PRODUCT’) with part number, secondary description, and primary description. Lighter-weight alternative to VB_PRODUCT_DB.

Arguments:

IndexNameDirectionDescription
0DATAoutProduct list array: <N,1>=part number, <N,2>=secondary description, <N,3>=primary description
1MESSAGEoutError/status message

Tables Referenced: ITEMMANF, PRODUCT

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PRODUCT_LIST",
    "args":  {
 
             }
}

VB_PRODUCT1287.REV1

Signature: SUBROUTINE VB_PRODUCT1287(CO,REQTYPE,PRODUCT1287NO,PRODUCT1287REC,ADDFLAG,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_PRODUCT1287.REV1

PropertyValue
Status[+] analyzed
Safety[WARN] dangerous
PatternCRUD
Args6
DescriptionSaves or deletes PRODUCT1287 custom extension records based on REQTYPE. Performs MATWRITE for add/update and logs all changes (add, change, delete) to the TRANSREG audit trail via S0912.
Dangerous REQTYPEDELETE, ADD, UPDATE

Arguments:

IndexNameDirectionDescription
0COinCompany number
1REQTYPEinRequest type: ‘DELETE’ to remove record, any other value to add/update
2PRODUCT1287NOinPRODUCT1287 record key/ID
3PRODUCT1287RECinoutDynamic array of the PRODUCT1287 record data to write
4ADDFLAGinFlag indicating add (true) vs update (false) for audit logging
5MESSAGEoutStatus message: ‘WRITE SUCCEEDED’ or ‘DELETE SUCCEEDED’

Tables Referenced: PRODUCT1287, TRANSREG, PASSWORDS

Tables Written: PRODUCT1287

API Call Example:

POST /api/admin/subroutine/call
{
    "name":  "VB_PRODUCT1287.REV1",
    "args":  {
                 "0":  "",
                 "1":  "",
                 "2":  "",
                 "4":  ""
             }
}


Last updated: 2026-02-05 11:29 PM