Uložení titulu aktuálně otevřeného panelu do globální proměnné

Toto je hlavní technické fórum pro diskusi o problémech při vytváření PROMOTIC aplikací a jejich řešení.

Uložení Titulu panelu do globální proměnné

Postby Jakub N. » Mon 21. Aug 2017 13:32:21

Dobrý den,

snažím se zapsat název titulu panelu do globální proměnné pomocí:

var PName = pMe.Pm("/GlobalVariables");
PName.Item(0).Value = pMe.ViewerTitle;

,což je voláno v události onPanelStartEnd a nevím, kde dělám chybu. Mám vytvořený panel a prvek PmData nazvaný GlobalVariables, v němž je proměná PanelName, který je indexován od nuly. Mohli by jste mě prosím navést?

Děkuji :) JN
Jakub N.
 
Posts: 2
Joined: Mon 21. Aug 2017 12:44:14

Uložení titulu aktuálně otevřeného panelu do globální proměnné

Postby Jakub N. » Wed 23. Aug 2017 11:34:24

Dobré odpoledne,

Mám takový menší problém, který nedokážu vyřešit. Mám objekt PmData pojmenovaný GlobalVariables a v něm proměnnou PanelName. V události onPanelStartEnd získávám titul panelu pomocí ViewerTitle. Nevím však, kde v tomhle kódu:

var PName = pMe.Pm("/GlobalVariables");
PName.Item(0).Value = pMe.ViewerTitle;

mám chybu. Mohli byste mě prosím navést, jak to provést? :(

Děkuji J.N.
Jakub N.
 
Posts: 2
Joined: Mon 21. Aug 2017 12:44:14

Re: Uložení titulu aktuálně otevřeného panelu do globální proměnné

Postby Tomáš Bräuer » Tue 05. Sep 2017 6:46:16

Dobrý den!
Tak to nemůže fungovat. Máte JavaScript obraz a z něj nelze přímo přistupovat k aplikačním objektům. Obsah obrazu je oddělený od vlastní aplikace a navíc může běžet v prohlížeči na jiném PC než aplikace.
Obsah obrazu může získávat/zapisovat data z/do aplikace buď pomocí vazby PP některého grafického prvku nebo zavoláním vaší metody v objektu PmPanel, kterému obsah obrazu patří (nelze volat metodu cizího obrazu). Metodě můžete předat vlastní parametry, mohou být i typu pole. Metoda se provede v aplikaci (na serveru) a může vrátit jednu hodnotu (může být i pole) volajícímu, tzn do obsahu obrazu.
Takže pokud potřebujete dostat jednorázově hodnotu z obsahu obrazu do aplikace, založte si vlastní projektantskou metodu v příslušném PmPanel objektu (např SetViewerTitle)s jedním parametrem (např sTitle). Potom metodu ze skriptu onPanelStartEnd zavoláte:
pMe.PmPanel.Methods.SetViewerTitle(pMe.ViewerTitle);

a v metodě (už v aplikaci na serveru):
pMe.Pm("/GlobalVariables/#vars/PanelName").Value = sTitle
Tomáš Bräuer
Administrátor
 
Posts: 153
Joined: Thu 13. Dec 2012 9:13:13


Return to Nevím jak...

Who is online

Users browsing this forum: No registered users and 6 guests