R12-jak odstranit definici dat vydavatele XML a šablonu

kvůli nějaké chybě překlepu nebo dát nějaké smysluplnější jméno podle standardů, nemůžete tato pole později změnit. Také je nemůžete smazat. Oracle doporučuje zakázat je uvedením data ukončení. Ale mnozí vývojáři neradi nechávají špatné věci v systému. Raději je chtějí smazat a čerstvě je znovu vytvořit.

proč se Oracle omezil na aktualizaci nebo odstranění?
důvodem je souběžný program s výstupem XML shoduje krátký Název s kódem šablony, aby zjistil, kterou šablonu vydavatele XML použít pro následné zpracování. Pokud odstraníte tuto šablonu, procesor Post nemůže najít šablonu a poté dát chyby. Takže je vždy lepší nedávat možnost aktualizovat nebo odstranit.

máme však toto řešení pro aktualizaci nebo odstranění definic šablon nebo dat pomocí skriptů. Důrazně doporučujeme spustit nejprve ve vývojových instancích.

před řešením se podívejme na hlavní tabulky, které ukládají informace o definicích dat a šablonách.

1. XDO_DS_DEFINITIONS_B: tabulka pro ukládání definice zdroje dat reprezentované definicí schématu XML (XSD). Každý zdroj dat má jeden nebo více prvků a tyto informace jsou uloženy v XDO_DS_ELEMENTS_B.
2. XDO_DS_DEFINITIONS_TL: překladová tabulka pro XDO_DS_DEFINITIONS_B.
XDO_LOBS: tato tabulka slouží k ukládání binárních a textových souborů citlivých na národní prostředí (jazyk a území). Používá se hlavně pro ukládání šablon rozvržení jazyka.
3. XDO_CONFIG_VALUES: ukládá hodnoty vlastností konfigurace vydavatele XML zadaných z rozhraní aplikací Oracle.
4. XDO_TEMPLATES_B: tabulka pro informace o šabloně. Každá šablona má odpovídající definici zdroje dat uloženou v XDO_DS_DEFINITIONS_B. každý překlad určité šablony, ne každá šablona, má odpovídající fyzický soubor šablony. Informace o souboru fyzické šablony jsou uloženy v XDO_LOBS.
5. XDO_TEMPLATES_TL: překladová tabulka pro XDO_TEMPLATES_B.

– kód testovaný v instanci R12.1. 3
nastavte SERVEROUTPUT ON;
deklarovat
— změňte následující dva parametry
var_templateCode VARCHAR2 (100): = ‚ORACLEERPAPPSGUIDE‘ — – kód šablony
boo_deleteDataDef BOOLEAN: = TRUE — – odstraňte přidružená data Def.
začněte
pro RS
V (vyberte T1.APPLICATION_SHORT_NAME TEMPLATE_APP_NAME,
T1.DATA_SOURCE_CODE,
T2.APPLICATION_SHORT_NAME DEF_APP_NAME
z XDO_TEMPLATES_B T1, XDO_DS_DEFINITIONS_B T2
kde T1.TEMPLATE_CODE = var_templateCode
a T1.DATA_SOURCE_CODE = T2.DATA_SOURCE_CODE)
LOOP
XDO_TEMPLATES_PKG.DELETE_ROW (RS.TEMPLATE_APP_NAME, var_templateCode);

odstranit z XDO_LOBS
kde LOB_CODE = var_templateCode
a APPLICATION_SHORT_NAME = RS.TEMPLATE_APP_NAME
A LOB_TYPE V (‚TEMPLATE_SOURCE‘, ‚TEMPLATE‘);

SMAZAT Z XDO_CONFIG_VALUES
KDE APPLICATION_SHORT_NAME = RS.TEMPLATE_APP_NAME
a TEMPLATE_CODE = var_templateCode
a DATA_SOURCE_CODE = RS.DATA_SOURCE_CODE
A CONFIG_LEVEL = 50;

DBMS_OUTPUT.PUT_LINE (‚vybraná šablona byla‘ | | var_templateCode | | ‚ smazána.‘);

pokud boo_deleteDataDef
pak
XDO_DS_DEFINITIONS_PKG.DELETE_ROW (RS.DEF_APP_NAME,
RS.DATA_SOURCE_CODE);

SMAZAT Z XDO_LOBS
KDE LOB_CODE = RS.DATA_SOURCE_CODE
A APPLICATION_SHORT_NAME = RS.DEF_APP_NAME
A LOB_TYPE V
(‚XML_SCHEMA‘,
‚DATA_TEMPLATE‘,
‚XML_SAMPLE‘,
‚BURSTING_FILE‘);

SMAZAT Z XDO_CONFIG_VALUES
KDE APPLICATION_SHORT_NAME = RS.DEF_APP_NAME
A DATA_SOURCE_CODE = RS.DATA_SOURCE_CODE
A CONFIG_LEVEL = 30;

Write a Comment

Vaše e-mailová adresa nebude zveřejněna.