Vai al contenuto

COGV40 - Inserimento Note Accredito

Funzione

Prima fase del processo di emissione di note di accredito manuali. Il programma gestisce la selezione delle bolle di consegna (DDT) da accreditare per un cliente, raccoglie i dati fiscali di testata e avvia il modulo di emissione documento (COGV60/COGV61) con i dati precompilati.

Puo' operare in modalita' interattiva (selezione manuale delle bolle) o in modalita' "silent" (automatica, attivata tramite linkage da altro programma come COGV60).

  • Vendite > Note Accredito > Inserimento Note Accredito
  • Lab.Odont. > Note Accredito

Tabelle e file principali

Tabella/File Copybook Accesso
FEURTAB cogfiles.cpy R - tabella file/directory
COGRAGFA cogragfa.cpy R - raggruppamento fatture
COGRIFBO cogrifbo.cpy R - riferimenti bolle
COGRRESI cogrresi.cpy R - resi
LODTMDES lodtmdes.cpy R/W - template dati multi-operatore
TRAN-V60 tran-v60.cpy R/W - file di transito per COGV60
File indicizzati da cogv40.select cogv40.fd R/W - bolle e movimenti

File di transito temp per interscambio con COGV60: - #$cogv60.{wo-oper} (trs-v60-name) - #$BOGV60.{wo-oper} (w-ltd-nome, per LODTMDES)

Logica principale

Strutture dati chiave

  • tab-maschera: contiene il record passa (struttura condivisa con COGV61 - non modificare l'ordine dei campi), i dati di testata (cliente nonno/padre, data fattura, divisa, pagamento, banca, IVA esenzione, commessa, storno, tipo documento) e la tabella delle bolle selezionate tm-tab (max 900 elementi).
  • grid-record: struttura per il rendering di ogni riga della griglia (anno/tipo/num riferimento fattura, dati bolla, data, ordine, pagamento, divisa, commessa, paziente, causale, tipo fatturazione, sconto finale).
  • w-dati-called: struttura per la modalita' "called" da COGV60 (cliente, commessa, divisa, ecc. prestabiliti).

Flusso di elaborazione

  1. Inizializzazione: z-99-init-program, ctr-abil, lettura anagrafica azienda (rd-azi), creazione pulsanti custom (F6 "Chiudi senza fatturare", F7 "Modifica e fattura", Shift+F9 "Altri dati XML"). Lettura configurazioni tramite x99-confi (RNEWCONF).

  2. Modalita' "silent-nac": se w-dc-operazione = "silent-nac", chiama prepara-nac e salta direttamente a a-100 (creazione NAC senza interazione).

  3. Raccolta dati testata (maschera cogv40-01.scr):

  4. a-tm-nonno: intestatario (F1 per configurazione, util-s65)
  5. a-tm-padre: cliente di consegna (util-s65)
  6. a-tm-data-fattura: data (calendario F8, util-s52)
  7. a-tm-storno: flag storno (util-s60)
  8. a-tm-no-merci: solo servizi senza merci (util-s95; saltato per personalizzazione "PU")
  9. a-tm-divisa: divisa (ricerca COGE22)
  10. a-tm-cond-pag: condizione pagamento (util-u22)
  11. a-tm-pagamento: codice pagamento (win-w02)
  12. a-tm-cod-banca: banca (WIN023)
  13. a-tm-cod-iva-ese: aliquota IVA esenzione (COGE67)
  14. a-tm-art-iva-ese: articolo IVA esenzione (COGE69)
  15. a-tm-tsc: commessa (visibile in base a configurazione)

  16. Griglia bolle (a-fine-dati): al termine dei dati di testata, il programma carica la griglia con le bolle disponibili per il cliente. Max 900 righe (k-max-ele-tab). Filtri per cliente nonno/padre, range date, tipo documento. Le colonne principali identificate tramite k-colid-f-rif (1) e k-colid-bolla (2).

  17. Selezione e conferma: l'operatore seleziona le bolle (INVIO per singola riga). F6 chiude senza fatturare; F3 conferma. Alla conferma, i dati selezionati vengono scritti nel file di transito tran-v60 e il controllo passa a COGV60/COGV61.

  18. Scrittura file di transito: tm-righe (array bolle selezionate) piu' passa (dati testata) vengono serializzati nel file temporaneo #$cogv60.{operatore} prima della chiamata.

Configurazione (RNEWCONF letta da x99-confi)

Letta tramite utilncnf.cpy / x99-confi. I campi di tab-config includono: gruppo-merce transitorio, flag importo zero, gestione resi, tipo numerazione commessa, tipo/descrizione documento, flag bolla/interno, documento per causale, articolo62 deperibili, controllo articolo esenzione, abilita ADG.

Chiamate principali

Programma Scopo
COGU10W Lettura divisa di conto corrente (GetDivisaConto)
COGE22 Ricerca divisa (F8 su campo divisa)
COGE67 Ricerca aliquota IVA esenzione
COGE69 Ricerca articolo IVA esenzione
WIN023 Ricerca banca
COGU05 Gestione tabella merci singole
COGV60 / COGV61 Emissione nota di accredito (chiamato dopo la selezione bolle)
GRIDADMN Amministrazione layout griglia (Shift+F4)
WIN040 Selezione periodi (calendario)

Copybook working-storage significativi

utilcogb50.cpy (util-b50 per interazione con COGB50), utilgdad.cpy (griglia amministrazione), utile22/67/69.cpy (ricerche divisa/IVA), utilf26.cpy, utilp41.cpy, utils52/54/65.cpy, utilu10/21/22/35w.cpy, utilw02/23/67.cpy, utilzde/zs1.cpy, utilcogv60.cpy (linkage con COGV60), wgrid.cpy, utildlg.cpy.

Note tecniche

  • La struttura passa (dentro tab-maschera) e' condivisa con COGV61: l'ordine e la dimensione dei campi non devono essere modificati senza allineare COGV61.
  • I campi ext-tipo-doc-forzato, ext-tipo-doc-fat, ext-tipo-doc-nac sono external e permettono la comunicazione con altri programmi in esecuzione nella stessa sessione.
  • Il colore delle colonne della griglia puo' essere personalizzato tramite tm-cfg-colore-mod dalla configurazione RNEWCONF.
  • La riga con tag 130418 (18 aprile 2013) gestisce il campo sconto finale grd-sconto-fin / tm-r-sconto-fin.
  • Il campo az-personal governa comportamenti specifici per personalizzazioni ("IP" per IP, "GO" per GO, "PU" per PU).