Vai al contenuto

ASN038 - Squadre Tecnici

Sorgente: cbl/asn038.cbl | Program-ID: ASN038 | Tipo: Programma interattivo (gestore tabella anagrafica storicizzata)

Menu: Assist 2.0 > Archivi > Tabelle > Squadre Tecnici


Scopo

Gestisce la composizione delle squadre tecniche/veicoli (ASNTEAMS), storicizzata per data di decorrenza. Pattern "tabella anagrafica con griglia" arricchito da:

  • selezione iniziale di una data;
  • ricerca della decorrenza piu' recente uguale o precedente alla data richiesta;
  • lookup nominativo tecnico (COGRIFER) per ognuno dei 5 slot tecnico.

Supporta modalita' "selezione" via utilasn038.


File e tabelle

File/Tabella Tipo Modalita' Descrizione Chiave
FEURTAB ISAM Input Parametri generali azienda std
ASNTEAMS ISAM I-O Squadre tecnici/veicoli per decorrenza atea-cod + atea-decorrenza (chia2 invertita)
COGRIFER ISAM Input Anagrafica riferimenti (lookup nome tecnico) rif-chia1 (tip+cod)

Chiavi secondarie: asnteams.k02 (decorrenza + cod).

Copybook utilizzate

Copybook Ruolo
asn038.select, asn038.fd, asn038.wrk, asn038-01.scr, asn038.prc, asn038.decla Screen Designer
cogfiles.cpy Layout FEURTAB
wgrave, wnscr, wopenf, wstato, cogazien Working storage standard
wgrid.cpy, utilgdad.cpy Working griglia + linkage GRIDADMN
utilg67, utilasn040, utilu20, utils52, utilg32 Utility (calendario, lookup tecnici)
utilasn038.cpy Linkage di chiamata esterna

Logica di elaborazione

  1. apri: open files, decisione modalita'; se chiamato dall'esterno con asn038-in-data la data viene preimpostata e si salta direttamente in a-ok-inizio.
  2. a4: inizializzazione tab-maschera, data proposta = sysdate.
  3. a-tm-data-dec: accept della data (con calendario F8 via s52).
  4. a-richiesta-confermaa-ok-inizio:
  5. Ricerca decorrenza piu' recente <= data richiesta: st-asnteams-notmay-chia2 con atea-decorrenza = tm-data-dec e atea-cod = "ZZZ", poi rdprv-asnteams per ottenere tm-data-ult.
  6. Scan di ASNTEAMS per decorrenza tm-data-ult (chia2), riempimento griglia: tm-cod, tm-des, tm-targa, tm-tecn1..5, e lookup nominativo tecnico via COGRIFER per ogni tecnico non nullo.
  7. a-grid / a-accept-grid: accept griglia (stessa struttura dei gestori standard).
  8. F3 aggiornamento: b-aggiorna standard con b1-inserisci / b2-modifica / b3-cancella su ASNTEAMS, sempre con atea-decorrenza = tm-data-dec.
  9. Invio o F3 in modalita' selezione: ritorna tm-cod/tm-des e tm-data-ult (data effettiva della decorrenza).

Programmi richiamati: GRIDADMN.

Linkage (utilasn038.cpy)

Campo Direzione Descrizione
asn038-called in "ASN038" attiva modalita' selezione
asn038-caller in Identificativo del chiamante
asn038-in-data in Data di riferimento (formato YYYYMMDD)
asn038-out-data out Data effettiva della decorrenza individuata
asn038-out-cod out Codice squadra selezionata
asn038-out-des out Descrizione squadra

Note

  • Massimo righe griglia: k-max-ele-tab = 500.
  • Storicizzazione: ogni "set" di squadre e' identificato dalla atea-decorrenza. Per cambiare composizione si crea una nuova decorrenza; le decorrenze precedenti restano consultabili impostando una data passata.
  • Lookup nominativo: per ogni tecnico (atea-tecnico (n) 9(10), tipo "C") viene letta COGRIFER per ottenere il nome.
  • Cancellazione: nessun controllo di referential integrity oltre alla griglia non vuota. Cancellare una squadra dalla decorrenza corrente rimuove il record fisicamente.