Vai al contenuto

OSK004 — Verifica/aggiorna righe tariffe contratti (ASNCNTAR)

Sorgente: cbl/osk004.cbl | Tipo: Programma interattivo / tool di bonifica | Program-ID: OSK004

Menu: Programma non a menu — tool tecnico/verticalizzazione OSK, lanciato manualmente


Scopo

Tool di bonifica per verificare e riallineare le righe tariffa dei contratti (ASNCNTAR) i cui importi siano stati alterati da un rinnovo errato (vedi ASN051, TASK-5330).

Importa un file (CSV/TXT/XLS/XLSX) con i prezzi "corretti" dei canoni per matricola/CMA, individua per ogni riga il contratto e la riga tariffa corrispondente e segnala (e, se non in prova, aggiorna) gli importi che differiscono da quelli del file. Produce un file di segnalazioni apribile a fine elaborazione.


Colonne attese nel file di import

Il primo record del file deve contenere gli identificativi di colonna (case-insensitive). Colonne obbligatorie:

Identificativo Variabile Descrizione
ACNT-MTR-SN td-acnt-mtr-sn Serial number matricola (risolto in amtr-id via ASNMATRI k02)
ACNT-CMA td-acnt-cma Codice CMA della prestazione (verificato su COGRACMC)
ACNT-IMPORTO-CANONE td-acnt-importo Importo canone atteso da confrontare con acnr-prezzo

Un valore #@# forza l'azzeramento del campo; un prefisso '!' viene rimosso dal dato.


File acceduti

File/Tabella Copybook Modalita' Uso
ASNMATRI asnmatri (k02) lettura Risoluzione serial number -> id matricola
ASNCNMTR asncnmtr (k02) lettura Matricola -> contratto (acnc-id-contratto)
ASNCNTAR asncntar I-O Righe tariffa contratto: confronto/aggiornamento acnr-prezzo
ASNCNTES asncntes lettura Validazione contratti "Da"/"A"
COGRACMC cogracmc (k02) lettura Codifica CMA / collegamento prestazione-merce
cogseque / cogexprt / cogrisul (file di lavoro sequenziali) I/O File di import, export e segnalazioni
cogtrans cogtrans.k01 I-O File di transito/lock per operatore

Flusso di elaborazione (importazione)

  1. a1-carica-campi — legge la riga di intestazione del file e costruisce la tabella colonne (tab-campi); verifica la presenza delle tre colonne obbligatorie.
  2. b-importa / b1-carica-delimitato — scandisce ogni record, isola i campi delimitati e popola tab-dati. Per ACNT-MTR-SN risolve l'id matricola; per ACNT-CMA verifica la codifica.
  3. b1-validazioni-incrociate — dalla matricola risale al contratto (ASNCNMTR), applica i filtri "Da/A contratto" e cerca su ASNCNTAR (pertinenza "C") la riga tariffa la cui merce coincide con quella del CMA (rcm-merce). Se l'importo della riga tariffa (acnr-prezzo) differisce da quello del file (td-acnt-importo):
  4. viene scritta una segnalazione nel file risultati;
  5. se non in elaborazione di prova (tm-test = "N"), viene assegnato td-acnt-importo ad acnr-prezzo e riscritta la riga (rwr-asncntar).

Le segnalazioni (matricola non trovata, contratto non trovato, CMA non codificato, CMA non presente sulle tariffe del contratto, prezzo divergente) vengono accodate al file risultati osk004.txt, proposto in apertura a fine elaborazione.


Maschera (filtri principali)

Campo Variabile Descrizione
Operazione tm-ope "I" = importa/verifica (l'esportazione e' disabilitata)
Da/A contratto tm-contra-da / tm-contra-a Intervallo id contratto da elaborare
File da importare tm-file Selezionabile con F7 (C$OPENSAVEBOX)
Elaborazione di prova tm-test "S" = solo segnalazioni, nessun aggiornamento

Configurazioni (x99-load-config)

Gruppo Chiave Variabile
cogesys delimitatore-colonne-excel tm-cfg-delimiter
ricegenera ricerca-upper tm-cfg-upper
ass-strum merce-matricola-default tm-cfg-merce-def
ass-contr modo-programmazione tm-cfg-modo-programmazione

Note

  • L'esportazione (tm-ope = "E") e' presente nel codice ma disabilitata (x-controlla-tm-ope rifiuta l'operazione).
  • E' il complemento di bonifica di ASN051: mentre la correzione TASK-5330 in ASN051 impedisce nuovi errori in fase di rinnovo, OSK004 riallinea i contratti gia' corrotti partendo dai prezzi corretti forniti su file.

Casistica problemi noti

Rinnovo contratti OSK: riallineamento tariffe disallineate

  • Sintomo: Dopo rinnovi errati, le righe tariffa (ASNCNTAR) di contratti OSK risultavano disallineate rispetto agli importi originali.
  • Causa: In ASN051 la rilettura delle righe tariffa usava il contatore sequenziale di ciclo come progressivo; sui contratti OSK i progressivi non sono sequenziali, quindi la riscrittura sovrascriveva importi su righe errate.
  • Correzione: OSK004, partendo dal file IMPCNADB, verifica e riallinea le righe tariffe con importi diversi sui contratti gia' corrotti; la correzione preventiva e' in ASN051 (salvataggio progressivo originale e riscrittura solo con indice ISTAT diverso da zero).
  • Riferimento: dettaglioClickUp 869dn6b7j