Vai al contenuto

COGS33 - Creazione riga riferimento bolla in fattura

Descrizione

Subroutine richiamata in fase di costruzione del corpo fattura. Per ciascuna bolla portata in fattura, COGS33 compone la riga di descrizione che identifica il documento di origine (es. "Vs.Bolla n. 1234 del 12/05/2026" con eventuale numero intervento). E' una utility di stampa/formattazione, non a menu, invocata dalle catene di fatturazione.

Parametri

Parametro Direzione Descrizione
s33-mag Input Codice magazzino della bolla
s33-tip Input Tipo bolla: D (Diretta), I (Inserita in fattura), U (Uscita), B (Buono), R (Reso clienti)
s33-num Input Numero bolla
s33-data Input Data bolla
s33-int Input Numero intervento (se la bolla deriva da intervento)
s33-int-data Input Data intervento
s33-h-pos Input Posizione di start della descrizione
s33-des Output Descrizione composta

Tabelle utilizzate

Tabella Accesso Uso
FEURTAB Lettura Path file
COGTABEL Lettura Configurazioni RNEWCONF (gruppo fattdescbo)
COGRACBB Lettura Raccordo bolle-fattura
COGTESBO Lettura Testata bolla
COGGEANA Lettura Anagrafica generale (clienti/fornitori)

Configurazioni RNEWCONF (gruppo fattdescbo)

Chiave Variabile Effetto
euta-c006-d-tip tm-d-tip Tipologia di descrizione per bolle "D" (S standard, P personalizzata, altro = nessuna)
euta-c006-i-ok tm-i-ok Abilita descrizione per bolle "I", "U" e (dal 01/06/2026) "R" (N = disabilitata)
euta-c006-b-ok tm-b-ok Abilita descrizione per bolle "B" (N = disabilitata)
euta-c006-d-des tm-d-des Stringa custom da anteporre alla descrizione
euta-c006-rif-in-stampa - Comportamento riferimento in stampa fattura

Logica principale

EVALUATE s33-tip
   WHEN "D" -> se tm-d-tip = "S" perform b-standard
               se tm-d-tip = "P" perform c-personal
   WHEN "I" o "U" -> se tm-i-ok ≠ "N" perform b-standard
   WHEN "B" -> se tm-b-ok ≠ "N" perform b-standard
   WHEN "R" -> se tm-i-ok ≠ "N" perform b-standard      [dal 01/06/2026]
END-EVALUATE

Il paragrafo b-standard legge COGTESBO per recuperare i dati testata (eventuale intervento, riferimenti cliente) e compone la stringa di descrizione nel formato standard.

Storico modifiche

2026-06-01 - TASK-5135: estensione descrizione a bolle di Reso Clienti

Aggiunta la gestione del tipo bolla R (Reso Clienti): in precedenza queste bolle non producevano alcuna riga di descrizione nel corpo fattura. Ora il programma applica la stessa logica usata per le bolle "I" e "U", controllando la configurazione fattdescbo / euta-c006-i-ok (variabile tm-i-ok): se diversa da "N", viene chiamato il paragrafo b-standard che produce la riga descrittiva.

In contestuale refactoring, le IF nidificate del dispatcher principale (struttura IF ... ELSE IF ... ELSE IF) sono state separate in IF consecutive autocontenute, per uniformita' con lo stile del progetto (vedi memoria feedback_cobol_flat_if).