Soubor šablon zpětného zápisu je soubor ve formátu XML, který obsahuje jednu nebo více šablon zpětného zápisu.
Šablona zpětného zápisu se skládá z prvku WebMessage, který určuje název šablony, fondu připojení a výroků SQL vyžadovaných ke vkládání a aktualizaci záznamů ve vámi vytvořených tabulkách a sloupcích zpětného zápisu. Když vývojáři obsahu povolí zobrazení tabulky pro zpětný zápis, musí zadat název šablony zpětného zápisu, která bude používána ke vkládání a aktualizaci záznamů v zobrazení tabulky.
Šablona zpětného zápisu musí splňovat následující požadavky:
WebMessage: Musíte zadat název pro šablonu zpětného zápisu pomocí atributu name v prvku WebMessage.
K zajištění správné funkce zpětného zápisu po aktivaci zobrazení tabulky pro zpětný zápis musí návrhář obsahu zadat název šablony zpětného zápisu, která bude používána ke vkládání a aktualizaci záznamů v zobrazení.
V tomto příkladu je uvedena šablona zpětného zápisu s názvem SetQuotaUseID.
<WebMessage name="SetQuotaUseID">
connectionPool: Chcete-li splnit požadavky na zabezpečení, musíte zadat fond připojení spolu s příkazy SQL pro vkládání a aktualizaci záznamů. Tyto příkazy SQL odkazují na hodnoty, které jsou předány ve schématu zpětného zápisu ke generování výroků SQL pro úpravu databázové tabulky.
VALUES: Na hodnoty sloupce se lze odkazovat buď pomocí ID sloupce, nebo pomocí pozice sloupce. Preferováno je použití ID sloupce.
Hodnoty řetězců a kalendářních dat uvádějte v jednoduchých uvozovkách. U číselných hodnot nejsou jednoduché uvozovky vyžadovány.
ID sloupce – Každému sloupci je přiřazen alfanumerický a náhodně generovaný identifikátor. ID sloupců naleznete v definici XML analýzy, která je dostupná na kartě Rozšířené v editoru analýz. Hodnoty ID sloupců mohou být například: @{c5f6e60e1d6eb1098}, @{c3a93e65731210ed1}, '@{c6b8735ea60ff3011}'
Když použijete ID sloupců, zpětný zápis bude funkční i v případě změny pořadí sloupců.

Pozice sloupce – Pozice sloupců jsou číslovány od 1. Hodnoty pozic sloupců mohou být například: @1, @3, '@5'
Pokud dojde ke změně pořadí sloupců, zpětný zápis již nebude funkční. Právě z tohoto důvodu je preferováno použití ID sloupců.
Do šablony musíte zahrnout jak prvek <insert>, tak prvek <update>. Pokud nechcete do prvků zahrnout příkazy SQL, musíte mezi počáteční a koncové tagy vložit mezeru. Například musíte zadat prvek jako:
<insert> </insert>
Spíše než:
<insert></insert>
Pokud mezeru vynecháte, zobrazí se chybová zpráva zpětného zápisu, například „Systém nemůže přečíst šablonu zpětného zápisu my_template“.
Pokud typ dat parametru není celé nebo reálné číslo, uzavřete hodnotu do jednoduchých uvozovek. Pokud databáze neprovádí potvrzování automaticky, přidejte nepovinný uzel postUpdate za uzly insert a update, abyste vynutili potvrzení. Uzel postUpdate obvykle odpovídá tomuto příkladu:
<postUpdate>COMMIT</postUpdate>
Příklad souboru šablon zpětného zápisu s použitím syntaxe ID sloupce
Soubor šablon zpětného zápisu, který odkazuje na hodnoty podle ID sloupce, může vypadat například následovně:
<?xml version="1.0" encoding="utf-8" ?>
<WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1">
<WebMessageTable lang="en-us" system="WriteBack" table="Messages">
<WebMessage name="SetQuotaUseID">
<XML>
<writeBack connectionPool="Supplier">
<insert>INSERT INTO regiontypequota VALUES(@{c5f6e60e1d6eb1098},@{c5d7e483445037d9e},'@{c3a93e65731210ed1}','@{c6b8735ea60ff3011}',@{c0432jkl53eb92cd8})</insert>
<update>UPDATE regiontypequota SET Dollars=@{c0432jkl53eb92cd8} WHERE YR=@{c5f6e60e1d6eb1098} AND Quarter=@{c5d7e483445037d9e} AND Region='@{c3a93e65731210ed1}' AND ItemType='@{c6b8735ea60ff3011}'</update>
</writeBack>
</XML>
</WebMessage>
</WebMessageTable>
</WebMessageTables>
Příklad souboru šablon zpětného zápisu s použitím syntaxe pozice sloupce
Soubor šablon zpětného zápisu, který odkazuje na hodnoty podle pozice sloupce, může vypadat například následovně:
<?xml version="1.0" encoding="utf-8" ?>
<WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1">
<WebMessageTable lang="en-us" system="WriteBack" table="Messages">
<WebMessage name="SetQuota">
<XML>
<writeBack connectionPool="Supplier">
<insert>INSERT INTO regiontypequota VALUES(@1,@2,'@3','@4',@5)</insert>
<update>UPDATE regiontypequota SET Dollars=@5 WHERE YR=@1 AND Quarter=@2 AND Region='@3' AND ItemType='@4'</update>
</writeBack>
</XML>
</WebMessage>
</WebMessageTable>
</WebMessageTables>