Relazione tra campi

FileMaker è un database relazionale. Vediamo come...

Moderatore: Moderatori

salsaweb
Messaggi: 89
Iscritto il: martedì 8 agosto 2006, 2:00

Relazione tra campi

Messaggio da salsaweb » martedì 10 luglio 2018, 16:00

Salve a tutti.
Ho un problema che potrebbe risultare molto semplice ma che non riesco a risolvere.
Ho un database che gestisce gli ingressi di un locale, composto da diversi campi, i principali sono:
id
Nome
Cognome
Email
Presente (SI,No)
Ogni volta che un utente viene al locale faccio una ricerca (tramite email) e flaggo il campo presente (che diventa "si").
Mi servirebbe contare tutte le presenze che l'utente effettua.
Spero di essere stato chiaro
Uso fm14

MaxMzz
Messaggi: 121
Iscritto il: lunedì 25 settembre 2017, 14:55
Versione FileMaker: 14-16
Sistema operativo: Win 7 - Win 10- Mac

Re: Relazione tra campi

Messaggio da MaxMzz » martedì 10 luglio 2018, 16:21

Ciao, vista così mi sembra che ti manchino un po' di cose.
La prima tra tutte è una tabella che ti registri appunto gli ingressi.
Quella che hai attualmente è una via di mezzo tra un anagrafica ed una gestione degli ingressi. Ma può bastare.

In quella nuova i campi invece potrebbero essere :
_id (che metterai in relazione con la tua tabella esistente)
_nome (che copierai in riferimento tramite la relazione di cui sopra)
_cognome (che copierai in riferimento tramite la relazione di cui sopra)
_email (che copierai in riferimento tramite la relazione di cui sopra)
_data ingresso (con opzione di immissione automatica data corrente)
_ora ingresso (con opzione di immissione automatica data corrente)

Però, prima di procedere col secondo step (fare lo script, e monitorare le presenze per quel determinato cliente), non mi è chiaro come vuoi far "uscire" il cliente dal locale.
Ovvero : lui arriva e tu cerchi la sua scheda tramite email, e come trovi la casella presente? sul si o sul no?
Nel primo caso, non è corretto, nel secondo caso...qual'è il momento in cui determini la cessazione della presenza nel locale?

Attendo tue

meccanico91
Messaggi: 104
Iscritto il: venerdì 13 novembre 2009, 13:13
Versione FileMaker: FM 14Ad
Sistema operativo: OS X

Re: Relazione tra campi

Messaggio da meccanico91 » martedì 10 luglio 2018, 17:41

Si è corretto quello che ti dice Max... basta creare una nuova tabella. Puoi chiamarla “presenze”, creare un campo ID che metterai in relazione con l’ID della tua tabella.
Puoi usare le "relazioni" per vedere i dati di una tabella collegata... :D
Comunque per fare i vari totali usa i campi Riassunto, sono immediati e semplici da utilizzare :)
Ciao

salsaweb
Messaggi: 89
Iscritto il: martedì 8 agosto 2006, 2:00

Re: Relazione tra campi

Messaggio da salsaweb » martedì 10 luglio 2018, 21:58

Dunque ( ovviamente ho i clienti già inseriti sul db) il cliente entra, lo cerco tramite id, email o cognome e poi tramite un pulsante imposto il campo in "Si".
Quando la serata finisce, tramite un altro tasto, cerco tutti risultati dei clienti con "Si" e imposto il campo a "no".
Non so se è chiaro :(

salsaweb
Messaggi: 89
Iscritto il: martedì 8 agosto 2006, 2:00

Re: Relazione tra campi

Messaggio da salsaweb » martedì 10 luglio 2018, 23:24

Ho creato la tabella presenze ed ho messo in relazione solo ilcampo id della tabella clienti e il campo id della tabella presenze. Ma non succede nulla.
Inserendo un nuovo cliente non dovrebbe compilarsi anche la tabella presenze?
Inoltre i campi data e ora e accessitotali dovrebbero compilarsi solo quando il campo presente viene impostato su "Si"
Non ne esco fuori :(

MaxMzz
Messaggi: 121
Iscritto il: lunedì 25 settembre 2017, 14:55
Versione FileMaker: 14-16
Sistema operativo: Win 7 - Win 10- Mac

Re: Relazione tra campi

Messaggio da MaxMzz » mercoledì 11 luglio 2018, 8:53

Buongiorno,
aspetta aspetta, è ovvio che non può funzionare così come l'hai descritta...gli manca il secondo step.
La cosa importante da sapere era come escono i clienti. Ora sappiamo che escono tutti assieme, alla chiusura del locale.
Comunque , tornando alle presenze(ingressi), ora è necessario fare uno script da applicare ad un bottone e che dice :

- imposta il campo presente su si
- imposta una variabile con l'id del cliente
- vai sulla nuova tabella presenze e crea un nuovo record (bloccando la finestra sul formato principale, per non navigare inutilmente)
- imposta il campo id della tabella presenze con il valore della variabile

A questo punto il cliente è dentro, in quel giorno a quell'ora.

Per avere il colpo d'occhio su tutti i presenti , ti crei un portale sul formato principale basato su una nuova relazione tra la data corrente (nuovo campo sulla tabella principale) e il campo data di creazione sulla nuova tabella presenze.

Ora ti manca solo l'uscita, che puoi automatizzare , creando uno script che assegni ad un bottone dedicato di chiusura, e che più o meno recita così :

- passa al modo trova (sulla tabella principale)
- imposta il campo presente su "si"
- esegui la ricerca
- sostituisci il contenuto del campo presente con un "no" oppure vuoto

Risposta alle tue domande :
"Inserendo un nuovo cliente non dovrebbe compilarsi anche la tabella presenze?"
Inserendo un nuovo cliente non deve fare nulla, in fondo stai solo registrando un nuovo soggetto , e non è detto che entri.
Prima lo registri, e poi lo fai entrare (se vuole :) ) con il bottone di entrata (vedi sopra)
"Inoltre i campi data e ora e accessitotali dovrebbero compilarsi solo quando il campo presente viene impostato su "Si"
Facendo come ti ho detto, lo farà.


Attendo tue

salsaweb
Messaggi: 89
Iscritto il: martedì 8 agosto 2006, 2:00

Re: Relazione tra campi

Messaggio da salsaweb » mercoledì 11 luglio 2018, 9:33

Appena rientro dal lavoro, nel pomeriggio provo e vi faccio sapere. Grazie mille!!!!

MaxMzz
Messaggi: 121
Iscritto il: lunedì 25 settembre 2017, 14:55
Versione FileMaker: 14-16
Sistema operativo: Win 7 - Win 10- Mac

Re: Relazione tra campi

Messaggio da MaxMzz » mercoledì 11 luglio 2018, 14:03

Dimenticavo...
per totalizzare i clienti presenti in ogni momento puoi fare un campo riassunto nella tabella presenze, e visualizzarlo sul formato principale con la relazione tra tabella principale e tabella presenze, oppure sempre creare un campo calcolato sulla tabella principale non memorizzato basato sulla stessa relazione e con la sola funzione conteggio.
In entrambe i casi , da posizionarsi in prossimità del portale che ti specifica i soggetti dentro (diciamo per coerenza).

salsaweb
Messaggi: 89
Iscritto il: martedì 8 agosto 2006, 2:00

Re: Relazione tra campi

Messaggio da salsaweb » mercoledì 11 luglio 2018, 18:19

Ho provato la nuova tabella e con lo script funziona. Completo il resto. Grazie davvero!

salsaweb
Messaggi: 89
Iscritto il: martedì 8 agosto 2006, 2:00

Re: Relazione tra campi

Messaggio da salsaweb » giovedì 12 luglio 2018, 4:21

Sto procedendo passo passo.
Non mi è chiaro questo:
"Per avere il colpo d'occhio su tutti i presenti , ti crei un portale sul formato principale basato su una nuova relazione tra la data corrente (nuovo campo sulla tabella principale) e il campo data di creazione sulla nuova tabella presenze."
Ho inserito un campo data corrente sulla tabella principale, ma non succede sempre nulla. Vorei anche capire "il campo di creazione sulla nuova tabella presenze" quale è?
:?

Rispondi