R12 – Comment supprimer la Définition et le modèle de données XML Publisher

En raison d’une erreur de frappe ou pour donner un nom plus significatif selon les normes, vous ne pouvez pas modifier ces champs plus tard. Vous ne pouvez pas non plus les supprimer. Oracle recommande de les désactiver en donnant une date de fin. Mais de nombreux développeurs n’aiment pas laisser les mauvaises choses dans le système. Ils préfèrent les supprimer et les recréer fraîchement.

Pourquoi Oracle s’est-il limité à la mise à jour ou à la suppression ?
La raison en est que le programme concurrent avec une sortie XML correspond au Nom court avec le code du modèle pour savoir quel modèle d’éditeur XML utiliser pour le post-traitement. Si vous supprimez ce modèle, le post-processeur ne peut pas le trouver, puis donne des erreurs. Il est donc toujours préférable de ne pas donner d’option de mise à jour ou de suppression.

Mais nous avons cette solution de contournement pour mettre à jour ou supprimer le modèle ou les définitions de données à l’aide de scripts. Il est fortement recommandé d’exécuter en premier dans les instances de développement.

Avant la solution de contournement, regardons les tables principales qui stockent les informations des définitions et des modèles de données.

1. XDO_DS_DEFINITIONS_B : table pour stocker la définition de source de données représentée par la définition de schéma XML (XSD). Chaque source de données comporte un ou plusieurs éléments, et ces informations sont stockées dans XDO_DS_ELEMENTS_B.
2. XDO_DS_DEFINITIONS_TL: table de traduction pour XDO_DS_DEFINITIONS_B.
XDO_LOBS: Cette table est utilisée pour stocker des fichiers binaires et texte sensibles aux paramètres régionaux (langue et territoire). Il est principalement utilisé pour stocker des modèles de mise en page de langue.
3. XDO_CONFIG_VALUES : stocke les valeurs des propriétés de configuration de l’éditeur XML entrées à partir de l’interface des applications Oracle.
4. XDO_TEMPLATES_B: table pour les informations sur le modèle. Chaque modèle a une définition de source de données correspondante stockée dans XDO_DS_DEFINITIONS_B. Chaque traduction d’un certain modèle, et non de chaque modèle, a un fichier de modèle physique correspondant. Les informations du fichier de modèle physique sont stockées dans XDO_LOBS.
5. XDO_TEMPLATES_TL: table de traduction pour XDO_TEMPLATES_B.

SET SERVEROUTPUT ON;
DECLARE var_templateCode VARCHAR2(100): = ‘ORACLEERPAPPSGUIDE’; — Code modèle
boo_deleteDataDef BOOLEAN: = TRUE; — supprimez les données associées Def.
COMMENCER
POUR RS
DANS (SÉLECTIONNEZ T1.NOM_DE_APPLICATION NOM_DE_APPLICATION,
T1.CODE SOURCE DE DONNÉES,
T2.NOM_APP_DÉFINI
DE XDO_TEMPLATES_B T1, XDO_DS_DEFINITIONS_B T2
OÙ T1.TEMPLATE_CODE = var_templateCode
ET T1.DATA_SOURCE_CODE = T2.CODE SOURCE DE DONNÉES)
BOUCLE
XDO_TEMPLATES_PKG.DELETE_ROW (RS.TEMPLATE_APP_NAME, var_templateCode);

SUPPRIMER DE XDO_LOBS
OÙ LOB_CODE= var_templateCode
ET APPLICATION_SHORT_NAME=RS.TEMPLATE_APP_NAME
ET LOB_TYPE DANS (‘TEMPLATE_SOURCE’, ‘TEMPLATE’);

SUPPRIMER DE XDO_CONFIG_VALUES
OÙ APPLICATION_SHORT_NAME=RS.TEMPLATE_APP_NAME
ET TEMPLATE_CODE=var_templateCode
ET DATA_SOURCE_CODE=RS.DATA_SOURCE_CODE
ET CONFIG_LEVEL=50;

DBMS_OUTPUT.PUT_LINE(‘Le modèle sélectionné a été supprimé’ || var_templateCode ||’.’);

SI boo_deleteDataDef
PUIS
XDO_DS_DEFINITIONS_PKG.DELETE_ROW (RS.DEF_APP_NAME,
RS.DATA_SOURCE_CODE);

SUPPRIMER DE XDO_LOBS
OÙ LOB_CODE= RS.DATA_SOURCE_CODE
ET APPLICATION_SHORT_NAME=RS.DEF_APP_NAME
ET LOB_TYPE DANS
(‘XML_SCHEMA’,
‘DATA_TEMPLATE’,
‘XML_SAMPLE’,
‘BURSTING_FILE’);

SUPPRIMER DE XDO_CONFIG_VALUES
OÙ APPLICATION_SHORT_NAME=RS.DEF_APP_NAME
ET DATA_SOURCE_CODE=RS.DATA_SOURCE_CODE
ET CONFIG_LEVEL=30;

Write a Comment

Votre adresse e-mail ne sera pas publiée.