Invertire una data

Supponiamo che, in una procedura di SRP, si debba elaborare un documento su cui compare una data “invertita” rispetto
al formato italiano, ossia nella forma aaaa/mm/gg; ad esempio

2020/04/23

e che si voglia o si debba trasformarla nel formato gg/mm/aaaa

23/04/2020

nella fase di importazione avremo una variabile privata (rossa) DATA, che conterrà il testo catturato dal documento: 2020/04/23

VariabilePrivataData

normalmente la variabile pubblica (verde) DATA prende il valore dalla variabile privata DATA; in questo caso però conviene
procedere in altro modo; per invertire la data dobbiamo catturare i singoli componenti della data stessa, ossia giorno, mese e anno e
poi ricomporre la data nell’ordine voluto; per questo utilizziamo delle variabili pubbliche GG, MM, AAAA valorizzate con funzioni vbscript

creiamo la variabile pubblica GG

CreaNuovaVarPubblica

la nuova variabile pubblica , a cui assegniamo nome GG, prende il suo valore iniziale dalla variabile privata DATA

CreaGG

ripetiamo il procedimento per le altre due variabili

GG MM AAAA

il giorno è contenuto negli ultimi due caratteri a destra della data, quindi applichiamo la funzione vbscript Right(“%%”,2):

RightPerGG

per sicurezza verfichiamo il risultato con l’apposito pulsante, come da figura qui sopra

con procedimento analogo ripetiamo per la cattura del mese e dell’anno;

l’anno è contenuto nei primi 4 caratteri a sinistra, quindi useremo Left(“%%”,4);

il mese è contenuto in mezzo a partire dalla posizione 6 e è lungo 2 caratteri, quindi Mid(“%%”,6,2)

MidPerMM

adesso che abbiamo i valori che ci servono, possiamo ricombinarli per formare la data nel formato voluto

selezionare la variabile pubblica DATA e eliminare il contenuto attuale (la variabile privata DATA) con l’appositoi pulsante

EliminareDATA

poi comporre la data come segue

DataComposta

vedi

Esempio di Replace()

Trasformazione delle date