Vlastní formulář schválení požadavku
Formulář pro schválení/zamítnutí tiketu aplikace Alvao WebApp lze nahradit vlastním formulářem se specifickým obsahem a chováním. Vlastní formulář umožňuje schvalovateli nastavit některá pole tiketu, a tím umožňuje podporu složitějších schémat schvalování. Pro ALVAO SaaS nejsou k dispozici vlastní formuláře.
Šablony pro vytvoření vlastních formulářů lze nalézt v \Custom\Templates\Approval v instalační složce Alvao WebApp.
Příprava nového formuláře
Zkopírujte vzorový formulář - Schválit složku do Schválené složky Vlastní\n<functionality name>. Přejmenujte soubory .cshtml i .cs obsažené ve složce tak, aby jméno odpovídalo významu nebo funkcionalitě formuláře.
Obecný popis nastavení vlastních formulářů je popsán v pokynech pro Vlastní formulář pro odeslání nového tipu.
Definice chování formuláře
Popis chování je v souboru .cs. V komentářích v kodexu jsou uvedeny oblasti, které jsou určeny ke změně. Nenarušujte ostatní části kódu! Nejdůležitější je zde schválení požadavku. V souboru již existuje příklad schválení a zamítnutí požadavku, podle kterého můžete provést vlastní úpravy. Základní struktura příkazů pro schválení/zamítnutí požadavku je následující:
TicketApprovalAccept(iHdTicketId, "Ticket approved:<br>"+MessageBody); TicketApprovalReject(iHdTicketId, "Ticket denied:<br>"+MessageBody);
Kde MessageBody je již připravený text schválení/zamítnutí požadavku, který byl vytvořen převodem obsahu formuláře na text. V případě potřeby lze použít spojení textu ve všech polích, jak je uvedeno v příkladu. Pro vložení řádku zalomení do aktuálního textu použijte značku <br>.
Pokud ve formuláři není použit prvek "StringField", který lze použít k zadávání textu ve formátu HTML, použijte pro zalomení řádků řetězec \n . Pro přístup k hodnotám vlastních polí použijte následující strukturu (příklad pro pole "NewName" a "NewNumber"):
newName = ((ColumnsControl)Model.ColumnsControl["ColumnsControl0"]).Hodnoty.Find(Col => Column.sColumn == "NewName").Hodnota jako string;int newNumber = (int)((ColumnsControl)Model.ColumnsControl["ColumnsControl0"]).Values.Find(Col => Column.sColumn.sColumn == "NewNumber").Hodnota;
Pokud chcete současný krok schválit, předčasně s ním ukončte schválení, a přeskočit všechny další kroky v režimu schvalování jízdy, použít tuto strukturu:
TicketApprovalAcceptAndFinish(iHdTicketId, "Ticket Approved:<br>"+ MessageBody);
Připojování formuláře k aplikaci
V administraci - Service Desk - Schvalovací schémat vyberte schémata, která chcete upravit. Použijte příkaz Upravit v bloku Schvalovací kroky k otevření okna k úpravě schvalovacího kroku. V položce Vlastní formulář (URL) zadejte URL vytvořeného formuláře (ve stejném formátu, jaký se používá v Službě - Upravit - Nový formulář pro podání požadavků - Formulář - Vlastní formulář (URL)).