Vai al contenuto

COGG36 - Entrata RMA (fase 2)

Sorgente: cbl/cogg36.cbl | Program-ID: COGG36 | Tipo: Programma interattivo (standalone)

Menu: - Magazzino > Entrate > RMA


Scopo

Gestione della fase di entrata RMA (Return Merchandise Authorization). Legge la pratica RMA da COGRMATS, le righe da COGRMARG e i dettagli da COGRMADT, e consente all'operatore di specificare per ogni riga: quantita' processata, difetto riscontrato, classe di movimento, serial number e merce di sostituzione. Al salvataggio genera i movimenti di magazzino tramite COGG32 e aggiorna lo stato dei record RMA. Supporta anche la modalita' "Conto Anticipo" (tipo-rmt-tip = "A").

Il programma puo' essere richiamato in modalita' called (via utilg36.cpy / lnk-g36) con funzioni diverse: remote-gest, remote-win, win-aiuto, new.


File e tabelle

File/Tabella Tipo Modalita' Descrizione
FEURTAB Indexed Input Parametri generali
COGTABEL Indexed Input Tabelle di supporto (es. difetti, tipo EUTA 25)
COGMERCI Indexed Input Anagrafica merci (external)
COGGEANA Indexed Input Anagrafica clienti/fornitori
COGAPPOG Indexed I/O File di appoggio temporaneo
COGTESBO Indexed Input Testata bolle (riferimento documenti entrata)
COGMATRI Indexed I/O Matricole/serial number
COGMTUSC Indexed I/O Matricole in uscita
COGGENER Indexed I/O Movimenti generali
COGDESCR Indexed I/O Descrizioni aggiuntive
COGRIFER Indexed Input Riferimenti
COGRMATS Indexed I/O Testata pratica RMA
COGRMARG Indexed I/O Righe pratica RMA
COGRMADT Indexed I/O Dettagli righe RMA
COGRMACL Indexed I/O Classi di movimento RMA
COGCLASM Indexed Input Anagrafica classi di movimento
COGMTPRE Indexed I/O Prelievi matricole
COGLAVOR Indexed I/O Lavorazioni
COGMTDET Indexed I/O Dettagli matricole
LODTMDES Indexed Input Descrizioni template (per set-lodtmdes)
inpfil Line sequential Input File EAN opzionale per import quantita'

Copybook utilizzate

Copybook Descrizione
feurtab.fd / cogtabel.fd / cogmerci.fd / coggeana.fd / cogappog.fd File control
cogtesbo.fd / cogmatri.fd / cogmtusc.fd / coggener.fd / cogdescr.fd File control
cogrifer.fd / cogrmats.fd / cogrmarg.fd / cogrmadt.fd / cogrmacl.fd File control
cogclasm.fd / cogmtpre.fd / coglavor.fd / cogmtdet.fd / lodtmdes.fd File control
cogfiles.cpy FD FEURTAB
cogtabel.cpy / cogmerci.cpy / coggeana.cpy / cogappog.cpy FD tabelle
cogtesbo.cpy / cogmatri.cpy / cogmtusc.cpy / coggener.cpy / cogdescr.cpy FD tabelle
cogrifer.cpy / cogrmats.cpy / cogrmarg.cpy / cogrmadt.cpy / cogrmacl.cpy FD tabelle
cogclasm.cpy / cogmtpre.cpy / coglavor.cpy / cogmtdet.cpy / lodtmdes.cpy FD tabelle
k-personal.cpy / k-rma.cpy Costanti personalizzazione e RMA
wstato.cpy / wgrave.cpy / wopenf.cpy / wnscr.cpy Utility standard
cogazien.cpy Dati azienda
utilg35.cpy Interfaccia COGG35 (ricerca difetti)
utils23.cpy Interfaccia COGS23 (serial number)
utils52.cpy Date
utils58.cpy Utility varie
utils60.cpy Lista selezione
utils65.cpy Ricerca anagrafica
utils68.cpy Utility
utils89.cpy Classi di movimento
utilu20.cpy Interfaccia COGU20 (importo)
utilu30.cpy Interfaccia COGU30
utilw06.cpy Utility schermo
utilw68.cpy Interfaccia COGW68 (serial number disponibili)
utilzde.cpy Interfaccia COGZDE
utilncnf.cpy Interfaccia RNEWCONF
wcont.cpy Linkage stringhe
utils08.cpy / utilg32.cpy / utilg36.cpy / utilg41.cpy Linkage
utilv89.cpy / wcont1.cpy Linkage ext

Logica di elaborazione

Modalita' di ingresso

Il programma gestisce diverse modalita' di ingresso tramite lnk-g36-fun:

  • win-aiuto: apre finestra di ricerca RMA e termina
  • remote-gest: apre direttamente la pratica passata in chiave
  • remote-win: apre finestra di ricerca + carica la pratica selezionata
  • new: crea nuovo RMA con numerazione automatica
  • Standalone (nessun called): flusso interattivo completo

Flusso interattivo

  1. Selezione pratica (a-5-anno, a-5-cod): l'utente inserisce anno e numero RMA. F8 accede alla finestra di ricerca per cliente (COGS65 + lista). Il programma legge COGRMATS con rd-cogrmats.
  2. Inserimento data accettazione (a-10-data-acc): data tramite COGS52.
  3. Ricerca cliente (a-10-tip, a-10-ana): selezione anagrafica con COGS65.
  4. Caricamento righe (visualizza-rma): legge COGRMARG e COGRMADT, popola tab-righe (array di max k-t-size = 500 elementi).
  5. Ciclo elaborazione righe (b-10, b-20, b-30, b-40, acc-20, acc-50):
  6. b-10 (Quantita'): accept via COGU20; controllo max quantita' = quantita' entrata; per serializzati max = 1
  7. b-20 (Difetto riscontrato): accept codice difetto; F8 → COGG35 per ricerca; validazione su COGTABEL tipo k-euta-tipo-dif = 25
  8. b-30 (Classe di movimento): accept via call-s89-tm-clm (COGS89); controlli su tipo classe (no merce rientro per RMA, no nuova merce uscita per C.A.)
  9. b-40 (S/N uscita): accept serial number uscita via COGS23; F8 → COGW68 per serial disponibili
  10. acc-20 (Merce uscita): se la classe prevede cambio merce
  11. acc-50 (Conferma riga): salvataggio riga con aggiornamento COGRMADT
  12. Conferma finale (acc-50 → COGG32): generazione movimenti di magazzino e aggiornamento stato pratica tramite call "COGG32".

Struttura dati principali

  • tab-righe (500 elementi): righe RMA caricate in memoria. Campi chiave: tarig, tadet, tasn, tamat, tamerce, tadesc, taqta, taqtadic, tadifdic, tadifdes, taflnote, taflmake, taflsnprovvisorio, ta-cla-tip.
  • tab-righe2 (500 elementi): righe riepilogative per merce (raggruppamento per codice articolo).
  • ricordante: memorizza l'ultimo tipo riga per ottimizzare i controlli seriali.

Chiamate a sottoprogrammi

Programma Copybook Contesto
COGU20 utilu20.cpy Accept quantita' con formattazione
COGG35 utilg35.cpy Ricerca/selezione difetto riscontrato (F8)
COGZDE utilzde.cpy Decodifica/utility
COGG32 utilg32.cpy Generazione movimenti magazzino e aggiornamento pratica RMA
COGV89 - Utility classi di movimento
COGU30 utilu30.cpy Utility
COGG41 utilg41.cpy Visualizzazione situazione pratica (F8)
RNEWCONF utilncnf.cpy Configurazione (x99-src-confi)

Documentazione tecnica -- 2026-04-07