Dynamické prezentácie: Rozdiel medzi revíziami

Z SPIN2-wiki
Prejsť na: navigácia, hľadanie
(Zobrazenie v prezentáciách)
(Príklad)
 
(25 medziľahlých úprav od rovnakého používateľa nie je zobrazených.)
Riadok 3: Riadok 3:
 
Dynamické prezentácie slúžia na zobrazenie konzultantom vytvoreného "View" v okne '''Prezeranie prezentácií'''.
 
Dynamické prezentácie slúžia na zobrazenie konzultantom vytvoreného "View" v okne '''Prezeranie prezentácií'''.
  
 
+
Definícia prezentácie sa dynamicky vytvára podľa obsahu view.
  
 
==== Čo musí spĺňať skript ====
 
==== Čo musí spĺňať skript ====
Riadok 9: Riadok 9:
 
* musí byť vytvorený pod DL kontom
 
* musí byť vytvorený pod DL kontom
 
* musí byť typu view
 
* musí byť typu view
* musí mať v názve PV_ , napr. PV_XXXXX, kde PV = Presentation View
+
* názov musí začínať na PV_ , napr. PV_XXXXX, kde PV = Presentation View
 
 
  
 
==== Nastavenie práv ====
 
==== Nastavenie práv ====
  
 
Po spustení skriptu je potrebné nastaviť práva na danú prezentáciu.
 
Po spustení skriptu je potrebné nastaviť práva na danú prezentáciu.
 +
 
V module '''Administrácia''' vo voľbe '''Práva na prezentácie''' si vyberiete používateľa a mandanta, ktorému potrebujete prideliť práva.  
 
V module '''Administrácia''' vo voľbe '''Práva na prezentácie''' si vyberiete používateľa a mandanta, ktorému potrebujete prideliť práva.  
  
Potom v ľavom okne vyberiete '''Prezentácie SPIN2 / Dynamické prezentácie'''. Tu je zoznam všetkých prezentácii, ktoré začínajú na "PV_"  a tu zachecknete, ktorú prezentáciu chcete danému používateľovi povoliť.
+
Potom v ľavom okne vyberiete '''Prezentácie SPIN2'''. Tu je zoznam všetkých prezentácii, ktoré začínajú na "PV_"  a tu zachecknete, ktorú prezentáciu chcete danému používateľovi povoliť.
  
[[Súbor:pv_prava.png|700px]]
+
[[Súbor:pv_prava1.png|700px]]
  
 
====Zobrazenie v prezentáciách====
 
====Zobrazenie v prezentáciách====
  
Keď sú nastavené práva užívateľa na prezentáciu, potom sa už zobrazuje sa daná prezentácia v okne '''Prezeranie prezentácii'''.  
+
Keď sú nastavené práva používateľa na prezentáciu, potom sa už zobrazuje sa daná prezentácia v okne '''Prezeranie prezentácii'''.  
Dynamické prezentácie sa zobrazujú v zobrazení ''Všetky agendy'', v stĺpci ''Agenda'' sú zaradené ako ''Spoločné číselníky''.  
+
 
 +
Dynamické prezentácie sa zobrazujú iba v zobrazení ''Všetky agendy'', v stĺpci ''Agenda'' sú zaradené pod agendou ''Spoločné číselníky''.  
  
 
[[Súbor:Pv_prezent.png|700px]]
 
[[Súbor:Pv_prezent.png|700px]]
  
Príklad:
 
  
Názov prezentácie bude z commentu view
 
  
Názvy stĺpcov budú z commentov columnov
+
==== Príklad ====
 +
 
 +
Príklad jednoduchého skriptu - view pre zobrazenie 4-roch stĺpcov z číselníka skladov:
 +
 
 +
<source lang="csharp">
  
Ak bude potrebné pridať k dátovému zdroju vstupné parametre, bude potrebné k nemu vytvoriť databázový balík s názvom napríklad pkpvXXXXX (XXXXX je to isté vo VIEW a v PACKAGE).
+
create or replace view dl.pv_ciselnik_skladov as
 +
select
 +
skl.sklad_id,
 +
skl.cislo_skladu,
 +
skl.nazov_skladu,
 +
skl.typ_skladu
 +
from
 +
dl.sof_sklad skl
 +
/
 +
comment on table dl.pv_ciselnik_skladov is 'PV - testovacie view';
 +
comment on column dl.pv_ciselnik_skladov.sklad_id is 'Sklad ID';
 +
comment on column dl.pv_ciselnik_skladov.cislo_skladu is 'Číslo skladu';
 +
comment on column dl.pv_ciselnik_skladov.nazov_skladu is 'Názov skladu';
 +
comment on column dl.pv_ciselnik_skladov.typ_skladu is 'Typ skladu';
 +
grant select on pv_ciselnik_skladov to sof, sofro;
 +
/
 +
</source>
  
Package bude mať metódu, ktorá vráti xml pre nastavenie filtra. Štruktúra bude rovnaká, aká sa používa pre zápis usporiadania.
+
[[Súbor:PV_priklad.png|800px]]
  
Vstupné parametre metódy budú ID mandanta, ID používateľa, ID modulu, ID session, kód jazyka.
+
"grant select on pv_ciselnik_skladov to sof, sofro;" - zobrazí prezentáciu v zozname "Logistika"
  
Hodnoty vo filtri budú buď konkrétne hodnoty (napríklad ID mandanta), alebo parametre pre vytvorenie dynamického dialógu pre zadanie hodnoty používateľom.
+
=== Odkaz na technickú dokumentáciu ===
  
Okno prezentácii a okno nastavenia prístupových práv na prezentácie pridajú do zoznamu prezentácii a ich dátových zdrojov aj tie, ktorých zdroj je zo všetkých VIEW začínajúcich na PV_.
 
  
Definícia prezentácie sa bude dynamicky vytvárať podľa obsahu VIEW
+
Technická dokumentácia na vytvorenie dynamickej prezentácie aj so vstupnými parametrami je tu:
Pred načítaním údajov sa nastaví filter, ak je daný cez príslušný package. Ak obsahuje aj hodnoty, ktoré má zadať používateľ, vytvorí sa najprv dynamický dialóg.
+
https://wiki.assecosolutions.sk/en/home/asol/SPINstandard/ProgrammersCorner/DynamickePrezentacie
  
Inšpirácie z hotových vecí
 
Dynamické vytváranie SELECTu z danej tabuľky: namespace Datalock.Spin.Adm.BL.BO.SetMandant, triedy Tabulky*, Stlpce*, Udaje*
 
Dynamické vytváranie položiek dynamického dialógu pre zadanie hodnôt parametrov, vrátane hodnôt z vyberača:
 
Datalock.Spin.Commons.UI.VolitelnaAkcia.VolitelnaAkciaHelper.ShowVolitelnyDialog()
 
Datalock.Spin.Commons.BL.VolitelnaAkcia.VolitelnaAkciaBO.GetDialogParameters()
 
dl.pkvol<AAAAAAAAAA>.getdialogparameters()
 
  
 
  [[category:Konzultant]]
 
  [[category:Konzultant]]

Aktuálna revízia z 10:48, 13. máj 2022

Dynamické prezentácie

Dynamické prezentácie slúžia na zobrazenie konzultantom vytvoreného "View" v okne Prezeranie prezentácií.

Definícia prezentácie sa dynamicky vytvára podľa obsahu view.

Čo musí spĺňať skript

  • musí byť vytvorený pod DL kontom
  • musí byť typu view
  • názov musí začínať na PV_ , napr. PV_XXXXX, kde PV = Presentation View

Nastavenie práv

Po spustení skriptu je potrebné nastaviť práva na danú prezentáciu.

V module Administrácia vo voľbe Práva na prezentácie si vyberiete používateľa a mandanta, ktorému potrebujete prideliť práva.

Potom v ľavom okne vyberiete Prezentácie SPIN2. Tu je zoznam všetkých prezentácii, ktoré začínajú na "PV_" a tu zachecknete, ktorú prezentáciu chcete danému používateľovi povoliť.

Pv prava1.png

Zobrazenie v prezentáciách

Keď sú nastavené práva používateľa na prezentáciu, potom sa už zobrazuje sa daná prezentácia v okne Prezeranie prezentácii.

Dynamické prezentácie sa zobrazujú iba v zobrazení Všetky agendy, v stĺpci Agenda sú zaradené pod agendou Spoločné číselníky.

Pv prezent.png


Príklad

Príklad jednoduchého skriptu - view pre zobrazenie 4-roch stĺpcov z číselníka skladov:

create or replace view dl.pv_ciselnik_skladov as
select
 skl.sklad_id,
 skl.cislo_skladu,
 skl.nazov_skladu,
 skl.typ_skladu
from
 dl.sof_sklad skl
/
comment on table dl.pv_ciselnik_skladov is 'PV - testovacie view';
comment on column dl.pv_ciselnik_skladov.sklad_id is 'Sklad ID';
comment on column dl.pv_ciselnik_skladov.cislo_skladu is 'Číslo skladu';
comment on column dl.pv_ciselnik_skladov.nazov_skladu is 'Názov skladu';
comment on column dl.pv_ciselnik_skladov.typ_skladu is 'Typ skladu';
grant select on pv_ciselnik_skladov to sof, sofro;
/

PV priklad.png

"grant select on pv_ciselnik_skladov to sof, sofro;" - zobrazí prezentáciu v zozname "Logistika"

Odkaz na technickú dokumentáciu

Technická dokumentácia na vytvorenie dynamickej prezentácie aj so vstupnými parametrami je tu: https://wiki.assecosolutions.sk/en/home/asol/SPINstandard/ProgrammersCorner/DynamickePrezentacie