ASNS21 - Ricerca dati tecnico¶
Posizione nel menu Programma non a menu Linkage section
| Tipo | Dato | Formato | Contenuto |
|---|---|---|---|
| INPUT | ASNS21-OPE | x(20) | Vedi argomenti successivi |
| ASNS21-TECNICO | 9(10) | Codice tecnico da elaborare | |
| ASNS21-DATA | data | Data su cui effettuare la ricerca | |
| OUTPUT | ASNS21-DIPENDENTE-DI | 9(05) | Codice fornitore di cui è dipendente |
| ASNS21-DISTACCATO-A | 9(05) | Codice fornitore su cui è distaccato | |
| ASNS21-FL-AFFIANCAMENTO | x(01) | Se vale "S" indica che il tecnico è in affiancamento | |
| ASNS21-FL-COTTIMISTA | x(01) | Se vale "S" indica che il tecnico è un cottimista | |
| ASNS21-FOR-LISTINO | 9(05) | Codice fornitore su cui effettuare la ricerca del listino e dei costi | |
| ASNS21-VAL | x(01) | Se vale "C", il tecnico è cancellato logicamente per il periodo indicato | |
| FILLER | x(500) |
Logica generale Lo scopo principale del programma è di estrarre alcune informazioni relative al tecnico dai dati storici. In assenza di dati storici il programma effettuerà la valorizzazione delle informazioni in modo standard. Il programma dovrà essere strutturato per effettuare le operazioni comuni solo al primo accesso (apertura files, configurazioni, ecc). Configurazioni
| Gruppo | Parametro | Note |
|---|---|---|
Elaborazione L'elaborazione cambia a seconda dell'operazione richiesta.
Operazione: CERCA¶
Descrizione Riceve in input le variabili necessarie e restituisce area tecnica/responsabile trovato. Chiamata standard
| Dato | Contenuto |
|---|---|
| ASNS21-OPE | "CERCA" |
| ASNS21-TECNICO | Codice tecnico da elaborare |
| ASNS21-DATA | Data su cui effettuare la ricerca |
Elaborazione Inizializzare i campi di output. A.1 Verifica se c'è la gestione storica. I dati storici sono memorizzati su COGTECST. Effettuare una prima ricerca, attraverso la chiave primaria, per verificare se esiste almeno un record sulla tabella COGTECST per il tecnico. Se non esiste, significa che il tecnico è gestito nel modo tradizionale, senza periodi storici; quindi: * Cercare il record "contatto" del tecnico su COGRIFER * restituire i dati di default:
| Dato | Contenuto |
|---|---|
| ASNS21-DIPENDENTE-DI | RIF-ANA-COD |
| ASNS21-DISTACCATO-A | RIF-ANA-COD |
| ASNS21-FL-AFFIANCAMENTO | "N" |
| ASNS21-FL-COTTIMISTA | "N" |
| ASNS21-FOR-LISTINO | RIF-ANA-COD |
| ASNS21-VAL | " " |
e uscire A.2 Ricerca del periodo storico di competenza. A questo punto è necessario cercare il record di competenza del periodo: effettuare una start all'indietro su COGTECST.TCS-CHIA2 impostando:
| Dato | Contenuto |
|---|---|
| TCS-RIF-TIP | "C" |
| TCS-RIF-COD | ASNS21-TECNICO |
| TCD-DATA-DA | ASNS21-DATA |
a questo punto si possono verificare le seguenti situazioni: * Non esiste nessun record con data inizio precedente: A.3.1 * E' stato trovato l'ultimo record con data inizio precedente; quindi, se: * TCS-DATA-A < ASNS21-DATA: il periodo precedente è "chiuso", quindi è ipotizzabile che il tecnico abbia cessato la collaborazione: A.3.1 * TCS-DATA-A >= ASNS21-DATA: il periodo precedente è quello valido: A.3.2 A.3.1 Tecnico cessato nel periodo. Restituire al programma chiamante:
| Dato | Contenuto |
|---|---|
| ASNS21-DIPENDENTE-DI | 0 |
| ASNS21-DISTACCATO-SU | 0 |
| ASNS21-FL-AFFIANCAMENTO | "N" |
| ASNS21-FL-COTTIMISTA | "N" |
| ASNS21-FOR-LISTINO | 0 |
| ASNS21-VAL | "C" |
A.3.2 Tecnico in forza nel periodo. Il record trovato conterrà i dati storici del periodo. Restituire al programma chiamante:
| Dato | Contenuto |
|---|---|
| ASNS21-DIPENDENTE-DI | TCS-DIPENDENTE-DI |
| ASNS21-DISTACCATO-A | TCS-DISTACCATO-A |
| ASNS21-FL-AFFIANCAMENTO | TCS-FL-AFFIANCATO |
| ASNS21-FL-COTTIMISTA | TCS-FL-AFFIANCATO |
| ASNS21-FOR-LISTINO | Se TCS-DISTACCATO-A |
| ASNS21-VAL | " " |
Estratto da documentazione interna ClickUp