It is currently 6 December 2024, 22:44 Advanced search

Errore query pannello con 3 documenti in join NON AUTOMATICO

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

Errore query pannello con 3 documenti in join NON AUTOMATICO

Postby nradogna » 8 May 2020, 9:41

Ciao, ho creato una videata con un pannello basato sulla seguente query IMG1. Come potete vedere, la query mette in join in modo NON AUTOMATICO 3 documenti (basati su tabelle): NOTIFICATION_LOG, NOTIFICATION_DATI_LOG e ACTIVITY_LOG.
In fase di esecuzione, la query viene tradotta in questo modo IMG2. Come è possibile vedere dal debug, la query viene tradotta con solo la tabella NOTIFICATION_LOG (le altre due non compaiono), di conseguenza la query va in errore.
Dove ho sbagliato?
Grazie
Attachments
IMG2.jpg
Debug - IMG2
IMG2.jpg (45.52 KiB) Viewed 2957 times
IMG1.jpg
Query - IMG1
IMG1.jpg (52.5 KiB) Viewed 2957 times
nradogna
 
Posts: 71
Joined: 20 March 2018, 9:52

Re: Errore query pannello con 3 documenti in join NON AUTOMATICO

Postby lucabaldini » 8 May 2020, 15:24

Il motivo è che la query che hai fatto è una JOIN tra 3 classi DO.
Il JOIN tra classi non è supportato.

In effetti manca un messaggio di warning che blocchi la compilazione in quel caso anche perché avevo provato in vari modi a bloccare l'operazione.

Ora ho notato che c'è un modo per farlo (e credo sia il modo che hai usato anche tu).

Prima si crea un pannello DB oriented con le tabelle in JOIN.

Poi si tirano le classi sulle tabelle per sostituirle e passare alla DO.

Poi si compila. InDe non si accorge che c'è una JOIN tra classi e procede credendo che tutto sia corretto.

A run-time, però, il problema appare.

User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Errore query pannello con 3 documenti in join NON AUTOMA

Postby lucabaldini » 8 May 2020, 15:30

Nel manuale online ( https://doc.instantdeveloper.com/inde-users-guide.pdf ) è scritto a pagina 211:
DOPanel.png
DOPanel.png (72.93 KiB) Viewed 2936 times


Ho creato un ticket collegato a questo thread per ricordarmi di bloccare la compilazione se una query DO contiene più di una classe o classi+tabelle in join.

Se ti serve il JOIN devi usare le tabelle del DB.

L'altra alternativa è aggiungere le proprietà che ti servono nel documento principale e fornire al documento una query di caricamento che si occupi anche di valorizzare quelle proprietà in più che non farebbero parte del documento.

Per maggiori informazioni puoi leggere il manuale online da pagina 189: 5.3.1 Definizione della master query del documento
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Errore query pannello con 3 documenti in join NON AUTOMA

Postby nradogna » 11 May 2020, 8:51

Perfetto, grazie mille. Converto la mia master query utilizzando direttamente le tabelle.
nradogna
 
Posts: 71
Joined: 20 March 2018, 9:52

Re: Errore query pannello con 3 documenti in join NON AUTOMATICO

Postby lucabaldini » 20 July 2020, 13:06

L'attività NPQ04727 è stata completata e sarà disponibile nella versione Instant Developer 20.5. Clicca qui per leggere le note di rilascio.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Errore query pannello con 3 documenti in join NON AUTOMA

Postby nradogna » 3 August 2020, 15:03

Perfetto, grazie mille!
nradogna
 
Posts: 71
Joined: 20 March 2018, 9:52


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 23 guests