GESDATE - Funzioni su date¶
Posizione nel menu Programma non a menu Linkage section
| Tipo | Dato | Formato | Contenuto |
|---|---|---|---|
| INPUT | GESDATE-OPE | x(20) | Vedi argomenti successivi |
| GESDATE-DATA-IN | 9(08) | Data di input | |
| I/O | GESDATE-DATA-CFR | 9(08) | Data di confronto |
| GESDATE-GIORNI | s9(08) | Numero giorni con cui eseguire un calcolo | |
| GESDATE-STRING | x(40) | Stringa di output, dipende dall'operazione | |
| OUTPUT | GESDATE-DATA-OUT | 9(08) | Data di output |
| OUTPUT | GESDATE-GIORNO-SETTIMANA-N | 9(01) | Contiene il numero di giorno della settimana (1..7) relativamente a GESDATE-DATA-OUT (1=Lunedi) |
| GESDATE-GIORNO-SETTIMANA-X | x(15) | Contiene il di giorno della settimana in chiaro relativamente a GESDATE-DATA-OUT | |
| GESDATE-SETTIMANA-MESE | 9(01) | Contiene il numero di della settimana nel mese relativamente a GESDATE-DATA-OUT, tenendo conto che |
|
| GESDATE-SETTIMANA-ANNO | 9(02) | Contiene il numero di della settimana nell'anno relativamente a GESDATE-DATA-OUT, tenendo conto che |
|
| GESDATE-FESTA | x(01) | Conterrà "S" se il giorno è festivo | |
| FILLER | x(432) |
Logica generale Raccolta di funzioni di utilità su date Maschera del programma Nessuna maschera. Elaborazione L'elaborazione cambia a seconda dell'operazione richiesta.
Operazione: CERCA-FINE-MESE¶
Descrizione Ricerca il giorno di fine mese della data in input GESDATE-DATA-IN e lo restituisce in GESDATE-DATA-OUT Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "CERCA-FINE-MESE" |
| GESDATE-DATA-IN | Data su cui cercare la fine mese | |
| OUTPUT | GESDATE-DATA-OUT | Data "fine mese" trovata |
| GESDATE-GIORNO-SETTIMANA-N | Contiene il numero di giorno della settimana (1..7) relativamente a GESDATE-DATA-OUT (1=Lunedi) | |
| GESDATE-GIORNO-SETTIMANA-X | Contiene il di giorno della settimana in chiaro relativamente a GESDATE-DATA-OUT | |
| GESDATE-SETTIMANA-MESE | Contiene il numero di della settimana nel mese relativamente a GESDATE-DATA-OUT, tenendo conto che |
|
| GESDATE-SETTIMANA-ANNO | Contiene il numero di della settimana nell'anno relativamente a GESDATE-DATA-OUT, tenendo conto che |
Operazione: TOGLI-PERIODO¶
Descrizione Restituisce in GESDATE-DATA-CFG una data che è il risultato di (GESDATE-DATA-IN - GESDATE-STRING) GESDATE-STRING in questo contesto conterrà un periodo, formattato come definito nella configurazione limite-pulizia. Da questo periodo si ottiene un numero di giorni che verrà sottratto a GESDATE-DATA-IN. Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "TOGLI-PERIODO" |
| GESDATE-DATA-IN | Data di partenza | |
| GESDATE-STRING | Stringa contenente il periodo da togliere | |
| OUTPUT | GESDATE-DATA-OUT | Data calcolata |
Elaborazione Come prima cosa calcola un numero di giorni analizzando la stringa GESDATE-STRING. Se non è presente una stringa valida la data restituita sarà = 0 Poi ottenuto il numero di giorni, effettua Operazione: SOMMA-GIORNI
Operazione: DES-MESE¶
Descrizione Restituisce in GESDATE-STRING la descrizione del mese presente in GESDATE-DATA-IN Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "DES-MESE" |
| GESDATE-DATA-IN | Data su cui cercare la descrizione del mese | |
| OUTPUT | GESDATE-STRING | Descrizione del mese trovata |
Operazione: GIORNI-PERIODO¶
Descrizione Restituisce in GESDATE-GIORNI il numero di giorni compresi tra GESDATE-DATA-IN e GESDATE-DATA-CFR Rispetto a DIFFERENZA-DATE, questa funzione calcola la differenza relativa: quindi il risultato è sempre positivo. Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "GIORNI-PERIODO" |
| GESDATE-DATA-IN | Data di partenza | |
| GESDATE-DATA-CFR | Data con cui confrontare la data di partenza | |
| OUTPUT | GESDATE-GIORNI | Numero di giorni trovati tra le due date |
NB: * Il numero di giorni restituiti è sempre positivo anche se la data maggiore è la prima * Gli estremi sono sempre compresi; ad esempio: * Tra 01/01/2013 e 15/01/2013 -> 16 giorni * Tra 14/01/2013 e 15/01/2013 -> 2 giorni * Tra 15/01/2013 e 15/01/2013 -> 1 giorni * Tra 20/01/2013 e 15/01/2013 -> 6 giorni
Operazione: GIORNI-PERIODO-MESE¶
Descrizione Restituisce in GESDATE-GIORNI il numero di giorni compresi tra GESDATE-DATA-IN e GESDATE-DATA-CFR Simile a GIORNI-PERIODO, ma se il periodo è in "mesi interi", il numero di giorni viene normalizzato in multipli di 30 giorni. Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "GIORNI-PERIODO-MESE" |
| GESDATE-DATA-IN | Data di partenza | |
| GESDATE-DATA-CFR | Data con cui confrontare la data di partenza | |
| OUTPUT | GESDATE-GIORNI | Numero di giorni trovati tra le due date |
NB: * Il numero di giorni restituiti è sempre positivo anche se la data maggiore è la prima * Gli estremi sono sempre compresi; ad esempio: * Tra 01/01/2013 e 15/01/2013 -> 16 giorni * Tra 14/01/2013 e 15/01/2013 -> 2 giorni * Tra 15/01/2013 e 15/01/2013 -> 1 giorni * Tra 20/01/2013 e 15/01/2013 -> 6 giorni * Se il periodo è di mesi interi, normalizzo in multipli di 30 giorni; ad esempio: * Tra 01/01/2013 e 31/01/2013 -> 30 giorni * Tra 01/02/2013 e 28/02/2013 -> 30 giorni * Tra 01/01/2013 e 31/12/2013 -> 360 giorni * Tra 01/12/2013 e 31/01/2024 -> 60 giorni
Operazione: DIFFERENZA-DATE¶
Descrizione Restituisce in GESDATE-GIORNI il numero di giorni compresi tra GESDATE-DATA-IN e GESDATE-DATA-CFR (anche se negativa) Rispetto a GIORNI-PERIODO, questa funzione calcola la differenza assoluta: quindi se la data di inizio è maggiore, il numero di giorni sarà negativo. Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "DIFFERENZA-DATE" |
| GESDATE-DATA-IN | Data di partenza | |
| GESDATE-DATA-CFR | Data con cui confrontare la data di partenza | |
| OUTPUT | GESDATE-GIORNI | Numero di giorni trovati tra le due date |
NB: * In questa funzione il calcolo è una semplice differenza tra le due date: * Tra 01/01/2013 e 15/01/2013 -> -14 giorni * Tra 14/01/2013 e 15/01/2013 -> -1 giorni * Tra 15/01/2013 e 15/01/2013 -> 0 giorni * Tra 20/01/2013 e 15/01/2013 -> 5 giorni
Operazione: INFO-DATA¶
Descrizione Restituisco alcune informazioni relative alla data in output: * Il numero di giorno della settimana (1...7) * Il nome del giorno della settimana * Il numero della settimana del mese * Il numero della settimana dell'anno Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "INFO-DATA" |
| GESDATE-DATA-IN | Data da esaminare | |
| OUTPUT | GESDATE-GIORNO-SETTIMANA-N | Contiene il numero di giorno della settimana (1..7) relativamente a GESDATE-DATA-OUT (1=Lunedi) |
| GESDATE-GIORNO-SETTIMANA-X | Contiene il di giorno della settimana in chiaro relativamente a GESDATE-DATA-OUT | |
| GESDATE-SETTIMANA-MESE | Contiene il numero di della settimana nel mese relativamente a GESDATE-DATA-OUT, tenendo conto che |
|
| GESDATE-SETTIMANA-ANNO | Contiene il numero di della settimana nell'anno relativamente a GESDATE-DATA-OUT, tenendo conto che |
|
| GESDATE-FESTA | Conterrà "S" se il giorno è festivo |
Operazione: SOMMA-GIORNI¶
Descrizione Esegue il calcolo "GESDATE-DATA-IN + GESDATE-GIORNI" e restituisce il risultato in GESDATE-DATA-OUT Chiamata standard
| Tipo | Dato | Contenuto |
|---|---|---|
| INPUT | GESDATE-OPE | "SOMMA-GIORNI" |
| GESDATE-DATA-IN | Data di partenza | |
| GESDATE-GIORNI | Numero giorni da sommare (o da sottrarre se negativo) | |
| OUTPUT | GESDATE-DATA-OUT | Data risultante |
| GESDATE-GIORNO-SETTIMANA-N | Contiene il numero di giorno della settimana (1..7) relativamente a GESDATE-DATA-OUT (1=Lunedi) | |
| GESDATE-GIORNO-SETTIMANA-X | Contiene il di giorno della settimana in chiaro relativamente a GESDATE-DATA-OUT | |
| GESDATE-SETTIMANA-MESE | Contiene il numero di della settimana nel mese relativamente a GESDATE-DATA-OUT, tenendo conto che |
|
| GESDATE-SETTIMANA-ANNO | Contiene il numero di della settimana nell'anno relativamente a GESDATE-DATA-OUT, tenendo conto che |
Estratto da documentazione interna ClickUp