Vai al contenuto

COGD68 -- Carico da mag. eccedenze (Modula)

Sorgente: cbl/cogd68.cbl | Tipo: Programma GUI con griglia paginata | Program-ID: cogd68

Menu: Magazzino > Modula > Carico da mag. eccedenze


Scopo

Trasferimento merci dal magazzino eccedenze al magazzino Modula. Il programma carica le giacenze del magazzino eccedenze (COGSLMAG), confronta con la scorta massima e la giacenza nel magazzino Modula, propone le quantita' di reintegro, e alla conferma genera due documenti di trasferimento (uscita + entrata) delegando la registrazione a COGD53 e COGD69.

File e tabelle

File/Tabella Tipo Descrizione
COGSLMAG Indicizzato, lettura Saldi di magazzino per merce/magazzino
COGMERCI Indicizzato, lettura Anagrafica merci (flag modula, UM, scorta max)
COGMAGAZ Indicizzato, lettura Anagrafica magazzini (descrizione)
COGD68.select Screens File gestiti da Screens (COGMERCI, COGTESBO, COGSLMAG, COGMAGAZ, COGTABEL)
COGTRANS Indicizzato, I/O File di transito per i dati della griglia (temporaneo, eliminato alla chiusura)
TRAN-COGD68 Indicizzato, I/O File di transito per i dati del documento Modula (temporaneo)
COGTABEL Indicizzato, I/O Tabella generica (tipo 35: riferimenti trasferimenti)
COGTESBO Indicizzato, scrittura Testata bolle/documenti

Copybook principali

  • cogd68.wrk, cogd68.fd, cogd68.select, cogd68.decla, cogd68.prc -- generate da Screens
  • cogd68-01.scr -- screen section
  • tran-cogd68.cpy, tran-cogd68.fd -- file di transito documento Modula
  • k-personal.cpy -- costanti personalizzazione
  • costanti-modula.cpy -- costanti specifiche Modula (es. k-merce-null)
  • utilcogd69.cpy -- interfaccia per CALL a COGD69
  • utilcogl61.cpy -- interfaccia per CALL a COGL61
  • utild53.cpy -- interfaccia per CALL a COGD53
  • utils25.cpy -- interfaccia per CALL a COGS25 (numerazione documenti)
  • utils68.cpy -- interfaccia per CALL a COGS68W (ricerca merci)
  • utilu10.cpy, utilu12.cpy, utilu20.cpy -- utilita' editing/display
  • utilgdad.cpy -- gestione griglia con GRIDADMN
  • utilncnf.cpy -- lettura configurazioni RNEWCONF
  • wgrid.cpy -- variabili standard griglia paginata

Struttura del programma

Il programma usa una griglia paginata (pattern con z-99-accept-paged-grid) e un file di transito COGTRANS come sorgente dati.

Paragrafi principali

Paragrafo Funzione
apri Inizializzazione, apertura file, creazione COGTRANS e TRAN-COGD68 temporanei, lettura configurazione
a4 Caricamento dati iniziali: legge magazzini, divisa, display maschera
a-fine-dati Accept conferma iniziale, lancia carica-dati
carica-dati Scansione COGSLMAG per mag. eccedenze, popola COGTRANS
carica-mag-modula Per ogni record COGTRANS legge giacenza Modula e calcola qta' proposta
a-grid Loop principale di accept sulla griglia paginata
a-riga-dettaglio Dettaglio riga: accept di quantita' e flag trasferimento
registra Ciclo di registrazione: genera documenti uscita ed entrata
c2-testa Creazione testata documento (COGTESBO)
c3-righe Ciclo sulle righe da trasferire, CALL a COGD53 per ciascuna
c4-note Inserimento note sul documento
sel-tutto / desel-tutto Selezione/deselezione massiva righe
x99-configurazione Lettura configurazioni da RNEWCONF (magazzini, causali, tipologie)

Logica di elaborazione

Calcolo quantita' proposta (carica-mag-modula)

Per ogni merce nel file di transito:

  1. Legge la giacenza nel magazzino Modula (COGSLMAG).
  2. Se la merce e' mappata a Modula (mer-modula = "S"):
  3. Se giacenza Modula < scorta massima: qta = scorta-max - giacenza-modula
  4. Se la giacenza eccedenze e' inferiore, usa quella come limite
  5. Se la merce NON e' mappata a Modula:
  6. Propone l'intera giacenza eccedenze
  7. Se la quantita' proposta e' > 0, imposta trs-trasf = "S" (da trasferire)

Registrazione (registra)

Il ciclo si ripete finche' ci sono record con trs-qta > 0 e trs-trasf = "S":

  1. Documento di uscita (magazzino eccedenze):
  2. Numerazione tramite COGS25 (tipo 2, mag. eccedenze)
  3. Testata con causale e tipologia di uscita configurate
  4. Righe: CALL a COGD53 per inserimento riga documento
  5. Documento di entrata (magazzino Modula):
  6. Stessa logica, con causale e tipologia di entrata
  7. Salva riferimento su TRAN-COGD68 per successiva elaborazione Modula
  8. Inserimento note e cancellazione record processati da COGTRANS
  9. Al termine del ciclo, CALL a COGD69 per finalizzazione (invio a Modula)

Configurazioni (RNEWCONF)

Gruppo Chiave Uso
SISTMGA001 euta-c077-mag-ecced Codice magazzino eccedenze
TRASCOGM20 euta-c024-cau-usc Causale uscita
TRASCOGM20 euta-c024-cau-ent Causale entrata
TRASCOGM20 euta-c024-to-usc Tipologia uscita
TRASCOGM20 euta-c024-to-ent Tipologia entrata

Il magazzino Modula viene letto da az-mag-modula (dato aziendale).

CALL esterni

Programma Scopo
COGS25 Numerazione documenti
COGS68W Ricerca merci
COGD53 Inserimento riga documento
COGD69 Finalizzazione trasferimento Modula
COGL61 Supporto gestione movimenti
COGU10W Editing importi/divise
GRIDADMN Gestione colonne griglia