Dynamické prezentácie: Rozdiel medzi revíziami

Z SPIN2-wiki
Prejsť na: navigácia, hľadanie
(Príklad)
(Príklad)
 
(21 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 17: Riadok 17:
 
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====
Riadok 33: Riadok 33:
 
==== Príklad ====
 
==== Príklad ====
  
Príklad jednoduchého skriptu:
+
Príklad jednoduchého skriptu - view pre zobrazenie 4-roch stĺpcov z číselníka skladov:
 +
 
 +
<source lang="csharp">
  
 
create or replace view dl.pv_ciselnik_skladov as
 
create or replace view dl.pv_ciselnik_skladov as
Riadok 49: Riadok 51:
 
comment on column dl.pv_ciselnik_skladov.nazov_skladu is 'Názov 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';
 
comment on column dl.pv_ciselnik_skladov.typ_skladu is 'Typ skladu';
 +
grant select on pv_ciselnik_skladov to sof, sofro;
 
/
 
/
 +
</source>
  
Názov prezentácie v okne '''Prezeranie prezentácií''' bude  %color=red% z commentu view.
+
[[Súbor:PV_priklad.png|800px]]
 
 
Názvy stĺpcov budú z commentov columnov
 
 
 
 
 
 
 
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).
 
 
 
Package bude mať metódu, ktorá vráti xml pre nastavenie filtra. Štruktúra bude rovnaká, aká sa používa pre zápis usporiadania.
 
  
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