AbstractTimelineSchedulePage : Global

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 8 minutes de lecture
  • L’include de script AbstractTimelineSchedulePage est une classe d’aide permettant de faciliter l’utilisation des données affichées sur les chronologies.

    Le traitement des données affichées dans une chronologie commence par l’exécution de la fonction correspondante de l’include de script spécifié. Comme les autres includes de script, la syntaxe du langage est JavaScript et suit les contraintes de sécurité par défaut de ce type de ressource. Toutefois, comme les différents types d’options d’affichage sont complexes, une classe d’assistance a été créée. Pour afficher une chronologie, étendez la classe AbstractTimelineSchedulePage et associez-la à sa page de calendrier correspondante. Au minimum, l’extension des classes doit remplacer la méthode getItems(), car il s’agit du principal gestionnaire d’événements pour renvoyer des éléments à afficher sur le client.

    Le client traite les données renvoyées par AbstractTimelineSchedulePage en deux phases. La première phase effectue les mises à jour réelles de la chronologie. Immédiatement après, si elle est configurée, la deuxième phase affiche une boîte de message de réussite, une boîte de message d’erreur ou une invite de message de dialogue. Dans la première phase, les options disponibles pour la manipulation des données comprennent :

    • Ne mettre à jour aucun élément : il s’agit du comportement par défaut. N’effectuez aucune des étapes restantes de la première phase.
    • Mettre à jour avec des éléments spécifiques : Cela se fait à l’aide de : add().
    • Afficher la chronologie à l’aide de la fonction getItems() : Cela se fait à l’aide de : setDoReRenderTimeline(true).
    Remarque :
    Si les deux TimelineItems sont renvoyés et setDoReRenderTimeline définis sur true, le système ignore la setDoReRenderTimeline propriété et affiche explicitement uniquement les TimelineItems qui ont été ajoutés par la fonction add( ).

    Les options disponibles dans la phase deux comprennent :

    • Ne pas afficher de boîte de message : c’est le comportement par défaut.
    • Afficher une boîte de dialogue de réussite : Pour ce faire, utilisez : setStatusSuccess().
    • Afficher une boîte de dialogue d’erreur : pour ce faire, utilisez : setStatusError().
    • Afficher une boîte de dialogue Confirmer : Pour ce faire, utilisez : setStatusPrompt().
    Remarque :

    Une classe de script include qui étend AbstractTimelineSchedulePage reçoit automatiquement tous les paramètres d’URI de l’URL d’origine dont le préfixe commence par sysparm_timeline_. Pour accéder aux valeurs de celles-ci, utilisez : this.getParameter(« sysparm_timeline_VARIABLE ») ; à l’intérieur de votre classe étendue.

    Cela est utile si vous devez afficher une page de planification à partir d’un élément dynamique, par exemple à partir d’un menu contextuel à partir d’une liste. En transmettant des données dynamiques via l’URL, la page de calendrier inclut automatiquement ces paramètres dans les appels Ajax et sera donc accessible dans l’include de script AbstractTimelineSchedulePage .

    AbstractTimelineSchedulePage : add(Objet ObjTimeline)

    Ajoute un objet TimelineItem qui sera renvoyé au client et affiché de manière appropriée sur la chronologie.

    Tableau 1. Paramètres
    Nom Type Description
    Chronologie d’obj Objet Objet TimelineItem à ajouter à la chronologie.
    Tableau 2. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : addSeparator()

    Ajoute un séparateur d’images horizontal dans la liste des éléments de chronologie. Tous les éléments futurs ajoutés via add() seront ajoutés dans l’image de chronologie suivante.

    Tous les éléments futurs ajoutés à l’aide de la méthode add() sont ajoutés dans l’image de chronologie suivante.

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    nul

    L’exemple de code suivant montre comment appeler cette méthode.

    // Inside of a script include that extends AbstractTimelineSchedulePage
          this.addSeparator();
        

    AbstractTimelineSchedulePage : elementMoveX(Chaîne spanSysId, Chaîne newStartDateTimeMs)

    Gestionnaire d’événements lorsqu’un parcours de chronologie se déplace horizontalement.

    Tableau 5. Paramètres
    Nom Type Description
    spanSysId Chaîne L’ID système de la portée actuelle en cours d’ajustement.
    newStartDateTimeMs Chaîne La nouvelle heure de début du parcours, en millisecondes. Assurez-vous d’analyser la chaîne à l’aide de parseInt() avant d’effectuer des comparaisons numériques.
    Tableau 6. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : elementMoveXY(Chaîne spanSysId, Chaîne itemSysId, Chaîne itemSysId, Chaîne newItemSysId, Chaîne newStartDateTimeMs)

    Gestionnaire d’événements lorsqu’un parcours de chronologie se déplace horizontalement et verticalement.

    Tableau 7. Paramètres
    Nom Type Description
    spanSysId Chaîne L’ID système de la portée actuelle en cours d’ajustement.
    itemSysId Chaîne L’ID système de l’élément de chronologie associé au parcours actuel.
    newItemSysId Chaîne L’ID système de l’élément de chronologie (une ligne) dans lequel le parcours actuel a été déplacé.
    newStartDateTimeMs Chaîne La nouvelle heure de début du parcours, en millisecondes. Assurez-vous d’analyser la chaîne à l’aide de parseInt() avant d’effectuer des comparaisons numériques.
    Tableau 8. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : elementMoveY(String spanSysId, String itemSysId, String newItemSysId)

    Gestionnaire d’événements lorsqu’un parcours de chronologie se déplace verticalement.

    Tableau 9. Paramètres
    Nom Type Description
    spanSysId Chaîne L’ID système de la portée actuelle en cours d’ajustement.
    itemSysId Chaîne L’ID système de l’élément de chronologie associé au parcours actuel.
    newItemSysId Chaîne L’ID système de l’élément de chronologie (une ligne) dans lequel le parcours actuel a été déplacé.
    Tableau 10. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : elementSuccessor(String spanSysId, String newSuccSpanId)

    Gestionnaire d’événements lorsqu’une relation de chronologie a été créée entre deux parcours.

    Tableau 11. Paramètres
    Nom Type Description
    spanSysId Chaîne L’ID système du parcours actuel qui sera un prédécesseur de la relation nouvellement créée.
    newSuccSpanId Chaîne L’ID système du parcours successeur à partir de la relation créée.
    Tableau 12. Renvoie
    Type Description
    nul Valeur de retour

    AbstractTimelineSchedulePage : elementTimeAdjustEnd(String spanSysId, String newEndDateTimeMs)

    Gestionnaire d’événements indiquant quand la date de fin d’un parcours de chronologie a été modifiée.

    Tableau 13. Paramètres
    Nom Type Description
    spanSysId Chaîne L’ID système de la portée actuelle en cours d’ajustement.
    newEndDateTimeMs Chaîne La nouvelle heure de fin du parcours, en millisecondes. Assurez-vous d’analyser la chaîne à l’aide de parseInt() avant d’effectuer des comparaisons numériques.
    Tableau 14. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : elementTimeAdjustStart(String spanSysId, String newStartDateTimeMs)

    Gestionnaire d’événements indiquant quand la date de début d’un parcours de chronologie a été modifiée.

    Tableau 15. Paramètres
    Nom Type Description
    spanSysId Chaîne L’ID système de la portée actuelle en cours d’ajustement.
    newStartDateTimeMs Chaîne La nouvelle heure de début du parcours, en millisecondes. Assurez-vous d’analyser la chaîne à l’aide de parseInt() avant d’effectuer des comparaisons numériques.
    Tableau 16. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : getItems()

    Gestionnaire d’événements pour renvoyer des éléments de calendrier à afficher sur la chronologie.

    Tableau 17. Paramètres
    Nom Type Description
    Aucun
    Tableau 18. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : inputBox(String strInputText)

    Gestionnaire d’événements lorsqu’une chaîne a été saisie dans la zone de saisie du panneau de gauche.

    Tableau 19. Paramètres
    Nom Type Description
    strInputText Chaîne Texte saisi dans la zone de saisie du panneau de gauche.
    Tableau 20. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : itemMove(Chaîne, itemSysId, Chaîne, newItemSysId)

    Gestionnaire d’événements indiquant quand un élément de ligne de chronologie a été déplacé et déplacé vers un autre élément de ligne.

    Tableau 21. Paramètres
    Nom Type Description
    itemSysId Chaîne L’ID système de l’élément de chronologie associé au parcours actuel.
    newItemSysId Chaîne L’ID système de l’élément de chronologie (une ligne) dans lequel le parcours actuel a été déplacé.
    Tableau 22. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : setDoReRenderTimeline(Booléen b)

    Indique s’il faut ou non afficher à nouveau tous les éléments de chronologie à l’aide de la fonction getItems( ).

    Tableau 23. Paramètres
    Nom Type Description
    b Booléen Si vrai, restituez la chronologie en effectuant un nouvel appel d’événement au gestionnaire getItems() du serveur.
    Tableau 24. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : setPageTitle(String strTitle)

    Spécifie le texte à afficher comme titre de la chronologie.

    Le titre de la page peut être défini (et mis à jour) à partir de n’importe quel événement interactif ; cependant, il est recommandé de le définir pendant l’événement getItems( ).

    Tableau 25. Paramètres
    Nom Type Description
    strTitle Chaîne Texte à afficher sur le titre de la chronologie.
    Tableau 26. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : setStatusError(String strTitle, String strMessage)

    Définit la demande d’événement actuelle sur un état d’erreur avec un titre et un message spécifiés à afficher dans la phase deux du traitement des événements GlideTimeline .

    Tableau 27. Paramètres
    Nom Type Description
    strTitle Chaîne Texte à afficher dans le titre de la boîte de dialogue.
    strMessage Chaîne Le texte à afficher dans la boîte de dialogue. Le texte peut contenir un formatage HTML.
    Tableau 28. Renvoie
    Type Description
    nul

    AbstractTimelineSchedulePage : setStatusPrompt(String strTitle, String strOkFunction, String strCancelFunction, String strCloseFunction)

    Définit la demande d’événement actuelle sur un état d’erreur d’invite avec un titre et un message spécifiés à afficher dans une boîte de dialogue de confirmation pendant la deuxième phase du traitement des événements GlideTimeline . La zone de confirmation affiche un bouton OK et Annuler qui génèrent chacun de nouveaux événements qui appelleront les fonctions spécifiées les arguments du paramètre. Les fonctions définies de façon personnalisée pour OK,Annuler et Fermer reçoivent les mêmes arguments de paramètre que celles de l’événement actuel.

    La zone de confirmation affiche un bouton OK et Annuler qui génèrent chacun de nouveaux événements qui appelleront les fonctions spécifiées les arguments du paramètre.
    Remarque :
    Les fonctions définies de façon personnalisée pour OK,Annuler et Fermer reçoivent les mêmes arguments de paramètre que celles de l’événement actuel.
    Tableau 29. Paramètres
    Nom Type Description
    strTitle Chaîne Texte à afficher dans la boîte de dialogue. Le texte peut contenir un formatage HTML.
    strOkFunction Chaîne Fonction permettant d’appeler la classe d’include de script actuelle si les utilisateurs cliquent sur le bouton OK .
    strCancelFunction Chaîne Fonction d’appel dans la classe d’include de script actuelle si l’utilisateur clique sur le bouton Annuler .
    strCloseFunction Chaîne Fonction d’appel dans la classe d’include de script actuelle si l’utilisateur clique sur le bouton Fermer .
    Tableau 30. Renvoie
    Type Description
    nul
    var MyTimelineScriptIncludeClass = Class.create();
          MyTimelineScriptIncludeClass.prototype = Object.extendsObject(AbstractTimelineSchedulePage, {
          
          getItems: function() {
          //...
          },
          
          elementTimeAdjustEnd: function(spanSysId, newEndDateTimeMs) {
          // Display a status prompt dialog box
          this.setStatusPrompt('Confirm Action', 'Are you sure you want to do that?',
          'this._myOkHandlerFunction',  
          'this._myCancelHandlerFunction',
          'this._myCloseHandlerFunction');
          },
          
          _myOkHandlerFunction: function(spanSysId, newEndDateTimeMs) { // ... },
          
          _myCancelHandlerFunction: function(spanSysId, newEndDateTimeMs) { // ... },
          
          _myCloseHandlerFunction: function(spanSysId, newEndDateTimeMs) { // ... }
          };
        

    AbstractTimelineSchedulePage : setStatusSuccess(String strTitle, String strMessage)

    Définit la demande d’événement actuel sur un état de réussite avec un titre et un message spécifiés à afficher dans la phase deux du traitement des événements GlideTimeline .

    Tableau 31. Paramètres
    Nom Type Description
    strTitle Chaîne Texte à afficher dans le titre de la boîte de dialogue.
    strMessage Chaîne Le texte à afficher dans la boîte de dialogue. Le texte peut contenir un formatage HTML.
    Tableau 32. Renvoie
    Type Description
    nul