VISUALIZZARE GLI ZERI
Moderatore: Moderatori
-
- Messaggi: 9700
- Iscritto il: lunedì 1 dicembre 2003, 1:00
- Località: Roma
- Contatta:
-
- Messaggi: 89
- Iscritto il: venerdì 22 giugno 2007, 2:00
- Versione FileMaker: 8.5
- Sistema operativo: WINDOWS 10
- Località: Cagliari
Allora, si tratta di stringhe di testo che rappresentano dei numeri.
Quindi xxyzz è un testo dal quale, quando y=1 o y= 6, devo poter estrarre xxy-1 (mantenendo eventualmente gli 0 iniziali, se ci sono) e zz+100, diversamente il risultato rimane xxy e zz.
In definitiva, la stringa 02648 deve potersi scindere in 025 e 148, mentre 02548 deve dare 025 e 48
Chiaro?
Quindi xxyzz è un testo dal quale, quando y=1 o y= 6, devo poter estrarre xxy-1 (mantenendo eventualmente gli 0 iniziali, se ci sono) e zz+100, diversamente il risultato rimane xxy e zz.
In definitiva, la stringa 02648 deve potersi scindere in 025 e 148, mentre 02548 deve dare 025 e 48
Chiaro?
FMP 8.5 Win XP SP2
-
- Messaggi: 9700
- Iscritto il: lunedì 1 dicembre 2003, 1:00
- Località: Roma
- Contatta:
-
- Messaggi: 9700
- Iscritto il: lunedì 1 dicembre 2003, 1:00
- Località: Roma
- Contatta:
-
- Messaggi: 1
- Iscritto il: giovedì 1 dicembre 2022, 2:47
- Versione FileMaker: 9
- Sistema operativo: mac os CAPITAN
Re: VISUALIZZARE GLI ZERI
credo forse di aver interpretato l’esigenza almeno dal mio puto di vista
magari non è la soluzione più elegante però nel mio piccolo funziona
dato che (confesso) io spesso io ho bisogno di generare codici con gli zeri davanti
banalmente perché qualsiasi nome di file o cartella diversamente non verrebbe correttamente ordinato
quindi ecco un esempio:
avevo un problema analogo con la necessità di un codice ordinabile alfanumericamente composto da
da le ultime due cifre dell’anno e il numero della settimana che andando da 1 a 53 ... altre "due cifre"
infatti se è vero che 43 esiste e 043 non esiste
è pur vero che
nel caso di
nona settimana del del 2024 il numero di settimana avrebbe prodotto 249 (3 cifre)
nel caso di
decima settimana del del 2024 avrebbe prodotto 2310 (4 cifre)
due codici che alfanumericamente non soddisfano l'ordinamento
quindi ho creato il campo che genera il codice nelle sua struttura primaria
Destra ( anno ; 2 ) & se & SettimanaAnno ( dataCalc )
dataCalc si chiama cosi perché nel mio caso è ricavata da cifre immesse in campi separati
ovvero
Data ( mese ; num_gio ; anno ) >risultato testo<
e ho risolto l’esigenza di avere lo zero da 0 a 9 e poi dopo il 10 fino a 53 ci pensa il risultato vuoto della funzione casi
Casi ( sett < 10 ; "0" ) >risultato testo<
vale per uno zero ma se per caso il codice avesse superato il centinaio avrei dovuto aggiungere due zeri a 001
poi la cosa si complica nel passaggio da 009 a 010
magari qualcuno qui ci può aiutare?
magari non è la soluzione più elegante però nel mio piccolo funziona
dato che (confesso) io spesso io ho bisogno di generare codici con gli zeri davanti
banalmente perché qualsiasi nome di file o cartella diversamente non verrebbe correttamente ordinato
quindi ecco un esempio:
avevo un problema analogo con la necessità di un codice ordinabile alfanumericamente composto da
da le ultime due cifre dell’anno e il numero della settimana che andando da 1 a 53 ... altre "due cifre"
infatti se è vero che 43 esiste e 043 non esiste
è pur vero che
nel caso di
nona settimana del del 2024 il numero di settimana avrebbe prodotto 249 (3 cifre)
nel caso di
decima settimana del del 2024 avrebbe prodotto 2310 (4 cifre)
due codici che alfanumericamente non soddisfano l'ordinamento
quindi ho creato il campo che genera il codice nelle sua struttura primaria
Destra ( anno ; 2 ) & se & SettimanaAnno ( dataCalc )
dataCalc si chiama cosi perché nel mio caso è ricavata da cifre immesse in campi separati
ovvero
Data ( mese ; num_gio ; anno ) >risultato testo<
e ho risolto l’esigenza di avere lo zero da 0 a 9 e poi dopo il 10 fino a 53 ci pensa il risultato vuoto della funzione casi
Casi ( sett < 10 ; "0" ) >risultato testo<
vale per uno zero ma se per caso il codice avesse superato il centinaio avrei dovuto aggiungere due zeri a 001
poi la cosa si complica nel passaggio da 009 a 010
magari qualcuno qui ci può aiutare?