L'objet CALL.ALARM est une notification prédéfinie qui écrit des données dans le texte d'un message à l'aide d'un script.
Lors de la création d'un objet notification, vous pouvez choisir entre deux types : DEFAUT et ALARME.
Les deux types sont des notifications, mais la notification de type ALARME possède cependant un script AE prédéfini lisant différentes données et les affichant dans le texte d'un message. L'utilisateur qui exécute cet objet est automatiquement spécifié comme destinataire. Les notifications d'ALARME sont toujours crées avec le type "Alerte" et une priorité "Haute".
Un script AE complet permet l'exécution immédiate de l'objet CALL.ALARM après sa création, car l'utilisateur qui a démarré l'objet notification est automatiquement défini comme destinataire. Les valeurs dynamiques comme le nom de la tâche origine , son RunID, etc...sont récupérés et jointes au texte du message. Le Script affiche le Message dans la langue convenue.
Exemples :
Récupère l'utilisateur qui a démarré l'objet avec le département correspondant.
:ADD_ATT peut être utilisé pour ajouter cet utilisateur aux destinataires. De cette façon, il est possible d'exécuter des objets CALL.ALARM sans avoir à entrer auparavant et manuellement un Destinataire.
!Get Operator
:set &userid# = SYS_USER_NAME
:set &dep# = SYS_USER_DEP
:ADD_ATT OPERATOR, '&userid#/&dep#'
!
Nom, RunID, statut et code retour de la tâche qui a déclenché l'objet notification. Vous trouverez de plus amples informations ici : Notification - Exécution.
!Get Script
:read &UC_CAUSE_NAME,,
:read &UC_CAUSE_NR,,
:read &UC_CAUSE_STATE,,
:read &UC_CAUSE_RETCODE,,
!
:set &nl# = UC_CRLF
!
Nom, RunID, et type d'objet de la tâche parent qui a activé l'objet notification. Le Message lit en plus le nom du système AE, le numéro du Client, l'heure et la date de l'activation ainsi que la langue convenue. L'élément de script GET_MSG_TEXT() affiche le texte du statut de la tâche qui a démarré la notification.
:set &parentname# = SYS_ACT_PARENT_NAME('ACT')
:set &parentnr# = SYS_ACT_PARENT_NR('ACT')
:set &parenttyp# = SYS_ACT_PARENT_TYP('ACT')
:set &system# = GET_UC_SYSTEM_NAME
:set &client# = SYS_ACT_CLIENT
:set &date# = SYS_DATE_PHYSICAL()
:set &time# = SYS_TIME_PHYSICAL("HH:MM:SS")
:set &lang# = SYS_USER_LANGUAGE
:set &statustext# = get_msg_txt(&UC_CAUSE_STATE,'')
!
Après vérification de la langue, les informations récupérées sont ajoutées au texte du message en allemand, anglais ou français par les scripts :PUT_ATT ou :PUT_ATT_APPEND.
:if &lang# = 'E'
!: put_att SUBJECT = "Alarm:'&UC_CAUSE_NAME' RunID:'&UC_CAUSE_NR' Client:'&client#'
: set &date# = conv_date(&date#,"MM/DD/YYYY")
: PUT_ATT CALL_TEXT = "An error occurred! &nl# &nl#"
: put_att_append CALL_TEXT = "AE system: &system# &nl#"
: put_att_append CALL_TEXT = "Client: &client# &nl#"
: put_att_append CALL_TEXT = "Object: &UC_CAUSE_NAME &nl#"
: put_att_append CALL_TEXT = "Run#: &UC_CAUSE_NR &nl#"
: put_att_append CALL_TEXT = "State Text: &statustext# (&UC_CAUSE_STATE) &nl#"
: put_att_append CALL_TEXT = "Retcode: &UC_CAUSE_RETCODE &nl#"
: put_att_append CALL_TEXT = "Date/Time: &date# &time# &nl# &nl#"
: put_att_append CALL_TEXT = "Parent of this object (if available): &nl# &nl#"
: put_att_append CALL_TEXT = "Parent: &parentname# &nl#"
: put_att_append CALL_TEXT = "Type: &parenttyp# &nl#"
: put_att_append CALL_TEXT = "Run#: &parentnr# &nl#"
:endif
:if &lang# = 'D'
!: put_att SUBJECT = "Alarm:'&UC_CAUSE_NAME' RunID:'&UC_CAUSE_NR' Client:'&client#'
: set &date# = conv_date(&date#,"MM/DD/YYYY")
: PUT_ATT CALL_TEXT = "Ein Fehler ist aufgetreten! &nl# &nl#"
: put_att_append CALL_TEXT = "AE system: &system# &nl#"
: put_att_append CALL_TEXT = "Mandant: &client# &nl#"
: put_att_append CALL_TEXT = "Objekt: &UC_CAUSE_NAME &nl#"
: put_att_append CALL_TEXT = "Run#: &UC_CAUSE_NR &nl#"
: put_att_append CALL_TEXT = "Status: &statustext# (&UC_CAUSE_STATE) &nl#"
: put_att_append CALL_TEXT = "Retcode: &UC_CAUSE_RETCODE &nl#"
: put_att_append CALL_TEXT = "Datum/Zeit: &date# &time# &nl# &nl#"
: put_att_append CALL_TEXT = "Parent dieses Objektes (wenn vorhanden): &nl# &nl#"
: put_att_append CALL_TEXT = "Parent: &parentname# &nl#"
: put_att_append CALL_TEXT = "Typ: &parenttyp# &nl#"
: put_att_append CALL_TEXT = "Run#: &parentnr# &nl#"
:endif
:if &lang# = 'F'
!: put_att SUBJECT = "Alarm:'&UC_CAUSE_NAME' RunID:'&UC_CAUSE_NR' Client:'&client#'
: set &date# = conv_date(&date#,"MM/DD/YYYY")
: PUT_ATT CALL_TEXT = "Une erreur s'est produite! &nl# &nl#"
: put_att_append CALL_TEXT = "AE system: &system# &nl#"
: put_att_append CALL_TEXT = "Client: &client# &nl#"
: put_att_append CALL_TEXT = "Objet: &UC_CAUSE_NAME &nl#"
: put_att_append CALL_TEXT = "Run#: &UC_CAUSE_NR &nl#"
: put_att_append CALL_TEXT = "Statut: &statustext# (&UC_CAUSE_STATE) &nl#"
: put_att_append CALL_TEXT = "Retcode: &UC_CAUSE_RETCODE &nl#"
: put_att_append CALL_TEXT = "Date/Heure: &date# &time# &nl# &nl#"
: put_att_append CALL_TEXT = "Parent de cet objet (si disponible): &nl# &nl#"
: put_att_append CALL_TEXT = "Parent: &parentname# &nl#"
: put_att_append CALL_TEXT = "Type: &parenttyp# &nl#"
: put_att_append CALL_TEXT = "Run#: &parentnr# &nl#"
:endif
Rubriques connexes :
Premières étapes - Notifications
Notification - Exécution