Elenco record in un portale
Moderatore: Moderatori
-
- Messaggi: 162
- Iscritto il: sabato 9 dicembre 2006, 1:00
- Versione FileMaker: 16
- Sistema operativo: MAC OS
- Località: Bergamo
- Contatta:
Elenco record in un portale
Buonasera a tutti,
non riesco a risolvere il problema di una relazione in apparenza semplice. Ho una tabella anagrafica con i seguenti campi:
- idSocio
- nome e cognome
- categoriaSocio
- DataIscrizione (indicizzato)
- DataCessazione indicizzato)
Una seconda "tabella evento" con i seguenti campi:
- CategoriaSocio
- DataEvento
Le due tabelle sono poste in relazione tramite il campo <categoria>. In questa seconda tabella ho inserito un portale per ottenere l'elenco dei soci della categoria selezionata in base alla data di un evento. Quindi, inserendo la data dell'evento, ottengo la lista desiderata. Fin qui tutto fila liscio.
Avrei invece bisogno di filtrare la lista in funzione delle date. Nell'impostazione del portale, cliccando su "Filtra record" ho pertanto cominciato ad inserire la seguente condizione:
ogni record del portale è visibile quando: Tabella evento::Data evento > Tabella Anagrafica::DataIscrizione.
Il risultato che ottengo è quello sperato, e cioè mi viene visualizzato l'elenco dei soli soci la cui data di iscrizione sia inferiore alla data dell'evento.
Siccome avrei anche bisogno che nell'elenco non venissero visualizzati i soci cessati prima della data dell'evento, ho integrato l'impostazione del filtro nel portale in questo modo:
ogni record del portale è visibile quando: Tabella evento::Data evento > Tabella Anagrafica::DataIscrizione and Tabella evento::Data evento < Tabella Anagrafica::DataCessazione.
A me la condizione sembrerebbe logica, ma purtroppo con questa formula ottengo come risultato un portale vuoto e, sarà forse banale, ma non riesco a capire dove sto sbagliando.
Qualcuno mi può indirizzare sulla retta via?
Grazie mille per l'attenzione.
Gilberto
(FM PRO 11)
non riesco a risolvere il problema di una relazione in apparenza semplice. Ho una tabella anagrafica con i seguenti campi:
- idSocio
- nome e cognome
- categoriaSocio
- DataIscrizione (indicizzato)
- DataCessazione indicizzato)
Una seconda "tabella evento" con i seguenti campi:
- CategoriaSocio
- DataEvento
Le due tabelle sono poste in relazione tramite il campo <categoria>. In questa seconda tabella ho inserito un portale per ottenere l'elenco dei soci della categoria selezionata in base alla data di un evento. Quindi, inserendo la data dell'evento, ottengo la lista desiderata. Fin qui tutto fila liscio.
Avrei invece bisogno di filtrare la lista in funzione delle date. Nell'impostazione del portale, cliccando su "Filtra record" ho pertanto cominciato ad inserire la seguente condizione:
ogni record del portale è visibile quando: Tabella evento::Data evento > Tabella Anagrafica::DataIscrizione.
Il risultato che ottengo è quello sperato, e cioè mi viene visualizzato l'elenco dei soli soci la cui data di iscrizione sia inferiore alla data dell'evento.
Siccome avrei anche bisogno che nell'elenco non venissero visualizzati i soci cessati prima della data dell'evento, ho integrato l'impostazione del filtro nel portale in questo modo:
ogni record del portale è visibile quando: Tabella evento::Data evento > Tabella Anagrafica::DataIscrizione and Tabella evento::Data evento < Tabella Anagrafica::DataCessazione.
A me la condizione sembrerebbe logica, ma purtroppo con questa formula ottengo come risultato un portale vuoto e, sarà forse banale, ma non riesco a capire dove sto sbagliando.
Qualcuno mi può indirizzare sulla retta via?
Grazie mille per l'attenzione.
Gilberto
(FM PRO 11)
--------------------------
Mac OS X
FileMaker Pro 16
Mac OS X
FileMaker Pro 16
-
- Messaggi: 700
- Iscritto il: giovedì 25 marzo 2004, 1:00
- Località: Torino
Re: Elenco record in un portale
La formula non può funzionare se il socio non ha una data di cessazione.
Puoi modificarla così:
Puoi modificarla così:
Codice: Seleziona tutto
Tabella evento::Data evento > Tabella Anagrafica::DataIiscrizione
and
(Tabella evento::data evento < Tabella Anagrafica::DataCessazione or EVuoto(Tabella Anagrafica::DataCessazione))
FMPA 12- Win e OsX
-
- Messaggi: 162
- Iscritto il: sabato 9 dicembre 2006, 1:00
- Versione FileMaker: 16
- Sistema operativo: MAC OS
- Località: Bergamo
- Contatta:
Re: Elenco record in un portale
Urrah!, grazie mille Gozzi, funziona perfettamente. Però, affinché possa capire e aggiungere un po' di "sapienza" alle mie fragili conoscenze, mi potresti per favore spiegare perché non poteva funzionare la mia formula e perché, invece, funziona la tua?
Comunque, grazie ancora.
Gilberto
Comunque, grazie ancora.
Gilberto
--------------------------
Mac OS X
FileMaker Pro 16
Mac OS X
FileMaker Pro 16
-
- Messaggi: 700
- Iscritto il: giovedì 25 marzo 2004, 1:00
- Località: Torino
Re: Elenco record in un portale
Un campo lasciato vuoto equivale ad un valore nullo, zero
In filemaker anche se visualizzata come gg/mm/aaaa la data viene calcolata in giorni: il giorno 1 è il 1/1/0001.
Puoi verificarlo inserendo la semplice formula assoluto(data) che ti riporterà quanti gg sono passati dal giorno 0
Per esempio, assoluto(get(datacorrente)), oggi ti restituirà 734899, domani 734900 e così via...
Se inserisci come condizione
data_evento<data_cessazione
ed il campo data cessazione è vuoto, è come se scrivessi
data_evento<0
Capirai bene che qualunque sia la tua data di cessazione è molto difficile che sia prima del 1/1/0001 ;))
In filemaker anche se visualizzata come gg/mm/aaaa la data viene calcolata in giorni: il giorno 1 è il 1/1/0001.
Puoi verificarlo inserendo la semplice formula assoluto(data) che ti riporterà quanti gg sono passati dal giorno 0
Per esempio, assoluto(get(datacorrente)), oggi ti restituirà 734899, domani 734900 e così via...
Se inserisci come condizione
data_evento<data_cessazione
ed il campo data cessazione è vuoto, è come se scrivessi
data_evento<0
Capirai bene che qualunque sia la tua data di cessazione è molto difficile che sia prima del 1/1/0001 ;))
FMPA 12- Win e OsX