Assegnare un valore con sostituisci alle righe di un portale

Utilizzo dei portali in un database FileMaker

Moderatore: Moderatori

silenzio
Messaggi: 24
Iscritto il: mercoledì 3 novembre 2004, 1:00
Contatta:

Assegnare un valore con sostituisci alle righe di un portale

Messaggio da silenzio »

Quando uso SOSTITUISCI su un campo nelle righe di un portale , mi vengono sostituiti tutti i dati nei record presenti nella tabella relazionata, non solo quelli trovati (presenti nelle righe del portale) come risolvere.
Versioni FM: 8.5 ADV
S.O:WinXp
andreuccio
Messaggi: 1737
Iscritto il: giovedì 7 ottobre 2004, 2:00
Località: Lamezia Terme

Re: Assegnare un valore con sostituisci alle righe di un por

Messaggio da andreuccio »

silenzio ha scritto:Quando uso SOSTITUISCI su un campo nelle righe di un portale , mi vengono sostituiti tutti i dati nei record presenti nella tabella relazionata, non solo quelli trovati (presenti nelle righe del portale) come risolvere.
Perchè lo esegui da portale.Prova direttamente dalla tabella.E attenzione, l'operazione è irreversibile. :wink:
Umiliati e sarai Esaltato, Esaltati e sarai Umiliato
Mac OS X Snow Leopard - FMP 10 Adv.
silenzio
Messaggi: 24
Iscritto il: mercoledì 3 novembre 2004, 1:00
Contatta:

Messaggio da silenzio »

IL problema è che la tabella si trova in un altro file di FM, in realtà le righe di un portale nn dovrebbero essere come un elenco di record trovati?
Versioni FM: 8.5 ADV
S.O:WinXp
andreuccio
Messaggi: 1737
Iscritto il: giovedì 7 ottobre 2004, 2:00
Località: Lamezia Terme

Messaggio da andreuccio »

silenzio ha scritto:IL problema è che la tabella si trova in un altro file di FM, in realtà le righe di un portale nn dovrebbero essere come un elenco di record trovati?
No. Il portale serve per vedere da una tabella correlata i dati che ti servono.
Testuale dall'aiuto:
Un portale è un oggetto di formato che visualizza record di tabelle correlate. Utilizzare solo un portale quando si desidera visualizzare dati da più di un record correlato. I portali visualizzano i dati dai Campi correlati in righe, un record in ogni riga.
Umiliati e sarai Esaltato, Esaltati e sarai Umiliato
Mac OS X Snow Leopard - FMP 10 Adv.
silenzio
Messaggi: 24
Iscritto il: mercoledì 3 novembre 2004, 1:00
Contatta:

Messaggio da silenzio »

Scusa Andreuccio...scendo più nel dettaglio altrimenti nn puoi capire la situazione.

tabella preventivi(file:preventivi.fp7)
tabella bancadati(file:bancadati.fp7)

io faccio un nuovo preventivo(nuovo record) su preventivi.fp7 e genero le righe del preventivo attraverso il portale(opz. consenti la creazione di record in questa tabella). tutto ciò funziona alla grande in bancadati.fp7 i record si registrano e si cancellano senza problemi.

Il problema sorge quando voglio convertire un preventivo in ordine, mi bastrebbe assegnare, alle righe del preventivo attraverso il portale, anche un numero ordine x (campo ordinenum presente nella tabella bancadati del file bancadati.fp7) ma purtroppo questo numero ordine x(dove x è numero massimo ordini +1) viene sostituito a tutti i record della tabella bancadati nel file bancadati.fp7

se hai un modo migliore da suggerire per fare ciò te ne sarei molto grato.


grazie ancora bye sil
Versioni FM: 8.5 ADV
S.O:WinXp
andreuccio
Messaggi: 1737
Iscritto il: giovedì 7 ottobre 2004, 2:00
Località: Lamezia Terme

Messaggio da andreuccio »

Ho interpretato a mio modo, e quindi dimmi se sbaglio in qualcosa.Tu vorresti modificare il numero assegnato al preventivo, quando questo viene tramutato in ordine. Giusto? Ma non è più conseguenziale creare una nuova numerazione relativa agli ordini, e creare magari un riferimento al numero del preventivo? Se non ho capito, scusami, e magari dettagliami maggiormente.
Umiliati e sarai Esaltato, Esaltati e sarai Umiliato
Mac OS X Snow Leopard - FMP 10 Adv.
raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Messaggio da raybaudi »

silenzio ha scritto:... mi bastrebbe assegnare, alle righe del preventivo attraverso il portale, anche un numero ordine ...
Lo puoi fare con un semplice script
Raybaudi FMP 12 Adv. Windows XP SP3
silenzio
Messaggi: 24
Iscritto il: mercoledì 3 novembre 2004, 1:00
Contatta:

Messaggio da silenzio »

In bancadati esiste sia il numero preventivo che il numero ordine, sia nummaxprev(massimo di numero preventivo) e sia numaxordine (massimo di numero preventivo), ovviamente oltre a tutti gli altri campi (cod prodotto descr. q. prezzo ecc.).

da preventivi scelgo il mio preventivo in base al cliente o al numero e mi viene visualizzata la testata del preventivo (nome cognome ecc.) con il numero del preventivo, e sotto in un portale tutte le righe correlate del preventivo stesso. Con un Pulsante vorrei convertire il preventivo in ordine assegnando cioè alle righe del preventivo anche il numero ordine, che fa già parte della tabella relazionata che ho visibile nel portale ma per adesso nullo, semplicemente con "definiscicampo bancadati:numeroordine=numaxordine+1" e poi con Sostituisci con valore corrente numeroordine.



(guardando gli script vedo che c'è pure una funzione vai alla riga del portale, posso fare un loop con esci dopo l'ultimo come con i record normali(nn nel portale)
Versioni FM: 8.5 ADV
S.O:WinXp
silenzio
Messaggi: 24
Iscritto il: mercoledì 3 novembre 2004, 1:00
Contatta:

Messaggio da silenzio »

un piccolo esempio raybaudi se nn è chiedere troppo .... scusate ma mi semplificherebbe parecchio la vita


grazie molto
Versioni FM: 8.5 ADV
S.O:WinXp
raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Messaggio da raybaudi »

silenzio ha scritto:...guardando gli script vedo che c'è pure una funzione vai alla riga del portale, posso fare un loop con esci dopo l'ultimo come con i record normali(nn nel portale)...
Qualcosa di simile...ma l'uscita deve avvenire NON dopo l'ultimo, ma quando non ci sono più record correlati, usando per esempio la funzione Evalido ( ).

Come calcoli il MAX ?
Su una tabella correlata ?
Raybaudi FMP 12 Adv. Windows XP SP3
Rispondi