Vai al contenuto

ASN009 - Causali movimentazione merci su interventi

Sorgente: cbl/asn009.cbl | Program-ID: ASN009 | Tipo: Programma interattivo (gestore tabella anagrafica)

Menu: Assist 2.0 > Archivi > Tabelle > Causali Movimentazione Merci


Scopo

Gestisce la tabella ASNCAUMV (causali di movimentazione merci utilizzabili sugli interventi di assistenza: prelievi, resi, trasferimenti). Ogni causale definisce codice, descrizione, magazzino di default, causale di magazzino collegata (COGTABEL tipo 15), segno del movimento e flag operativi. Programma standalone con griglia editabile; supporta modalita' "selezione" via utilasn009.


File e tabelle

File/Tabella Tipo Modalita' Descrizione
FEURTAB ISAM Input Parametri generali azienda
ASNCAUMV ISAM I-O Causali movimentazione merci
COGTABEL ISAM Input Tabella causali di magazzino (tipo 15, record euta-)
COGMAGAZ ISAM Input Anagrafica magazzini (tipo "M", record magz-)

Campi principali del record ASNCAUMV (acmv-):

Campo Descrizione
acmv-chia1 Chiave primaria (acmv-cod)
acmv-cod Codice causale
acmv-des Descrizione
acmv-mag Magazzino di default
acmv-cau Causale di magazzino (COGTABEL tipo 15)
acmv-segno Segno movimento (E entrata / U uscita / N nessuno)
acmv-fl-fat Flag fatturazione
acmv-fl-rip Flag "da riparare"
acmv-note Note
acmv-ope-impianto Flag operazione impianto

Copybook utilizzate

Copybook Descrizione
asn009.select, asn009.fd, asn009.wrk, asn009-01.scr, asn009.prc, asn009.decla Screen Designer
cogfiles.cpy Layout FEURTAB
wgrave, wnscr, wopenf, wstato, cogazien Working storage standard + dati azienda
wgrid.cpy, utilgdad.cpy Working griglia + linkage GRIDADMN
utilw01.cpy, sendw01.cpy Ricerca causale di magazzino (F8, subroutine W01)
utilw36.cpy, sendw36.cpy Ricerca magazzino (F8, subroutine W36)
utilu20.cpy, utilagprg.cpy Utility (SWN054 sincronizzazione KPN)
utilasn009.cpy Linkage di chiamata esterna

Logica

Gestore a griglia in memoria (tm-grid-dati, array modificabile), caricato all'avvio in a10-loop con scan completo di ASNCAUMV (max k-max-ele-tab = 500). Per ogni riga vengono risolte le descrizioni collegate (magazzino da COGMAGAZ, causale di magazzino da COGTABEL tipo 15).

  • Codifica automatica *E / *U: all'avvio (paragrafi codifica-e / codifica-u) se mancano i record *E e *U vengono creati automaticamente, individuando su COGTABEL tipo 15 la prima causale di entrata cliente non fatturabile con movimentazione giacenza (*E) e la prima di uscita cliente fatturabile con movimentazione giacenza (*U). In modalita' selezione questi due record vengono nascosti.
  • F8 aiuto: sulle colonne magazzino e causale apre le ricerche W36 / W01.
  • Controlli (x-controlla-tm-*): codice univoco, descrizione obbligatoria, segno obbligatorio, coerenza causale di magazzino (segno E/U congruente con euta-cb-fl-eu, controllo magazzini secondari via euta-cb-me-segno), forzatura flag fatturazione a "N" per entrata da riparare.
  • Salvataggio F3 (a1-aggiorna -> b-aggiorna): confronto tm-cod vs tm-cod-prec per decidere inserimento/modifica/cancellazione/sostituzione (b1-inserisci, b2-modifica, b3-cancella con del-asncaumv). Dopo ogni scrittura x-sincronizza-kpn (chiamata SWN054, ESPORTA-KEY su acmv-chia1).

Linkage (utilasn009)

Campo Direzione Descrizione
asn009-caller in Nome del programma chiamante
asn009-called in "ASN009" attiva la modalita' selezione
asn009-out-cod out Codice causale selezionato
asn009-out-des out Descrizione causale

Richiamato in selezione da ASN016 (colonna "forza causale movimento").

Note

  • La cancellazione e' fisica (del-asncaumv) e avviene solo su conferma esplicita in griglia.
  • I record speciali *E / *U sono ricreati automaticamente all'apertura se mancanti: non vanno considerati causali "utente".
  • Massimo righe griglia: 500.