Vai al contenuto

COGO83 - Stampa Ordinato Confezioni per Reparto

Panoramica

Programma di stampa che elabora gli ordini contenenti confezioni (prodotti con distinta base) e produce un report organizzato per reparto, cliente e raggruppamento. Opera in tre fasi: creazione transito dati aggregati, stampa dettaglio per cliente, stampa totali per cliente padre e per scatola. Utilizza tre file transito temporanei per le diverse sezioni del report.

Posizione nel menu

Menu Percorso
Ordini Clienti > Stampe

Struttura del programma

File e tabelle utilizzati

File/Tabella Tipo Descrizione
FEURTAB Input Tabella di sistema
COGTRANS I-O (temp) Transito dettaglio per reparto/ana/ordine/raggruppamento (in #trso83.{oper})
COGTRANS1 I-O (temp) Transito totali per reparto/tipo-padre/padre/raggruppamento (in #trs1o83.{oper})
COGTRANS2 I-O (temp) Transito totali per merce imballo (in #trs2o83.{oper})
COGCONOR Input Consegne ordini
COGTESOR Input Testata ordini
COGMERCI Input Anagrafica merci
COGDBASE Input Distinta base
COGGEANA Input Anagrafica clienti/fornitori
COGTABEL Input Tabella generica (tipo 17 = raggruppamenti confezione)
FLSTA I-O File stato

Record transito COGTRANS (dettaglio)

Campo Tipo Descrizione
trs-chia1 gruppo Chiave: rep + ana(tip+cod) + ordine(tip+ann+num+pro) + rag-1
trs-qta-ord 9(07)v999 Quantita' ordinata
trs-chia2 alternata dup tipo-padre + padre + ragg
trs-cli x(06) Cliente effettivo (se diverso dall'intestatario)
trs-data 9(08) Data consegna

Record transito COGTRANS1 (totali per padre)

Campo Tipo Descrizione
trs1-chia1 gruppo Chiave: rep + tipo-padre + padre + rag(rag-2 + rag-1)
trs1-cli x(06) Cliente
trs1-tot 9(07)v999 Totale quantita'
trs1-chia2 alternata rag + rep + tipo-padre + padre

Record transito COGTRANS2 (totali per scatola)

Campo Tipo Descrizione
trs2-chia1 gruppo Chiave: merce-imb (gru+sot+cod)
trs2-qta 9(07)v999 Quantita' totale

Copybook principali

Copybook Descrizione
cogo83.select / .fd / .wrk / .decla / .prc File generati Screen Designer
cogo83-01.scr Screen section
k-personal.cpy Personalizzazioni aziendali
cogazien.cpy Dati azienda
utilncnf.cpy Configurazioni RNEWCONF
utils52.cpy COGS52 (date)
utils54.cpy COGS54 (stampante)
utils50.cpy COGS50
utilu10.cpy COGU10W (divisa conto)
utilu12.cpy COGU12
utils25.cpy COGS25
utilw80.cpy WIN080 (ricerca reparto)

Chiamate a sottoprogrammi (CALL)

Programma Scopo
COGS54 Selezione stampante / anteprima
WIN080 Ricerca reparto (F8)
COGU10W Recupero divisa conto
RNEWCONF Lettura/modifica configurazioni

Configurazioni

Campo Descrizione
tm-cfg-cau-pnota Causale picking note
tab-config (tm-cfg-merce-paste) Lista merci confezione (fino a 50 codici merce)

Variabili chiave

Variabile Tipo Descrizione
tab-maschera 01 Filtri: data-da/a, repa-cod, rep-rag, solo-tot-rag, sca-sca, doc
tm-solo-tot-rag x(01) Se "S": stampa solo totali raggruppamento
tm-sca-sca x(01) Se "S": include sezione scatole
tm-rep-rag x(01) Se "S": organizza per raggruppamento
fl-mer-trovato x(01) Flag merce trovata nella configurazione
fl-pagina x(01) Flag rottura pagina
w-rot-rep x(01) Rottura reparto corrente
w-rot-rag x(04) Rottura raggruppamento corrente

Flusso operativo

1. Inizializzazione (apri)

  • Lettura configurazioni (x99-src-confi, x99-confi)
  • Creazione tre file transito temporanei
  • Recupero divisa conto (COGU10W)

2. Accept filtri (a4 -> a-tm-data-da, a-tm-data-a, a-tm-repa-cod, a-tm-rep-rag, a-tm-solo-tot-rag, a-tm-sca-sca)

3. Fase 1 - Creazione transiti (a1-ricerca-data)

  • Scansiona COGCONOR per intervallo date
  • Per ogni ordine con confezioni:
  • Scrive dettaglio su COGTRANS (rep+ana+ordine+raggruppamento)
  • Aggrega totali su COGTRANS1 (per padre+raggruppamento)
  • Aggrega totali scatole su COGTRANS2 (per merce imballo)

4. Fase 2 - Stampa dettaglio (st-00 -> st-00-loop)

  • Scansione COGTRANS con rotture su: reparto, anagrafica, ordine, raggruppamento
  • Intestazioni per reparto (x1-intesta), testata colonne (x2-intesta), cliente/ordine (x3-intcli)
  • Per ogni riga: descrizione raggruppamento (da COGTABEL tipo 17) e quantita'
  • Saltata se tm-solo-tot-rag = "S"

5. Fase 3a - Stampa totali per padre (st-01 -> st-01-loop)

  • Scansione COGTRANS1 con rotture su: reparto, padre
  • Per ogni padre: intestazione con codice e descrizione
  • Per ogni raggruppamento: riga con totale (x4-riga)
  • Saltata se tm-solo-tot-rag = "S"

6. Fase 3b - Stampa totali per raggruppamento (st-02 -> st-02-loop)

  • Scansione COGTRANS1 chiave 2 (rag+rep+tipo-padre+padre)
  • Aggregazione per raggruppamento con totali

7. Fase 4 - Stampa totali scatole (st-03)

  • Scansione COGTRANS2
  • Per ogni merce imballo: codice, descrizione e quantita' totale

Note tecniche

  • I tre file transito separano le diverse aggregazioni: per cliente/ordine, per padre, per imballo.
  • La configurazione contiene fino a 50 codici merce confezione (k-max-ele-cfg = 50) che identificano le merci da considerare.
  • Il raggruppamento confezione (rag-1) viene letto dalla tabella generica tipo 17 tramite COGTABEL.
  • La sezione scatole (st-03) puo' essere stampata indipendentemente quando tm-sca-sca = "S".