Copia di un record da un portale

Utilizzo dei portali in un database FileMaker

Moderatore: Moderatori

DanielaCorso
Messaggi: 19
Iscritto il: giovedì 24 gennaio 2013, 16:05

Copia di un record da un portale

Messaggio da DanielaCorso » giovedì 31 gennaio 2013, 15:59

Ciao a tutti, scusate se disturbo ancora con le mie domande stupide ma i portali per me sono ancora poco chiari..
Io ho un DB molto grande. In un file separato ho creato una tabella "selezione" che tramite campi correlati al DB e pulsanti di opzione, mi seleziona i record del DB su un portale. ( non so se sia la scelta migliore per operare la selezione, ma ho scelto di fare così in modo che il DB resti un file a se da collegare all'interfaccia di selezione, cmq..)
La mia selezione funziona correttamente: tramite la scelta a pulsanti di 4 campi si selezionano i record di DB che corrispondono ai criteri.
Ora però vorrei selezionare solo quei record trovati ad ogni ricerca e salvarli in un DB separato, perchè poi li utilizzo per un codice java con il visualizzatore web. Quindi io vorrei copiare ad ogni ricerca i record del portale (solo quelli trovati) in una tabella. Ho provato con diversi script:
vai a record del portale(sel tutto)
nuovo record
loop
imposta campo(sel:nome; DB:nome)
imposta campo...
salva record
vai a riga del portale succ (esci dopo l'ultimo)
exit loop

O anche usando la funzione duplica record (con l'opzione di abilitare la creazione di record correlati nella tabella di selezione)
Ma non riesco a copiare i record trovati nella tabella separata.
Qualcuno mi sa dire cosa sbaglio e/o darmi qualche suggerimento?

Grazie per l'aiuto!!
Daniela (Filemaker Pro 12)

gozzi
Messaggi: 700
Iscritto il: giovedì 25 marzo 2004, 1:00
Località: Torino

Re: Copia di un record da un portale

Messaggio da gozzi » giovedì 31 gennaio 2013, 17:04

Se i record li visualizzi già all'interno del portale vai al record del portale e ti mostrerà solo quei record.
Apri una nuova finestra nel formato della tabella di importazione de importi semplicemente i record dall'altra tabella: ti importerà solo quelli visualizzati.
Terminata l'operazione richiudi la finestra e torni al formato originale o fai un po quello che ti pare ;)
FMPA 12- Win e OsX

DanielaCorso
Messaggi: 19
Iscritto il: giovedì 24 gennaio 2013, 16:05

Re: Copia di un record da un portale

Messaggio da DanielaCorso » giovedì 31 gennaio 2013, 17:09

Grazie per la risposta prontissima! Ma è il passaggio importazione che non so come farlo.. Forse perchè non ho ben capito come si presentano i record nel portale: li importo campo per campo riga per riga o con quale comando?
L'idea di script che ho messo è sbagliata e perchè?
Scusa, ma ci tengo davvero a capire come funzionano!
Grazie..!
Daniela (Filemaker Pro 12)

stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Re: Copia di un record da un portale

Messaggio da stregatto » giovedì 31 gennaio 2013, 17:15

se hai un campo solo da copiare ti basta la funzione lista() e un loop.
al contrario, nello script ti conviene andare alla tabella correlata e da li copiare i record che ti servono tramite variabili.

.g.

gozzi
Messaggi: 700
Iscritto il: giovedì 25 marzo 2004, 1:00
Località: Torino

Re: Copia di un record da un portale

Messaggio da gozzi » giovedì 31 gennaio 2013, 17:23

Scusa mi sono espresso male
con "vai al record del portale" intendevo dire utilizza la funzione di script "Vai al record correlato".

Poniamo:
tabella A - principale
tabella B - portale
tabella C - la tabella che deve ricevere i dati del portale

Quando dal formato della tabella A tramite script chiedi di andare al record correlato della tabella B FM ti mostrerà una finestra (nuova o no lo decidi tu) contenente tutti i record del portale ma con il formato della tabella B.

Una volta che avrai questo elenco apri una nuova finestra "importazione" alta zero px in un formato della tabella C.
"Importa record" e specifichi come origine dati il tuo file contenente la tabella A
Vai nell'ordine di importazione e scegli la tabella di origine "Tabella A" e tabella di destinazione "Tabella B"
Associ i campi che vuoi importare.
Chiudi la finestra importazione

Se i record sono poche decine non vedrai quasi nemmeno aprirsi la finestra di importazione
FMPA 12- Win e OsX

gozzi
Messaggi: 700
Iscritto il: giovedì 25 marzo 2004, 1:00
Località: Torino

Re: Copia di un record da un portale

Messaggio da gozzi » giovedì 31 gennaio 2013, 17:28

Quoto Stregatto se il campo è uno solo, ho dato per scontato che fossero di più.
FMPA 12- Win e OsX

DanielaCorso
Messaggi: 19
Iscritto il: giovedì 24 gennaio 2013, 16:05

Re: Copia di un record da un portale

Messaggio da DanielaCorso » venerdì 1 febbraio 2013, 9:43

Quindi il tuo modo (Gozzi) non si può fare se per ogni record hai più campi da copiare?
Daniela (Filemaker Pro 12)

stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Re: Copia di un record da un portale

Messaggio da stregatto » venerdì 1 febbraio 2013, 9:51

certo che si può usare, ma non mi piace il metodo della finestra importazione. ti conviene usare la stessa finestra, magari con un blocca finestra iniziale.
Inoltre per piccole quantità di dati è meglio un loop sul tipo:
vai al record correlato[formatochetiserve]
vai al primo record
loop
if[not evuoto(campo flag)]
imposta variabile[$campo1; campo1]
imposta variabile[$campo2; campo2]
•etc…
vai al formato[formatotabellachetiserve]
nuovo record
definisci campo[campo1; $campo1]
definisci campo[campo2; $campo2]
•etc…
vai al formato[formatochetiserve]
end if
vai al record[successivo; esci dopo l'ultimo]
end loop

.g.

DanielaCorso
Messaggi: 19
Iscritto il: giovedì 24 gennaio 2013, 16:05

Re: Copia di un record da un portale

Messaggio da DanielaCorso » venerdì 1 febbraio 2013, 10:09

Mm.. c'è ancora una cosa che mi sfugge ed è quella di come faccio a selezionare solo i file che vedo nel portale e non tutti quelli del database correlato, ovvero se ho capito il tuo ragionamento (stregatto) ad impostare una flag solo per quelli visualizzati dal portale. Come riconosco i record del DB che compaiono nel portale da quelli che non compaiono?
Scusate, ma davvero il portale non l'ho capito!
Daniela (Filemaker Pro 12)

DanielaCorso
Messaggi: 19
Iscritto il: giovedì 24 gennaio 2013, 16:05

Re: Copia di un record da un portale

Messaggio da DanielaCorso » venerdì 1 febbraio 2013, 10:49

In rete avevo trovato questo esempio, ma c'è una funzione che mi sa non esiste per FM pro 12
http://www.fmpro.it/forum/viewtopic.php?f=3&t=2393
Daniela (Filemaker Pro 12)

Rispondi