ricerca Risolto!
Moderatore: Moderatori
-
- Messaggi: 442
- Iscritto il: sabato 24 maggio 2008, 2:00
- Versione FileMaker: 16
- Sistema operativo: Windows 10
ricerca
ho un problema con un campo.
Nel formato PROGRAMMA ho il campo <<data>> che in fase di input è un calendario a discesa da cui inserisco i valori con un click.
Tutto ok fino a qui.
Quando eseguo la ricerca questo è il primo campo ad attivarsi visualizzando immediatamente il calendario a discesa. Anche questo non è un problema.
Il problema si presenta in fase di script.
eseguo una ricerca con questi valori:
<<ora>>
<<nome_giorno>>
<<evento>>
lo script ricava i valori da una selezione.
Dovrebbe semplicemente eseguire la ricerca, poi dovrò far cancellare i record, ma per il momento sullo script mi sono fermato a questo perché non lo fa.
In script debugger facendo l'esecuzione passo passo vedo che si attiva sempre il campo data, ma non vengono mai inseriti i valori corretti negli altri campi che non vengono mai impostati.
ho provato a generare dei campi temporanei per verificare il contentuo della ricerca che è corretto.
la parte incriminata dello script è così:
passa al modo trova [pausa: disattivata]
imposta campo [ora; valore]
nuovo record/richiesta
imposta campo [nome_giorno; valore]
nuovo record/richiesta
imposta campo [evento; valore]
esegui la ricerca []
tutto qui. Eppure non fa quello che deve. Lo script è attivo sul formato senza alcun passaggio... insomma non deve prendere valori da chissà quale formato. Unica anomalia è vedermi attivare sempre il campo data (che nemmeno richiedo) e non vedere mai nei corrispondenti campi i valori di ricerca.
Altra cosa che non ho detto... il campo <<nome_giorno>> è un campo calcolato che non è presente nel formato perché prende i valori dalla data. Forse anche questo può creare problemi? Io imposto valori di un campo non visibile. Però lo script non funziona nemmeno quando questo campo è vuoto.
Nel formato PROGRAMMA ho il campo <<data>> che in fase di input è un calendario a discesa da cui inserisco i valori con un click.
Tutto ok fino a qui.
Quando eseguo la ricerca questo è il primo campo ad attivarsi visualizzando immediatamente il calendario a discesa. Anche questo non è un problema.
Il problema si presenta in fase di script.
eseguo una ricerca con questi valori:
<<ora>>
<<nome_giorno>>
<<evento>>
lo script ricava i valori da una selezione.
Dovrebbe semplicemente eseguire la ricerca, poi dovrò far cancellare i record, ma per il momento sullo script mi sono fermato a questo perché non lo fa.
In script debugger facendo l'esecuzione passo passo vedo che si attiva sempre il campo data, ma non vengono mai inseriti i valori corretti negli altri campi che non vengono mai impostati.
ho provato a generare dei campi temporanei per verificare il contentuo della ricerca che è corretto.
la parte incriminata dello script è così:
passa al modo trova [pausa: disattivata]
imposta campo [ora; valore]
nuovo record/richiesta
imposta campo [nome_giorno; valore]
nuovo record/richiesta
imposta campo [evento; valore]
esegui la ricerca []
tutto qui. Eppure non fa quello che deve. Lo script è attivo sul formato senza alcun passaggio... insomma non deve prendere valori da chissà quale formato. Unica anomalia è vedermi attivare sempre il campo data (che nemmeno richiedo) e non vedere mai nei corrispondenti campi i valori di ricerca.
Altra cosa che non ho detto... il campo <<nome_giorno>> è un campo calcolato che non è presente nel formato perché prende i valori dalla data. Forse anche questo può creare problemi? Io imposto valori di un campo non visibile. Però lo script non funziona nemmeno quando questo campo è vuoto.
-
- Messaggi: 442
- Iscritto il: sabato 24 maggio 2008, 2:00
- Versione FileMaker: 16
- Sistema operativo: Windows 10
Re: ricerca
sto spezzando lo script in elementi minimi e mi sono accorto che in ricerca non imposta nessun campo.
Non posso utilizzare "imposta campo" nel modo trova???
Non posso utilizzare "imposta campo" nel modo trova???
- fabio.beri
- Messaggi: 1971
- Iscritto il: sabato 4 ottobre 2014, 16:24
- Versione FileMaker: 2023
- Sistema operativo: Win/Mac
Re: ricerca
Codice: Seleziona tutto
passa al modo trova [pausa: disattivata]
imposta campo [ora; valore]
nuovo record/richiesta
imposta campo [nome_giorno; valore]
nuovo record/richiesta
imposta campo [evento; valore]
esegui la ricerca []
In questo pezzetto, stai chiedendo:
i records che nel campo ora hanno un determinato valore
+
i records che nel campo nome_giorno hanno un determinato valore
+
i records che nel campo evento hanno un determinato valore.
Se la ricerca che volevi fare è questa, allora lo script è giusto
Fabio Beri
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19
Omnia Studio
-----------------------------------------
http://tinyurl.com/omniagest2024
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19
Omnia Studio
-----------------------------------------
http://tinyurl.com/omniagest2024
-
- Messaggi: 442
- Iscritto il: sabato 24 maggio 2008, 2:00
- Versione FileMaker: 16
- Sistema operativo: Windows 10
Re: ricerca
ti allego l'esempio. In realtà io vorrei da un portale determinare i criteri di ricerca. Poi, dato che i criteri sono molti e ricorrenti, con un pulsante procedo all'eliminazione dei record. Ma se tu provi a guardare lo script di ricerca (incompleto) vedrai in debugger, che di fatto non cerca niente.
Ho provato anche a togliere la questione dell'aggiunta di criteri… Potrebbe essere che io debba solo eliminare record con una determinata ora, o con una determinata data… Ma non capisco perché la ricerca non avviene e il debugger dice di non trovare record perché i campi sono senza valori.
Ho provato anche a togliere la questione dell'aggiunta di criteri… Potrebbe essere che io debba solo eliminare record con una determinata ora, o con una determinata data… Ma non capisco perché la ricerca non avviene e il debugger dice di non trovare record perché i campi sono senza valori.
-
- Messaggi: 442
- Iscritto il: sabato 24 maggio 2008, 2:00
- Versione FileMaker: 16
- Sistema operativo: Windows 10
Re: ricerca
devo fare qualche aggiunta. Ho creato una tabella per generare i record per le ricerche.
Ognuno dei 3 campi genera una lista. Ho preferito fare 3 liste separate che un campo calcolato unico perché poi se no dovevo scorporare tutti i valori con successivi calcoli. Io ho preferito creare un campo "ponte" che assegna il valore "~" se il campo di riferimento (data, ora o contenuto) sono vuoti. La ragione di questo è che così per ognuno di essi ho sempre il numero di record uguali. Questo mi serve quando nello script determino il numero di loop necessari e anche per ricavare i valori delle 3 liste in modo che siano sempre corrispondenti al record di ricerca. Poi inverto il discorso in ricerca: se il campo ha valore "~" allora lascio il campo vuoto, altrimenti utilizzo il valore corrispondente alla lista… se solo funzionasse però...
Ognuno dei 3 campi genera una lista. Ho preferito fare 3 liste separate che un campo calcolato unico perché poi se no dovevo scorporare tutti i valori con successivi calcoli. Io ho preferito creare un campo "ponte" che assegna il valore "~" se il campo di riferimento (data, ora o contenuto) sono vuoti. La ragione di questo è che così per ognuno di essi ho sempre il numero di record uguali. Questo mi serve quando nello script determino il numero di loop necessari e anche per ricavare i valori delle 3 liste in modo che siano sempre corrispondenti al record di ricerca. Poi inverto il discorso in ricerca: se il campo ha valore "~" allora lascio il campo vuoto, altrimenti utilizzo il valore corrispondente alla lista… se solo funzionasse però...
- fabio.beri
- Messaggi: 1971
- Iscritto il: sabato 4 ottobre 2014, 16:24
- Versione FileMaker: 2023
- Sistema operativo: Win/Mac
Re: ricerca
Perdonami. Non me ne volere, ma non apro i files degli utenti del forum. Sforzati di capire, facendo A MANO ogni singolo passo che hai messo nello script, il perché lui non trovi nulla con la ricerca che hai impostato.
Lo script è un automatismo di ciò che si farebbe a mano. Se non segui questo consiglio, non scoprirai mai il TUO ERRORE. Sottolineo tuo perché FileMaker si limita a ripetere ciò che gli dici di fare.
Lo script è un automatismo di ciò che si farebbe a mano. Se non segui questo consiglio, non scoprirai mai il TUO ERRORE. Sottolineo tuo perché FileMaker si limita a ripetere ciò che gli dici di fare.
Fabio Beri
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19
Omnia Studio
-----------------------------------------
http://tinyurl.com/omniagest2024
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19
Omnia Studio
-----------------------------------------
http://tinyurl.com/omniagest2024
-
- Messaggi: 442
- Iscritto il: sabato 24 maggio 2008, 2:00
- Versione FileMaker: 16
- Sistema operativo: Windows 10
Re: ricerca
nessun problema. Quando si fa un errore alle volte gli occhi di un altro vedono più facilmente. Nel file non ho messo altro che il "frammento" che mi interessa. È un documento creato appositamente senza altro dentro. Ho pensato che descrivere sia più difficile che mostrare e poi io sono una frana nelle descrizioni. Se qualcuno può darmi indicazioni ringrazio, ma certamente io non smetterò di cercare.
-
- Messaggi: 442
- Iscritto il: sabato 24 maggio 2008, 2:00
- Versione FileMaker: 16
- Sistema operativo: Windows 10
Re: ricerca Risolto!
mi rispondo da solo. Ho continuato a cercare e ho scoperto che per far funzionare lo script è importante la posizione del comando "passa al modo trova". Bisogna definire delle variabili prima e non come ho fatto io che inserivo un calcolo come valore di campo.
Quindi
1) definire la variabile - anche come calcolo
2) passare al modo trova
3) inserire le variabili nei campi
fatto
Quindi
1) definire la variabile - anche come calcolo
2) passare al modo trova
3) inserire le variabili nei campi
fatto