Quotes Subroutines

Quoting - SPN quotes, pricing

Subroutine count: 3

Table of Contents


VB_SP.QUOTELIST.REV1

Signature: SUBROUTINE VB_SP.QUOTELIST(CO,IDLIST,SQL,DATA,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_SP.QUOTELIST.REV1

PropertyValue
Status[+] analyzed
Safety[SAFE] safe
PatternList
Args5
DescriptionRead a list of SP quote records from SP.QUOTE.1287 by SQL select or ID list. Returns assembly number and assembly name for each matching record. Uses dictionary ASSY.NAME field for name resolution.

Arguments:

IndexNameDirectionDescription
0COinCompany number (prepended to IDs when using IDLIST mode)
1IDLISTinList of quote IDs as dynamic array (alternative to SQL parameter)
2SQLinSQL SELECT statement to execute against SP.QUOTE.1287 (alternative to IDLIST parameter)
3DATAoutOutput array: <1,n>=AssyNo (assembly number), <2,n>=AssyName (assembly name)
4MESSAGEoutError/status message (empty on success)

API Call Example:

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

VB_SPN.QUOTES.REV1

Signature: SUBROUTINE VB_SPN.QUOTES(CO,REQTYPE,QUOTEID,Q1287REC,ADDFLAG,MESSAGE)

Source: S:\LinuxShare\pro3prog\VBBASE\VB_SPN.QUOTES.REV1

PropertyValue
Status[+] analyzed
Safety[COND] conditional
PatternCRUD
Args6
DescriptionSave or soft-delete SPN quote records in SPN.QUOTES.1287 based on REQTYPE. Soft-delete sets field 20 to ‘Y’. Add/update uses MATWRITE. Note: audit trail code after the add/update MATWRITE is unreachable due to an early RETURN statement.
Dangerous REQTYPEDELETE, SAVE

Arguments:

IndexNameDirectionDescription
0COinCompany number (prepended to QUOTEID to form record key)
1REQTYPEinRequest type: ‘DELETE’ to soft-delete, any other value to add/update
2QUOTEIDinQuote ID (combined with CO to form record key)
3Q1287RECinQuote 1287 record data as dynamic array (written to SPN.QUOTES.1287 on save)
4ADDFLAGinAdd flag: true if adding a new record, false if updating existing (unused due to unreachable audit code)
5MESSAGEoutResult message: ‘DELETE SUCCEEDED’ on delete; on save the MESSAGE is not explicitly set (unreachable ‘WRITE SUCCEEDED’ code)

Tables Written: SPN.QUOTES.1287

API Call Example:

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

VB_SPN.REV1

Signature: SUBROUTINE VB_SPN(CO,REQTYPE,SPN,S1287REC,ADDFLAG,MESSAGE)

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

PropertyValue
Status[+] analyzed
Safety[COND] conditional
PatternCRUD
Args6
DescriptionSave or soft-delete SPN (supplier part number) records in SPN.1287 based on REQTYPE. Soft-delete sets field 21 to ‘Y’. Add/update uses MATWRITE. Note: audit trail code after the add/update MATWRITE is unreachable due to an early RETURN statement.
Dangerous REQTYPEDELETE, SAVE

Arguments:

IndexNameDirectionDescription
0COinCompany number (prepended to SPN to form record key)
1REQTYPEinRequest type: ‘DELETE’ to soft-delete, any other value to add/update
2SPNinSupplier part number (combined with CO to form record key)
3S1287RECinSPN 1287 record data as dynamic array (written to SPN.1287 on save)
4ADDFLAGinAdd flag: true if adding a new record, false if updating existing (unused due to unreachable audit code)
5MESSAGEoutResult message: ‘DELETE SUCCEEDED’ on delete; on save the MESSAGE is not explicitly set (unreachable ‘WRITE SUCCEEDED’ code)

Tables Written: SPN.1287

API Call Example:

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


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