Vai al contenuto

COGK28 - Statistiche Auto per Fornitore/Rivenditore (Emporio Auto)

Panoramica

Programma interattivo a carattere che produce le situazioni statistiche delle schede auto dell'Emporio Auto raggruppate per fornitore (concessionario) o per rivenditore, filtrando le vetture in base al loro stato operativo (in giacenza, presso rivenditore, vendute, consegnate, tutte). Per ogni vettura riporta descrizione, targa, telaio, data di entrata, data fattura, OK CDP e stato, con elenco consultabile a video e stampa "Statistica per ...". Scandisce l'archivio schede auto COGSKAUT, seleziona le vetture pertinenti al fornitore/rivenditore e allo stato richiesto, e raccoglie le righe nel file di lavoro temporaneo. E' una funzione di sola consultazione/stampa: non aggiorna gli archivi.

Posizione nel menu

Menu Percorso
Magazzino Autoveicoli > Situazioni

Struttura del programma

File e tabelle utilizzati

File/Tabella Tipo Descrizione
FEURTAB Input Tabella di sistema (nomi file)
COGSKAUT Input Archivio schede auto (scansione per stato via chiave secondaria ska-chia2)
COGRACMC Input Raccordo codice avanzato -> merce
COGMERCI Input Anagrafica merci (descrizione veicolo)
COGMERFO Input Merci/fornitore (targa)
COGGEANA Input Anagrafica clienti/fornitori (nome fornitore/rivenditore/cliente)
COGTABEL Input Tabella generica
work-file I-O (temp) File indicizzato di lavoro con le righe della situazione
sta Output File di stampa (PRINTER)

Copybook principali

Copybook Descrizione
cogskaut.cpy Tracciato archivio schede auto
cogracmc.cpy / cogmerci.cpy / cogmerfo.cpy Raccordo merce, anagrafica merci, merci/fornitore
coggeana.cpy Anagrafica clienti/fornitori
cogtabel.cpy / cnfgprfr.cpy Tabella generica e configurazione profili
cogfiles.cpy / cogazien.cpy FEURTAB e dati azienda
wstato / wgrave / wopenf / wnscr Working storage standard
utils22.cpy / utils52.cpy / utils54.cpy / utils60.cpy / utils65.cpy Interfacce COGS22, COGS52 (data), COGS54 (stampa), COGS60 (menu), COGS65 (ricerca anagrafica)
utilsk10.cpy Interfaccia verso COGK10
stato / stato1 / winmsg / grave / open1 Procedure standard
mmmask.cpy / dtab.cpy / fscrol2.cpy Maschera testuale standalone, tabella video, scrolling
coggeana.k01 / cogmerfo.k01 / cogracmc.k01 / cogracmc.k02 / cogmerci.k01 Chiavi lettura archivi

Chiamate a sottoprogrammi (CALL)

Programma Scopo
COGS60 Scelta a menu (statistica per, tipo ricerca)
COGS65 Ricerca/help anagrafica fornitore o rivenditore
COGS52 Immissione e verifica delle date del periodo
COGS54 Selezione stampante/emulazione (form CAP076)
CRYPT / encrypt Routine di cifratura/decifratura (presenti, prep-campo)
COGK10 Apertura scheda auto della riga selezionata (F7)

Logica di elaborazione

1. Inizializzazione (a000) e parametri

Verifica l'abilitazione (ctr-abil), apre i file, legge i dati azienda e mostra la maschera "Statistica per fornitore o rivenditore". Poi raccoglie i filtri:

  • Statistica per (tm-ordine, COGS60 su w60-dati): A = Statistica Fornitore, B = Statistica Rivenditore.
  • Tipo ricerca (tm-tiporic, COGS60 su w61-dati per il fornitore o w62-dati per il rivenditore): per il fornitore 1 = In giacenza, 2 = C/o rivenditore, 3 = Vendute, 4 = Tutte; per il rivenditore 1 = Consegnate, 2 = Vendute, 3 = Tutte.
  • Fornitore o rivenditore (tm-for, COGS65): uno specifico o tutti (tm-for = 0).
  • Periodo (tm-data-da / tm-data-a, COGS52): confrontato con ska-data-acq per il fornitore o con ska-data-riv per il rivenditore.

2. Estrazione e selezione (fill-file / fill-file-next / upd-work-file)

Scandisce COGSKAUT per stato "A" e oltre. In fill-file-next filtra prima per anagrafica (ska-for per il fornitore, ska-riv per il rivenditore) e per periodo, poi seleziona per stato in base a tm-tiporic:

  • Fornitore (tm-ordine = "A"): tiporic 1 -> ska-stato = "A" (giacenza); 2 -> "B" (presso rivenditore); 3 -> "B"/"C"/"D"/"E" (vendute/in vendita); 4 -> tutte.
  • Rivenditore (tm-ordine = "B"): tiporic 1 -> "B" (consegnate); 2 -> "C"/"D" (vendute); 3 -> stato compreso tra "A" escluso e "F" escluso (da vendere).

In upd-work-file, per ogni scheda selezionata risolve merce/targa (COGRACMC/COGMERCI/COGMERFO) e i nominativi da COGGEANA (fornitore ska-for, rivenditore ska-riv, cliente ska-cli), e valorizza il record del file di lavoro con descrizione, targa, telaio (ska-cod-ava), stato (ska-stato), data di entrata (ska-data-acq), numero fattura e data fattura (entrata per il fornitore, provvigione per il rivenditore) e flag OK CDP.

3. Visualizzazione e paginazione

Rilegge il file di lavoro e riempie la tabella tm-tab (max 16 righe). In rd1-ft-go/x1-fill-sr scompone le date (entrata e fattura) in gg/mm/aaaa e traduce lo stato in descrizione leggibile (ska-stato: A=Acquistato, B=A Rivendi., C=Rc.passag., D=Venduto, E=F.Pratica, F=In demol., G=Demolita, R=Rientro, T=Usc. C/rip, V=Ent. C/rip). Riga selezionata in reverse e finestra orizzontale scorrevole; sotto la maschera viene mostrato il concessionario o il rivenditore della riga corrente.

4. Interazione (a-45)

  • ESC: torna alla scelta;
  • F7: apre la scheda auto (COGK10);
  • F9: stampa su carta.

5. Stampa su carta (st-stampa / intesta / rot-ordine)

Seleziona stampante via COGS54 (form CAP076), rilegge il file di lavoro e stampa l'intestazione "Statistica per Fornitore/Rivenditore" con specifica del tipo ricerca (Auto in Giacenza / C/O rivenditore / Vendute / Consegnate / da Vendere / Tutte). Alla rottura di raggruppamento (rot-ordine, quando cambia work-ordine) stampa la testata del gruppo. Le righe di dettaglio riportano descrizione, targa, telaio, data entrata, data fattura, OK CDP, stato e nominativo, con salto pagina ogni 60 righe.

6. Chiusura (fine / z-chiudi)

Chiude i file, elimina il file di lavoro ed esce.

Note tecniche

  • Archivio di riferimento: COGSKAUT (vedi cogskaut.cpy). La selezione si basa su ska-stato (posizione del veicolo), sull'anagrafica (ska-for fornitore, ska-riv rivenditore, ska-cli cliente) e sulle date ska-data-acq/ska-data-riv.
  • Chiave con stato: rispetto agli altri programmi del modulo, il file di lavoro ha in chiave anche work-stato (work-ordine + work-stato + work-data + work-prog), utile all'ordinamento per stato entro il raggruppamento.
  • File di lavoro temporaneo: indicizzato, nome con prefisso #$cogk25. + operatore (condiviso nel modulo); ricreato all'ingresso e cancellato in uscita.
  • Telaio: memorizzato in ska-cod-ava; in stampa viene mostrata la porzione a partire dal 5. carattere (work-telaio (5:15)).
  • Programma a carattere: usa mmmask.cpy (standalone testuale), maschera literal mm-1.
  • Nota sul menu: la voce di menu "Situazioni" corrisponde alle statistiche delle schede auto per fornitore o rivenditore, filtrate per stato.