Sloupec Ovládací prvek
Ovládací prvek ColumnsControl zobrazuje na formuláři vstupní pole pro zadávání hodnot přímo do polí tipu.
ColumnsControl generuje celé vstupní pole formuláře s popisem. Pro základní funkce je třeba nastavit zobrazovaná pole (např. ShowColumns = "tHdTicket.mHdTicketNotice") nebo povinná pole (např. RequiredColumns="tHdTicket.mHdTicketNotice"). Pole se zobrazují v zadaném pořadí shora dolů.
Každý ColumnControl prvek musí být inicializován. V souboru .cs ve funkci ConfigControls() použijte následující řádek pro každý ColumnsControl prvek použitý ve formuláři:
((DynamicModel)Model).GetControl \<columnscontrol> <ColumnsControl>("ColumnsControl0");
Použijte název prvku místo ColumnsControl0
.
Pokud tento ovládací prvek vložíte do formuláře mezi <div id="CustomFormContent" a </div>, hodnoty se automaticky uloží při volání funkce CreateTicket. Kontrola může být použita vícekrát na stejné stránce. Další možná nastavení a příklad naleznete níže.
Doporučujeme nakonfigurovat ColumnsControl pomocí atributů na stránce ( .cshml). Sloupec může být také nakonfigurován v kódu ( .cs).
Aby se tato pole nepřidávala do textu tipu, je třeba je umístit mimo <div id="CustomFormContent " a </div>, ale pak je třeba ručně uložit vyplněné hodnoty voláním funkce UpdateColumns(...) pro každý ColumnsControl a každý vytvořený tip.
Při zobrazení stránky se ColumnsControl pokusí automaticky získat SectionId ze zadané webové adresy. Pokud webová adresa obsahuje parametr adresy iHdSectionId=číslo, použije se "číslo " jako ID vybrané služby, pokud není nastaveno jinak. (např.: https://app.contoso.com/Custom/ALVAO/NewTicket\\_Template/?iHdSectionId=11 obsahuje ID služby #11. Automaticky se nastaví jako SectionId.) Tuto funkci lze zakázat nastavením SectionId="0" nebo nastavením konkrétní služby.
ColumnsControl provádí základní kontrolu práv:
Pokud je nastaveno TicketId, musí mít přihlášený uživatel možnost tento tip zobrazit, jinak bude přesměrován na chybovou stránku.
Formát parametru
Následující formáty parametrů se používají v popisech atributů a funkcí:
- sloupce - seznam sloupců ve formátu " table1.column1, table1.column2, ...". Tímto způsobem může být jeden nebo více sloupců definováno pro aktuální Sloupce. Povolené sloupce:
tabulka.sloupec | Pole ticketu | Poznámky |
---|---|---|
tHdTicket.mHdTicketNotice | Poznámky | |
Skupina tHdTicket.sHdTicketGroup | Skupina | Povoluje jiné než předdefinované hodnoty. |
tHdTicket.sHdTicketDeviceCode | Číslo zařízení | |
tHdTicket.FeedbackSolveSpeed | Rychlost řešení | |
tHdTicket.FeedbackProfessionality | Profesionalismus | |
Zpětná vazba | Excelence | |
tHdTicket.FeedbackKomentář | Poznámky a poznámky | |
ID RelatedAccountID | Spřízněná organizace | |
tHdTicketCust.* | vlastní pole | Jednotlivé sloupce v tabulce tHdTicketCust, které představují vlastní pole. Místo hvězdičky zadejte název konkrétního sloupce. |
- sectionId - id služby
- sectionNametúplný název služby včetně cesty (např. "Helpdesk/Problems")
- režim - jedna z možností Upravit (výchozí) a Zobrazit
- msg - řetězec obsahující text zobrazený pro nevyplněné povinné pole
- ticketId - číslo požadavku k zobrazení/uložení
Atributy v cshtml
- ShowColumns - sloupce, které se generují na formulář a ukládají do db. Sloupce se zobrazují v zadaném pořadí shora dolů.
- RequiredColumns - sloupce, které musí být vyplněny, aby bylo možné ukládat. Tyto sloupce musí být také v atributu. Na pořadí nezáleží.
- SectionId - nastavuje ID a název služby. To ovlivňuje hodnoty, které se mají vybrat pro položky číselníku (pokud jsou hodnoty definovány pro konkrétní službu).
- SectionName - nastavuje ID a název služby. To ovlivňuje hodnoty, které se mají vybrat pro položky číselníku (pokud jsou hodnoty definovány pro konkrétní službu).
- Mode mode - nastavuje režim zobrazení.
- TicketId - nastavuje ID požadavku, který se má upravit/zobrazit/uložit.
- CssClass - třída stylu css.
- IgnoreColumns sloupce - sloupce, které se nebudou zobrazovat.
- IncludeServiceColumns - příznak, zda se mají zobrazit sloupce podle procesu služby zadaného v SectionId.
- IncludeRequiredColumn - příznak, zda se mají zobrazit požadované sloupce podle servisního procesu zadaného v SectionId.
Funkce
Pro základní funkčnost prvku ColumnsControl není nutné tyto funkce používat.
- UpdateColumns() - uloží vyplněné hodnoty do db do požadavku, jehož id je nastaveno atributem TicketId.
- UpdateColumns(int ticketId) - uloží vyplněné hodnoty do db k číslu požadavku ticketId.
Příklad použití
Příklad zobrazení polí Skupina (tHdTicket.sHdTicketGroup) a Poznámky (tHdTicket.mHdTicketNotes). Pole skupiny je povinné.
- .cshml + automatické ukládání (pomocí volání funkce CreateTicket)
// ... Obsah vašeho formuláře ...
@Html.EditorFor(m=> m["ColumnsControl0"], "ColumnsControl", new { ShowColumns="tHdTicket.sHdTicketGroup,tHdTicket.mHdTicketNotice", RequiredColumns="tHdTicket.sHdTicketGroup" })
// ... Zbytek formuláře ...
Další příklad použití najdete v souboru ~/Custom/Templates/NewTicket_Template.cshtml a v souborech z něj odvozených.