Vai al contenuto

COGD09 - Importazione/fatturazione fatture (lanciatore)

Intestazione

Campo Valore
Programma COGD09
Titolo Importazione fatture (programma di lancio)
Modulo Sistema
Posizione menu Sistema > Utility > Importazioni > Fatture

Scopo e logica generale

COGD09 e' un programma di lancio (dispatcher): non contiene logica applicativa, ma sceglie ed esegue il programma corretto in base alla personalizzazione dell'azienda corrente. Nel sorgente l'intestazione lo descrive come "Fatturazione Differita Singolo Cliente - Programma di lancio dei programmi personalizzati".

La scelta usa il campo az-personal (area azienda az-rec, popolata da azien-area):

  • Ambiente personalizzato (az-personal diverso da spazi): compone il nome 'cogd09' + az-personal in name-call (pic x(08)) e lo esegue (call ... using stringhe); su on overflow ricade sullo standard.
  • Ambiente standard o personalizzazione non eseguibile: esegue cogd09no.cob.

Se anche lo standard va in overflow, mostra il messaggio "Non trovo il programma di fatturazione!" tramite box-msg.

Il commento nel sorgente cita anche un ramo alternativo (AZ-TIP-CMP = 'C' -> cogd09DA), ma nel codice effettivo il fallback e' unico verso cogd09no.cob. Il programma delegato e' quello che esegue materialmente l'importazione/fatturazione; COGD09 gli passa l'area comune stringhe.


Flusso principale

  1. a000 (main): copia azien-area in az-rec.
  2. Se az-personal = spaces salta a st-80-standard.
  3. Altrimenti compone name-call = 'cogd09' + az-personal e lo esegue; su overflow va a st-80-standard, altrimenti a st-90-ok.
  4. st-80-standard: imposta name-call = 'cogd09no.cob' e lo esegue; su overflow mostra "Non trovo il programma di fatturazione!" via box-msg.
  5. st-90-ok: cancel name-call.
  6. fine: exit program.

File e tabelle acceduti

Nessun file dati aperto direttamente. Opera solo sull'area azienda in memoria (az-rec, da cogazien.cpy); l'elaborazione dei file avviene nel programma delegato.


Copybook principali

  • wstato.cpy, wgrave.cpy, wopenf.cpy, wscree.cpy, cogazien.cpy - working-storage standard.
  • wcont.cpy (stringhe), wcont1.cpy - linkage; stringhe e' l'area comune passata a valle.
  • stato.cpy, winmsg.cpy, grave.cpy - routine finali.

Programmi chiamati (CALL)

Programma Scopo
cogd09<personal> Variante personalizzata (se az-personal valorizzato)
cogd09no.cob Programma fatture standard (fallback)

Note

  • Programma wrapper/lanciatore: la logica di importazione/fatturazione e' nel programma delegato (cogd09no o variante). Vedi il pattern multi-tenant nel flusso Sistema - Import/Export, dove COGD09 e' censito come "Wrapper fatture: dispatcher con fallback COGD09NO".
  • Il commento sul ramo AZ-TIP-CMP = 'C' -> cogd09DA e' presente ma non implementato nel codice: unico fallback effettivo e' cogd09no.cob.
  • Non e' un programma GUI; usa go to per il dispatch.
  • Nessuna configurazione RNEWCONF letta direttamente.

Documentazione tecnica -- creata 2026-08-06