Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...

  • WIDGET

    • Nommage : codeModule + '_' + famille + typeWidget + codeWidget + “.widget.json”

    • par exemple gt_art_graph_TopFournisseurs.widget.json

    • indique le type de rendu/layout de layout, et les informations d’affichage comme le titre, les libellés, la taille. Sert au binding entre le retour de la fonction diva et le rendu visuel

      • La balise ‘Label’ contient le nom qui sera affiché à l’utilisateur

    • Exemple de contenu

Bloc de code
{
    "Children": {
        "graphTest": {
            "Type": "graph",
            "Title": "Nombre affaires / opportunités en cours utilisant mon article réparti par type d'arborescence d'affaire",
            "DataSource": "gt_art_graph_AffairesBesoin_Arbo",
            "Series": [
                {
                    "Label": "EvtCrm",
                    "ValueField": "PieValue",
                    "GraphType": "donut"
                }
            ]
        }
    },
    "Label": "Nombre affaires / opportunités en cours utilisant mon article réparti par type d'arborescence d'affaire",
    "Icon": "chart-line",
    "Description": "Nombre affaires / opportunités en cours utilisant mon article réparti par type d'arborescence d'affaire",
    "ColSpan": 6,
    "RowSpan": 2
}

...

  • Nommage : codeModule + '_' + famille + codeCatalogue + “.catalog.json”

  • par exemple gt_art_vente.catalog.json

  • liste les widgets entités, pour chaque entité

    • La balise ‘Label’ contient le nom qui sera affiché à l’utilisateur

    • La balise ‘WidgetNames' liste les ficheir JSON widget (sans extension)

  • Exemple de contenu

Bloc de code
languagejson
{
    "Label": "Vente",
    "WidgetNames": [
		"gt_art_list_PceVentes",
		"gt_art_list_tarif_vente",
		"gt_art_graph_TopClients"
	]
}

...

Ajout de widget en surcharge

L’ajout de widget se fait en deux phases

Pour accéder aux ficheirs JS

A FINIR

Pour accéder aux JSON : installer MS visual Les widgets sont tous décrits par des fichiers JSON. Il s’agit donc de modifier les fichiers concernés

Pour cela il est indispensable d’installer Microsoft Visual code (gratuit) et un composant Divalto qui permet de naviguer dans les fichiers JSON du serveur après connexion au projet

Ensuite modifier le JSON qui fait le lien entre une entité et le catalogue (ici gt_art.catalog.json) pour ajouter un catalogue ‘spé’, puis s’inspirer du catalogue existant

En surcharge de zoom:

...

il faut créer un fichier nommé “nom du masque” + ‘u' + “.dashboard.json” en faisant une COPIE du fichier “sans le u” (car pas de fusion automatique). Dès que le fichier ‘u’ est trouvé il remplace le 'non u’

...

il faut nécessairement avoir un masque écran 'u' dans le projet client pour compiler un objet “nom du masque” + u + .dhof pour déclencher la recherche du fichier JSON (même si aucune modification faite dans le zoom)

...

.

Il faut ensuite, selon la modification que l’on souhaite apporter, modifier le ou les fichiers JSON selon les règles suivantes

Création d’un widget entité de surcharge

Pour la création d’un widget complémentaire, suivez le chapitre ci-dessus “Fichier JSON widget entité” qui décrit les fichiers JSON d’un widget entité, et prenez un exemple de widget dont le comportement est proche au niveau du rendu, donc par exemple prendre pour modèle un widget ‘tableau’ si l’on souhaite créer un nouveau tableau.

Les fichiers JSON seront nécessairement dépendants d’un module diva de surcharge xxTMDASHBOARDyyy.dhsp qui construit la chaîne JSON envoyée au widget

On pourra ajouter la lettre 'u' au fichier JSON en préfixe pour les distinguer

Astuce

Pour illustration dans ce qui suit, on prend pour exemple un nouveau widget nommé “ugt_art_graph_top” qui est décrite par deux fichiers JSON ugt_art_graph_top.widget.json et ugt_art_graph_top.datasource.json

Ajout d’un widget entité en surcharge

L’ajout de widget entité se fait en deux phases

  • Surcharge du masque écran de zoom de l’entité concernée

  • Création d’un fichier JSON “catalogue surcharge” avec le nouveau widget

  • Création d’un fichier JSON “dashboard” avec le nouveau catalogue

La première phase consiste à s’assurer d’avoir un masque écran de surcharge dans le projet client (par exemple gtez000_sql.dhsf qui est la surcharge de gtez000_sql.dhsf), afin d’obtenir un objet de surcharge. La surcharge n’implique pas forcément de modification par rapport au standard (si par exemple on souhaite uniquement ajouter un widget sans modifier le masque écran), mais la présence d’un objet ‘xxxxu.dhof’ est indispensable pour déclencher la recherche du fichier JSON de la seconde étape.

Astuce

Pour illustration, j’ai donc ici un objet gtez000_sql.dhof dans mes objets spécifiques

La seconde étape consiste à créer un fichier JSON “catalog surcharge” que l’on peut par exemple préfixé de la lettre ‘u' (par exemple ugt_art_prod), et de prendre la structure du chapitre ci-dessus “Fichier JSON catalogue” afin de donner un nom qui sera visible à l’utilisateur et le nom du widget de surcharge

Astuce

Pour illustration, j’ai donc ici un fichier ugt_art_prod.catalog.json qui indique le nom du widget ugt_art_graph_top dans ‘WidgetNames’

La troisième étape consiste à copier le fichier JSON “dashboard” déjà associé au zoom en ajoutant un ‘u' avant le début de l’extension pour obtenir un fichier JSON “dashboard avec surcharge”. Par exemple gtez000_sql.dashboard.json devient gtez000_sqlu.dashboard.json et y ajouter, dans la balise ‘CatalogNames’, le catalogue de surcharge. Attention, dès que ce fichier ‘u' est présent il remplace le 'non u’, ce qui implique que le contenu doit être identique et augmenté de la surcharge (et pas uniquement la surcharge)

Astuce

Pour illustration, j’ai donc ici créer gtez000_sqlu.dashboard.json qui indique le nom du catalogue surcharge en plus des catalogues standard dans ‘CatalogNames’