It is currently 20 May 2026, 4:40 Advanced search

Miglioramento lista valori

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

Miglioramento lista valori

Postby s.zagni » 17 December 2014, 9:51

Buongiorno,

Molto probabilmente è già stato richiesto, ma le liste valori sono veramente poco sviluppate.... Mi spiego con un esempio classico che si ripresenta ogni volta: ho la necessità di prendere l'icona associata ad un valore di una lista valori e l'unico modo per farlo è utilizzare la "ToImage" che sfortunatamente non accetta valori, ma solamente la costante del valore perchè è INDE che fa la conversione (come anche la fromEnum dell'idmap, che converte la lista valori in un array a 2 dimensioni, e anche la Decode).

C'è modo di rendere queste funzioni un po' più aperte (meno lato INDE) in modo da aumentare l'utilità delle liste valori? O comunque sia poter aggiungere qualche informazione in più alla fromEnum?
s.zagni
 
Posts: 942
Joined: 9 April 2014, 8:33

Re: Miglioramento lista valori

Postby lucabaldini » 17 December 2014, 11:53

Mi sembra una domanda un po' troppo generica... cosa intenti per "rendere le funzioni più aperte (meno lato INDE)"? Ci sono operazioni che può fare solo InDe (tipo estrarre l'immagine da un oggetto)... o che si possono fare tramite addIn di InDe (wizard o altro)... Non c'è un modo di far fare ad InDe ciò che non fa se non facendoglielo fare in C++ o tramite l'estensibilità che è un modo per far fare ad InDe qualcosa che non fa. Sempre che l'operazione "atomica" sia disponibile.

Ora, veniamo al problema specifico. Le costanti sono nel progetto: o esiste una funzione che restituisce l'immagine dato un valore oppure non c'è modo di attivare la funzionalità senza che io scriva del codice in C++ che fa quel che chiedi.

Tra l'altro non mi è chiaro come dovrebbe funzionare la toImage(valore) dato che potrebbero essere tante le immagini con quel valore... dovrei passargli anche la lista valori? ma se quel valore c'è più di una volta nella lista?

Se ti serve solo una volta non puoi fare una funzione con uno switch che, dato un valore, restituisce l'immagine associata alla costante con quel valore?
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Miglioramento lista valori

Postby s.zagni » 17 December 2014, 13:19

Se ti serve solo una volta non puoi fare una funzione con uno switch che, dato un valore, restituisce l'immagine associata alla costante con quel valore?


Infatti è quello che faccio ogni volta che incontro questo caso, solo che è già la quarta volta che mi capita e mi chiedevo se c'era un modo per centralizzare la casistica.

Per quanto riguarda il "meno lato INDE" intendevo dire che adesso quelle funzioni non fanno altro che "tradurre" alcune informazioni della lista valori in codice in automatico, ma non c'è modo per noi programmatori di decidere quali informazioni tradurre (per esempio non c'è modo di sapere che tipo di dati tratta una lista valori, accedere dinamicamente alle immagini delle lista valori ecc...)

Tra l'altro non mi è chiaro come dovrebbe funzionare la toImage(valore) dato che potrebbero essere tante le immagini con quel valore... dovrei passargli anche la lista valori?


La funzione "decode(valore, [lista valori])" non usa lo stesso sistema? Potrebbe essere sufficiente aggiungere un parametro in più a quella funzione
(es. decode(valore, [lista valori], [valorerichiesto])) che restituisce di default la decodifica del valore e se specifico il "valorerichiesto" mi restituisca anche le altre informazioni della lista valori (tipo dati, immagine, titolo, ecc...)

Era solo un idea per rendere più "dinamico" l'utilizzo delle liste valori
s.zagni
 
Posts: 942
Joined: 9 April 2014, 8:33

Re: Miglioramento lista valori

Postby lucabaldini » 17 December 2014, 14:01

Ci devo pensare... Vorrei capire in quali casi ti è servito ottenere l'immagine di una costante usandone il valore... a me non è mai servito. Puoi spiegarmi meglio il caso in cui ti serve ottenere l'immagine associata ad una costante conoscendone solo il valore?

Il problema è che "il nome dell'immagine di una costante" non è una semplice proprietà di quella costante. Il nome dell'immagine viene deciso a compile time quando l'image manager viene dumpato nella cartella images dell'applicazione... infatti, se guardi l'espressione della funzione toImage(), contiene una macro speciale $IMAGE che attiva un algoritmo specifico di InDe (scritto in C++) che, in fase di compilazione, sostituisce il token $IMAGE() con il nome fisico dell'immagine associata alla costante qualora la costante abbia un'immagine.

Moltre informazioni, non presenti in libreria, sono comunque reperibili a design-time tramite l'estensibilità di InDe... mentre tu, se ho capito bene, le vorresti ottenere anche a run-time?

Ho creato l'attività NPQ02226 per tenere conto di questa conversazione. Quando verrà valutata, potrai seguirne l'andamento con Instant Developer Roadmap.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Miglioramento lista valori

Postby s.zagni » 18 December 2014, 8:05

Un esempio ricorrente è lo "Stato" di un documento che l'utente può vedere su pannelli/book (es. Inserito, Stampato, Inviato con relative immagini). Tuttavia i secondi vengono formattati manualmente con dell'html e mi serve sapere il nome del file immagine per poterlo mettere nell'html. So benissimo che è un caso rarissimo, però se ci fosse....

mentre tu, se ho capito bene, le vorresti ottenere anche a run-time?

esatto è proprio quello che chiedevo se era possibile...
s.zagni
 
Posts: 942
Joined: 9 April 2014, 8:33

Re: Miglioramento lista valori

Postby lucabaldini » 18 December 2014, 8:14

Capito... anche se non mi aspetto sia un caso così comune... ed io, nel tuo caso, risolverei creando una funzione del documento chiamata getStateImage che, con uno switch, restituisce l'immagine... che poi formatterei nel BeforeFormatting del book o nell'AfterFind del pannello.

Comunque ci penso... Non dovrebbe essere una cosa impossibile... potrebbe funzionare più o meno come la decode... dai il valore e la lista valori ed il sistema restituisce l'immagine... qualcosa del genere.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 34 guests