Questo metodo ritorna una pagina con una griglia di profili DocsMarshal. La griglia offre funzionalità di base come ordinamento e ricerca e offre svariate opzioni di personalizzazione e integrazione.
I profili sono ottenuti da una classe documentale tramite una Search.
Legenda:
Parametro obbligatorio
Parametro opzionale
{ SessionId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', ConfigUrl: 'http://www.site.com/config.json', ElementId: 'MyGrid', GridId: 'MyGridId', UserId: 'MyUser', LanguageId: 1, LanguageCode: 'EN', SaveLayout: true/false, LoadLayout: true/false, SaveLayoutFilters: true/false, ViewId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', ViewExternalId: 'View', SelectIds: "10;20;30;-1;-2", SelectExternalIds: "ObjectId;Titolo;Descrizione", FieldsToLoadIds: "Titolo;Descrizione", FieldsToLoadExternalIds: "Titolo;Descrizione", GroupByIds: "10", GroupByExternalIds: "Zona", OrderByIds: "10A;20D", ObjectStates: "1;2;3", ObjectStateIds: [1,2,3], ObjectStateExternalIds: ["ExternalId1","ExternalId2"], InsertParams: { "SessionId": SID, "MaskExternalId": "mask external id", "LanguageCode": "lang code", "Presenter[0]:FieldExternalId": "Descrizione", "Presenter[0]:Type": "Label", "Presenter[0]:Label": "Prova", "Presenter[0]:ElementId": 15, ... }, UpdateParams: { "SessionId": SID, "MaskExternalId": "mask external id", "LanguageCode": "lang code", "Presenter[0]:FieldExternalId": "Descrizione", "Presenter[0]:Type": "Label", "Presenter[0]:Label": "Prova", "Presenter[0]:ElementId": 15, ... }, OrderByExternalIds: "Persone_A;Animali_D", NoLayout: true/false, NoJQuery: true/false, NoBootstrap: true/false, NoDxIncludes: true/false, SearchVisible: true/false, FilterPanelVisible: true/false, SearchText: "Search", DateFormat: "dd/mm/yyyy", DateTimeFormat: "dd/mm/yyyy HH:mm:ss", MultipleSelection: true/false, MultipleSelectionCheckboxes: "none/always/onClick/onLongTap", EnableSelection: true/false, NoColumnChooser: true/false, NoGrouping: true/false, NoColReordering: true/false, NoColResizing: true/false, NoStateColor: true/false, CanInsert: true/false, CanUpdate: true/false, CanDelete: true/false, AskToInsertAgain: true/false, ShowEditButton: true/false, ShowDeleteButton: true/false, ShowPrefixInDynAssColumns: true/false, FieldLabels: [ { FieldExternalId: 'ObjectState', Label: 'State' }, { FieldExternalId: 'Products.Name', LanguageCode: 'EN', Label: 'Product' }, { FieldExternalId: 'Products.Name', LanguageCode: 'IT', Label: 'Prodotto' } ], UsePaging: true/false, PageSize: 25, ShowNavigationButtons: true/false, ShowRowLines: true/false, ShowColLines: true/false, RowFilterCallback: "rowFilterCallback", ProfileIsUpdatableCallback: "profileIsUpdatableCallback", RowIsSelectedCallback: "rowIsSelectedCallback", OnRowPrepared: "onRowPrepared", Where: [ { FieldId: 30, FieldExternalId: "Persone", Condition: Between, Value: 10, Value2: 20, ValueFormat: "0.00", ValueCultureInfoName: "IT-it", Values: [ "Valore1", "Valore2", "Valore3"] }, ... ], Domains: "1;2;3", DomainIds: [1,2,3], DomainExternalIds: ["Domain1","Domain2","Domain3"], Actions: [ { Name: "Azione", Url: "http://www.google.it", Prepend: true/false, Iframe: true/false, DefaultDocument: true/false, DocumentFieldId: 30, DocumentFieldExternalId: 'Fattura', DocumentModelExternalId: 'Fattura', DynAssExternalId: 'FattureClienti', Target: '_SELF' / '_BLANK', Callback: 'EseguiAzione', InCommands: true/false, InContextMenu: true/false, OnRowSelected: true/false, OnRowDeselected: true/false, OnOpenDetail: true/false, IfObjectStateId: 5, IfObjectStateIds: [5], IfObjectStateExternalId: "Value1;Value2", IfCallback: "MyFilter", WfEventExternalId: "MyEvent", WfFollow: true/false, Update: true/false, Delete: true/false, MaskExternalId: "MyMask", RefreshGrid: true/false, ClearSelectionAfter:true/false, }, ... ], GridActions: [ { "UseAll": true/false, "UseFiltered": true/false, "UseSelection": true/false, "Separator": "&&", "Location": "after"/"before"/"center", "Description": "Nome", "MinSelectedRows": 1, "MaxSelectedRows": 5, ... } ], Labels: [ { Name: "Nome Label", Value: "Valore Nuovo", ObjectId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", FieldId: 33, FieldExternalId: "Esternal ID" }, ... ], Popups: {...}, InsertPopupLabel: "Inserimento", InsertLabel: "Inserisci", UpdatePopupLabel: "Aggiornamento", UpdateLabel: "Aggiorna" TotalSummary: [ { "FieldId": "1", "FieldExternalId": "ExternalID", "SummaryType": "count", "ValueFormat": "int", "SkipEmptyValues" : true/false, "ValuePrecision": "5" "DisplayFormat" : "Descrizione qualunque {0}" }, ... ], GroupSummary: [ { "AlignByColumn": true/false, "ShowInGroupFooter": true/false }, ... ], Computed: [ { "Callback": "f", "ExternalId": "ExternalIdCampo", "Name": "NomeColonna", "ColIndex": 1, "html": true/false }, ... ], Height: "200px", MenuVisible: true/false, MenuEnabled: true/false, MenuItems: "Open;ChangeStatus;DynamicAssociations", MenuSelectedItem: "DynamicAssociations/Commands", TitlesFg: "rgb(51, 51, 51)", AlternateRows: true/false, AlternateRowsColor: "rgba(100, 20, 150, .3)", ObjectStateStyle: "Dot;Name", FocusOnLoad: true/false, Export: true/false, ExportFileName: "Riepilogo", ExportFormat: "XLSX", PdfExportSettings: {}, FixCommands: "left/right", Autorefresh: 60, AddRefreshCountdownToTitle: true/false, InlineEditingMode: "none/cell/row/batch/form", InlineEditingFieldExternalIds: "fialdA;fieldB;fieldC", MasterDetailEnabled: true/false, MasterDetailHeight: '800px', MasterDetailMaxWidth: '1200px', MasterDetailMaskType: 'UPDATE', MasterDetailCustomCallback: 'cbMasterDetail', MasterDetailDynAssExternalId: 'MyDynAss', MasterDetailDynAssGridConfig: {}, MasterDetailMaskConfig: {}, MenuAutoHide: true/false, PreviewPanelAllowPrinting: true/false, PreviewPanelShowWatermark: true/false, PreviewPanelFieldExternalId: 'FieldExternalId' PreviewPanelOpenOnLoad: true/false, PreviewPanelMaskEnabled: true/false, PreviewPanelMaskExternalId: 'MaskExternalId', DynAssGrids: [ { // use only one of the following 4 parameters DynAssId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', DynAssExternalId: 'ClientiFatture', ClassTypeId: 9, ClassTypeExternalId: 'MyClassType', // set grid behavior Open: true, Focus: true, Config: { Export: true, ExportFileName: 'file', FixCommands: 'left', InsertParams: { MaskExternalId: 'CustomInsert', InserimentoDaWeb: true }, Actions: [ { Name: 'Scarica allegato', InCommands: true, DefaultDocument: true } ] OrderByExternalIds: 'Data_A' } } ], }
Elenco degli ExternalId dei campi da mostrare in griglia, separati dal carattere ';'
Elenco degli ID dei campi da caricare forzatamente nella griglia senza doverli effettivamente mostrare, separati dal carattere ';'. Risulta utile nel caso in cui si vogliano realizzare delle colonne calcolate che neccessitano del valore di campi da non visualizzare sempre in griglia.
Elenco degli ExternalId dei campi da caricare forzatamente nella griglia senza doverli effettivamente mostrare, separati dal carattere ';' Risulta utile nel caso in cui si vogliano realizzare delle colonne calcolate che neccessitano del valore di campi da non visualizzare sempre in griglia.
Permette di specificare dei parametri da passare alle maschere di Insert. Si possono utilizzare tutti i parametri che è possibile passare normalmente ad una maschera di Insert.
Attenzione: Per utilizzare il parametro "Presenter" bisogna utilizzare i ":" e non il "." per specificare le sotto-proprietà ( come da esempio ).
"Presenter[NumeroIdentificativoParametro]:XXX"
Permette di specificare dei parametri da passare alle maschere di Update. Si possono utilizzare tutti i parametri che è possibile passare normalmente ad una maschera di Update.
Attenzione: Per utilizzare il parametro "Presenter" bisogna utilizzare i ":" e non il "." per specificare le sotto-proprietà ( come da esempio ).
"Params[NumeroIdentificativoParametro]:XXX"
SessionId dell'utente con cui loggarsi a DocsMarshal.
Questo parametro non può essere definito tramite ConfigUrl. Deve essere definito (opzionalmente) nell'URL di chiamata all'API.
Id dell'elemento HTML che verrà generato per creare la griglia. L'ID NON deve riferirsi ad un ID già esistente, in quando DocsMarshal ne creerà uno.
Url di un documento JSON contenente la configurazione per il componente. Questo parametro è necessario nel caso in cui si vogliano specificare molti parametri, al fine di non superare la lunghezza massima di un'url HTTP.
Se true, allora il sistema salverà ogni modifica che l'utente apporterà al layout della griglia. Se false, allora la griglia verrà mostrata ogni volta con le impostazioni di default definite tramite i parametri di configurazione.
DocsMarshal memorizza un layout per ogni UserId per ogni GridId.
Attenzione: se questo parametro è impostato su "true" alcuni parametri di ordinamento/raggruppamento come OrderById o GroupByExternalIds (e simili) verranno ignorati.
Se true, allora il sistema caricherà il layout precedentemente salvato per questi utenti e griglia, se presente.
DocsMarshal memorizza un layout per ogni UserId per ogni GridId.
Se true, allora il sistema salverà tutti i filtri configurati nella griglia.
Per essere configurato a true, è necessario che anche il parametro SaveLayout sia impostato a true.
Valore di default: false.Identificatore della griglia per il salvataggio del layout.
Il GridId dovrebbe identificare in modo univoco la pagina nella quale viene usata la griglia, oppure dovrebbe indicare lo scopo della griglia. Uno stesso UserId avrà lo stesso layout in tutte le griglie che condividono lo stesso GridId.
Valore di default: Un identificativo univoco delle classi documentali selezionate.Identificatore dell'utente per il salvataggio del layout.
Valore di default: Un identificativo univoco dell'utente loggato.ID della lingua da impostare per la visualizzazione della griglia. Definisce, ad esempio, quale lingua viene visualizzata quando si seleziona un campo multilanguage.
Valore di default: La lingua configurata per l'utente loggato.LanguageCode della lingua da impostare per la visualizzazione della griglia. Definisce, ad esempio, quale lingua viene visualizzata quando si seleziona un campo multilanguage.
Valore di default: La lingua configurata per l'utente loggato.Elenco degli ID dei campi su cui effettuare raggruppamento, separati dal carattere ';'. È possibile inserire l'ID tra (), così facendo il gruppo verrà inizialmente impostato come collassato, altrimenti verrà impostato come espanso
Elenco degli ExternalId dei campi su cui effettuare raggruppamento, separati dal carattere ';'. È possibile inserire l'ExternalId tra (), così facendo il gruppo verrà inizialmente impostato come collassato, altrimenti verrà impostato come espanso
Elenco degli ID dei campi su cui effettuare ordinamento, separati dal carattere ';' e seguiti dal carattere A (Ascending) o D (Descending)
Ad esempio: 10A;20D
Elenco degli ExternalId dei campi su cui effettuare ordinamento, separati dal carattere ';' e seguiti dal carattere underscore e A (Ascending) o D (Descending)
Ad esempio: Persone_A;Nome_D
Se true, l'HTML generato includerà esclusivamente i tag <script> e <link> necessari, oltre all'elemento contenitore specificato come ElementId.
Se false, l'HTML generato sarà una pagina completa.
Se true allora non verrà generato il codice per l'inclusione di jQuery. Usare solamente se jQuery è già incluso nella pagina di inclusione. È richiesta una versione di jQuery pari o successiva a v3.x.
Se true allora non verrà generato il codice per l'inclusione di Bootstrap. Usare solamente se Bootstrap è già incluso nella pagina di inclusione. È richiesto Bootstrap>=3.3.7, sia script che stylesheet.
Se true allora non verrà generato il codice per l'inclusione degli script DevExpress. Usare solamente se sono già inclusi nella pagina altri componenti di questo tipo.
Se true allora viene mostrata la barra di ricerca.
Questa ricerca agisce client-side ed è modificabile dall'utente.
Se true allora viene mostrato il pannello di filtro.
Il pannello di filtro permette di configurare complessi filtri client-side tramite UI.
Definisce il valore iniziale di ricerca.
Questa ricerca agisce client-side ed è modificabile dall'utente.
Se true abilita la selezione, ovvero la possibilità di dare focus a una o più righe.
Valore di default: true.Definisce se e quando verranno visualizzati i checkbox per la gestione della multiselezione. Questo parametro viene considerato solamente se MultipleSelection = true. I possibili valori sono i seguenti:
Default: true
Se abilitato, muoversi tra le righe della griglia utilizzando le frecce della tastiera sposta automaticamente anche la selezione.
Disattivabile solo in caso di griglia con multiselezione attraverso questo parametro, oppure premendo il tasto 'Spazio'
Se true allora verrà tolta all'utente la possibilità di aggiungere e rimuovere colonne dalla griglia.
Se true allora verrà tolta all'utente la possibilità di usare la funzione "Group By".
Se true allora verrà tolta all'utente la possibilità di modificare la largheza delle colonne.
Se true allora non verranno applicati alla griglia i colori degli stati di DocsMarshal.
Sarà comunque possibile controllare gli stili delle righe sulla base del loro stato tramite CSS: il componente applica ad ogni <tr> una classe CSS .dm-object-state-id-{id} con il corrispondente ObjectStateId.
Simula la mancanza di riservatezze di inserimento nella griglia. Se falso, tutti i metodi per inserire profili verranno quindi disabilitati.
Simula la mancanza di riservatezze di modifica su tutti i profili della griglia. Se falso, tutti i metodi per modificare i profili verranno quindi disabilitati.
Simula la mancanza di riservatezze di eliminazione su tutti i profili della griglia. Se falso, tutti i metodi per eliminare i profili verranno quindi disabilitati.
Se true allora dopo ogni inserimento verrà chiesto all'utente se si vuole inserire un altro profilo
Indica se mostrare il bottone "modifica" per i profili con le riservatezze necessarie
Valore di default: trueIndica se mostrare il bottone "elimina" per i profili con le riservatezze necessarie
Valore di default: trueIndica se le colonne provenienti da Dynamic Association devono riportare il prefisso della classe di provenienza. Qualora settando a "false" questo parametro ci dovessero essere due colonne con lo stesso nome, in quelle colonne verrebbero automaticamente re-introdotti i prefissi
Valore di default: trueConsente di modificare i label delle colonne della griglia. Questo è valido per campi di sistema, campi aggiuntivi e campi provenienti da Dynamic Associations.
Ogni elemento è così formato:
Id del campo su cui si vuole intervenire.
ExternalId del campo su cui si vuole intervenire.
Indica che questo label deve essere applicato solamente se la la lingua della griglia corrisponde a questo LanguageCode.
Indica il nuovo label da impostare per il campo.
Il numero impostato è il corrispettivo degli elementi visualizzati per ogni pagina.
Valore di default: 20.
Se true verranno visualizzati i bottoni avanti e indietro ( < e > ) nella paginazione.
Nome di una funzione Javascript (disponibile nello scope globale) che applica un filtro ai dati ricevuti dalla DataGrid prima che questi vengano passati al componente.
La funzione viene chiamata una volta per ogni riga, e riceve come unico parametro un oggetto contenente i dati relativi alla riga. La funzione deve ritornare true se si vuole tenere la riga, oppure false per scartarla.
Nome di una funzione Javascript (disponibile nello scope globale) che stabilisce per ogni profilo se è selezionato o meno.
La funzione viene chiamata una volta per ogni profilo, e riceve come parametri un oggetto contenente i relativi dati e un booleano che indica se la riga è attualmente selezionata o meno. La funzione deve ritornare true se la riga deve risultare selezionata.
Nome di una funzione Javascript (disponibile nello scope globale) che stabilisce per ogni profilo se è modificabile o meno. Non è possibile rendere modificabile un profilo se le riservatezze non lo consentono.
La funzione viene chiamata una volta per ogni profilo, e riceve come unico parametro un oggetto contenente i relativi dati. La funzione deve ritornare false se si vuole impedire di modificare il profilo.
Nome di una funzione Javascript (disponibile nello scope globale) che verrà invocata ogni qual volta il componente avrà finito di generare l'elemento corrispondente ad una riga della griglia.
La funzione viene chiamata una volta per ogni riga, e riceve come unico parametro un oggetto con le seguenti proprietà:
Specifica dei filtri di ricerca da applicare server-side, non modificabili dall'utente. Ogni elemento dell'array specifica una condizione su un campo aggiuntivo. Tutte le condizioni vengono combinate in AND.
Ogni elemento è così formato:Id del campo su cui si vuole applicare il filtro.
È necessario specificare questo campo, oppure FieldExternalId
ExternalId del campo su cui si vuole applicare il filtro. È possibile utilizzare la sintassi "DynAssExternalId.FieldExternalId" per applicare filtri a campi in Dynamic Association.
È necessario specificare questo campo, oppure FieldId
Condizione di ricerca da applicare sul campo specificato da FieldId o FieldExternalId.
Fare riferimento all'elenco delle condizioni valide riportato nella documentazione delle Condition
Operando della condizione di ricerca.
Operando aggiuntivo della condizione di ricerca, necessario ad esempio per specificare una condizione Between su un campo di tipo DateTime.
Stringa di formato da utilizzare per interpretare i valori Value e Value2 qualora il tipo del campo su cui si sta applicando il filtro non sia String e sia quindi necessaria una conversione.
CultureInfo Name da utilizzare per interpretare i valori Value e Value2 qualora il tipo del campo su cui si sta applicando il filtro non sia String e sia quindi necessaria una conversione.
Ad esempio: IT-it, EN-us.
Operandi della condizione di ricerca.
Elenco degli id o externalid degli object da includere nella search, separati dal carattere ';'
Elenco degli id degli object da includere nella search, separati dal carattere ';'
Elenco degli external id degli object da includere nella search, separati dal carattere ';'. È possibile utilizzare la sintassi "DynAssExternalId.ObjectStateExternalId" per applicare filtri agli stati in Dynamic Association.
Elenco degli id o degli external id dei Domain da includere nella search, separati dal carattere ';'
Alternativa più ordinata di Domains, elenco degli id dei Domain da includere nella search.
Elenco degli ExternalId dei domini da includere nella search. È possibile utilizzare la sintassi "DynAssExternalId.DomainExternalId" per applicare filtri sui profili in Dynamic Association.
Specifica delle azioni custom che si possono mettere a disposizione dell'utente.
Ogni elemento è così formato:Una descrizione dell'azione, che comparirà come opzione nel context menu.
Indica se la action deve essere inserita in testa (prepend) oppure in coda (append). Questo parametro è valido se la action deve essere inserita in un elenco, ad esempio perchè InCommands=true.
L'icona da utilizzare nel caso in cui la action risulti nella creazione di un pulsante. Le icone che si possono utilizzare sono:
Mostra una descrizione nel tooltip del bottone.
Url da aprire in seguito al click sull'azione. È possibile definire delle URL dinamiche costruite con dei valori presi dal profilo della riga selezionata. Ad esempio:
http://docsmarshalportal.myapp.com/Profile/ForUpdate?ObjectId={RefIdProdotto}
Apre una maschera di update per il Prodotto referenziato dalla riga corrente, inserendo nell'URL il campo aggiuntivo RefIdProdotto.
http://www.myapp.com/DettaglioProdotto?IdProdotto={ObjectId}
Apre una pagina custom creata sul sito del cliente e gli passa come parametro IdProdotto l'ObjectId del profilo selezionato.
Se true, allora l'URL verrà aperta in un Iframe contenuto in un Modal Bootstrap.
Se true, allora l'azione verrà aperta all'interno di un Popup DocsMarshal. (Al momento supportato da maschere di profili)
Target nel quale aprire l'URL. Ad esempio _SELF o _BLANK.
Valore di default: _BLANKSe true allora l'azione effettua il download del documento di default del profilo.
FieldId del campo di tipo ByteArray di cui eseguire il download.
FieldExternalId del campo di tipo ByteArray di cui eseguire il download.
ExternalId del modello da generare.
Id del modello da generare.
Indica se la action dovrà aprire il documento (contenuto nel campo indicato nel parametro 'DocumentFieldId') nel PreviewPanel.
Se falso, verrà aperto in una nuova scheda.
ExternalId della Dynamic Association da aprire in un nuovo tab (sempre all'interno del componente Griglia).
Id della Dynamic Association da aprire in un nuovo tab (sempre all'interno del componente Griglia).
Nome di una funzione Javascript da invocare in seguito alla selezione dell'azione. Questa opzione è un'alternativa al parametro URL, e può essere utilizzata solamente se il codice della Grid viene integrato direttamente nella pagina del cliente (e quindi la griglia non viene integrata in un Iframe).
La funzione Javascript deve essere dichiarata nello scope globale. Le verranno passati i seguenti parametri:
Data: un oggetto che contiene tutti i valori dei campi per il profilo corrente.
DataGrid: un oggetto dxDataGrid.
e: l'oggetto passato originariamente come evento dal componente dxDataGrid.
Indica che l'azione dovrà comparire come pulsante visibile in ogni riga.
Indica che l'azione dovrà comparire facendo click destro su una riga.
Indica che l'azione dovrà essere eseguita quando una riga viene selezionata.
Indica che l'azione dovrà essere eseguita quando una riga viene deselezionata.
Indica che l'azione dovrà essere eseguita quando viene fatto doppio click su una riga, oppure viene premuto F2, oppure viene premuto "modifica" o il tasto "invio".
Indica che la action dovrà essere valida solamente per i profili con l'ObjectStateId specificato.
Indica che la action dovrà essere valida solamente per i profili con gli ObjectStateId specificati.
Indica che la action dovrà essere valida solamente per i profili con l'ObjectStateExternalId specificato.
È inoltre possibile passare più valori, divisi dal carattere ; (esempio Stato1;Stato2')
Indica il nome di una funzione Javascript che verrà chiamata una volta per ogni profilo. Alla funzione verrà passato come unico parametro un oggetto rappresentante il profilo, e dovrà ritornare un valore booleano. L'action verrà mostrata solamente per i profili per cui la funziona ha ritornato il valore true.
Indica l'id dell'evento di workflow che deve essere lanciato.
Indica il nome dell'evento di workflow che deve essere lanciato.
Indica che, dopo aver lanciato un evento di workflow, si desidera visualizzare il progresso del processo.
Indica che la action deve mostrare una maschera di visualizzazione.
Indica che la action deve mostrare una maschera di update.
Indica che la action deve eliminare il profilo selezionato, dopo aver richiesto conferma all'utente.
Per le action con Update=true, indica la maschera aggiuntiva da utilizzare per l'operazione di update.
Se valorizzato questa azione permette di aprire la pagina DocsMarshal configurata.
Se valorizzato questa azione permette di aprire la pagina DocsMarshal configurata.
Per le action di tipologia "Pagina" è possibile fornire parametri addizionali da fornire alla sua apertura che verranno aggiunti all'url.
Il parametro accetta una lista di oggetti configurati nel seguente modo (le proprietà con * sono obbligatorie):
{ FieldId: 3, FieldExternalId: "Test" DynAssPathIds: "4ab45d2f-9a97-4798-bb08-6bb099ba37ee" DynAssPathExternalIds: "TestDyn" ParameterName * : "extraParamName" DefaultValue : "customValForExtraParamName" }
Serve per eseguire delle azioni custom su più profili.
Utilizza i parametri di Actions più alcuni dedicati.
Se impostato a "true" l'azione verrà eseguita su tutti i profili.
Se impostato a "true" l'azione verrà eseguita su tutti i profili filtrati.
Se impostato a "true" l'azione verrà eseguita su tutti i profili selezionati.
Ritorna i profili separati dal separatore definito. Di default ritorna degli array.
Torna utile quando si utilizza il parametro Url delle Actions.
Definisce dove mettere graficamente il bottone, "left" a sinistra, "center" al centro e "right" a destra. Di default è impostato a "center".
Definisce il numero minimo di righe che devono essere selezionate per utilizzare questa grid action.
Definisce il numero massimo di righe che devono essere selezionate per utilizzare questa grid action.
Indica che tutte le righe devono essere deselezionate al completamento dell'azione.
Indica che la action deve ricaricare i dati della griglia.
Indica che la action deve fare scaricare all'utente una esportazione della griglia.
Serve per definire delle "Etichette" di tipo testuale da andare a sostituire con le etichette di base.
Il nome rappresentativo dell'etichetta.
Il valore dell'etichetta, il testo che verrà effettivamente mostrato.
Object Id del campo al quale modificare il label.
Id del campo al quale modificare il label.
External Id del campo al quale modificare il label.
Serve per aggiungere un sommario, il totale o simili sotto l'ultima riga della pagina. O il "FieldId" o l'"ExternalID" devono essere presenti.
Id del campo.
ExternalId del campo.
Il tipo di summary da utilizzare:
Salta le righe con i valori vuoti/nulli.
Valore di default: true.
Il tipo del campo utilizzato ( Int, String, Decimal, ecc... ).
Nel caso di decimali ad esempio mostra quanti numeri ( prima e dopo la virgola ) far visualizzare.
Serve per aggiungere una descrizione testuale al summary. Per mostrare il valore calcolato da DM utilizzare {0}
Serve per aggiungere un sommario sotto i raggruppamenti.
Utilizza gli stessi parametri di TotalSummary, più alcuni dedicati.
Se impostato a "true" mostra il sommario allineato alla colonna.
Se impostato a "true" mostra il sommario nel piede di ogni gruppo.
Serve per creare delle colonne aggiuntive calcolate da un parametro passato.
Richiami la tua funzione "f"
Definisce l'ExternalId per la colonna creata
Nome della colonna.
Indica la posizione della colonna.
Se impostato a "true" interpreta la stringa ritornata come stringa contenente codice HTML.
Permette di configurare l'aspetto e il comportamento di tutti i popup aperti dalla griglia.
Indica che il popup deve essere aperto ad una dimensione pari a quella dell'intera pagina
Consente all'utente di spostare il popup trascinandolo.
Consente all'utente di ridimensionare il popup.
Mostra il titolo del popup, ovvero la barra nella parte alta dello stesso.
Mostra a fianco del titolo un bottone per la chiusura del popup.
Indica la larghezza del popup.
Indica l'altezza del popup.
Indica la larghezza minima del popup.
Indica l'altezza minima del popup.
Indica la larghezza massima del popup.
Indica l'altezza massima del popup.
Indica dove deve essere posizionato il popup. Questo parametro accetta una stringa nel seguente formato:
my {position} at {position} of {container}
"position" può assumere uno dei seguenti valori:
"container" può essere il valore speciale "window", che quindi posiziona l'elemento relativamente alla finestra, oppure un selettore CSS che identifica l'elemento relativamente a cui posizionare il popup.
Valore di default: "my center at center of window"Definisce l'altezza da impostare per la griglia. Si può utilizzare un qualsiasi valore valido per CSS.
Valore di default: "auto"Se impostato a "true" allora sarà visibile la barra laterale, che permette di eseguire operazioni sui profili.
Valore di default: falseSe impostato a "true" allora verranno abilitati i comandi che permettono di mostrare e nascondere la barra laterale.
Valore di default: falseSe impostato a "false" allora la sidebar non verrà chiusa automaticamente nel momento in cui si effettuerà un click al suo esterno
Definisce cosa mostrare nella barra laterale. Il parametro accetta una lista di ID separati dal carattere ";".
Alcuni ID fanno riferimento a dei "gruppi" di elementi. Abilitare il gruppo corrisponde ad abilitare ogni singolo elemento al suo interno.
I possibili ID sono i seguenti:
Definisce quale pannello (tra Commands e DynamicAssociations) deve essere visibile inizialmente nella barra laterale. I possibili valori sono:
Definisce quale gruppo di elementi deve essere inizialmente espanso nella barra laterale. I possibili valori sono:
Imposta il colore di foreground dei titoli, ad esempio le intestazioni di colonna. Accetta un qualsiasi colore CSS valido.
Quando viene usato il parametro AlternateRows, questo parametro permette di definire tramite un colore CSS quale colore devono avere le righe dispari.
Determina l'apparenza della colonna ObjectState. È possibile visualizzare i seguenti elementi:
È possibile combinare a piacere questi elementi in una stringa, separandoli con il carattere ";". Ad esempio:
Se true, allora il fuoco verrà portato sulla griglia non appena la griglia sarà stata generata.
Valore di default: trueSe true, allora sarà visibile un pulsante che permette l'esportazione della griglia come file xlsx.
Valore di default: falsePermette di specificare il formato del file generato dalla procedura di Export. I formati supportati sono:
Permette di specificare le caratteristiche del file PDF generato dalla procedura di Export.
Le proprietà sono le seguenti:
Intervallo delle celle che si desidera esportare, per esempio: "B2:E7". Si può specificare anche un intervallo di righe (1:20) o di colonne (B:E)
Metadato. Parole chiave del file PDF
Metadato. Descrizione del file PDF
Metadato. Titolo del file PDF
Metadato. Autore del file PDF
Se true, allora inserisce automaticamente le interruzioni di pagina
Se true, allora qualora dovessero eserci delle formule con errori, gli errori verrebbero mostrati
Se true, allora il contenuto sarà centrato verticalmente
Se true, allora il contenuto sarà centrato orizzontalmente
Se true, allora il contenuto sarà in bianco e nero
Permette di limitare la larghezza del documento, ovvero il numero di pagine occupate orizzontalmente da quest'ultimo
Permette di limitare l'altezza del documento, ovvero il numero di pagine occupate verticalmente da quest'ultimo
Se true, allora verranno mostrate le linee orizzontali e verticali della griglia
Se true, allora verranno mostrati gli Headings
Righe che verranno ripetute in ogni pagina. Ad esempio: "1:3"
Colonne che verranno ripetute in ogni pagina. Ad esempio: "A:C"
Percentuale che determina quanto deve essere scalata la dimensione del worksheet
Orientamento della pagina; Può assumere i seguenti valori:
Margine sinistro del foglio
Margine superiore del foglio
Margine destro del foglio
Margine inferiore del foglio
Margine situato tra l'header e il contenuto
Margine situato tra il footer e il contenuto
Tipo di carta utilizzato come dimensioni della pagina; Può assumere i seguenti valori:
Se true, verranno mostrate le formule invece dei valori calcolati
Permette di selezionare la qualità delle immagini contenute nel file; Può assumere i seguenti valori:
Permette di specificare la compatibilità del documento con la specifica PDF/A desiderata; Può assumere i seguenti valori:
Permette di specificare se e dove la colonna dei comandi deve essere bloccata.
I valori accettati sono left e right.
Permette di specificare la modalità di inline editing consentita all'utente.
I valori accettati sono:
Quando l'inline editing è abilitato, premendo F2 si entra in modalità editing.
L'inline editing permette di fare data entry in modo rapido, con le seguenti eccezioni:
Elenco degli ExternalId dei campi su cui deve essere possibile fare inline editing. Se non viene specificato alcun valore, allora saranno editabili tutti i campi supportati.
Gli ExternalId devono essere separati dal carattere ";".
Permette di specificare ogni quanti secondi la griglia deve refreshare automaticamente i dati.
Se è utilizzata la funzionalità di autorefresh della griglia allora questo parametro indica che il titolo della pagina corrente deve essere modificato per mostrare il tempo mancante al prossimo refresh dei dati.
Abilita la funzionalità di master/detail sulla griglia, permettendo all'utente di "espandere" individualmente ogni riga rivelandone il dettaglio. A meno che non si indichi diversamente, il dettaglio mostra la maschera di update del profilo selezionato.
Stringa CSS che indica l'altezza da assegnare al dettaglio quando viene espansa una riga con la funzionalità master/detail.
Indica se la maschera aperta nel dettaglio dovrà essere di Update o di View. Possibili valori: UPDATE, VIEW.
Valore di default: UPDATE.Indica il nome di una funzione Javascript che verrà invocata quando l'utente espande una riga per rivelarne il contenuto. La funzione riceve in ingresso un oggetto con due proprietà:
Permette di indicare l'ExternalId di una DynamicAssociation che verrà mostrata nel detail.
Il parametro MasterDetailDynAssExternalId consente di configurare la griglia di Dynamic Association da aprire nel dettaglio. Si possono usare tutti i parametri disponibili per una griglia di Dynamic Association.
Il parametro MasterDetailMaskConfig consente di configurare la maschera di update da aprire nel dettaglio. Si possono usare tutti i parametri disponibili per una maschera di update.
Abilita la funzionalità di stampa di un documento che si sta visualizzando tramite PreviewPanel.
Se viene usato il parametro PreviewPanelShowWatermark allora comparirà un Watermark sul documento che si sta visualizzando tramite PreviewPanel.
Se viene usato il parametro PreviewPanelFieldExternalId allora all'apertura del PreviewPanel nell'elenco dei campi sarà preselezionato il campo indicato.
Se viene usato il parametro PreviewPanelOpenOnLoad allora verrà aperto automaticamente il PreviewPanel a fine caricamento della Grid.
Abilita la funzionalità di visualizzazione del Field Profile nel PreviewPanel, permettendo la visualizzazione della maschera di update predefinita.
Se viene usato il parametro PreviewPanelMaskExternalId verrà utilizzata una maschera aggiuntiva fornita tramite external id per la visualizzazione dei dati del Field Profile nel PreviewPanel.
Permette di configurare le griglie che verranno aperte in Dynamic Association tramite il menu "Dynamic Associations" oppure tramite una Action.
Ogni elemento fa riferimento ad una Dynamic Association tramite il suo Id o ExternalId e definisce la configurazione della griglia usando qualsiasi parametro elencato in questa pagina.
In alternativa è possibile indicare una Dynamic Association indicando il ClassTypeId o ClassTypeExternalId di destinazione. In queto modo si configura in maniera più generica come devono essere aperte le griglie che sfoceranno in quella classe, non solo al primo livello ma anche all'n-esimo.
Ad esempio: è necessario creare un griglia di Ordini, ed è necessario che se l'utente navigherà verso una griglia di Clienti, questa dovrà essere aperta con il flag MenuEnabled=false. Esistono più DynAss che vanno da Ordini a Clienti: "Ordini -> Clienti" e "Ordini -> Offerte -> Clienti". Se configurassi le griglie di DynAss utilizzando il parametro DynAssExternalId dovrei ripetere la stessa configurazione per ogni DynAss. Inoltre, qualora dovessero esserci altri "percorsi" di DynAss che portano a Clienti e che non mi sono ricordato (oopure che verranno aggiunti in futuro), l'utente potrebbe arrivare ad una griglia di Clienti avendo il menu abilitato, ed avere quindi accesso a funzionalità non previste. Specificando invece la configurazione della griglia di DynAss usando il parametro ClassTypeExternalId=Clienti ho modo di definire la configurazione della griglia di DynAss una volta sola avendo la garanzia che qualsiasi griglia di DynAss che dovesse raggiungere la classe Clienti avrà il menu disabilitato.
Ogni elemento dell'array può avere queste proprietà:
Id della Dynamic Association che si desidera configurare
ExternalId della Dynamic Association che si desidera configurare
Id della classe che si desidera configurare
ExternalId della classe che si desidera configurare
Specifica che la Dynamic Association deve essere già aperta quando la griglia viene generata
Questo parametro ha effetto solamente se il parametro Open ha valore "true", e indica che il tab all'interno del quale è stata aperta la DynAss deve essere il tab "attivo".
Configurazione che si desidera applicare alla griglia in DynAss. Questo oggetto conterrà quindi proprietà come ShowRowLines, ObjectStateStyle, Actions, TotalSummary, ecc.
<div id="my-grid"></div> $('#my-grid').dmGrid({ ClassTypeExternalId: 'Clienti', SelectExternalIds: 'ObjectState[Stato];RagioneSociale;Indirizzo;', OrderByExternalIds: 'RagioneSociale_A', Where: [ { FieldExternalId: 'Indirizzo', Condition: 'Contains', Values: ['Einaudi', 'Bonaparte'] } ], InsertParams: { MaskExternalId: 'InserimentoWeb', OrigineCliente: 'WEB', }, UpdateParams: { MaskExternalId: 'ModificaWeb' } });