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
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [SAFE] safe |
| Pattern | List |
| Args | 5 |
| Description | Read 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:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number (prepended to IDs when using IDLIST mode) |
| 1 | IDLIST | in | List of quote IDs as dynamic array (alternative to SQL parameter) |
| 2 | SQL | in | SQL SELECT statement to execute against SP.QUOTE.1287 (alternative to IDLIST parameter) |
| 3 | DATA | out | Output array: <1,n>=AssyNo (assembly number), <2,n>=AssyName (assembly name) |
| 4 | MESSAGE | out | Error/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
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Save 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 REQTYPE | DELETE, SAVE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number (prepended to QUOTEID to form record key) |
| 1 | REQTYPE | in | Request type: ‘DELETE’ to soft-delete, any other value to add/update |
| 2 | QUOTEID | in | Quote ID (combined with CO to form record key) |
| 3 | Q1287REC | in | Quote 1287 record data as dynamic array (written to SPN.QUOTES.1287 on save) |
| 4 | ADDFLAG | in | Add flag: true if adding a new record, false if updating existing (unused due to unreachable audit code) |
| 5 | MESSAGE | out | Result 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
| Property | Value |
|---|---|
| Status | [+] analyzed |
| Safety | [COND] conditional |
| Pattern | CRUD |
| Args | 6 |
| Description | Save 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 REQTYPE | DELETE, SAVE |
Arguments:
| Index | Name | Direction | Description |
|---|---|---|---|
| 0 | CO | in | Company number (prepended to SPN to form record key) |
| 1 | REQTYPE | in | Request type: ‘DELETE’ to soft-delete, any other value to add/update |
| 2 | SPN | in | Supplier part number (combined with CO to form record key) |
| 3 | S1287REC | in | SPN 1287 record data as dynamic array (written to SPN.1287 on save) |
| 4 | ADDFLAG | in | Add flag: true if adding a new record, false if updating existing (unused due to unreachable audit code) |
| 5 | MESSAGE | out | Result 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