Vytváření souborů šablon zpětného zápisu

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.

Požadavky na šablonu zpětného zápisu

Š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ů.

      Kód XML na kartě Rozšířené v editoru analýz

    • 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 insertupdate, 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>