din cauza unor erori de scriere sau pentru a da un nume mai semnificativ conform standardelor, nu puteți modifica aceste câmpuri mai târziu. De asemenea, nu le puteți șterge prea. Oracle recomandă dezactivarea acestora dând o dată de încheiere. Dar mulți dezvoltatori nu le place să lase lucruri greșite în sistem. Mai bine le place să le șteargă și să le recreeze proaspăt.
 de ce Oracle a restricționat actualizarea sau ștergerea?
motivul este că programul concurent cu ieșirea XML se potrivește cu numele scurt cu codul șablonului pentru a afla ce șablon de editor XML să utilizeze pentru post procesare. Dacă ștergeți acest șablon, procesorul Post nu poate găsi șablonul și apoi dă erori. Deci, este întotdeauna mai bine să nu oferiți o opțiune de actualizare sau ștergere.
dar avem această soluție pentru a actualiza sau șterge șablonul sau definițiile de date folosind scripturi. Este foarte recomandat să rulați mai întâi în instanțele de dezvoltare.
înainte de soluție, să ne uităm la tabelele principale care stochează informațiile definițiilor și șabloanelor de date.
1. Xdo_ds_definitions_b: tabel pentru stocarea definiției sursei de date reprezentată de XML Schema Definition (XSD). Fiecare sursă de date are unul sau mai multe elemente, iar aceste informații sunt stocate în XDO_DS_ELEMENTS_B.
2. XDO_DS_DEFINITIONS_TL: tabel de traducere pentru XDO_DS_DEFINITIONS_B.
XDO_LOBS: acest tabel este utilizat pentru stocarea fișierelor binare și text sensibile locale (limbă și teritoriu). Este utilizat în principal pentru stocarea șabloanelor de aspect lingvistic.
3. XDO_CONFIG_VALUES: stochează valorile proprietăților de configurare ale editorului XML introduse din interfața Oracle Applications.
4. XDO_TEMPLATES_B: tabel pentru informații șablon. Fiecare șablon are o definiție corespunzătoare a sursei de date stocate în XDO_DS_DEFINITIONS_B.fiecare traducere a unui anumit șablon, nu fiecare șablon, are un fișier șablon fizic corespunzător. Informațiile despre fișierul șablon fizic sunt stocate în XDO_LOBS.
5. Xdo_templates_tl: tabel de traducere pentru XDO_TEMPLATES_B.
–Cod testat în instanță R12.1. 3
setați SERVEROUTPUT pe;
 declarați
— modificați următorii doi parametri
var_templateCode VARCHAR2 (100) := ‘ORACLEERPAPPSGUIDE’; — Cod șablon 
 boo_deleteDataDef BOOLEAN := TRUE; — ștergeți datele asociate Def.
începeți
pentru RS 
 în (selectați T1.APPLICATION_SHORT_NAME TEMPLATE_APP_NAME,
 T1.Cod sursă de date,
 T2.APPLICATION_SHORT_NAME DEF_APP_NAME
 din Xdo_templates_b T1, XDO_DS_DEFINITIONS_B T2
 unde T1.TEMPLATE_CODE = var_templateCode
 și T1.DATA_SOURCE_CODE = T2.DATA_SOURCE_CODE)
BUCLĂ 
 XDO_TEMPLATES_PKG.DELETE_ROW (RS.TEMPLATE_APP_NAME, var_templateCode); 
ștergeți din XDO_LOBS
unde LOB_CODE = var_templateCode 
 și APPLICATION_SHORT_NAME = RS.TEMPLATE_APP_NAME
 ȘI LOB_TYPE ÎN (‘TEMPLATE_SOURCE’,’TEMPLATE’);
ȘTERGEȚI DIN XDO_CONFIG_VALUES
UNDE APPLICATION_SHORT_NAME = RS.TEMPLATE_APP_NAME
 și TEMPLATE_CODE = var_templateCode
 și DATA_SOURCE_CODE = RS.DATA_SOURCE_CODE
 ȘI CONFIG_LEVEL = 50;
DBMS_OUTPUT.PUT_LINE (‘șablonul selectat a fost’ | | var_templateCode | | ‘ șters.’);
dacă boo_deleteDataDef
atunci
 XDO_DS_DEFINITIONS_PKG.DELETE_ROW (RS.DEF_APP_NAME, 
 RS.DATA_SOURCE_CODE); 
ȘTERGEȚI DIN XDO_LOBS 
 UNDE LOB_CODE = RS.DATA_SOURCE_CODE
 ȘI APPLICATION_SHORT_NAME = RS.DEF_APP_NAME
 ȘI LOB_TYPE ÎN
(‘XML_SCHEMA’,
‘DATA_TEMPLATE’,
‘XML_SAMPLE’,
‘BURSTING_FILE’);
ȘTERGEȚI DIN XDO_CONFIG_VALUES
 UNDE APPLICATION_SHORT_NAME = RS.DEF_APP_NAME
 ȘI DATA_SOURCE_CODE = RS.DATA_SOURCE_CODE
 ȘI CONFIG_LEVEL = 30;
