It is currently 9 June 2025, 8:26 Advanced search

Table substitution e INSERT

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

Table substitution e INSERT

Postby f.iadipaolo » 22 August 2024, 8:10

Come faccio un applicativo che deve leggere e scrivere su un DB con le talbelle con nome XXXnometabella, dove XXX è un codice variabile (es. codice azienda, o codice anno)?
La TableSubstitution funziona in sola lettura, ma in scrittura non scatta.
Non potendo "comporre query", come ne vengo fuori?
f.iadipaolo
 
Posts: 239
Joined: 4 July 2016, 11:38

Re: Table substitution e INSERT

Postby d.termini » 26 August 2024, 7:00

Noi usiamo addQuerySubstitution (una sola volta all'avvio dell'applicazione), da noi per certi programmi è un meccanismo fondamentale perché appunto abbiamo le tabelle con una parte variabile.
Ovviamente se devi modificare la variabile devi reimpostare tutte le sostituzioni che hai definito.
d.termini
 
Posts: 1657
Joined: 13 November 2017, 8:41

Re: Table substitution e INSERT

Postby d.pierangeli » 26 August 2024, 8:42

Perchè dici che in scrittura non scatta? Mi aspetto che funzioni, i pannelli sono DB o DO?
User avatar
d.pierangeli
Pro Gamma
Pro Gamma
 
Posts: 8129
Joined: 30 September 2010, 15:35

Re: Table substitution e INSERT

Postby f.iadipaolo » 26 August 2024, 8:54

E' DB, ma ti in DO ha lo stesso comportamento.
Ho fatto una pagina di test dove seleziono un campo in un recordset, giro e aggiungo *** alla descrizione e salvo.
La TableSubstitution cambia il prefizzo Z____ con A01.
Come puoi vedere dal debug, in lettura scatta e legge da A01CONTI mentre l'update scrive su Z____CONTI
Attachments
Screen.png
Screen.png (81.46 KiB) Viewed 536 times
f.iadipaolo
 
Posts: 239
Joined: 4 July 2016, 11:38

Re: Table substitution e INSERT

Postby d.termini » 26 August 2024, 9:41

Ma l'update te lo fa? Dal debug sembra di sì
Ora che mi ci fai pensare se non ricordo male anche noi vediamo in debug le tabelle con la parte sostituibile e non quella effettiva nelle query di scrittura, penso sia solo un problema di debug in quanto la sostituzione viene fatta dal DB dopo aver composto l'istruzione
d.termini
 
Posts: 1657
Joined: 13 November 2017, 8:41

Re: Table substitution e INSERT

Postby f.iadipaolo » 26 August 2024, 10:01

L'update lo fa sulla tabella senza sostituzione
f.iadipaolo
 
Posts: 239
Joined: 4 July 2016, 11:38

Re: Table substitution e INSERT

Postby d.pierangeli » 26 August 2024, 10:17

Hai ragione, ho visto adesso che è stato segnalato.

Il workaround suggerito è il seguente per la DO:

"Al momento puoi risolvere facendo la sostitutizione nell'evento BeforeSave della classe tramite il metodo DB.AddQuerySubstitution e annullando la sostituzione nell'evento AfterSave con il metodo DB.clearQuerySubstitution."

Nel caso DB invece non dovrebbe essere necessario perchè il sistema fa le modifiche sul recordset ottenuto dalla query di select, quindi si occupa il database di scrivere i nomi corretti.
User avatar
d.pierangeli
Pro Gamma
Pro Gamma
 
Posts: 8129
Joined: 30 September 2010, 15:35

Re: Table substitution e INSERT

Postby f.iadipaolo » 26 August 2024, 12:41

Per ora mi accontento di farla DB.
Nella Initialize (come indicato dalla documentazione) ho impostato l'AddQuerySubstitution, ma non scatta.
O meglio, nell'inizialize vedo il comando eseguito, ma quando poi vado a fare una query, non cambia nulla.
Come è il corretto utilizzo?
Quando utilizzo una query, devo fare qualcosa prima/durante/dopo?
f.iadipaolo
 
Posts: 239
Joined: 4 July 2016, 11:38


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: Google [Bot] and 39 guests