copiare valore da altra tabella
Moderatore: Moderatori
-
- Messaggi: 57
- Iscritto il: sabato 29 dicembre 2007, 1:00
copiare valore da altra tabella
Devo copiare un valore dal campo di una tabella e incollarlo nel campo di un'altra tabella
ho adottato una soluzione maccheronica ma troppo lunga e farraginosa per cui a volte si blocca
SOLUZIONE MACCHERONICA
Non posso al momento aggiungere relazioni tra tabelle
C'è un modo più elegante e soprattutto più robusto per copiare il valore [ Clienti::ChiavePrimaria ] in [ FCCalendarEvents 1::ChiaveEsterna ] ?
ho adottato una soluzione maccheronica ma troppo lunga e farraginosa per cui a volte si blocca
SOLUZIONE MACCHERONICA
Codice: Seleziona tutto
#creo relazione
Imposta variabile [ $NomeCliente; Valore:FCCalendarEvents 1::Nome Cliente ]
Imposta cattura errori [ Attivata ]
#cerca id cliente
Vai al formato [ “Elenco Clienti” (Clienti) ]
Visualizza
[ Visualizza come tabella ]
Passa al modo Trova [ ]
Imposta campo [ Clienti::Cognome e Nome; $NomeCliente ]
Esegui la ricerca [ ]
Copia [ Clienti::ChiavePrimaria ]
[ Seleziona ]
#imposto relazione
Vai al formato [ “FCCalendarEvents 1” (FCCalendarEvents 1) ]
Incolla [ FCCalendarEvents 1::ChiaveEsterna ]
[ Seleziona; Nessuno stile ]
Salva record/richieste
[ Senza finestra ]
Vai al formato [ formato originale ]
C'è un modo più elegante e soprattutto più robusto per copiare il valore [ Clienti::ChiavePrimaria ] in [ FCCalendarEvents 1::ChiaveEsterna ] ?
FM 15 - Win 10
- fabio.beri
- Messaggi: 1958
- Iscritto il: sabato 4 ottobre 2014, 16:24
- Versione FileMaker: 2023
- Sistema operativo: Win/Mac
Re: copiare valore da altra tabella
perché non è possibile? uno dei files è protetto?Non posso al momento aggiungere relazioni tra tabelle
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: 57
- Iscritto il: sabato 29 dicembre 2007, 1:00
Re: copiare valore da altra tabella
ok facendo alcune modifiche sono riuscito a creare una relazione tra la tabella
FCCalendarEvents 1::ChiaveEsterna -----> Clienti::ChiavePrimaria
Ora alla creazione/modifica di ogni record su FCCalendarEvents 1 dovrei scrivere su FCCalendarEvents 1::ChiaveEsterna il valore Clienti::ChiavePrimaria
ma il cliente lo scelgo tramite una tendina popolata da LISTA VALORI che mi da il nome del cliente ma non il suo valore Clienti::ChiavePrimaria
FCCalendarEvents 1::ChiaveEsterna -----> Clienti::ChiavePrimaria
Ora alla creazione/modifica di ogni record su FCCalendarEvents 1 dovrei scrivere su FCCalendarEvents 1::ChiaveEsterna il valore Clienti::ChiavePrimaria
ma il cliente lo scelgo tramite una tendina popolata da LISTA VALORI che mi da il nome del cliente ma non il suo valore Clienti::ChiavePrimaria
FM 15 - Win 10
-
- Messaggi: 4
- Iscritto il: lunedì 17 novembre 2003, 1:00
- Località: Milano
Re: copiare valore da altra tabella
Secondo mai fai molto prima usando un "ExecuteSQL" che è fatto proprio a posta per interrogare tabelle non relazionate:
https://help.claris.com/it/pro-help/con ... ExecuteSQL
Cheers
Farid
Codice: Seleziona tutto
// imposta variabile $risultato =
ExecuteSQL ( "SELECT ChiavePrimaria FROM Clienti WHERE 'Cognome e nome' = $NomeCliente" ; "" ; "" )
// poi vai al formato che ti serve ed usi il risultato per impostare il campo in questione
Cheers
Farid
-
- Messaggi: 57
- Iscritto il: sabato 29 dicembre 2007, 1:00
-
- Messaggi: 57
- Iscritto il: sabato 29 dicembre 2007, 1:00
Re: copiare valore da altra tabella
Niente da fare
non c'è verso di visualizzare il risultato della query.
Ho provato in tutti i modi, la prova più corretta credo sia così:
Nella finestra, viene vìsualizzato correttamente il nome cliente: $NomeCliente
e non visualizza il risultato: $risultato. Visualizza soltanto: ?
non c'è verso di visualizzare il risultato della query.
Ho provato in tutti i modi, la prova più corretta credo sia così:
Codice: Seleziona tutto
Imposta variabile [$NomeCLiente; Valore: FCCalendarEvents 1::Nome Cliente]
Imposta variabile [$risultato; Valore: EseguiSQL ( "SELECT ChiavePrimaria FROM Clienti WHERE Cognome e Nome = $NomeCliente"; ""; "" ) ]
Mostra finestra personalizz. [$NomeCliente; $risultato]
e non visualizza il risultato: $risultato. Visualizza soltanto: ?
FM 15 - Win 10
- fabio.beri
- Messaggi: 1958
- Iscritto il: sabato 4 ottobre 2014, 16:24
- Versione FileMaker: 2023
- Sistema operativo: Win/Mac
Re: copiare valore da altra tabella
Quando esce un punto interrogativo, la query è sbagliata. In questo caso, riesco a vedere solamente che il campo Nome e Cognome, certamente campo di tipo testo, non è interrogato tramite le apici che vanno messe dopo l'uguale:
Codice: Seleziona tutto
EseguiSQL ( "SELECT ChiavePrimaria FROM Clienti WHERE Cognome e Nome ='" & $NomeCliente & "'"; ""; "" )
max103 ha scritto: ↑sabato 3 dicembre 2022, 16:58Niente da fare
non c'è verso di visualizzare il risultato della query.
Ho provato in tutti i modi, la prova più corretta credo sia così:
Nella finestra, viene vìsualizzato correttamente il nome cliente: $NomeClienteCodice: Seleziona tutto
Imposta variabile [$NomeCLiente; Valore: FCCalendarEvents 1::Nome Cliente] Imposta variabile [$risultato; Valore: EseguiSQL ( "SELECT ChiavePrimaria FROM Clienti WHERE Cognome e Nome = $NomeCliente"; ""; "" ) ] Mostra finestra personalizz. [$NomeCliente; $risultato]
e non visualizza il risultato: $risultato. Visualizza soltanto: ?
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: 57
- Iscritto il: sabato 29 dicembre 2007, 1:00
Re: copiare valore da altra tabella
riuscito
erano due i problemi
1) $NomeCliente andava tra apici
2) WHERE Cognome e Nome davano fastidio gli spazi bianchi nel nome del campo (effettivamente in SQL è così)
quindi la query totale funzionante è:
Grazie 1000 per l'aiuto
erano due i problemi
1) $NomeCliente andava tra apici
2) WHERE Cognome e Nome davano fastidio gli spazi bianchi nel nome del campo (effettivamente in SQL è così)
quindi la query totale funzionante è:
Codice: Seleziona tutto
EseguiSQL ( "SELECT ChiavePrimaria FROM Clienti WHERE CognomeNome = '" & $NomeCliente & "'"; ""; "" )
FM 15 - Win 10