COGG65 - Raggruppamento commesse in economia
Panoramica
Programma interattivo che raggruppa le prestazioni giornaliere (righe tipo "RR") delle commesse "in economia" e genera automaticamente i documenti (bolle) corrispondenti. Le prestazioni vengono accorpate per merce e prezzo in un file di transito temporaneo, poi trasformate in documenti di magazzino. Supporta filtro per singola commessa o elaborazione di tutte le commesse. Circa 1.213 righe.
| Menu |
Percorso |
| Vendite |
Commesse > Funzioni Documenti > Raggruppamento prestazioni |
Struttura del programma
File e tabelle utilizzati
| File/Tabella |
Tipo |
Descrizione |
| FEURTAB |
Input |
Tabella di sistema |
| COGTESCM |
Input |
Anagrafica commesse (testata) |
| COGRIGCM |
Input |
Righe commessa (prestazioni giornaliere) |
| COGDMRIG |
Input |
Righe dettaglio documenti |
| COGDMTES |
Input |
Testata documenti |
| COGTABEL |
Input |
Tabella tipi commessa (tipo "A1", flag economia) |
| COGMERCI |
Input |
Anagrafica merci |
| COGTRANS |
I-O |
File di transito temporaneo (chiave: tsc-cod + merce + prezzo, dato: qta) |
Copybook principali
| Copybook |
Descrizione |
| cogg65.select |
SELECT dei file |
| cogg65.fd |
File Description |
| cogg65.wrk |
Working storage generata |
| cogg65-01.scr |
Screen section |
| cogg65.decla |
Declaratives |
| cogg65.prc |
Procedure generate da Screens |
| capazien.cpy |
Dati azienda |
| utilu35w.cpy |
Interfaccia utility U35 (accept commessa) |
| utils52.cpy |
Gestione date (calendario) |
| utils25.cpy |
Utility documenti |
Chiamate a sottoprogrammi (CALL)
| Programma |
Scopo |
| COGU10 |
Gestione divise/valute: conversione, arrotondamento, GetDivisaConto |
| RNEWCONF |
Lettura configurazioni |
| DTPRG / PRGDT |
Conversione data/progressivo giorni (per calcolo data estrazione + 1) |
Logica di elaborazione
Flusso principale
- Inizializzazione (
apri): apre file, legge configurazione (tipo numerazione commessa, causale raggruppamento giornalieri). Crea file di transito temporaneo #$COGG65.{operatore}.
- Input parametri (
a4 e seguenti): accept di commessa (tramite utility U35), da-data, a-data, data-documento, flag ricalcolo. La commessa puo' essere vuota (= tutte).
- Validazione (
a-fine-dati): verifica completezza dati, controlla che la causale sia configurata (tm-cfg-cau-raggr-giornalieri). Chiede conferma all'utente.
- Fase 1 - Elaborazione (
tratta-dati THRU ex-tratta-dati):
- Scorre le commesse (tutte o la singola selezionata) su COGTESCM
- Per ogni commessa, chiama
tratta-commessa: scorre le righe COGRIGCM filtrate per tipo "RR"
- Esclude righe con
rgc-acid-id non vuoto (righe collegate a prestazioni Assist)
- Se ricalcolo = "N", salta le righe con data <= data estrazione commessa
- Filtra per intervallo date (da-data / a-data)
- Verifica che il tipo commessa (COGTABEL tipo "A1") abbia flag economia = "S"
- Per ogni riga valida, chiama
tratta-dmrig: scorre le righe COGDMRIG collegate e accumula quantita' nel file di transito per chiave (commessa + merce + prezzo)
- Fase 2 - Creazione documenti (
tratta-cogtrans THRU ex-tratta-cogtrans): legge il file di transito e genera i documenti con la causale configurata.
- Chiusura (
fine): chiude e cancella il file di transito, esce dal programma.
Configurazioni RNEWCONF
| Gruppo |
Chiave |
Descrizione |
| (da verificare) |
tip-num-tsc |
Tipo numerazione commessa: "N" = numerico |
| (da verificare) |
cau-raggr-giornalieri |
Causale da utilizzare per le bolle generate |
Filtri applicati sulle righe
rgc-tip = "RR" (solo righe di tipo prestazione)
rgc-acid-id = spaces (escluse righe collegate ad Assist)
- Intervallo date:
tm-da-data <= rgc-data <= tm-a-data
- Se ricalcolo = "N":
rgc-data > tsc-data-estr
- Tipo commessa con flag economia = "S" (da COGTABEL)
- Personalizzazione "ID": solo documenti tipo "G"
- Personalizzazione "EE": escluse merci con flag consumo = "S"
Note tecniche
- Il file di transito e' un file indicizzato temporaneo creato nella directory temporanea dell'operatore, con chiave composta da codice commessa + merce + prezzo.
- Il programma usa
PERFORM ... THRU per le sezioni di elaborazione principale (tratta-dati, tratta-cogtrans, tratta-commessa, tratta-dmrig).
- La data "da" viene proposta automaticamente come giorno successivo alla data di estrazione della commessa (se presente).