ASN075 - Gestione proposte contratto¶
Sorgente: cbl/asn075.cbl (7.325 righe) | Tipo: Programma interattivo con tab control e piu' griglie editabili
Menu: Assist 2.0 > Archivi > Contratti > Proposte contratti
Scopo¶
Gestisce le proposte di contratto di assistenza (contratti con acnt-fl-proposta = "S"): inserimento, modifica, cancellazione e, soprattutto, la conversione della proposta in contratto definitivo. Una proposta e' un contratto in cui, per ciascuna matricola candidata, sono indicati gli importi di canone per i vari modelli configurati (colonne dinamiche della griglia matricole); l'operatore marca le matricole "accettate" e, con F5, converte la proposta scegliendo il modello (ed eventualmente il modello "opzione") da applicare.
La maschera ha tre pagine (tab control): - TS1 — Testata: dati del contratto proposto (date, durata, cliente fatturazione/assistito, note, assicurazione, conferma rinnovo, tipo fatturazione). - RI2 — Matricole: griglia con una riga per matricola e le colonne di importo per ogni modello configurato; flag "accettata", importo assicurato. - RI4 — Interventi programmati: griglia delle prestazioni programmate (merce, cadenza, raggruppamento, mese/giorno inizio, numero interventi) usata per generare le chiamate del contratto.
Il tipo contratto della proposta e il tipo contratto finale sono fissati da configurazione. Il programma e' anche chiamabile (linkage util-asn075, asn075-in-contratto).
File acceduti¶
Input/lettura¶
| File | Copybook | Uso |
|---|---|---|
| ASNCNTES | acnt-rec |
Testata contratto/proposta. Numerazione id, lettura e riscrittura |
| ASNCNTIP | acnp-rec |
Tipo contratto (descrizione) |
| ASNCNMOD | acnm-rec |
Modelli contratto: colonne importo griglia, acnm-modo-proposta (P/O), acnm-tip-att |
| ASNCNCND | acnd-rec |
Condizioni contratto (pertinenza M/C): durata, priorita', tipo fatturazione, crea chiamate, pagamento, importo |
| ASNCNTAR | acnr-rec |
Tariffe standard del modello (pertinenza M) da travasare nel contratto (pertinenza C) |
| ASNMATRI / ASNMODEL | amtr-rec/amod-rec |
Anagrafica matricole e modelli (import matricole base, F7) |
| COGGEANA | ana-rec |
Cliente: pagamento (ana-rb/ana-pag1), privato, listino |
| COGCNDCF | cnd-rec |
Condizione "IA": IVA agevolata cliente |
| COGTABEL | euta-rec |
Tipo fatturazione causale bolla; assicurazioni (tipo "FE") |
| ASNPRMTR | aprt-rec |
Matricole della proposta con importi proposti per modello |
| ASNCNINT | acni-rec |
Interventi/prestazioni programmate del contratto |
| ASNCNDAG | acnn-rec |
Note aggiuntive contratto (tipo "I" interne, tipo "C" chiamate + oggetto) |
Output/scrittura¶
| File | Copybook | Scrittura |
|---|---|---|
| ASNCNTES | acnt-rec |
Testata proposta (fl-proposta "S"); in conversione fl-proposta "N", tipo/modello/rif-contratto/IVA agevolata definitivi |
| ASNCNDAG | acnn-rec |
Note interne (I) e note/oggetto chiamate (C) |
| ASNCNCND | acnd-rec |
Condizioni (durata, priorita', crea-chiamate, pagamento del cliente, importo) |
| ASNPRMTR | aprt-rec |
Matricole proposta (importi per modello, accettata, importo assicurato) — riscritte a ogni aggiornamento |
| ASNCNINT | acni-rec |
Prestazioni programmate (merce, raggruppamento, cadenza, inizio, n. interventi, somma anni, tipo attivita') |
| ASNCNMTR | acnc-rec |
(conversione) Matricole accettate come righe definitive del contratto: modello, rateo canone, valore assicurato |
| ASNCNMT2 | acnb-rec |
(conversione, PCASE-4281) Estensione matricole contratto |
| ASNCNOPZ | acno-rec |
(conversione) Opzioni aggiuntive: importo per modello principale e per modello opzione |
| ASNCNTAR | acnr-rec |
(conversione) Tariffe standard travasate dal modello al contratto (pertinenza C) |
File di appoggio¶
| File | Scopo |
|---|---|
| filseq (line sequential) | File sequenziale di appoggio (import/export) |
Chiavi secondarie¶
coggeana.k04,asnmatri.k02/k04,asnmodel.k02,cogtescm.k03
Copybook principali¶
Working-storage: k-u10, k-personal, k-tipi-cogtabel, l-copiaf, wgrave, wnscr, wopenf, wstato, cogazien, wgrid, utilgdad, utildlg, utilncnf, utils52, utils65, utils68, utilu10, utilu20, utilestrxls, opensave.def, utilasns02, utilasn069, utilasn220, utilasn200, utilasn044, utilasn050, utilasn016, utilasn053, utilgesdate.
Linkage: wcont, u-copiaf, utilasn080w, wcont1, utilasn075.
Fine procedure: grave, mmmask, opengen, stato, stato1, winmsg, chiavi, getdcont, asn075.prc.
Programmi chiamati¶
| Programma | Operazione | Scopo |
|---|---|---|
| ASN220 | ASN220-CALLED (proposta-contr = "S") |
F9: ricerca proposta contratto |
| ASN200 | F7 pagina matricole: import matricole base da anagrafica | |
| ASN044 | F8: lookup modello contratto (in conversione) | |
| ASN050 | (gestione piano fatturazione) | Dopo conversione: gestione scadenze/rate del contratto |
| ASN053 | Generazione interventi/chiamate programmate del contratto | |
| ASN080W | Stampa proposta contratto | |
| ASNS03 | Calcolo prezzo su listino/fascia (cancellata in chiusura) | |
| COGS65W | Lookup cliente fatturazione/assistito | |
| RNEWCONF | Lettura configurazioni (e modifica con F1) | |
| DIALOGS | Dialoghi di conferma (inserimento/modifica proposta, controllo prezzi, conversione) | |
| GESDATE | Calcoli su date |
Configurazioni RNEWCONF (x99-load-config, pac coge)¶
| Idx | Gruppo | Parametro | Variabile | Note |
|---|---|---|---|---|
| 01 | cogesys |
delimitatore-colonne-excel |
tm-cfg-delimiter |
Default ; |
| 02 | contatti |
posizione-invio-avviso-intervento |
tm-cfg-tipo-contatto-avviso |
|
| 03 | abilita |
areasms |
tm-cfg-abil-sms |
|
| 04 | crm-agenda |
colore int. selezione |
tm-cfg-color-drag |
|
| 05 | assist |
chiamate-programmate-provenienza |
tm-cfg-program-prov |
|
| 06-08 | ass-contr |
tipo-dossier / prefisso-id-dossier / generazione-dossier |
tm-cfg-dsr-*, tm-cfg-genera-dossier |
Dossier |
| 09-16 | ass-crm |
tipologia-contratti, info-acnt-* |
tm-cfg-tipo-scheda-crm, tm-cfg-info-* |
Integrazione scheda CRM (codice commentato) |
| 17 | ass-contr |
gg-soglia-rigenerazione-chiamate |
tm-cfg-gg-soglia |
|
| 18 | ass-contr |
genera-chiamate-antecedenti-data-sistema |
tm-cfg-crea-data-sistema |
|
| 19 | ass-chiam |
avviso-default |
tm-cfg-avviso-default |
|
| 20 | ass-contr |
tipo-contratto-proposte |
tm-cfg-tipo-contratto |
Tipo contratto della proposta (obbligatorio) |
| 21 | ass-contr |
tipo-contratto-da-proposte |
tm-cfg-tipo-contratto-finale |
Tipo contratto finale dopo conversione |
| 22 | commesse |
commessa-impianto |
tm-cfg-commessa-impianto |
|
| 23 | assist |
cau-vendita |
tm-cfg-cau-vendita |
Causale bolla per tipo fatturazione |
| 24 | ass-contr |
iva-agev-standard |
tm-cfg-iva-agev-standard |
IVA agevolata standard per clienti privati |
Logica di elaborazione¶
Caricamento colonne griglia¶
All'avvio scandisce ASNCNMOD per il tipo contratto proposte (tm-cfg-tipo-contratto), caricando fino a 10 modelli in tm-tab-modelli: ogni modello diventa una colonna di importo (x12-set-int definisce dinamicamente titoli/visibilita' via GRIDADMN).
Chiave e proposta dati¶
Accept id contratto (a-tm-id-contratto, F9 ASN220, F7 nuovo). In variazione (fl-vario = "V") proponi-dati popola la testata leggendo ASNCNTES/ASNCNCND/ASNCNDAG; carica-griglia-2 e carica-griglia-4 popolano le griglie matricole e interventi da ASNPRMTR e ASNCNINT. Non e' consentito gestire un contratto non in proposta (fl-proposta != "S").
Import matricole base (F7 su griglia matricole, imp-matricole-base)¶
Richiama ASN200 per importare in griglia le matricole base dell'anagrafica.
Aggiornamento proposta (F3, aggiornamenti)¶
In inserimento numera l'id (ASNCNTES in decrescente). Scrive/riscrive: ASNCNTES (con fl-proposta = "S"), ASNCNDAG (note I e C), ASNCNCND (condizioni). Cancella e riscrive tutte le righe ASNPRMTR della proposta (una per matricola × modello con importo non zero). Se "crea chiamate" e' attivo, cancella e riscrive le righe ASNCNINT dalla griglia interventi.
Conversione in contratto (F5, x5-conversione-in-contratto)¶
Disponibile solo in variazione. Verifica che almeno una matricola sia accettata, poi:
- Chiede tipo contratto finale (da config) e accetta il modello e l'eventuale modello opzione (F8 ASN044). Il modello deve avere
acnm-modo-proposta != "O", l'opzione!= "P". - Riscrive
ASNCNTES: tipo/modello finale,rif-contrattocomposto comeanno/id,fl-chiusospazio,fl-proposta = "N", tipo fatturazione da tabella causale, IVA agevolata (standard per privato o da condizione "IA"). - Per ogni matricola accettata somma gli importi delle colonne il cui modello coincide con il modello (o l'opzione) scelto, ottenendo
tm-acnd-importo(totale contratto), ilacnc-rateo-canonedi matricola e gli importi separati modello/opzione. ScriveASNCNMTR(righe definitive),ASNCNMT2. - Scrive
ASNCNOPZcon l'importo del modello e (se presente) dell'opzione. - Aggiorna
ASNCNCND: importo totale, condizioni di pagamento prese dal cliente (ana-rb/ana-pag1), priorita', crea-chiamate, tipo fatturazione. - Travasa le tariffe standard del modello (e dell'opzione) da
ASNCNTARpertinenza M a pertinenza C del contratto. - Se previste chiamate programmate: se ci sono prestazioni in griglia RI4 le usa, altrimenti le carica dal modello (
carica-griglia-4-ins); scriveASNCNINTe innesca ASN053 per generare le chiamate. - Se la proposta ha un contratto di origine (
acnt-id-origine), duplica le rate (x5-riproponi-rate).
Al termine propone la stampa (ASN080W) ed eventualmente la gestione piano fatturazione (ASN050).
Note implementative¶
- La generazione delle chiamate programmate non avviene per tipo fatturazione "a matricola" (
tm-tip-fatt = "M"). - Le condizioni di pagamento del contratto convertito sono forzate a quelle del cliente (
acnd-fl-forza-ana-rb = "S"), non del modello (scelta 211016). - Il contratto proposto chiuso/disdetto/gia' rinnovato e' aperto in sola visualizzazione (
flag-contratto-chiuso). - L'etichetta di menu ("Proposte contratti") coincide con la funzione reale.