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.
Info

Nous allons améliorer l’expérience utilisateur et développeur au cours de la version.
Suite aux retours qui nous seront remontés, nous proposerons des solutions adaptés.

Mobile

Cas d’utilisation des fonctionnalités et variables
A l’initialisation, nous injectons toutes les variable Options via le script Application_Initialize

  • Utilisez la syntaxe maVariable|Options pour toutes les variables de la table sw_data_basevariable n'étant pas obsolètes.

    • Exemple pour la variable Equipment.Scanner.Type

      image-20250107-082625.png
      Bloc de code
      BARCODESCANNER_CONNECT( "<var>Equipment.Scanner.Type|Options</var>" )
  • Utilisez l’une des deux syntaxes Feature.maFonctionnalité|Options ou monAncienneVariable|Options (pour la rétrocompatibilité) pour toutes les fonctionnalités de la table sw_data_feature
    (Pour rappel, l’utilisateur doit être autorisé à utiliser la fonctionnalité sur le mobile via la capacité maFonctionnalité.MobileAuthorized) :

    • Par exemple pour Intervention

    • Si la fonctionnalité ne découle pas d’une migration, utilisez uniquement la syntaxe Feature.maFonctionnalité|Options.

    • Si la fonctionnalité était une variable et est migrée, il est conseillé d’utiliser la syntaxe Feature.maFonctionnalité|Options ou continuer à utiliser l’ancienne syntaxe monAncienneVariable|Options (pour la rétrocompatibilité).

    • Exemple avec l’ancienne variable SW-.Intervention.Available migrée en fonctionnalité dans la table sw_data_feature

      image-20250107-072807.png
      Bloc de code
      IF ( EQUALS( "<var>Intervention.Available|Options</var>", "1" ) == 0 ) THEN
        calendarGroupedTabSeries = REPLACE( calendarGroupedTabSeries, ",Interventions", "" )
      ENDIF
      //OU
      IF ( EQUALS( "<var>Feature.Intervention|Options</var>", "1" ) == 0 ) THEN
        calendarGroupedTabSeries = REPLACE( calendarGroupedTabSeries, ",Interventions", "" )
      ENDIF
  • Les capacités n'étant pas encore remontées sur le mobile en dehors des MobileAuthorized, utilisez la syntaxe monAncienneVariable|Options pour toutes les anciennes variables ayant été migrées en capacité dans la table sw_data_permission_capacity.

    • Exemple pour la capacité Product.Stock.MobileManualEntry ancienne variable StockManualEntry.Enabled

      image-20250107-093930.png

      image-20250107-094018.png

Web

Cas d’utilisation des fonctionnalités et variables
Au warmup, nous injectons toutes les variables de session via le script project.settings.projectsettings

  • Utilisation d’une fonctionnalité
    Une fonctionnalité est initialisée et injectée en variable de session lors du warmup de l’application.La variable de session vaudra Feature.maFonctionnalité.
    Par exemple pour la fonctionnalité Intervention:

    • Elle est utilisable sous la forme {{Feature.maFonctionnalité}} dans une requête SQL.

    • Elle est utilisable sous la forme $session.getAsync('Feature.maFonctionnalité') dans un script TypeScript.

    • Elle est utilisable sous la forme

      Bloc de code
      "Conditions": [
        {
            "Name": "feature.authorized.session",
            "Params": {
              "Key": "Feature.maFonctionnalité"
            }
        }
      ]

      dans un script TypeScript ou JSON.

Vérifier en base de donnée

...