Vai al contenuto

COGE42 - Visualizzazione partite aperte e chiuse

Sorgente: cbl/coge42.cbl | Tipo: Programma con interfaccia grafica (maschera griglia) | Program-ID: COGE42

Menu: Contabilita' > Clienti a Part.Aperte > Vis. Partite / Contabilita' > Fornit. a Part.Aperte > Vis. Partite


Scopo

Visualizza le partite aperte e/o chiuse per un cliente o fornitore, con il dettaglio dei movimenti che le compongono (fatture, pagamenti, note credito, acconti). Mostra per ciascun movimento gli importi dare/avere, il saldo progressivo e lo stato incasso/cessione. Permette di filtrare per tipo partita, range di date, tipo pagamento, agente e di esportare i dati in Excel.

Il programma opera in modalita' clienti ("C") o fornitori ("F") in base al parametro ricevuto dal menu (wo-parametro).


Struttura del programma

File e tabelle utilizzati

File/Tabella Tipo Descrizione
COGTABEL (feurtab) Input Tabella generica (lettura esercizio contabile, tipo 66)
COGGEANA Input Anagrafica clienti/fornitori (validazione codice, lookup agente)
COGPNCON Input Piano dei conti (validazione conto associato)
COGPARTI Input Partite (testata partita: date apertura/chiusura, tipo pagamento)
COGWPNO (cogwpno) Input File temporaneo prodotto da COGS77 con i movimenti di prima nota selezionati
COGTRANS (cogtrans) I-O File temporaneo indicizzato di appoggio per i movimenti aggregati per partita
COGPNONC Input Prima nota contabile
COGFATTU Input Fatture
COGTESBO Input Testate bolle
COGFTETS Input Fatture elettroniche (stato invio SDI)
COGANAP2 Input Anagrafica aggiuntiva
COGMAGAZ Input Magazzino
COGAPPOG Input Appoggio
COGMOVPA Input Movimenti partite
exp-grid Output File export griglia (Excel)

Copybook principali

Copybook Descrizione
feurtab.fd SELECT tabella COGTABEL
coge42.select SELECT generati da Screens
coge42.fd FD generate da Screens
coge42.wrk Working-storage generata da Screens
cogfiles.cpy Record COGTABEL
cogwpno.fd / cogwpno.cpy SELECT e record file temporaneo prima nota
cogconta.cpy Record esercizio contabile
wstato.cpy Variabili di stato
wgrave.cpy Gestione errori gravi
wopenf.cpy Apertura file
wnscr.cpy Variabili screen
cogazien.cpy Dati azienda corrente
wgrid.cpy Variabili griglia
utilgdad.cpy Utility GRIDADMN
utils51.cpy Utility COGS51
utils52.cpy Utility COGS52 (input numerico)
utils65.cpy Utility COGS65W (lookup anagrafiche)
utils77.cpy Utility COGS77 (estrazione partite)
utilu10.cpy Utility COGU10W (conversione divise)
utilw19.cpy Utility WIN019
utilw62.cpy Utility WIN062
utilu49.cpy Utility COGU49
utilzs6.cpy Utility COGZS6 (raccordo commesse)
utilncnf.cpy Utility configurazione RNEWCONF
utila043.cpy Utility COGE43A (dettaglio documento)
k-u10.cpy Costanti per U10
wcont.cpy / wcont1.cpy Linkage section (parametri dal menu)

Chiamate a sottoprogrammi (CALL)

Programma Scopo
COGS77 Estrazione partite da prima nota: produce il file COGWPNO con i movimenti filtrati
COGS65W Lookup anagrafiche (codice cliente/fornitore, agente)
COGS51 Lookup tipo pagamento
COGU10W Conversione/formattazione importi in divisa
COGU49 Utility (export dati)
COGZS6 Raccordo partita-commessa (solo clienti con gestione laboratorio)
COGE43A Visualizzazione dettaglio documento da griglia
WIN019 Utility finestra
WIN062 Utility finestra
GRIDADMN Gestione griglia (preparazione, riempimento, export Excel)
RNEWCONF Lettura configurazione

Logica di elaborazione

Inizializzazione (apri)

  1. Verifica abilitazioni, apre i file, legge dati azienda.
  2. Legge esercizio contabile (COGTABEL tipo 66); se assente, esce con errore.
  3. Determina il tipo operativo (clienti/fornitori) da wo-parametro.
  4. Recupera la divisa di conto tramite COGU10W.
  5. Crea il file temporaneo COGTRANS nella directory temp.
  6. Imposta titolo maschera ("Visualizzazione partite clienti/fornitori").
  7. Configura pulsanti custom (F6 modifica banca, F18 modifica tipo pagamento).

Filtri di testata (a4 → a-inizio-dati)

Il programma presenta i seguenti campi di filtro con navigazione sequenziale:

Paragrafo Campo Validazione
a-tm-codice Codice anagrafico COGS65W con F8; se zero = "Tutti". Legge COGGEANA e COGPNCON per conto
a-tm-ape Tipo partite (A=aperte, C=chiuse, E=entrambe) Combo S60
a-tm-storiche Includi storiche Check-box S95
a-tm-prov Includi provvisorie Check-box S95 (visibile solo se gestione IP attiva)
a-tm-tipo-sel Tipo selezione (T=tutte, A=per anno, P=per tipo, S=singola) Combo S60
a-tm-par-anno/tipo/num/sca Riferimento partita specifica Abilitati in base a tipo-sel
a-tm-data-inser Data apertura (filtro "da") Calendario
a-tm-data-chius Data chiusura (filtro "fino a") Calendario
a-tm-agente Codice agente COGS65W (tipo "F", flag agente); validato su COGGEANA

Elaborazione (a-inizio-dati → new-par)

  1. Estrazione: chiama COGS77 con i parametri di filtro (tipo, codice, anno, tipo partita, numero, scadenza, flag provvisorie/storiche). COGS77 produce il file COGWPNO ordinato per partita.
  2. Ciclo new-par: legge sequenzialmente COGWPNO e per ogni movimento:
  3. Filtra per stato apertura/chiusura (A/C/E).
  4. Filtra per agente: legge COGGEANA del soggetto della partita (pno-paclie) e confronta ana-agente con tm-agente; se non corrisponde, salta il record.
  5. Filtra per date apertura/chiusura: legge COGPARTI e verifica range date.
  6. Aggrega i movimenti per partita nel file COGTRANS, calcolando il totale dare/avere per determinare lo stato I/C (Incasso/Chiusa).
  7. Per clienti con gestione laboratorio, recupera la commessa tramite COGZS6.
  8. Recupera dati SDI (fattura elettronica) se disponibili.
  9. Calcolo saldo (calcola-saldo): scorre COGTRANS calcolando il saldo progressivo per partita e il saldo totale.

Visualizzazione griglia (vis-tabella)

  • Carica i record da COGTRANS nella struttura tm-tab (max 100 righe per pagina).
  • Formatta le colonne tramite GRIDADMN con personalizzazione colonne (laboratorio: commessa, paziente, ecc.).
  • F8 su riga: chiama COGE43A per dettaglio documento.
  • F5: visualizza fatture collegate.
  • F6: modifica banca sulla partita.
  • S-F4: amministrazione griglia (ordine/visibilita' colonne).
  • S-F5: esporta in Excel.

Note tecniche

  • Il file COGTRANS e' un file temporaneo indicizzato creato nella directory temp con nome univoco per operatore (#$COGE42_<pid>.<operatore>). Viene cancellato alla chiusura.
  • COGS77 e' il motore di estrazione delle partite: prepara il file COGWPNO con tutti i movimenti che corrispondono ai criteri base (cliente, tipo, anno, ecc.). I filtri aggiuntivi (agente, date) sono applicati dal programma in post-elaborazione.
  • Il filtro agente (aggiunto 04/2026) legge l'anagrafica del soggetto titolare di ogni partita e confronta il campo ana-agente con il valore richiesto. Se il codice agente in testata e' zero, il filtro non si applica.
  • La validazione dell'agente usa COGS65W con s65-i-tip = "F" (tipo fornitore) e s65-fl-age = "S" (flag agente attivo), in modo da proporre solo i soggetti classificati come agenti.
  • Per i clienti con gestione laboratorio (az-ges-lo = "S"), la griglia mostra colonne aggiuntive: commessa, paziente, data prescrizione, ora consegna, riferimento documento magazzino.
  • La struttura tm-tab supporta fino a k-max-ele-tab (100) righe. La paginazione e' gestita dal ciclo di riempimento con scorrimento.
  • Il tipo selezione controlla quali campi partita sono abilitati: "T" (tutte) disabilita anno/tipo/numero/scadenza; "A" (per anno) abilita solo anno; "P" abilita anno+tipo; "S" (singola) abilita tutti.

Documentazione tecnica aggiornata -- 2026-04-21