Kapitola Jak doplnit odkaz do notifikace obsahuje následující témata:
Aktuální verze aplikace umožňuje vložit odkaz do notifikace prostřednictvím správně nastavené notifikační šablony (v předmětu ani v upozornění na ploše (Alert) nelze použít).
Použít odkaz v notifikační šabloně lze pouze pokud je šablona označena příznakem IsHtml = True.
Při startu aplikace se do registrů aktuálního uživatele zaregistruje aplikační protokol hrp. Tato registrace se dá vypnout pomocí AppConfigu
Blok kódu |
---|
|
RegisterApplicationUriOnStartup = "false" |
Registrace uri znamená zápis následujících hodnot do registru
Blok kódu |
---|
|
//vytvoří se klíč
HKEY_USERS\Current_user_ID\Software\Classes\hrp
- (Výchozí hodnota) - stringový popis prokolu
- URL Protocol - hodnota je prázdný string
// zde se vytvoří klíč
- DefaultIcon
-- (Výchozí hodnota) - Cesta k HRP.exe + řetězec ",0"
// zde se vytvoří klíč
- shell
// zde se vytvoří klíč
-- open
// zde se vytvoří klíč
-- command
--- (Výchozí hodnota) - "D:\Source\HRP\Code\Apps\HRP\XAF.Win\bin\Debug\HRP.exe" %1 |
![](/download/attachments/147685797/image-2020-06-15-14-54-55-605.png?version=3&modificationDate=1697794401580&api=v2)
Syntaxe pro přidání odkazu
Akce Vytvořit odkaz
Pro malé zjednodušení psaní odkazů lze z kontextového menu vyvolat akci Vytvořit odkaz, která na aktuální polohu kurzoru (v editoru obsahu) vloží přednastavený text pro daný link.
![](/download/attachments/147685797/image2021-11-23_14-11-49.png?version=3&modificationDate=1697794401513&api=v2)
Syntax property editor
Pro další usnadnění psaní notifikací je použit ScintillaPropertyEditor, který umožňuje zvýraznění syntaxe (tag NotificationLink a jeko atributy byly přidány jako klíčové slova, pokud se v atributu CodeEditorOptions.SyntaxType použije hodnota 'NotificationSystem').
Syntaxe pro přidání odkazu, který otevře detail view
Blok kódu |
---|
|
<NotificationLink Action="OpenDetail" ViewId="SparePart_DetailView" Id="{{TargetObject.Guid}}">{{TargetObject.Name}}</NotificationLink> |
- Action = "OpenDetail" pro otevření detail view
- ViewId = Id view v modelu
- Id = identifikátor objektu pro otevření
- Do notifikace se zobrazí hodnota mezi tagy <NotificationLink>, v tomto případě TargetObject.Name
Syntaxe pro přidání odkazu, který otevře list view
Blok kódu |
---|
|
<NotificationLink Action="OpenList" ViewId="User_ListView" Filter="">User List View</NotificationLink> |
- Action = "OpenList" pro otevření list view
- ViewId = Id view v modelu
- Filter = filter v list view (nepovinný atribut)
- Do notifikace se zobrazí hodnota mezi tagy <NotificationLink>, v tomto případě 'User List View'
Příklad
Blok kódu |
---|
language | xml |
---|
theme | Eclipse |
---|
title | Vzorový HTML text v Body s odkazem na příslušný objekt |
---|
|
Náhradní díl <NotificationLink Action="OpenDetail" ViewId="SparePart_DetailView" Id="{{TargetObject.spare_part.Id}}"><b><font color="#3e84bf">{{TargetObject.spare_part.Name}}</font></b></NotificationLink> je pod limitem.
Minimální množství je {{TargetObject.spare_part.spare_part_info.allocated_amount}} {{TargetObject.spare_part.measurement_unit.Name}} aktuálně je na skladech <b><font color="red">{{TargetObject.spare_part.spare_part_info.current_amount}} {{TargetObject.spare_part.measurement_unit.Name}}</font></b>. |
Výsledná aplikační notifikace:
![](/download/attachments/147685797/image-2020-06-15-15-19-43-452.png?version=3&modificationDate=1697794401707&api=v2)