Vai al contenuto

ASN029 - Schede di stima (modelli)

Sorgente: cbl/asn029.cbl | Program-ID: ASN029 | Tipo: Programma interattivo (griglia editabile con top menu, modalita' aggiornamento/selezione)

Menu: Assist 2.0 > Archivi > Strumenti > Schede di stima


Scopo

Gestisce l'anagrafica dei modelli di scheda di stima (checklist) per le riparazioni: interne (legate al modello matricola) o esterne acquisite dall'app Assist (legate a matricola, tipo matricola o tipo attivita'). Programma standalone con griglia editabile; supporta anche modalita' "selezione" via utilasn029.cpy. Un top menu "Aggancio a" permette di collegare il modello selezionato alle diverse casistiche.


File e tabelle

File/Tabella Tipo Modalita' Descrizione
FEURTAB ISAM Input Parametri generali azienda (cogfiles.cpy)
ASNSKMOD ISAM I-O Modelli scheda di stima (askm-cod, askm-des, askm-val; askm-chia1). Tabella principale gestita dalla griglia
ASNSKPAG ISAM Input Pagine tematiche della scheda (chiave 2 asnskpag.k02, askp-mod-nome). Verifica collegamenti prima di variare/cancellare
ASNSKINF ISAM Input Informazioni della scheda (aski-mod-nome). Verifica collegamenti
ASNSKLNK ISAM I-O Collegamenti scheda (chiave 2 asnsklnk.k02, askl-modello-cl). Cancellati con il modello (b3-cancella)
ASNSKPA1 / ASNSKIN1 ISAM Input Pagine/informazioni sorgente per la duplicazione (vuoi-duplicare)
ASNMODEL, ASNMATRI, ASNMTRTP, ASNTPATT ISAM Input Sorgenti degli agganci: modelli matricola (amod-mod-scheda), matricole (amtr-modello-cert), tipi matricola (amtp-modello-cert), tipi attivita' (atpa-modello-cert). Scanditi in carica-cogtrans-w per marcare le colonne "associato"

Le chiavi secondarie ASNSKPAG/ASNSKLNK sono incluse manualmente in fondo (asnskpag.k02, asnsklnk.k02); e' presente anche uno start esplicito locale st-asnskpa1-notmin-chia2.

Copybook utilizzate

Copybook Descrizione
asn029.select, asn029.fd, asn029.wrk, asn029-01.scr, asn029.prc, asn029.decla Screen Designer
cogfiles.cpy Layout FEURTAB
wgrave, wnscr, wopenf, wstato, cogazien Working storage standard + dati azienda
wgrid.cpy, utilgdad.cpy Griglia + linkage GRIDADMN
utilncnf.cpy Linkage RNEWCONF
utilasn029.cpy Linkage di chiamata esterna (in linkage section)
utilasn025, utilasn028, utilasn597, utilasn013, utilasn200, utilasn010, utilasn016 Linkage dei programmi chiamati (pagine, stampa, export, agganci)
utilagprg.cpy Linkage sincronizzazione KPN (SWN024)
wcont, wcont1 Contesto chiamata (linkage)
grave, mmmask, opengen, stato, stato1, winmsg Copybook fine procedure

Struttura dati e griglia

La griglia e-tm-tab (max 500 righe, k-max-ele-tab) e' gestita col framework grid standard (colonne generate, tm-cod, tm-cod-prec, tm-des, tm-val, tm-assoc-1..4, tm-cod-orig, tm-fl-riga-mod). Le colonne tm-assoc-1..4 mostrano "associato" (m-associato) se il modello risulta agganciato rispettivamente a modelli matricola / matricole / tipi matricola / tipi attivita'. La corrispondenza e' precalcolata in memoria in w-trs-rec (occurs 300, coppie tipo+modello) da carica-cogtrans-w, letto da rd-cogtrans-w.

Logica (flusso, paragrafi principali)

  • apri: init; determina se richiamato (asn029-called = k-program-id e asn029-caller valorizzato) -> w-dc-called="S", modalita' iniziale "S" (selezione), altrimenti "A" (aggiornamento). Crea pulsanti custom F5/F1/F7, legge configurazione (x99-src-cfg), prepara la griglia.
  • a4 / a10-loop / a30: carica la griglia scandendo ASNSKMOD (st-asnskmod-notmin + rdnxt-asnskmod, max 500). In modalita' called salta i modelli cancellati (askm-val="C"). Per ogni riga marca le 4 colonne "associato" via rd-cogtrans-w. Costruisce il top menu (x-crea-menu, W$MENU) con "File", "Aggancio a" (Stima / Certificazioni) e "?".
  • a-accept-grid: loop eventi:
  • F3: se aggiornamento salva (a1-aggiorna) e, se called, alterna A<->S; se non called e ok esce.
  • F5: chiama ASN025 (pagine tematiche del modello selezionato).
  • F9: chiama ASN597 (export informazioni scheda su Word).
  • F7: chiama ASN028 (aggancio a modello Word per la stampa); bloccato se servizio stampa = "W".
  • S-F4: GRIDADMN (configurazione griglia).
  • Invio: in modalita' selezione ritorna asn029-out-cod/asn029-out-des al chiamante.
  • Ctrl+A / F1: aggiunge riga (z-aggiungi-riga-tm-tab). F1 duplica: registra tm-cod-orig per riportare pagine/informazioni dal modello sorgente.
  • Ctrl+E: elimina riga (previo c1-ctrl-canc).
  • Voci top menu (k-menu-id-*): chiamano ASN013 (modelli matricola), ASN200 (matricole), ASN010 (tipi matricola), ASN016 (tipi attivita'); dopo ogni aggancio ricalcolano le colonne associato (carica-cogtrans-w + aggiorna-associato).
  • a1-aggiorna / b-aggiorna: valida tutte le righe (x-controlla-tm-tab-tutto) poi confronta tm-cod vs tm-cod-prec per ogni riga e decide: modifica (b2-modifica), inserimento (b1-inserisci), cancellazione (b3-cancella) o cancella+inserisci. Ogni operazione su ASNSKMOD e' seguita da x-sincronizza-kpn.
  • b3-cancella: cancella il modello da ASNSKMOD e i relativi collegamenti in ASNSKLNK.
  • vuoi-duplicare: se richiesto, copia pagine (ASNSKPA1 -> ASNSKPAG) e informazioni (ASNSKIN1 -> ASNSKINF) dal modello origine al nuovo modello.
  • fine/z-chiudi: chiude file/finestra, exit program.

Controlli e regole

  • Codice (x-controlla-tm-cod): in inserimento non deve esistere gia' (m-cod-gia-pres). Non modificabile se il modello e' gia' collegato a pagine (ASNSKPAG, pcase-89) o a informazioni (ASNSKINF, pcase-354).
  • Descrizione (x-controlla-tm-des): obbligatoria se il codice e' valorizzato.
  • Validita' (x-controlla-tm-val): ammessi solo spazio o "C" (modello cancellato).
  • Cancellazione (c1-ctrl-canc): bloccata se esistono pagine collegate (ASNSKPAG).

Configurazione (RNEWCONF)

x99-src-cfg legge gruppo areaapp, chiave swa005-servizio-stampa-intervento -> tm-cfg-servizio-stampa-int (default "G"; "W" = servizio stampa Web, che disabilita F7).

CALL

Programma Scopo
ASN025 Pagine tematiche del modello (F5)
ASN597 Export informazioni scheda su Word (F9)
ASN028 Aggancio modello Word per la stampa (F7)
ASN013 Aggancio a modelli matricola
ASN200 Aggancio a matricole
ASN010 Aggancio a tipi matricola
ASN016 Aggancio a tipi attivita'
SWN024 Sincronizzazione chiave verso KPN (x-sincronizza-kpn)
GRIDADMN Gestione griglia
W$MENU Costruzione top menu a tendina
RNEWCONF Lettura configurazione servizio stampa

Linkage (utilasn029)

Campo Direzione Descrizione
asn029-called in Uguale a k-program-id attiva modalita' selezione
asn029-caller in Identificativo del chiamante
asn029-out-cod out Codice modello scheda selezionato
asn029-out-des out Descrizione modello selezionato

Note

  • Massimo righe griglia: 500 (k-max-ele-tab).
  • In modalita' chiamata ("called") i modelli cancellati (askm-val="C") non vengono mostrati.
  • Le colonne "associato" sono di sola lettura: gli agganci si gestiscono dal top menu "Aggancio a".
  • Ogni scrittura/cancellazione su ASNSKMOD e' propagata a KPN via SWN024 (AGPRG-CALLED, ope ESPORTA-KEY).