verifica di campo DATA
Moderatore: Moderatori
-
- Messaggi: 45
- Iscritto il: sabato 14 maggio 2005, 2:00
verifica di campo DATA
ciao a tutti
ho un problema con la verifica di un campo data:
devo richiedere che la data sia scritta così: 2005/09/29 (aaaa/mm/gg)
il menu per l'opzioni di verifica mi offre tale controllo (data dell'anno a 4 cifre) ma solo secondo la impostazione del mio computer che è 29/09/2005 (gg/mm/aaaa)
Come posso fare senza dover allestire campi separati per giorno, mese e anno?
Grazie a tutti per un aiuto
P.S. Pensavo a una verifica mediante formula, tipo:
Sinistra (CAMPO DATA;4) = numerico, ma non so come posso esprimere in formula la parola "numerico", forse con le funzioni
Intero (numero) e Lunghezza (testo) = 4 ??? 8O
ho un problema con la verifica di un campo data:
devo richiedere che la data sia scritta così: 2005/09/29 (aaaa/mm/gg)
il menu per l'opzioni di verifica mi offre tale controllo (data dell'anno a 4 cifre) ma solo secondo la impostazione del mio computer che è 29/09/2005 (gg/mm/aaaa)
Come posso fare senza dover allestire campi separati per giorno, mese e anno?
Grazie a tutti per un aiuto
P.S. Pensavo a una verifica mediante formula, tipo:
Sinistra (CAMPO DATA;4) = numerico, ma non so come posso esprimere in formula la parola "numerico", forse con le funzioni
Intero (numero) e Lunghezza (testo) = 4 ??? 8O
abbiate pazienza con i miei errori ... l'italiano e FM non sono la mia madrelingua
-
- Messaggi: 3616
- Iscritto il: sabato 7 febbraio 2004, 1:00
- Località: Roma
- Contatta:
Ciao, Idila
quando dici:
( in questo caso deve essere inserita in un campo testo)
oppure vuoi che comunque venga inserita la data, alla fine ti ritrovi la data scritta in quel modo ?
(in questo caso avrai bisogno di un campo calcolato con risultato testo)
Fammi sapere
quando dici:
intendi dire che l'utente deve inserire in quel modo la data ?devo richiedere che la data sia scritta così: 2005/09/29 (aaaa/mm/gg)
( in questo caso deve essere inserita in un campo testo)
oppure vuoi che comunque venga inserita la data, alla fine ti ritrovi la data scritta in quel modo ?
(in questo caso avrai bisogno di un campo calcolato con risultato testo)
Fammi sapere
Raybaudi FMP 12 Adv. Windows XP SP3
-
- Messaggi: 243
- Iscritto il: martedì 23 settembre 2003, 2:00
- Località: Buggiano (Pt)
- Contatta:
Effettivamente se vuoi creare una verifica per il campo data in modo che sia formattato in quel modo dovresti usare una cosa del genere nelle opzioni di verifica del campo (che come ti ha detto il mitico Raybaudi deve essere un campo testo):
Posizione( data; "/" ; 1; 1) = "5" and
Posizione( data; "/" ; 1; 2) = "8" and
Sinistra( TestoANumero(data) ; 4) > 1000 and
Mezzo( TestoANumero(data) ; 5; 2) >= 1 and
Mezzo( TestoANumero(data) ; 5; 2) <= 12 and
Destra( TestoANumero(data) ; 2) >= 1 and
Destra( TestoANumero(data) ; 2) <= 31 and
Lunghezza (data) = 10
Comunque rimarrebbero dei problemi per verificare che quaòcuno non inserisca che so' ... il 31 febbraio e allora dovresti farti un altro campo calcolato con risultato data tipo:
TestoAData(Destra( data; 2) &"/" & Mezzo( data; 6; 2) &"/" & Sinistra( TestoANumero(data); 4))
dopodiche' devi trovare una "scusa" per controllarlo (non credo che i campi calcolati abbiano opzioni di verifica) o usare un plug in che ti verifica la data calcolata all' uscita dal campo data che viene inserito manualmente (ce ne dovrebbe essere anche uno free)
Posizione( data; "/" ; 1; 1) = "5" and
Posizione( data; "/" ; 1; 2) = "8" and
Sinistra( TestoANumero(data) ; 4) > 1000 and
Mezzo( TestoANumero(data) ; 5; 2) >= 1 and
Mezzo( TestoANumero(data) ; 5; 2) <= 12 and
Destra( TestoANumero(data) ; 2) >= 1 and
Destra( TestoANumero(data) ; 2) <= 31 and
Lunghezza (data) = 10
Comunque rimarrebbero dei problemi per verificare che quaòcuno non inserisca che so' ... il 31 febbraio e allora dovresti farti un altro campo calcolato con risultato data tipo:
TestoAData(Destra( data; 2) &"/" & Mezzo( data; 6; 2) &"/" & Sinistra( TestoANumero(data); 4))
dopodiche' devi trovare una "scusa" per controllarlo (non credo che i campi calcolati abbiano opzioni di verifica) o usare un plug in che ti verifica la data calcolata all' uscita dal campo data che viene inserito manualmente (ce ne dovrebbe essere anche uno free)
- PMP 8.5 Adv Win -
-
- Messaggi: 45
- Iscritto il: sabato 14 maggio 2005, 2:00
sì ...raybaudi ha scritto:intendi dire che l'utente deve inserire in quel modo la data ?
sì 8O wauuu, capisco, penso sempre che in un software come FM ci debbano essere opzioni con vie più "brevi", ma vedo che alla fine ci vogliono sempre le "solite" formule da liceoSuperb ha scritto:dovresti usare una cosa del genere ...
faccio così ...
siete tutti e due mitici grazie!!!!
no, i campi calcolati non si possono far verificare (purtroppo), almeno non attraverso il menu
per un plug in mi informerò, so dove ... grazie
abbiate pazienza con i miei errori ... l'italiano e FM non sono la mia madrelingua
-
- Messaggi: 243
- Iscritto il: martedì 23 settembre 2003, 2:00
- Località: Buggiano (Pt)
- Contatta:
-
- Messaggi: 3616
- Iscritto il: sabato 7 febbraio 2004, 1:00
- Località: Roma
- Contatta:
Ciao, Idila
lascia perdere i plugin !
FM7/8 consente di fare cose che il vecchio, caro FM6 non poteva fare !
Allora, l'utente deve inserire la data in quel modo (barbaro) e gliela lasciamo inserire in un normale campo testo: dataIdila
Poi definiamo un nuovo campo data: ControlloDataIdila (non calcolato), ma con calcolo proposto sostituisce valore esistente:
Destra( dataIdila; 2) &"/" & Mezzo( dataIdila; 6; 2) &"/" & Sinistra( dataIdila; 4)
Nelle opzioni di verifica di questo campo spuntiamo:
1) solo durante immissione dei dati
2) togliamo il flag al consenso all'utente di ignorare gli avvisi
3) tipo di dati restrittivo: data dell'anno a quattro cifre
4) verificato mediante calcolo e calcolo: EValido ( ControlloDataIdila )
5) visualizza messaggio personalizzato se la verifica fallisce:
"La data non è stata inserita correttamente !
Deve essere una data valida nel formato: AAAA/MM/GG"
Nota: quest'ultimo campo può (te lo consiglio) non essere presente nel formato !
Alla prossima
lascia perdere i plugin !
FM7/8 consente di fare cose che il vecchio, caro FM6 non poteva fare !
Allora, l'utente deve inserire la data in quel modo (barbaro) e gliela lasciamo inserire in un normale campo testo: dataIdila
Poi definiamo un nuovo campo data: ControlloDataIdila (non calcolato), ma con calcolo proposto sostituisce valore esistente:
Destra( dataIdila; 2) &"/" & Mezzo( dataIdila; 6; 2) &"/" & Sinistra( dataIdila; 4)
Nelle opzioni di verifica di questo campo spuntiamo:
1) solo durante immissione dei dati
2) togliamo il flag al consenso all'utente di ignorare gli avvisi
3) tipo di dati restrittivo: data dell'anno a quattro cifre
4) verificato mediante calcolo e calcolo: EValido ( ControlloDataIdila )
5) visualizza messaggio personalizzato se la verifica fallisce:
"La data non è stata inserita correttamente !
Deve essere una data valida nel formato: AAAA/MM/GG"
Nota: quest'ultimo campo può (te lo consiglio) non essere presente nel formato !
Alla prossima
Raybaudi FMP 12 Adv. Windows XP SP3
-
- Messaggi: 45
- Iscritto il: sabato 14 maggio 2005, 2:00
... letto solo adesso avevo pensato a una soluzione come la tua, ma mi viene sempre il dubbio di non sfruttare possibilità più opportune e mi forzo di trovare formule e opzioni più complicate
grazie per l'ottima spiegazione, mi pare la soluzione migliore, cosi l'utente non deve correggere o leggere messaggi personalizzati e altre cose complicate.
grazie per l'ottima spiegazione, mi pare la soluzione migliore, cosi l'utente non deve correggere o leggere messaggi personalizzati e altre cose complicate.
abbiate pazienza con i miei errori ... l'italiano e FM non sono la mia madrelingua
-
- Messaggi: 45
- Iscritto il: sabato 14 maggio 2005, 2:00
ripesco il mio vecchio topic perchè ho nuovi dubbi relativi al controllo di una data ed altre cose ...
spero che trovate la pazienza per rispondermi ancora
Superp aveva proposto (sopra) questa funzione: TestoANumero(data)
da me (FM7) non esiste TestoANumero e non viene accettata
e non trovo niente di simile, a che cosa potrebbe corrispondere?
lo chiedo perché suppongo che si tratti della possibilità di controllo di caratteri numerici
non mi serve per il problema esposto sopra, funziona anche con la funzione RicavaComeNumero in sostituzione di TestoANumero
ma forse sarebbe opportuno per un campo di data storica come per
esempio: 4 d.C.
le sigle obbligatorie d.C. oppure a.C. riesco già a controllare
per il controllo delle cifre uso per adesso Sinistra (Posizione) e
Filtro (data; "abcd ... ecc.") = ""
faccio bene o c'è un modo più coretto come per esempio con una funzione che controlla caratteri numerici (e che non trovo)?
P.S. alla fine ho applicato la formula proposta da Superp semplicemente per evitare la creazione di "sottocampi" visto che ne ho già oltre 250 nella stessa tabella (burocrazia italiana) ... funziona perfettamente
la soluzione proposta da raybaudi invece mi riservo ai casi irrisolvibili altrimenti, una soluzione davvero galante, p.e. per poter realizzare un doppio controllo che OPZIONI CAMPO mi pare non permetta (calcolo + lista valori se un certo risultato), ma lo devo ancora fare ...
spero che trovate la pazienza per rispondermi ancora
Superp aveva proposto (sopra) questa funzione: TestoANumero(data)
da me (FM7) non esiste TestoANumero e non viene accettata
e non trovo niente di simile, a che cosa potrebbe corrispondere?
lo chiedo perché suppongo che si tratti della possibilità di controllo di caratteri numerici
non mi serve per il problema esposto sopra, funziona anche con la funzione RicavaComeNumero in sostituzione di TestoANumero
ma forse sarebbe opportuno per un campo di data storica come per
esempio: 4 d.C.
le sigle obbligatorie d.C. oppure a.C. riesco già a controllare
per il controllo delle cifre uso per adesso Sinistra (Posizione) e
Filtro (data; "abcd ... ecc.") = ""
faccio bene o c'è un modo più coretto come per esempio con una funzione che controlla caratteri numerici (e che non trovo)?
P.S. alla fine ho applicato la formula proposta da Superp semplicemente per evitare la creazione di "sottocampi" visto che ne ho già oltre 250 nella stessa tabella (burocrazia italiana) ... funziona perfettamente
la soluzione proposta da raybaudi invece mi riservo ai casi irrisolvibili altrimenti, una soluzione davvero galante, p.e. per poter realizzare un doppio controllo che OPZIONI CAMPO mi pare non permetta (calcolo + lista valori se un certo risultato), ma lo devo ancora fare ...
abbiate pazienza con i miei errori ... l'italiano e FM non sono la mia madrelingua
-
- Messaggi: 5
- Iscritto il: lunedì 22 agosto 2005, 2:00
RicavaComeNumero in sostituzione di TestoANumero...
Ciao Idila!
Credo che tu abbia ragione! Ma utilizzo FM in inglese ed, in questo caso sarebbe GetAsNumber(text).
Per il resto... non so! Sono molto "junior" con 'sto coso!
ciao ciao
gianca
Credo che tu abbia ragione! Ma utilizzo FM in inglese ed, in questo caso sarebbe GetAsNumber(text).
Per il resto... non so! Sono molto "junior" con 'sto coso!
ciao ciao
gianca
-
- Messaggi: 45
- Iscritto il: sabato 14 maggio 2005, 2:00
grazie gmaritano,
sapendo che una capacità utilissima di FM è tradurre i comandi "stranieri" nella lingua del Software FM installato, ho inserito GetasNumber nel calcolo:
FM lo ha accettato e trasformato automaticamente in: RicavaComeNumero
perciò alla fine ho fatto istintivamente bene
(ops, non è che sto diventando un genio FM ........ nono, purtroppo non c'è nessun pericolo)
se qualcuno sappia un'altra funzione tipo: "Controlla che siano tutti numeri"
sarei sempre contenta di un consiglio ...
sapendo che una capacità utilissima di FM è tradurre i comandi "stranieri" nella lingua del Software FM installato, ho inserito GetasNumber nel calcolo:
FM lo ha accettato e trasformato automaticamente in: RicavaComeNumero
perciò alla fine ho fatto istintivamente bene
(ops, non è che sto diventando un genio FM ........ nono, purtroppo non c'è nessun pericolo)
se qualcuno sappia un'altra funzione tipo: "Controlla che siano tutti numeri"
sarei sempre contenta di un consiglio ...
abbiate pazienza con i miei errori ... l'italiano e FM non sono la mia madrelingua