Promotic
WikipediaLinkedInYoutubeTwitterFacebook

OpenViewModal - metoda objektu PmPanel

Popis:
Metoda otevře prohlížečku jiného objektu v modálním okně.

Tato metoda je zastaralá (ale funkční), nefunguje v moderních WEB prohlížečích a je lepší používat metodu PmPanel.OpenView. Viz Jak pracovat s modálními okny.

Syntaxe:
OpenViewModal(sObjectPath As String, [sOptions As String], [sParams As String], [vArguments As Variant]) As Variant
Volání:
val = oPanel.OpenViewModal(sObjectPath, sOptions, sParams, vArguments)
Parametry:
sObjectPath(String) Cesta (relativní nebo absolutní) k objektu nebo komponentě, jehož prohlížečka má být otevřena.

Podrobný popis viz sObjectPath.

sOptions[nepovinné] (String) Údaje předávané vlastní prohlížečce. Určují kde a jak má být prohlížečka zobrazena.

Údaje s přiřazenou hodnotou jsou zde odděleny středníkem, například "target:_blank;modal:1;".

Podrobný popis viz sOptions.

sParams[nepovinné] (String) Údaje předávané objektu, který bude zobrazován prohlížečkou.

Údaje s přiřazenou hodnotou jsou zde odděleny středníkem, například "název1:hodnota1;název2:hodnota2;".

Podrobný popis viz sParams.

vArguments[nepovinné] (Variant) Hodnota, která je automaticky přenesena do vlastnosti Arguments. Hodnota této vlastnosti je typicky čtena v události onPanelStartEnd a slouží k předání vstupních dat otevíranému oknu přímo ze skriptu.
Vrácená hodnota:
Metoda vrací hodnotu Empty pokud je v modálním okně stisknuto tlačítko Storno (nebo klávesa Esc). Lze testovat metodou Pm.IsValid.

Při stisknutí tlačítka OK se vrací hodnota nastavená v tomto okně (viz poznámka dále).

Poznámka:
Metoda je synchronní, tzn. že skript pokračuje následujícím příkazem až po ukončení modálního okna. Pro otevření prohlížeče musí být v otevíraném objektu splněno oprávnění. Například pro objekt PmPanel oprávnění PanelOpen nebo WebRead, atd.
 
Vstupní a výstupní hodnoty pro modální PmPanel:

Pro modální otevření prohlížeče objektu PmPanel jsou důležité dvě vlastnosti:

- PmiRoot.Arguments: Vstupní hodnota při otevření modálního okna. Tato hodnota je zkopírována z parametru vArguments této metody.
- PmiRoot.ReturnValue: Výstupní hodnota při zavírání modálního okna tlačítkem OK. Tehdy hodnota, která je v této vlastnosti, bude vrácena jako návratová (výstupní) hodnota této metody.

Tato koncepce umožňuje vytvořit okna (formuláře), kde obsah obrazu není přímo spojen (vazbami, skriptem) s aplikaci, ale celý počáteční stav okna je předán pomocí vstupního parametru a celý stav po editaci obsahu je předán přes návratovou hodnotu.

K předání několika hodnot přes jediný parametr lze z výhodou využít funkce VBScript.Array.

 
Metodu lze volat i v událostech grafických prvků pro Web Obrazy.
Příklad:
Otevře obraz v novém modálním okně se zadáním hodnoty parametru obrazu nmb a také pole 2 hodnot v parametru vArguments. Následuje ověření, zda modální okno při ukončení (např. tlačítkem OK) předalo návratovou hodnotu (pomocí vlastnosti PmiRoot.ReturnValue). Pokud ano, vypíše se ladící zápis této hodnoty do INFO systému. Tento script může být například v události onButtonUp grafického prvku PmiButton.
Kód skriptu volající modální okno.
Dim r, a0, a1
a0 = "text 0"
a1 = 5
r = pMe.PmPanel.OpenViewModal("/Obraz3", "", "par:nmb=2;", Array(a0, a1))
If Pm.IsValid(r) Then
  Pm.Debug r, 1
End If
Kód skriptu události PmiRoot.onPanelStartEnd (parametry se zapíší do 2 PmiText prvků).
Dim a
pMe.Items("/text0").Value = a(0)
pMe.Items("/text1").Value = a(1)
Kód skriptu události PmiRoot.onPanelStopEnd (hodnoty 2 PmiText prvků se zapíší do návratové hodnoty).
Dim r0, r1
r0 = pMe.Items("/text0").Value
r1 = pMe.Items("/text1").Value
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice