Nastavení CRMDataResource

Z K.A.P.
Verze z 18. 5. 2021, 18:50, kterou vytvořil Greplová Alena (diskuse | příspěvky) (→‎Nastavení vlastností Actions)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaciSkočit na vyhledávání

Nastavení CRMDataResource

Pro nastavení vzhledu a chování panelů a tlačítek menu v aplikaci CRM je použit datový formát JSON.
JSON – datový formát nezávislý na počítačové platformě, určený pro přenos dat, která mohou být organizována v polích nebo agregována v objektech.
JSON struktura CRMDataResource:

{
"ID" : "unikátní identifikátor panelu",
"Title" : "nadpis panelu/tlačítka",
"Width" : "minimální šířka panelu/tlačítka",
"Height" : " minimální šířka panelu/tlačítka ",
"Style" : "jméno stylu pro vykreslení panelu/tlačítka ",
"Visible" : "viditelnost panelu/tlačítka ",
"RefreshPeriod" : "čas v minutách po jehož uplynutí dojde k překreslení panelu",
"Platform" : "omezení zobrazení panelu/tlačítka pouze na zadanou platformu",
"PanelItems" : [{
"ID" : " unikátní identifikátor části panelu",
"ItemType" : "typ části panelu ",
"SQL" : "sql dotaz ",
"Style" : " jméno stylu pro vykreslení části panelu ",
"Visible" : "viditelnost části panelu ",
"RefreshPeriod" : " čas v minutách po jehož uplynutí dojde k překreslení části panelu ",
"TriggerTables" : "jména tabulek v DB po jejichž změně má dojít k překreslení části panelu",
"Height" : "výška části panelu",
"Columns" : [{
"ID" : "ID sloupce db definovaného v SQL nebo unikátní identifikátor",
"Type" : "typ sloupce",
"Value" : "Hodnota",
"PreProcess" : "zpracovat před zpracováním všech Columns",
"Description" : "",
"Width" : "šířka",
"Visible" : "viditelnost sloupce"
}
],
"Actions" : [{
"ActionID" : " ID sloupce definovaného v Columns",
"Type" : "typ akce(tlačítko/odkaz)",
"Controller" : "jméno controlleru funkce",
"ActionName" : "jméno funkce",
"Values" : "parametry funkce oddělené |",
"Text" : "Popisek zobrazený v panelu",
"Style" : " jméno stylu pro vykreslení ",
"Icon" : " jméno ikony pro vykreslení "
}
]
}
]
}


Popis částí struktury CRMDataResource

Nastavení vlastností panelu

  • "ID" - unikátní identifikátor panelu
  • "Title" - nadpis panelu/tlačítka
  • "Width" - minimální šířka panelu/tlačítka
  • "Height" - minimální šířka panelu/tlačítka
  • "Style" - jméno stylu pro vykreslení panelu/tlačítka
  • "Visible" - viditelnost panelu/tlačítka. Hodnoty True/False/AutoHide
  • "RefreshPeriod" - čas v minutách po jehož uplynutí dojde k překreslení panelu
  • "Platform - omezení zobrazení panelu/tlačítka pouze na zadanou platformu

Příklad:

{
 "ID": "DASHBOARD_PANEL_IP",
 "Title": "Končící individuální ceny",
 "Width": "450",
 "Height": "250",
 "Style": "",
 "Visible": "",
 "RefreshPeriod": "15",
 "Platform": "",
 "Order": 0,
 "AutoHide": "true",
 "PanelItems": [{}]
}

Nastavení vlastností částí panelu(PanelItems)

  • "ID" : unikátní identifikátor části panelu
  • "ItemType" : typ části panelu, určuje vykreslení
    Hodnoty:
    • Text – dle definice Columns se hodnoty vygenerují do panelu jako text
      CRMDataResource Text.PNG

    • List – dle definice Columns vykreslí výsledek SQL jako tabulku
      CRMDataResource List.PNG

    • Template – dle definice Columns vykreslí HTML template
      CRMDataResource Template.PNG
  • "SQL" - sql dotaz
  • "Style" - jméno stylu pro vykreslení části panelu
  • "Visible" - viditelnost části panelu
    Hodnoty: True/False
    • IfNotEmpty – zobrazí část panelu pouze pokud není část panelu prázdná
    • Výraz – výraz pro vyhodnocení výsledků SQL dotazu IF(Pocet=0,false,true)
    • ColumnID – nastaví hodnotu sloupce True/False dle zadaného sloupce
  • "RefreshPeriod" - čas v minutách po jehož uplynutí dojde k překreslení části panelu
  • "TriggerTables" - jména tabulek v DB po jejichž změně má dojít k překreslení části panelu
  • "Height" - výška části panelu

Příklad
CRMDataResource Priklad.PNG


Nastavení vlastností Columns

  • "ID" : "ID sloupce db definovaného v SQL nebo unikátní identifikátor",
  • "Type" : typ sloupce
    • Text – textová hodnota zobrazená jako text v panelu. V případě, že obsahuje ID dalších sloupců, jsou ID sloupců při zpracování nahrazeny hodnotami sloupců
      Příklad : "Počet neodeslaných objednávek: :Pocet :Action1"
    • DBColumn – hodnota sloupce databáze definovaného v SQL dotazem
    • Function – hodnota sloupce je výsledek volání funkce aplikace CRM. Syntaxe: Controller|ActionName|Parameters.
      Příklad:
{"ID" : "AppVersion",
 "Type" : "Function",
 "PreProcess" : "true",
 "Value" : "Sync|CheckAppObsolete",
 "Description" : "",
 "Width" : 150,
  "Visible" : "true"
}
    • Action – hodnotou sloupce je vygenerované html odkazu/tlačítka
    • SQLText – SQL dotaz pro HTML template
  • "Value" – v závislosti na typu sloupce.
  • "PreProcess" – True/False - zpracování sloupce před vykonáním SQL a zpracováním všech sloupců
  • "Description" : Text pro zobrazení v hlavičce tabulky, pokud "ItemType" : "List"
  • "Width" - šířka
  • "Visible" - viditelnost sloupce
    Hodnoty:True/False
    • Výraz – výraz pro vyhodnocení výsledků SQL dotazu IF(Pocet=0,false,true)
    • ColumnID – nastaví hodnotu sloupce True/False dle zadaného sloupce

Vazba SQL – Columns - příklad:
CRMDataResource VazbaSQL Columns.PNG


Nastavení vlastností Actions

  • "ActionID" – ID tvoří vazbu na sloupec definovaný v Columns
    CRMDataResource ActionID.PNG
  • "Type" - typ akce(tlačítko/odkaz)
    Hodnoty:
    • Link – akce se vygeneruje jako odkaz
    • Button – akce se vygeneruje jako tlačítko
  • "Controller" - jméno controlleru funkce
  • "ActionName" - jméno funkce
  • "Values" – parametry funkce oddělené "|".
    Hodnoty:
    • Text
    • Číslo
    • ColumnID – ID sloupce je při zpracování nahrazeny hodnotou příslušného sloupce
      CRMDataResource Panel.PNG
  • "Text" - Popisek zobrazený v panelu
  • "Style" - jméno stylu pro vykreslení
  • "Icon" - jméno ikony pro vykreslení



Příklad: Definice akce pro skrytí části panelu

{
 "ActionID" : "Hide",
 "Type" : "Link",
 "Controller" : "Home",
 "ActionName" : "HidePanelItem",
 "Values" : ":INFO_PANEL_APP_VERSION",
 "Text" : "Nezobrazovat",
 "Style" : "Link",
 "Icon" : ""
}

Seznam funkcí aplikace CRM

Controller ActionName Values Popis
IndividualPrices ListPricing   Zobrazí seznam individuálních cen
Home OpenURL URL Otevře url v prohlížeči
Home OpenApp Parametry Spustí externí aplikaci
Home HidePanelItem ID ID panelu
Sync CheckAppObsolete   Zjistí verzi aplikace
Order Details CustomerGUID Zobrazí detail objednávky
Order OpenOrdersSummaryDlg   Zobrazí seznam objednávek