Vai al contenuto

Ordini Clienti e Fornitori

Area menu: Ordini

Documentazione dei programmi di gestione contratti/ordini clienti e fornitori, consegne pianificate e utility correlate. Modulo specifico CAP (Consorzio Agrario Provinciale) con gestione ammassi cereali, quote scadenziate, bonus fedelta' e integrazione Agricenter.

Nota architetturale: il termine "ordine" in questo modulo corrisponde a un contratto commerciale con fornitore o cliente, con date di validita', quote scadenziate e consegne pianificate. I file usano il prefisso CAP (CAPTESOR, CAPRIGOR, CAPCONOR, CAPQUOTE) anziche' i COG standard.


1. Contratti clienti — core (4 programmi)

Flusso

COGO05  Inserimento nuovo contratto cliente
   |
COGO10  Gestione/modifica contratto esistente
   |         F9 = crea nuova versione (progr 0->9)
   |
COGO20  Creazione contratto da quote/preventivo o import Excel
   |
COGO45  Chiusura contratti (batch per range)
         ricalcolo quote = DELETE + CREATE su CAPQUOTE

1.1 COGO05 — Inserimento contratti clienti (2.694 righe)

Creazione interattiva di nuovi contratti clienti con testata, righe articoli e quote scadenziate.

File: CAPTESOR (torc-, write), CAPRIGOR (rorc-, write), CAPQUOTE (quo-, opzionale), CAPGENER (gnrc-, link OP/XML), COGGEANA (ana-), COGMERCI (mer-), COGMERA2 (ma2-), COGAPPOG (app-, black list/banca), COGANAPP (aap-, agenzia default), COGTABEL (euta-) CALL: COGS52, COGS21, COGS22, COGS25, COGF11, CAPO14, CAPO16C, CAPO15, CAPO58, CAPO65, CAP510, CAPS72, CAPM12, WCA022, WCA005, WCA024, COGU06, RNEWCONF

Workflow testata (25 step):

  • Anno (>= 1996), servizio (tab 85, operatore deve appartenere), numero (auto COGS25 o manuale)
  • Intestatario: lookup COGGEANA tipo C, verifica black list (COGAPPOG), agenzia default (COGANAPP)
  • Date decorrenza/scadenza, tipo contratto (A=multipla, C=singola)
  • Codice pagamento (tab 14), condizione (D=rimessa, R=RiBa, B=bonifico)
  • Note, flag assicurato, flag quote (S/N/M=misto), mediatore (tab 24)
  • Agricenter: cessionario, flag prezzo da determinare, nr. contratto OP, dati XML

Workflow righe (max 500):

  • Per ogni riga: merce (COGS22 IOCL mode), validazione servizio (ma2-uff = torc-ser)
  • Provvigione (CAPS72 max), quantita' ordinata, prezzo unitario
  • Check Reggio: prezzo >= prezzo acquisto (mer-prezacq)
  • Validazione minimo 6 righe compilate
  • CAP510: validazione pacchetti CAPSCOCL (opzionale)

Chiave contratto: tipo(C/F) + anno + servizio + numero + progressivo (0-9 versioni)

Post-creazione: F5=ordini (CAPO16C), F6=prezzi particolari (CAPO15), F7=descrizioni (CAPO58), F8=immagine (COGU06), F9=stampa (CAPO65)

1.2 COGO10 — Gestione contratti clienti (3.235 righe)

Modifica, aggiornamento e versionamento di contratti clienti esistenti.

File: come COGO05 con CAPTESOR in I/O (rewrite) CALL: come COGO05 + CAPO17C (versioning F9), WCA200 (elenco contratti), WCA270

  • Ricerca per chiave (anno/servizio/numero/progressivo)
  • Se torc-chiu='C' (chiuso): modifica solo testata, righe bloccate
  • Modifica testata: date, pagamenti, mediatore, note, flag
  • Modifica righe: DELETE vecchie + WRITE nuove (pattern distruttivo)
  • F9=nuova versione: cerca progressivo libero (0->9), copia contratto
  • Gestione quote: CAPO14 (A=update, V=visualizza, C=cancella)
  • Gestione immagini: COGU06 (se az-arc-ott='S')

1.3 COGO20 — Creazione da quote/import Excel (1.735 righe)

Crea contratti da preventivi scadenzati o importazione file Excel CSV.

File: CAPTESOR (torc-, write), CAPRIGOR (rorc-, write), FILSEQ (seq-, input CSV), FILELOG (log-, errori) CALL: COGS52, COGS22, COGS25, CAP510, CAPM12, WCA200, C$OPENSAVEBOX, OPENFILE, COPIAF, ESTRXLS, RNEWCONF

  • F6=import Excel: C$OPENSAVEBOX file picker, parsing CSV con delimitatore configurabile
  • Giro prova (validazione) + giro vero (creazione) con log errori
  • Formato CSV: gruppo;sottocodice;codice|descrizione|um|quantita'|prezzo
  • Verifica duplicati merce per cliente/periodo (START CAPTESOR per clifor)
  • CAP510: validazione pacchetti
  • Forzature: tipo='C', valuni='A' (multipla), numerazione automatica

1.4 COGO45 — Chiusura contratti (981 righe)

Chiusura batch di contratti per range con ricalcolo quote settimanali.

File: CAPTESOR (torc-, I/O), CAPRIGOR (rorc-, lettura qtacons), CAPQUOTE (quo-, DELETE+WRITE) CALL: COGS52, WCA270 (dettaglio), COGF11, RNEWCONF, DTPRG/PRGDT (aritmetica date)

  • Input: range chiusura da contratto A a contratto B
  • Per ogni contratto aperto (valuni='A'): visualizza dettaglio, F3=chiudi
  • REWRITE torc-chiu='C'
  • Se fl-quote='S' e non Agricenter: ricalcolo quote
  • DELETE tutte quote vecchie CAPQUOTE
  • Per ogni riga: qta_settimana = rorc-qtacons / nr_settimane
  • Per ogni settimana: CREATE quota con data = inizio + (n-1)*7 giorni
  • Ultima settimana: residuo = qtacons - accumulato

Limitazioni: ricalcolo distruttivo (non reversibile), nessun audit log


2. Consegne clienti (2 programmi)

Gestione delle consegne pianificate vincolate ai contratti clienti. Una "consegna" e' un ordine operativo con data, quantita', vettore e destinazione. Sono i programmi piu' grandi dell'area Ordini.

Flusso

Contratto (CAPTESOR) ──> COGO16C  Inserimento consegne ──> CAPCONOR
                                      |
                         COGO17C  Gestione/modifica consegne
                                      |
                         [futuro]  Generazione DDT/Bolla (COGV50W)

2.1 COGO16C — Inserimento consegne clienti (11.117 righe) [programma piu' complesso]

Creazione di consegne pianificate collegate a contratti clienti con gestione bonus fedelta', fido, patentini ADR e conto anticipo.

File: CAPCONOR (corc-, write), CAPTESOR (teor-), CAPRIGOR (rior-), CAPDESOR (dorc-, destinazioni), CAPGENER (gnrc-), CAPTESBO (tesc-), CAPMERCT (merct-), CAPMAGAZ (magc-), CAPLISTI (list-), CAPFIDO (fidc-), CAPLOGFD (lfd-), CAPANPAR (anpa-, patentini), CAPSLMAG (slm-, saldi), CAPBUOTR (buot-, buoni trasporto), COGGEANA (ana-), COGMERCI (mer-), COGMERAP (map-), COGMERA2 (ma2-), COGTABEL (euta-) CALL: COGS52, COGS21, CAP120, CAP092, CAP192, CAPS01V, CAPS85, WCA250, W13, W06, W01, W89, W92, W02, CAP362

Workflow (sequenza INIT -> ACCEPT -> VALIDATE -> WRITE):

  1. Intestazione: cliente (COGGEANA), data ordine, data consegna
  2. Toggle F5=Ordine Parma / F7=Ordine Nord Est
  3. Se contratto: propone quantita' da contratto (rorc-qtaord)
  4. Causale uscita magazzino (tab finemese='U'), tipo documento B=bolla/F=fattura
  5. Vettore (W13 lookup), agenzia (W89), pagamento, agente
  6. Righe consegna (max 500): merce, qta contratto, qta altri ordini, qta ordine, prezzo
  7. Validazione ADR/DAS: patentino obbligatorio (ma2-patentino='S')
  8. Non mischiare merci DAS con non-DAS
  9. Destinazione diversa (CAPDESOR tipo='D') + note (tipo='N')
  10. Bonus fedelta':
  11. BF = bonus quantita' (COGCNDCF cnd='BF')
  12. BV = bonus valore con controllo residuo
  13. XF = extra-fido con soglia percentuale
  14. Calcolo: residuo = (fido * %) - bolle gia' create
  15. Conto anticipo (fattura prefinanziata): lookup CAPS01V, link CAPGENER tipo='PO'
  16. Controllo: totale ordine <= valore disponibile
  17. Write CAPCONOR + update CAPSLMAG (qta impegnata)
  18. Se CAP Reggio: insert CAPNEWOR per ordini web
  19. Log fido su CAPLOGFD

Layout schermo (mm-1):

Cliente: _____ _____________________________
Contratto: ____/_/_______ Agenzia Uscita: __
Data Ordine: __/__/____ Data Consegna: __/__/____
Causale: __ Tipo: _ Vettore: _____ Pag.: __
 Merce     | Descrizione        |Qta.Contr|Altri Ord|Qta Ordine|Prezzo
 __/__/____ ____________________  _______   _______   _______   ______
 [x12 righe]

2.2 COGO17C — Gestione consegne clienti (6.725 righe)

Modifica, cancellazione e controllo di consegne gia' create.

File: come COGO16C con CAPCONOR in I/O (delete+write), CAPORDTS/CAPORDDT (qta evasa, attivi) CALL: come COGO16C + CAP362 (cancellazione bolle carico terzi), WCA028, WCA280

  • Read consegna esistente, carica destinazioni/note (CAPDESOR)
  • Protezione stato:
  • fl-close='C': ordine chiuso, update bloccato (solo visualizzazione)
  • fl-web='W': ordine web, cancellazione richiede password
  • fl-terzi='S': merci terzi, verifica non gia' in DDT
  • Modifica: date, tipo doc, vettore, agenzia, righe (qta, prezzo)
  • F6=toggle conto anticipo (aggiunge/rimuove collegamento CAPGENER)
  • Cancellazione:
  • Se merci terzi: x14-cerco-legame-bu verifica non usato in DDT
  • Delete all CAPCONOR per ordine
  • Se fl-terzi='S': CALL CAP362 per cancellare bolla carico
  • Se CAP Reggio: genera file XML cancellazione
  • Tracking qta evasa: CAPORDTS.qta-evasa per impedire overselling

3. Contratti fornitori — core (4 programmi)

Gestione contratti con fornitori e ordini di consegna pianificata. Struttura a due livelli: contratto (COGO55/60) -> ordine consegna (COGO16F/17F).

Flusso

COGO55  Inserimento contratto fornitore
   |         CAPTESOR + CAPRIGOR + CAPDESOR(cereali)
   v
COGO60  Gestione/modifica contratto
   |         tracking consegnato vs ordinato (CAPCONOR + CAPSTOOR)
   v
COGO16F  Inserimento ordini consegna pianificata
   |         legge righe contratto -> crea CAPCONOR
   |         calcolo residuo = ordine - consegnato - storico
   v
COGO17F  Gestione ordini consegna
            modifica qta/prezzo, chiusura, sconti CAP Piacenza

3.1 COGO55 — Inserimento contratti fornitori (2.396 righe)

Creazione contratti con fornitori: termini contrattuali, condizioni di pagamento, catalogo merci.

File: CAPTESOR (torc-, write), CAPRIGOR (rorc-, write), CAPDESOR (dorc-, dati cereali/Agricenter), COGGEANA (ana-), COGMERCI (mer-), COGSOMFR (mfr-, catalogo fornitore), COGAPPOG (app-), COGTABEL (euta-) CALL: COGS52, COGS21, COGS22, COGS25, CAP541, CAP542, CAPO16F, CAPO27, CAPO58, CAPO15, RNEWCONF, COGF11, WCA024, WCA022

  • Validazione accesso: operatore nel servizio assegnato
  • Testata: anno, servizio, fornitore, date validita'
  • Tipo contratto: A=consegne multiple, C=consegna unica
  • Pagamento: D=rimessa diretta, R=RiBa, B=bonifico
  • Dati cereali (CAPDESOR pro=0): flag conferimento, centro ritiro, ettari/tonnellate
  • Dati Agricenter (CAPDESOR pro=1): premio, acconto, data acconto
  • Righe: merce, quantita', prezzo (da listino o manuale)
  • Controllo importo minimo: w-totale vs tm-cfg-imp-min (se < soglia: ragrfat=99 per visto direzione)
  • Post-creazione: F5=ordini, F6=prezzi particolari, F7=descrizioni

3.2 COGO60 — Gestione contratti fornitori (2.695 righe)

Modifica e monitoraggio contratti fornitori con tracking consegne.

File: CAPTESOR (torc-, I/O), CAPRIGOR (rorc-), CAPDESOR (dorc-), CAPCONOR (corc-, consegne), CAPSTOOR (sto-, storico), COGPREOR (porc-, prezzi particolari), COGGEANA (ana-), COGMERCI (mer-), COGMERA2 (ma2-) CALL: COGS52, COGS21, COGS22, CAPS70, CAPS74, CAPO17F, COGL61, CAP110, CAPO90, CAP093, CAP094, CAP103, CAP193

  • Ricerca contratto per chiave
  • Protezione stato:
  • ragrfat=99: "BLOCCATO PER VISTO DIREZIONE"
  • flag='C': "ORDINE GIA' CHIUSO"
  • val='R': "GIA' TRASMESSO A REGGIANA ALIMENTARI"
  • Tracking consegne:
  • Per ogni riga: somma corc-qta da CAPCONOR (consegne aperte)
  • Somma storico da CAPSTOOR
  • Residuo = qtaord - (consegnate + storico)
  • Modifica prezzi particolari (COGPREOR per data ordine)
  • Flag righe: 'C'=chiusa, 'A'=aperta

3.3 COGO16F — Inserimento ordini consegna fornitori (6.350 righe)

Converte contratti in ordini operativi con date e quantita' specifiche. Collegamento critico fra pianificazione contrattuale e logistica.

File: CAPCONOR (corc-, write), CAPTESOR (torc-), CAPRIGOR (rorc-), CAPDESOR (dorc-), COGGEANA (ana-), COGMERCI (mer-), COGMERA2 (ma2-), CAPMAGAZ (magc-), COGTABEL (euta-) CALL: WCA014, COGS21, COGS52, COGS60, CAP176, CAP093, CAP094, CAP103, CAP193, CAPS72, CAPS25, CAP110, COGL61, COGS68, WCA028

  • Selezione contratto: per agenzia, anno, tipo, numero (o WCA014 con criteri)
  • Data ordine >= data inizio contratto
  • Tipo ordine CAP Piacenza: Express/Stock/Bimestrale con sconti tabellari
  • Caricamento righe da contratto:
  • Per ogni rorc-rec: qta ordinata, qta gia' consegnata (CAPCONOR), qta storico (CAPSTOOR)
  • Residuo = ordine - consegnato - storico
  • Quantita' inserita non puo' superare residuo
  • Validazione merci:
  • Check scadenza (ma2-data-scad, ma2-data-util)
  • Check status: E=esaurimento, O=obsoleto -> blocco
  • CAP Reggio: esclude merci ammassi (w-merce-amm='*')
  • CAP Piacenza: applica sconto tabellare per tipo ordine
  • Write CAPCONOR con chiave: flag='O' + agenzia + anno + tipo + numero
  • File sync: trs-s47 per segnalare modifica

3.4 COGO17F — Gestione ordini consegna fornitori (3.454 righe)

Modifica, annullamento e controllo ordini consegna pianificata.

File: CAPCONOR (corc-, I/O delete+write), CAPRIGOR (rorc-), CAPTESOR (torc-), CAPDESOR (dorc-), COGGEANA (ana-), COGMERCI (mer-), COGMERA2 (ma2-), COGRACTIC (rtm-, sconti classe), COGSCOCF (scf-, sconti fornitore) CALL: WCA028, COGS52, COGS21, CAP176, CAP090, CAP093, CAP094, CAP103, CAP193, CAPS74, COGL61, COGS68, COGF11, RNEWCONF, WCA280, WCA014, WCA005, WCA022

  • Ricerca ordine per agenzia/anno/tipo/numero (flag='O')
  • Protezione: fl-close='C' blocca modifiche, val='R' warning
  • Modifica quantita' (< residuo contratto), prezzo, date, vettore
  • Sconti CAP Piacenza (3 livelli):
  • Ricerca COGRACTIC per cod sconto per merce/fornitore
  • Ricerca COGSCOCF per (fornitore/classe/tipo) -> sconti E/S/B
  • Sconto differenziato per tipo ordine (Express/Stock/Bimestrale)
  • Aggiornamento: delete ordine + write nuovo CAPCONOR
  • Chiusura: flag tm-fl-close='C'
  • Locking pessimistico: open output trs-s47

4. Programmi accessori censiti (36 programmi)

4.1 Clienti — accessori

Programma Righe Descrizione
COGO15 1.009 Gestione prezzi particolari su contratto cliente
COGO58 600 Gestione descrizioni aggiuntive su contratto
COGO38 1.682 Visualizzazione quote contratti ammassi con griglia
COGO32 750 Gestione sblocco visto direzione su contratti
COGO27 ~1.200 Stampa contratti fornitori con invio EuroFax
COGO26NO ~800 Invio contratti a fax FAXTOTUM

4.2 Visualizzazioni

Programma Righe Descrizione
COGO30 ~650 Visualizzazione contratti con filtri anno/stato
COGO40 ~500 Visualizzazione contratto per cliente/fornitore
COGO35 ~600 Visualizzazione movimenti per merce e ordinamento
COGO36 ~550 Visualizzazione contratti per data con dettaglio
COGO36S ~800 Visualizzazione ordinato per data con griglia
COGO39 ~300 Inserimento singola quota contratti ammassi
COGO33 ~200 Stampa contratti per firma direzione
COGO42 ~300 Inserimento quote entrata per conferente/prodotto
COGO90 ~400 Esportazione ordine fornitore procedura ricambi

4.3 Stampe

Programma Righe Descrizione
COGO65 ~450 Stampa contratti clienti con configurazione
COGO65NO ~700 Stampa contratti clienti versione generalizzata
COGO66NO ~600 Invio ordini clienti a fax FAXTOTUM
COGO80 ~700 Stampa riepilogo contratti per cliente/agenzia
COGO85 ~600 Stampa contratti per merce con dettaglio qta
COGO82 ~700 Stampa riepilogo contratti cliente e bolle collegate

4.4 Fornitori — accessori

Programma Righe Descrizione
COGO25 ~600 Stampa ordini fornitori con ripristino
COGO25CC ~800 Stampa contratti fornitori cereali specializzata
COGO25NO ~800 Stampa contratti fornitori cereali versione generale
COGO41 ~500 Visualizzazione situazione contratti clienti ammassi
COGO43 ~500 Visualizzazione riepilogo contratti e saldi ammassi
COGO47 ~700 Riepilogo pianificazione quote contratti ammassi
COGO48 ~700 Dettaglio tipo prodotto pianificazione quote

4.5 Utility

Programma Righe Descrizione
COGO14 ~800 Gestione/visualizzazione quote per contratto cliente
COGO18 ~650 Aggiornamento prezzi particolari da file esterno
COGO49 ~750 Calcolo prezzi medi cereali con analisi
COGO50 ~700 Visualizzazione dettaglio analitico prezzi medi
COGO51 ~650 Visualizzazione situazione contratti fornitori
COGO92 ~500 Esportazione ordine fornitore FarmStore

4.6 Distribuzione

Programma Righe Descrizione
COGF18 ~500 Visualizzazione rating per cliente
COGF20 ~600 Gestione tabella date di fatturazione

5. Architettura dati

Schema logico

CAPTESOR (Testata contratto - torc-*)
  Chiave: torc-tipo(C/F) / torc-anno / torc-ser / torc-numero / torc-progr(0-9)
  Campi: clifor, agenzia, date decorrenza/scadenza, codici pagamento,
         mediatore, fl-quote(S/N/M), fl-assicurato, chiu(C=chiuso),
         valuni(A=multipla/C=singola), cessionario, triangolazione
  Audit: ope, data-ope, prog-ope (programma creatore)

CAPRIGOR (Righe contratto - rorc-*)
  Chiave: tipo/anno/ser/numero/progr/rig-pro
  Campi: merce(gru/sot/cod), qtaord, qtacons, prezzo, provvigione

CAPCONOR (Consegne pianificate - corc-*)
  Chiave: flag(O) / agenzia / anno / tipo / numero / progr
  Campi: data ordine, data consegna, merce, qta, prezzo,
         vettore, causale, destinazione, link a contratto (corc-o-*)
  Link: contratto (torc-chia) + riga (rorc-merce)

CAPQUOTE (Quote scadenzate - quo-*)
  Chiave: quo-id (seq 12 digit), quo-torc-chia
  Campi: merce, data, quantita', tipo(V=vendita)

CAPDESOR (Dati aggiuntivi - dorc-*)
  Chiave: tipo/anno/ser/numero/progr/pro
  pro=0: dati cereali (conferimento, centro ritiro, ettari)
  pro=1: dati Agricenter (premio, acconto)
  tipo='D': destinazione diversa
  tipo='N': note consegna

CAPGENER (Link generici - gnrc-*)
  Chiave: tip/parte-1/parte-2/prog
  tip="CO": link contratto → OP/XML
  tip="PO": link consegna → fattura prefinanziata
  tip="OT": link bolla carico terzi

CAPSTOOR (Storico consegne - sto-*)
  Traccia variazioni nel tempo per tracking consegnato

Relazioni chiave

CAPTESOR (contratto)
    |--- 1:N ---> CAPRIGOR (righe articoli)
    |--- 1:N ---> CAPQUOTE (quote scadenzate)
    |--- 1:N ---> CAPDESOR (dati aggiuntivi)
    |--- 1:N ---> CAPCONOR (consegne pianificate)
    |--- 0:N ---> CAPGENER (link esterni OP/XML)
    |
CAPCONOR (consegna)
    |--- N:1 ---> CAPTESOR (contratto riferimento)
    |--- N:1 ---> CAPRIGOR (riga merce)
    |--- 0:N ---> CAPTESBO (DDT generato, fase successiva)
    |--- 0:1 ---> CAPGENER (fattura prefinanziata)
    |--- 0:N ---> CAPORDTS/CAPORDDT (tracking evaso)

6. File principali modulo Ordini

File Prefisso Descrizione
CAPTESOR torc- Testata contratti/ordini clienti e fornitori
CAPRIGOR rorc- Righe contratti (articoli, qta, prezzi)
CAPCONOR corc- Consegne pianificate (ordini operativi)
CAPQUOTE quo- Quote scadenzate (programmazione consegne)
CAPDESOR dorc- Dati aggiuntivi (cereali, Agricenter, destinazioni)
CAPGENER gnrc- Link generici (OP, XML, fatture prefinanziate)
CAPSTOOR sto- Storico consegne (variazioni)
CAPMAGAZ magc- Magazzini/agenzie
CAPFIDO fidc- Fido clienti
CAPLOGFD lfd- Log fido storico
CAPANPAR anpa- Anagrafica patentini antiparassitari
CAPSLMAG slm- Saldi magazzino (qta impegnata)
CAPBUOTR buot- Buoni di trasporto (CAP Reggio)
CAPSCOCL - Associazioni custom SKU (pacchetti)
CAPORDTS - Tracking qta evasa ordini
CAPORDDT ord- Link ordini-DDT
COGRACTIC rtm- Sconti per classe merce (CAP Piacenza)
COGSCOCF scf- Sconti fornitori per classe
COGPREOR porc- Prezzi particolari per contratto
COGCNDCF - Condizioni clienti (bonus BF/BV/XF)

7. Tabella riepilogativa

Programma Righe Area Complessita'
COGO05 2.694 Contratti clienti Media
COGO10 3.235 Contratti clienti Alta
COGO20 1.735 Contratti clienti Media
COGO45 981 Chiusura contratti Bassa
COGO16C 11.117 Consegne clienti Massima
COGO17C 6.725 Consegne clienti Alta
COGO55 2.396 Contratti fornitori Media
COGO60 2.695 Contratti fornitori Media
COGO16F 6.350 Consegne fornitori Alta
COGO17F 3.454 Consegne fornitori Media
41.382 10 programmi

Accessori censiti: 36 programmi, ~21.000 righe stimate