Vai al contenuto

COGF82 - Stampa Trasporti (Launcher)

Sorgente: cbl/cogf82.cbl | Program-ID: COGF82 | Tipo: Launcher / Dispatcher

Menu: Vendite > Trasporti > Stampa Trasporti


Descrizione

Programma di lancio per la stampa dei trasporti. Legge il codice di personalizzazione aziendale (az-personal) da cogazien.cpy e decide quale variante del programma eseguire:

  • Se esiste una versione personalizzata COGF82{az-personal}.cob, la esegue.
  • Altrimenti esegue la versione standard COGF82NO.

Il programma stesso non contiene logica applicativa: e' un puro dispatcher.


Logica di dispatching

se az-personal non e' vuoto:
    chiama COGF82{az-personal}   (es. COGF82GR per personalizzazione "GR")
    se non trovato: chiama COGF82NO
altrimenti:
    chiama COGF82NO

Le versioni note presenti nel repository:

Programma File Descrizione
COGF82NO cbl/cogf82no.cbl Versione standard
COGF82GR cbl/cogf82gr.cbl Versione personalizzata "GR"

COGF82NO - Versione Standard

Descrizione

Stampa l'elenco delle consegne (bolle di trasporto) nel periodo selezionato, raggruppate per vettore con subtotali di colli e peso.

Tabelle utilizzate

Tabella Copybook/Layout Accesso Descrizione
FEURTAB cogfiles.cpy Random Tabella generale di sistema
File da cogf82.select (da cogf82.fd/select) Dynamic Testate bolle / documenti di trasporto
COGCONTA COGCONTA.CPY Random Parametri esercizio contabile
cogtrans Inline (trs-rec) Dynamic File temporaneo dati trasporti elaborati
FLSTA flsta.cpy Output File di stampa

Il file temporaneo cogtrans e' costruito in ext-tmp-dir con nome #$COGF82_{operatore}.

Struttura maschera (cogf82-01.scr)

Campo (tab-maschera) Tipo Descrizione
tm-data-par 9(08) Data partenza consegne (AAAAMMGG)
tm-data-arr 9(08) Data arrivo consegne (AAAAMMGG)
tm-note X(2000) Note libere (200 righe x 60 caratteri)

Flusso di elaborazione (COGF82NO)

  1. Inizializzazione: costruisce il path del file temporaneo, legge dati azienda.
  2. Maschera parametri: richiede data partenza e data arrivo (con calendario F8). I valori sono proposti alla data odierna.
  3. Conferma (F3): a-richiesta-conferma valida i parametri.
  4. Elaborazione: scansiona le bolle di trasporto nel periodo, scrive i record nel file temporaneo cogtrans (ordinati per vettore).
  5. Stampa: chiama COGS54 (larghezza 80 colonne). Scorre cogtrans e produce le righe di dettaglio raggruppate per vettore (testa-vet), con subtotali colli/peso per vettore e totale generale.

Contenuto riga di dettaglio (rigel)

data consegna | N.ordine | codice cliente | denominazione cliente | provincia | colli | peso | N.DDT

Paragrafi principali (COGF82NO)

Paragrafo Funzione
apri Inizializzazione, path file temporaneo
a4 Reset maschera con date odierne
a-tm-data-par Accept data partenza
a-tm-data-arr Accept data arrivo
a-richiesta-conferma Validazione e avvio elaborazione
Loop elaborazione Scansione bolle e scrittura cogtrans
Loop stampa Lettura cogtrans, stampa per vettore
intesta Intestazione pagina stampa

Chiamate a sottoprogrammi (COGF82NO)

Programma Scopo
COGS54 Gestione stampa (selezione stampante / anteprima), larghezza 80 colonne
COGS52 Input date con calendario
UTILS09 Utilities varie
UTILU09 Utilities generali
UTILU10 Utilities generali

Copybook principali (COGF82NO)

  • cogfiles.cpy - Layout FEURTAB
  • cogf82.wrk - Working storage (da Screen Designer)
  • COGCONTA.CPY - Parametri esercizio contabile
  • utils52.cpy, utilu10.cpy, utils54.cpy, utils09.cpy, utilu09.cpy - Utilities
  • k-tipi-cogtabel.cpy - Costanti tipi COGTABEL
  • cogazien.cpy - Dati azienda
  • wstato.cpy, wgrave.cpy, wopenf.cpy, wnscr.cpy - Working storage standard

Note implementative

  • COGF82 usa mmsubw.cpy (struttura sottoprogramma): e' chiamato come subroutine dal menu.
  • La chiamata alla variante personalizzata usa CALL name-call ON OVERFLOW per gestire il caso in cui la versione personalizzata non esista.
  • Dopo l'esecuzione del sottoprogramma, COGF82 esegue CANCEL name-call per liberare la memoria.
  • Larghezza stampa COGF82NO: 80 colonne.