Portali per pi

Utilizzo dei portali in un database FileMaker

Moderatore: Moderatori

Rispondi
alexft
Messaggi: 23
Iscritto il: venerdì 30 settembre 2005, 2:00

Portali per più date in un campo

Messaggio da alexft »

Salve a tutti. Con l'aiuto di questo forum ho risolto molte cosine nel mio file. Ho fatto una domanda in un'altra sezione del forum e mi è stato consigliato di usare portali e tabelle correlate. Ho cercato molto ed ho provato a capire l'utilizzo di portali ma trovo delle difficoltà. Magari qualcuno riesce a darmi una mano.
Intanto mi scuso se ripeto la domanda in questa sezione ma non riesco proprio ad andarne fuori.
All'origine avevo creato un campo data multiplo e inserito in questo campo diverse date (circa una decina). Ho circa 60 record nel mio file ed ho bisogno di creare un campo calcolato (o qualcosa del genere, ma non uno script) che trovi quante date all'interno di un determinato range si trovano in quel campo multiplo e restituirmi il conteggio.
Ho provato, come consigliato, con i portali mettendo in relazione il campodata del mio file con un campodata creato in un altro file ma non riesco ad inserire i dati.
Faccio un esempio per spiegarmi meglio:

Campodata
10.02.2004
14.03.2005
16.05.2005
17.06.2005

Dovrei creare un campo calcolato che mi conteggi il nr. di date che si trovano nel range 01.01.2005...oggi (3) e poi, ma questo non è un problema, fare il totale dei campicalcolo dei vari record.

Intanto grazie mille per l'interesse
dseverin
Messaggi: 77
Iscritto il: martedì 3 febbraio 2004, 1:00
Località: vittorio veneto

Re: Portali per più date in un campo

Messaggio da dseverin »

Ciao,
alexft ha scritto:Salve a tutti. Con l'aiuto di questo forum ho risolto molte cosine nel mio file. Ho fatto una domanda in un'altra sezione del forum e mi è stato consigliato di usare portali e tabelle correlate. Ho cercato molto ed ho provato a capire l'utilizzo di portali ma trovo delle difficoltà. Magari qualcuno riesce a darmi una mano.
Intanto mi scuso se ripeto la domanda in questa sezione ma non riesco proprio ad andarne fuori.
All'origine avevo creato un campo data multiplo e inserito in questo campo diverse date (circa una decina). Ho circa 60 record nel mio file ed ho bisogno di creare un campo calcolato (o qualcosa del genere, ma non uno script) che trovi quante date all'interno di un determinato range si trovano in quel campo multiplo e restituirmi il conteggio.
Ho provato, come consigliato, con i portali mettendo in relazione il campodata del mio file con un campodata creato in un altro file ma non riesco ad inserire i dati.
Faccio un esempio per spiegarmi meglio:

Campodata
10.02.2004
14.03.2005
16.05.2005
17.06.2005

Dovrei creare un campo calcolato che mi conteggi il nr. di date che si trovano nel range 01.01.2005...oggi (3) e poi, ma questo non è un problema, fare il totale dei campicalcolo dei vari record.

Intanto grazie mille per l'interesse
non conosco il motivo per cui tu non possa usare uno script ma non ha importanza. Se fai una ricerca per periodo 01-01-2005...oggi non va bene? Se vuoi sapere quanti rekord hai trovato inserisci un campo calcolato; esiste una funzione get che ti restituisce il conteggio dei rekord trovati nella ricerca. Se ti interessa raggruppare i rekord per date devi fare la ricerca e un ordinamento per data su un form con una sezione riassunto per data e visualizzarlo in anteprima.
Ci siamo o non ho capito niente?
Ciao
Diego
alexft
Messaggi: 23
Iscritto il: venerdì 30 settembre 2005, 2:00

Ricerca di date

Messaggio da alexft »

Intanto grazie diego per l'interessamento.
Forse non mi sono spiegato bene io.

Io ho un file che contiene circa 60 record e ogni record è una persona.
Nel campodata di ogni record devo inserire diverse date, fino ad una decina circa.
Io ho bisogno di creare un campo che mi calcola quante date dentro un determinato range vengono trovate perchè quel numero deve essere inserito automaticamente poi in un formato che contiene altri totali di altri campi. Per questo non posso utilizzare uno script.
Ho provato a creare un campocalcolo con if(campodata)=data 01-01-2005...oggi;1;0 ma mi calcola solamente la prima data che trova. Per questo mi hanno sconsigliato di usare i campi multipli.
Sicuramente sbaglio anche la formula ed è per questo che chiedo aiuto.

Per esempio in uno dei 60 record (persone) ho nel campodata le seguenti date
17.08.2004
25.09.2004
01.01.2005
13.05.2005

Quello di cui ho bisogno è un campo, che metterò vicino al campodata, che mi riporti il risultato "2" (in questo caso il nr. di date trovate nel range 01.01.2005...oggi)
Non mi serve sapere quanti record rispondono alla richiesta se esistono record con quelle date ma solo il conto di quante ne vengono trovate per ogni record.
Forse mi ero spiegato male.
Grazie ancora per la pazienza
stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Messaggio da stregatto »

allora:

tabella(se usi 7 o 8) o file "PERSONE". ciascun record identificato da un codice univoco.

tabella(se usi 7 o 8) o file "DATE". ciascun record identificato da un codice univoco, ma contenente anche un campo "IDPERSONE".

correlazione fra i due file/tabelle PERSONE::codice= DATE::idpersone, con la possibilità di creazione automatica di record sulle date ed (eventualmente )cancellazione automatica delle date relative in caso di cancellaazione della presona.

sul formato PERSONE metti un portale con questa relazione.

creando o cancellando una data tu vai in realtà a scriver sull'altro file (creando i campi che ti interessano -nome città … - e riempiendoli automaticamente con i valori ricavti da PERSONE), che quindi conterrà tutte le date, e su questo puoi fare tutte le ricerche e statistiche dell'universo mondo.

.g.
dseverin
Messaggi: 77
Iscritto il: martedì 3 febbraio 2004, 1:00
Località: vittorio veneto

Messaggio da dseverin »

Ciao,

ho capito. Lascia perdere i campi multipli e segui, per filo e per segno, i consigli di Stregatto.
E' così che si fa.

Ciao

Diego
alexft
Messaggi: 23
Iscritto il: venerdì 30 settembre 2005, 2:00

Messaggio da alexft »

Penso che voi siate dotati di una pazienza enorme e quindi vi chiedo scusa se ne abuso.
Ho fatto delle prove ma non riesco a cavare un ragno dal buco.
Sicuramente la mia ignoranza su fmpro non mi fa arrivare a capire qualcosa che per voi è come l'acqua.
Se posso chiederti stregatto di essere più semplice nella spiegazione, sempre che tu possa dedicarmi un pò del tuo tempo.
Nel caso positivo spiego meglio i campi
Ho un file che si chiama "gestione matricolare" dove ho tanti record quante persone formano la ditta dove lavoro.
ho vari campi trai quali cognome, nome, data nascita.... e tanti altri di natura anagrafica. Ho un campo dove devo inserire una serie di date che rappresentano i "riconoscimenti morali" che ogni persona riceve nel corso degli anni e quindi inserisco la data in cui l'ha ricevuto.
Alla fine avrei bisogno di avere un campo nel formato principale anagrafico della persona che mi dica che nel range 01.01.2005...oggi questa persona ha tanti riconoscimenti quante sono le date comprese all'interno del range.
Quindi so che nel 2004 ha ricevuto "x" riconoscimenti e nel 2005 "x" riconoscimenti.
Da qui poi io posso fare un totale di questi campi che mi dicono il numero delle date trovate e quindi sapere che nell'anno 2005, le 60 persone che lavorano all'interno della ditta hanno ricevuto in totale un tot di riconoscimenti.
Grazie ancora e scusatemi se sono stato prolisso
raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Messaggio da raybaudi »

Ho un campo dove devo inserire una serie di date che rappresentano i "riconoscimenti morali" che ogni persona riceve nel corso degli anni e quindi inserisco la data in cui l'ha ricevuto.
Adesso, come è definito questo campo ?
(di tipo testo o data , multiplo o normale, se multiplo, quante ripetizioni ?)
Raybaudi FMP 12 Adv. Windows XP SP3
alexft
Messaggi: 23
Iscritto il: venerdì 30 settembre 2005, 2:00

Messaggio da alexft »

Grazie raybaudi.
Adesso questo campo si chiama "elogio". E' di tipo data ed è multiplo con 6 ripetizioni.
alexft
Messaggi: 23
Iscritto il: venerdì 30 settembre 2005, 2:00

Messaggio da alexft »

Dopo vari tentativi sono riuscito ad avere il risultato.
Il mio campo (elogio), con 6 multipli, l'ho modificato a testo anzichè data.
Ho creato un campo calcolato (conta elogio), multiplo con 6, con il seguente calcolo
contaRicorrenze (elogio;".2005")
poi ho creato un altro campo calcolato che somma (conta elogio).
Funziona tutto. Devo solo stare attento a come inserisco le date perchè se metto uno spazio 12.05. 2005 dopo il punto non mi riconosce più quella ricorrenza.
Sembra che vada bene.
Grazie comunque a tutti
Rispondi