E' possibile avere colonne contenenti funzioni aggiuntive per aumentare le funzionalità disponibili nella tabella.
Ogni tipologia di colonna può essere inserita una sola volta per tabella, eccetto quando esplicitamente specificato.
Una colonna grafico consente di espandere la funzionalità di una colonna tradizionale tramite la visualizzazione di un grafico.
Per ogni campo “TMesG_” verrà creata una colonna chiamata con la stringa che segue “TMesG_”, con un simbolo di un grafico al suo fianco.
Cliccando sul simbolo del grafico viene visualizzato un popup contenente il grafico relativo ai diversi valori di quel campo con le relative quantita’.
Campo Lista: TMesG_Rif_cliente = A.rif_cliente

Esempio di grafico prodotto

Esempio di una colonna normale ed una creata con TMesG
La colonna esploso consente di visualizzare un altro set di dati risultanti dal comando inserito in DesmosComando, usando il valore in DesmosLancio come lancio.
Il set di dati restituito dal comando verrà usato per creare una tabella che si sovrappone a quella in uso.
Se il pulsante refresh è presente nella tabella sovrapposta, verrà mostrato un pulsante contenente DesmosDescrizione a fianco del pulsante di refresh, che verrà usato per ricaricare la tabella sovrapposta, mentre il pulsante di refresh originale è usato per ritornare alla tabella iniziale.
Se DesmosLayout è presente e non vuoto viene richiamato il layout specificato in una finestra separata invece di sostituire la tabella corrente.
Se DesmosLayout è == “_monitorfabbrica_” verrà richiamato il monitor fabbrica. In questo caso DesmosComando deve contenere il tipo di monitor (es. Colli, odp) mentre DesmosLancio deve contenere il valore da cercare (es codice odp).
Se viene inserito il campo DesmosNome la colonna sarà nominata con il valore inserito.
La colonna esploso verrà posizionata a sinistra nella tabella e non potrà essere spostata.
Le celle della colonna conterranno una icona a forma di ruota dentata, visibile solo se tutti i campi necessari nella riga sono presenti e valorizzati.
Se DesmosLayout è presente e non vuoto l'icona mostrata sarà quella dei layout, mentre se DesmosLayout == “_monitorFabbrica_” l'icona mostrata sarà quella del monitor fabbrica.
Ci possono essere più colonne esploso, ognuno dei campi relativi alla formazione di una colonna deve avere un suffisso composto da “_” ed un numero (es. DesmosLancio_1, DesmosDescrizione_1, DesmosComando_1).
Se almeno uno dei campi non opzionali (Lancio, Descrizione, Comando/Layout) è vuoto non verrà inserita l'icona nella riga, se DesmosLancio == '_IMG_' l'icona sarà visibile, ma disabilitata.
Campi Lista:
DesmosLancio = cast('lancio' as nvarchar(128)) DesmosDescrizione = cast(LMM.Descrizione as nvarchar(128)) DesmosComando = cast('GENERA_DATI_SCOCCA.dsm' as nvarchar(128)) DesmosLayout = cast('NomeLayout' as nvarchar(128))DesmosNome = cast('TitoloColonna' as nvarchar(128))DesmosLayoutImg = cast('C://path//img.png’ as nvarchar(128))DesmosLayoutMode = cast('STD' as nvarchar(50))

Esempio di colonna esploso

Esempio di finestra contenente un layout.

Esempio di tabella sovrapposta con pulsante di refresh modificato.
Le colonna Immagine sono usate per visualizzare immagini di grandi dimensioni.
Le colonne Immagine verranno posizionate a sinistra nella tabella e non potranno essere spostate.
Ci possono essere più colonne immagine, ognuno dei campi relativi alla formazione di una colonna deve avere un suffisso composto da “_” ed un numero (es. DesmosImage_1, DesmosImageFieldPath_1, DesmosImageFieldDescrizione_1).
Nella colonna verranno mostrate delle icone, le quali potranno essere cliccate per aprire una finestra in cui verrà visualizzata l'immagine.
Campi Lista:
DesmosImage = CAST('image.png' as nvarchar(128)) DesmosImagePath = CAST('\tesy\Tmes\export' as nvarchar(128)) DesmosImageDescrizione = CAST('Dettagli Scocca' as nvarchar(128)) DesmosImageText = CAST('ImmagineScocca' as nvarchar(128))

Esempio di colonna immagine con il logo Tesy come immagine
La colonna campo immagine è usata per visualizzare un'immagine in ogni riga, direttamente all'interno della tabella.
La colonna Campo Immagine verrà posizionata a sinistra nella tabella e non potrà essere spostata.
Ci possono essere più colonne campo immagine, ognuno dei campi relativi alla formazione di una colonna deve avere un suffisso composto da “_” ed un numero (es. DesmosImageField_1, DesmosImagePath_1, DesmosImageDescrizione_1).
E' possibile avere un'immagine personalizzata od un semaforo, a seconda del valore inserito nel campo DesmosImageField.
I semafori non usano immagini e vi sono 6 colori di semaforo disponibile, corrispondenti ai valori:






Campi Lista:
DesmosImageField = CAST('image.png' as nvarchar(128)) DesmosImageFieldPath = CAST('\tesy\Tmes\export' as nvarchar(128)) DesmosImageFieldDescrizione = CAST('Dettagli Scocca' as nvarchar(128)) DesmosImageFieldText = CAST('ImmagineScocca' as nvarchar(128))

Esempio di colonna campo immagine

Esempio di colonna campo immagine con semaforo
Le colonne comando vengono usate per eseguire comandi personalizzati, seguiti eventualmente da azioni specifiche (ad es. il refresh di uno o più template).
Ci possono essere più colonne comando, ognuno dei campi relativi alla formazione di una colonna deve avere un suffisso composto da “_” ed un numero (es. DesmosCmdLancio_1, DesmosCmdComando_1, DesmosCmdDescrizione_1).
Le colonne Comando verranno posizionate a sinistra nella tabella e non potranno essere spostate.
Campi Lista:
DesmosCmdLancio = cast('lancio' as nvarchar(128))DesmosCmdComando = CAST('COMANDO.dsm' as nvarchar(128))DesmosCmdDescrizione = CAST('Start Produzione Scocca' as nvarchar(128))DesmosCmdConferma = CAST('0' as nvarchar(16))DesmosCmdConfermaText = CAST('0' as nvarchar(16))DesmosCmdComandoAnnulla = CAST('COMANDO_ANNULLA.dsm' as nvarchar(16))DesmosCmdImg = CAST('ImageName.png' as nvarchar(128))DesmosCmdText = CAST('ButtonText' as nvarchar(128))
DesmosCmdAzione = CAST('Refresh' as nvarchar(128))
DesmosCmdAzioneLancio = CAST('lancioAzione' as nvarchar(128))DesmosCmdColumn = CAST('NomeColonna' as nvarchar(128))DesmosCmdPostazione = CAST('TMES_TFM_PRINT' as nvarchar(128))DesmosCmdTipo = CAST('RIL' as nvarchar(128))DesmosCmdId = CAST('12345' as nvarchar(128))DesmosCmdCausale = CAST('c_causale' as nvarchar(128))DesmosCmdSceltaStampante = CAST('1' as nvarchar(16))DesmosCmdElencoStampanti = CAST('stampante1;stampante2' as nvarchar(16))DesmosCmdCategorieOperatore = CAST('CAT1;CAT2' as nvarchar(16))
Vedi chat.client.messaggio in live4f.js. Il comando da eseguire e’ in DesmosCmdComando e il lancio in DesmosCmdLancio.
Il lancio sara’ composto da lancio—postazione (dove postazione e’ quella scelta nella pagina di partenza) perche’ Desmos una volta creato il PDF dovra’ inviare, tramite la creazione di una lista apposita, un messaggio di tipo “WEB” (solo visualizzazione) alla postazione del tipo seguente, dove @note conterra’ il path completo del file da visualizzare:
set @myNote = 'c:\desmos\clienti\tesy\export\'+@myLancio+'.pdf'
if(@myPos <> '')
begin
EXEC @return_value = [TesyFabbrica].[dbo].[sptesy_msg_to_tmes]
@tipo_messaggio = N'WEB',
@postazione = @myPos,
@tipologia_item = N'C',
@codice_item = @myLancio,
@fg_ack = '',
@utente = 'Desmos',
@note = @myNote
if(@return_value >= 0) begin update [TesyFabbrica].[dbo].[tesy_msg_inout] set data_ora = @dt where id_messaggio = @return_value end
end
Esempio colonna comando.
Esempio colonna comando con DesmosCmdImg presente.
Esempio colonna comando con DesmosCmdText presente.
La colonna edit è usata per modificare un valore in diverse modalità.
Quando viene impostato un valore e si sposta il fuoco del mouse o si preme enter, viene chiamata l’api api/desmos/tmes_settings passando l’oggetto che rappresenta il campo editabile da salvare nella tabella tmes_settings del DB di Desmos.
Normalmente questi campi sono associati a un record con un DesmosCmdXXX. Se si preme il tasto del comando, vengono verificati i valori presenti nei campi editabili per vedere se sono compresi tra min e max in caso di campi numerici, oppure <> “” nel caso di stringhe.
Campi Lista:
DesmosCampoEditKey = CAST('CampoEdit_01' as nvarchar(128)) DesmosCampoEditVal = CAST('editVal' as nvarchar(128)) DesmosCampoEditTipo = CAST('2' as nvarchar(128)) DesmosCampoEditMin = CAST('0' as nvarchar(128)) DesmosCampoEditMax = CAST('10' as nvarchar(128)) DesmosCampoEditColumn = CAST('CampoEdit' as nvarchar(128)) DesmosCampoEditDescrizione = CAST('DescCampoEdit' as nvarchar(128)) DesmosCampoEditUm = CAST('mm' as nvarchar(128)) DesmosCampoEditValori = CAST('val1;val2;val3;val4' as nvarchar(128)) DesmosCampoEditValoriDescrizione = CAST('desc1;desc2;desc3;desc4' as nvarchar(128)) DesmosCampoEditActive = CAST('1' as nvarchar(16)) DesmosCampoEditSize = CAST('14' as nvarchar(16)) DesmosCampoEditBold = CAST('1' as nvarchar(16)) DesmosCampoEditBackground = CAST('R,G,B' as nvarchar(64)) DesmosCampoEditAzione = CAST(Refresh;Right|Bottom_1' as nvarchar(64)) DesmosCampoEditLancio = CAST('lancio' as nvarchar(64))

Esempio di colonna edit con menu a tendina.

Esempio di colonna edit con valore numerico.

Esempio di colonna edit disabilitata, con valore stringa.