SWC003 - Scaricamento Tabella Reparti e Sottoreparti per SW-ING¶
Sorgente: cbl/swc003.cbl | Program-ID: SWC003 | Tipo: Batch BI (interattivo + Aglancio)
Menu: Statistiche > Estrazione dati vs B.I.Swing > Tabelle & Anagrafiche > Tabelle reparti e sottoreparti
Scopo¶
Esporta la tabella reparti (COGTABEL tipo 85) e la tabella sottoreparti (LODTABEL tipo 11) verso il sottosistema BI SW-ING.
File e tabelle¶
Input¶
| File | Tipo | Modalita' | Uso |
|---|---|---|---|
| FEURTAB | ISAM | Input | Parametri |
| COGTABEL | ISAM | Input | Tabella sistema (tipo 85 reparti) |
| LODTABEL | ISAM | Input | Tabelle laboratori (tipo 11 sottoreparti) |
Output BI¶
| Tabella BI | Record | Modalita' | Contenuto |
|---|---|---|---|
| BINREPAR | brep-rec | I-O | Reparti (brep-cod, brep-descr, brep-data-agg) |
| BINSOTRE | bsor-rec | I-O | Sottoreparti (bsor-reparto, bsor-sottorep, bsor-descr, bsor-um, bsor-imp-max) |
| ARPSTPRC | a-stpr-rec | I-O | Stato processi Aglancio (solo batch) |
Copybook utilizzate¶
| Copybook | Contenuto |
|---|---|
swc003.select, swc003.fd, swc003.wrk, swc003-01.scr, swc003.decla, swc003.prc |
Screen Designer |
binrepar.cpy, binsotre.cpy |
Record BI |
binrepar-sql-ws.cpy, binsotre-sql-ws.cpy |
Interfacce SQL |
arpstprc.cpy, arpstprc-sql-ws.cpy |
Stato processi |
sql-decla-ws.cpy |
Working storage SQL |
utilncnf.cpy, utilgesdebug.cpy, utilswgets.cpy, utilagprg.cpy |
Utility |
k-personal.cpy, cogazien.cpy |
Costanti e dati azienda |
Logica di elaborazione¶
Apertura (apri)¶
- Test
util-agprgconC$NARG/C$PARAMSIZE. ctr-abil,z-99-init-program,rd-azi,open-files.x99-src-cfg(BI) ex99-src-cfg-agl(Aglancio).- Determinazione modalita' batch (
w-dc-called). init-bin-sub-tm-cfg-bin-tipo: apertura connessione.
Elaborazione (elabora)¶
fase1: scan COGTABEL tipo 85; per ogni record scrive BINREPAR (brep-cod=euta-cod (1:1),brep-descr=euta-rp-des).fase2: scan LODTABEL tipo 11; per ogni record scrive BINSOTRE (bsor-reparto=lta-cod(1:1),bsor-sottorep=lta-cod(2:2), descrizione, UM, importo massimo).
Chiusura¶
close-bin-sub-tm-cfg-bin-tipo; in modalita' batch riapre connessione AreaGate per aggiornare ARPSTPRC.
Chiamate esterne (CALL)¶
| Programma | Scopo |
|---|---|
| RNEWCONF | Configurazione (BI e Aglancio) |
| SWGETS | Conn-string AreaGate |
| C$NARG, C$PARAMSIZE, C$RERR | Runtime AcuCOBOL |
Configurazioni (RNEWCONF)¶
BI (x99-src-cfg, gruppo abilita)¶
| Chiave | Descrizione |
|---|---|
| bin-tipo | Tipo connessione (N/C/D/P) |
| bin-db-path | Path C-Tree |
| bin-db-conn-string (1-3) | Stringa connessione PostgreSQL |
| bin-db-log-level | Livello log |
Aglancio (x99-src-cfg-agl, gruppo areaapp)¶
cod-azienda,db-log-level,AGLANCIO-ATTIVO.
Schedulazione (Aglancio)¶
k-id-processo = 50003, k-tabella-statosyn = "SWC003". Logica standard SWC*: chiamato con util-agprg, attiva modalita' batch se agprg-id-processo > 0, aggiorna ARPSTPRC in chiusura.
Note¶
- Non e' presente la fase di cancellazione iniziale dei dati BI per BINREPAR/BINSOTRE (la
cancella-bin-sub-tm-cfg-bin-tipoe' commentata inelabora00). Le scritture usano fallback wr/rwr a seconda della presenza del record. - L'export include tutti i reparti e sottoreparti senza filtri sulla data.
- Codici reparto a 1 carattere, sottoreparto a 2 caratteri (1 reparto + 1 sotto).