IBM Enterprise Records, Version 5.1.+            

Identification des problèmes liés à l'outil d'importation et d'exportation de plan de fichiers

Cette rubrique rassemble des informations sur les principales causes des erreurs que vous pouvez rencontrer lors de l'utilisation de l'outil d'exportation et d'importation de plan de fichiers d'IBM® Enterprise Records et vous indique comment réduire les risques d'erreur.

Principales causes d'erreur

Une erreur peut survenir lors de l'importation d'un plan de fichiers. Dans la plupart des cas, en cas d'erreur, le processus d'importation s'interrompt sans afficher de message. Les causes d'erreur possibles sont les suivantes : Il existe dans l'outil d'importation/exportation de plan de fichiers des options qui peuvent vous aider à résoudre d'éventuelles erreurs. Elles sont décrites dans les paragraphes ci-dessous.

Création manuelle d'un fichier XML

Dans le texte qui suit, la création manuelle d'un fichier XML signifie que le fichier est créé par un autre moyen que par l'outil d'importation/exportation de plan de fichiers (par exemple, à l'aide de macros ou d'autres moyens programmatiques). Avant d'importer un plan de fichiers, vous devez créer un fichier XML conforme au standard XML et compatible avec le modèle de schéma XML du logiciel FileNet.

Les fichiers XML créés manuellement pour importer un plan de fichiers doivent être basés sur le schéma XML fourni par IBM.

Important : La plupart des erreurs qui surviennent à l'importation d'un plan de fichiers sont dues à l'incompatibilité ou à la non-conformité des fichiers XML. La création manuelle d'un fichier XML nécessite donc une très grande attention.

Après la création manuelle d'un fichier XML, il est recommandé de lancer l'outil d'importation/exportation de plan de fichiers en mode validation. En mode validation, l'outil vérifie la conformité du fichier XML et détecte d'éventuelles erreurs. (Pour plus d'informations sur le mode validation, voir Utilisation de l'outil d'exportation et d'importation de plan de fichiers.)

Certaines options disponibles lors de la création manuelle d'un fichier XML sont décrites dans les rubriques Héritage de planning de sous-catégorie et Propriété ConditionXML.

Etude des fonctions de l'outil d'importation/exportation de plan de fichiers

Avant de créer manuellement un fichier XML en vue d'importer un plan de fichiers de grande taille avec des classes personnalisées et des objets, il est recommandé de créer au préalable un plan de fichiers de petite taille avec des métadonnées et de lancer l'outil en mode exportation. Cet exercice est particulièrement utile préalablement à la création manuelle de fichiers XML pour des plans de fichiers avec des mises en attente conditionnelles, des déclencheurs d'événements internes et des objets de conservation alternative contenant tous la Propriété ConditionXML complexe. La conformité du format du fichier XML n'exclut pas des erreurs de valeurs de propriété ou de syntaxe pouvant provoquer une erreur à l'importation. L'exportation d'un petit plan de fichiers vous permet d'observer le fichier XML créé par l'outil et d'en respecter la syntaxe et les valeurs de propriété dans votre fichier XML.

Utilisation de l'option étendue de métadonnées

Si votre plan de fichiers contient des classes ou des propriétés personnalisées, vous devez utiliser l'option étendue de métadonnées lors du processus d'exportation. L'option étendue de métadonnées crée un fichier XML distinct pour les classes et les propriétés personnalisées. Ainsi, lorsqu'un plan de fichiers contient des classes ou des propriétés personnalisées, les processus d'exportation et d'importation se font chacun en deux étapes : une étape pour les classes et les propriétés personnalisées, une autre étape pour le reste du plan de fichiers. La rubrique d'aide Utilisation de l'outil d'exportation et d'importation de plan de fichiers contient les procédures d'utilisation de l'option étendue de métadonnées.

Utilisation de l'option de réimportation

L'option de réimportation sert à définir le comportement de l'action d'ajout dans le fichier XML. L'option de réimportation dispose de trois paramètres différents : Lors de la première importation d'un gros plan de fichiers, il peut être judicieux de choisir l'option Ignorer. En cas d'échec, lors de la deuxième tentative d'importation du même plan de fichiers, l'option Ignorer permet d'éviter la réimportation des entités importées avec succès. Si toutefois la deuxième tentative d'importation nécessite des modifications mineures sur les entités importées avec succès la première fois, employez l'option Remplacer.

Lors des importations ultérieures de modifications mineures dans un petit nombre d'entités, il est recommandé d'indiquer Action="Modify" dans le ficher XML des entités, plutôt que de modifier le fichier XML d'origine. Par ailleurs, le mode Mettre à jour permet de distinguer plus facilement les mises à jour ultérieures des importations complètes initiales.

Héritage de planning de sous-catégorie

Lors de la création d'une sous-catégorie, vous pouvez utiliser l'interface utilisateur IBM Enterprise Records pour spécifier que cette sous-catégorie devra hériter du planning d'élimination de sa catégorie parent. En cas de création manuelle du fichier XML d'importation du plan de fichiers dans lequel se trouve la sous-catégorie, il est possible de définir que celle-ci n'héritera pas du planning de son parent et de lui attribuer son propre planning.

Utilisez la propriété DisposalScheduleInheritedFrom dans le fichier XML que vous créez pour définir si une catégorie d'enregistrement hérite du planning d'élimination de son parent. Par exemple :

<RecordCategory Name="myCat2" Level="2" ParentPath="/myCat1">
    <Properties>
        <Property Name="AGGREGATION" Value="RecordCategory" />
        <Property Name="IsPermanentRecord" Value="false" />
        <Property Name="IsVitalRecord" Value="false" />
        <Property Name="CurrentPhaseExportFormat"></Property>
        <Property Name="IsDeleted" Value="false" />
        <Property Name="HomeLocation"></Property>
        <Property Name="VitalRecordReviewAction"></Property>
        <Property Name="IncrementedBy" Value="1" />
        <Property Name="RecordCategoryName" Value="myCat2" />
        <Property Name="DisposalScheduleInheritedFrom" Value="/myCat1" />
        <Property Name="Reviewer" Value="ylin" />
        <Property Name="RecordCategoryIdentifier" Value="myCat2" />
        <Property Name="VitalRecordDisposalTrigger"></Property>
        <Property Name="Inactive" Value="false" />
        <Property Name="Location"></Property>
        <Property Name="DateOpened" Value="2006-03-07T14:16:00-08:00" />
        <Property Name="DisposalSchedule">
                <ObjectRef ClassId="DisposalSchedule" ObjectId="myDispSchedule" />
        </Property>
    </Properties>
</RecordCategory>
Il y a quatre scénarios d'utilisation de la propriété DisposalScheduleInheritedFrom :
<Property Name="DisposalScheduleInheritedFrom" Value="/myCat1" />

Propriété ConditionXML

Lors de la création manuelle d'un fichier XML d'importation de plan de fichiers, il est possible de définir, pour la propriété ConditionXML, des valeurs qui seront utilisées par l'outil d'importation de plan de fichiers pour importer les éléments suivants : La propriété ConditionXML enregistre les conditions de recherche des autres conservations, des déclencheurs d'événements internes et des mises en attente dynamiques (conditionnelles) en format XML. La balise properties dans ConditionXML contient le nom/la valeur/l'opérateur de la propriété dans l'interface utilisateur IBM Enterprise Records. La balise sql dans ConditionXML contient l'instruction SQL. Lorsque vous entrez la valeur de la propriété ConditionXML pour une importation de plan de fichiers, les caractères spéciaux (< > & " ') doivent être convertis au format standard (&lt; &gt; &amp; &quot; &apos;). Vous trouverez ci-dessous des échantillons de fichiers XML d'entités contenant la propriété ConditionXML pour l'exportation de plans de fichiers.

Echantillon de propriété ConditionXML pour les autres conservations

<Phases>
  <RMEntity Type="Phase" Name="myPhase1">
    <Properties>
        <Property Name="PhaseAction"></Property>
        <Property Name="RetentionPeriodDays" Value="0" />
        <Property Name="RetentionPeriodYears" Value="10" />
        <Property Name="RMEntityDescription"> Value="my phase 1" />
        <Property Name="RetentionPeriodMonths" Value="0" />
        <Property Name="PhaseNumber" Value="1" />
        <Property Name="ExportFormat"></Property>
        <Property Name="IsScreeningRequired" Value="true" />
        <Property Name="DisposalSchedulePtr">
          <ObjectRef ClassId="DisposalSchedule" ObjectId="myDispSchedule" />
        </Property>
        <Property Name="PhaseName" Value="myPhase1" />
          <ObjectValue Type="AlternateRetention">
            <Properties>
              <Property Name="RetentionBase" Value="CutoffDate" />
              <Property Name="ConditionXML" Value="&lt;response xmlns=&quot;http://filenet.com/namespaces/wcm/apps/1.0&quot;&gt;&ltobjectset&gt;&ltcount&gt;1&lt/count&gt;&ltcustomobject&gt;&ltproperties&gt;&ltproperty&gt;&ltsymname&gt;ClosedBy&lt/symname&gt;&ltoperator&gt;IEQUAL&lt;/perator&gt;&ltvalue&gt;Administrator&lt/value></property></properties><aggregation></aggregation><sql> AND ([ClosedBy] = 'Administrator')</sql> </customobject></objectset></response>" />
              <Property Name="RetentionPeriodMonths" Value="0" />
              <Property Name="RetentionPeriodYears" Value="5" />
              <Property Name="RetentionPeriodDays" Value="0" />
            </Property>
          </ObjectValue>
          <ObjectValue Type="AlternateRetention">
            <Properties>
              <Property Name="RetentionBase" Value="DateClosed" />
              <Property Name="ConditionXML" Value="&lt;response xmlns=&quot;http://filenet.com/namespaces/wcm/apps/1.0&quot;&gt;&ltobjectset&gt;&ltcount&gt;1&lt/count&gt;&ltcustomobject&gt;&ltproperties&gt;&ltproperty&gt;&ltsymname&gt;RMEntityDescription&lt/symname&gt;&ltoperator&gt;LKE&lt;/perator&gt;&ltvalue&gt;something&lt/value></property></properties><aggregation></aggregation><sql> AND ([RMEntityDescription] LIKE '%something%')</sql> </customobject></objectset></response>" />
              <Property Name="RetentionPeriodMonths" Value="0" />
              <Property Name="RetentionPeriodYears" Value="5" />
              <Property Name="RetentionPeriodDays" Value="0" />
            </Properties>
          </ObjectValue>
        </Property
      </Properties>
     <RMEntity>
</Phases>

Echantillon de déclencheur d'élimination avec la propriété ConditionXML :

<DisposalTriggers>
    <RMEntity Type="DisposalTrigger" Name="Date Created">
       <Properties>
           <Property Name="DisposalTriggerName" Value="Date Created" />
           <Property Name="EventType" Value="3" />
           <Property Name="CycleYears" Value="0" />
           <Property Name="CycleDays" Value="0" />
           <Property Name="AGGREGATION" Value="RecordInfo" />
           <Property Name="ConditionXML" Value="&lt;response
xmlns=&quot;http://filenet.com/namespaces/wcm/apps/1.0&quot;&gt;&lt;objectset&gt;&lt;count&gt;1&lt;/count&gt;&lt;customobject&gt;&lt;properties&gt;&lt;property&gt;&lt;symname&gt;DateCreated&lt;/symname&gt;&lt;displayname&gt;DateCreated&lt;/displayname&gt;&lt;propertytype&gt;3&lt;/propertytype&gt;&lt;value/&gt;&lt;operator&gt;IS NOT NULL&lt;/operator&gt;&lt;jointype&gt;AND&lt;/jointype&gt;&lt;/property&gt;&lt;/properties&gt;&lt;aggregation&gt;RecordInfo&lt;/aggregation&gt;&lt;sql&gt; SELECT OIID , ID , RMENTITYTYPE FROM RecordInfo WHERE ( DateCreated IS NOT NULL )&lt;/sql&gt;&lt;/customobject&gt;&lt;/objectset&gt;&lt;/response&gt;"/>
           <Property Name="CycleMonths" Value="0" />
       </Properties>
    </RMEntity>
</DisposalTriggers>

Echantillon de mise en attente dynamique avec la propriété ConditionXML :

<Holds>
    <RMEntity Type="RecordHold" Name="dynamic Hold">
       <Properties>
           <Property Name="Active" Value="true" />
           <Property Name="HoldName" Value="dynamic Hold" />
           <Property Name="HoldReason" Value="dynamic Hold" />
           <Property Name="ConditionXML" Value="&lt;response
xmlns=&quot;http://filenet.com/namespaces/wcm/apps/1.0&quot;&gt;&lt;objectset&gt;&lt;count&gt;2&lt;/count&gt;&lt;customobject&gt;&lt;properties&gt;&lt;property&gt;&lt;symname&gt;RecordCategoryName&lt;/symname&gt;&lt;displayname&gt;Record Category Name&lt;/displayname&gt;&lt;propertytype&gt;8&lt;/propertytype&gt;&lt;selectable&gt;true&lt;/selectable&gt;&lt;value&gt;dynamic&lt;/value&gt;&lt;operator&gt;like&lt;/operator&gt;&lt;jointype&gt;AND&lt;/jointype&gt;&lt;/property&gt;&lt;/properties&gt;&lt;aggregation&gt;RecordCategory&lt;/aggregation&gt;&lt;sql&gt; SELECT ro.[RecordCategoryName] , ro.[RecordCategoryName] FROM RecordCategory ro Where ro.[RecordCategoryName] like &apos;%dynamic%&apos; &lt;/sql&gt;&lt;
/customobject&gt;&lt;customobject&gt;&lt;properties&gt;&lt;property&gt;&lt;symname&gt;RecordFolderName&lt;/symname&gt;&lt;displayname&gt;Record Folder Name&lt;/displayname&gt;&lt;propertytype&gt;8&lt;/propertytype&gt;&lt;selectable&gt;true&lt;/selectable&gt;&lt;value&gt;dynamic&lt;/value&gt;&lt;operator&gt;like&lt;/operator&gt;&lt;jointype&gt;AND&lt;/jointype&gt;&lt;/property&gt;&lt;/properties&gt;&lt;aggregation&gt;RecordFolder&lt;/aggregation&gt;&lt;sql&gt; SELECT ro.[RecordFolderName] , ro.[RecordFolderName] FROM RecordFolder ro Where ro.[RecordFolderName] like &apos;%dynamic%&apos; &lt;/sql&gt;&lt;/customobject&gt;&lt;/objectset&gt;&lt;/response&gt;" />
           <Property Name="HoldType" Value="Audit" />
       </Properties>
    </RMEntity>
</Holds>

Mise à jour de périodes de conservation

Pour redéfinir une période de conservation par la valeur NULL, ses propriétés de période de conservation (RetentionPeriodYears, RetentionPeriodMonths et RetentionPeriodDays) doivent être incluses sans valeur dans le fichier XML. Voici un échantillon XML d'une entité de phase pour l'outil d'importation/exportation de plan de fichiers :
<RMEntity Type="Phase" Name="phase 1">
                   <Properties>
                         <Property Name="PhaseAction"></Property>
                         <Property Name="PhaseNumber" Value="1" />
                         <Property Name="ExportFormat"></Property>
                         <Property Name="IsScreeningRequired" Value="false" />
                         <Property Name="DisposalSchedulePtr">
                               <ObjectRef ClassId="DisposalSchedule" ObjectId="mySchedule" />
                         </Property>
                         <Property Name="PhaseName" Value="phase 1" />
                         <Property Name="RMEntityDescription" />
                         <Property Name="RetentionPeriodMonths" />
                         <Property Name="RetentionPeriodYears"  />
                         <Property Name="RetentionPeriodDays"  />
                         <Property Name="AlternateRetentions">
                               <ObjectValue Type="AlternateRetention">
                                     <Properties>
                                           <Property Name="RetentionBase" Value="CutoffDate" />
                                           <Property Name="ConditionXML" Value="&lt;response xmlns=&quot;http://filenet.com/namespaces/wcm/apps/1.0&quot;&gt;&lt;objectset&gt;&lt;count&gt;1&lt;/count&gt;&lt;customobject&gt;&lt;properties&gt;&lt;property&gt;&lt;symname&gt;CurrentActionType&lt;/symname&gt;&lt;operator&gt;IS EQUAL&lt;/operator&gt;&lt;value&gt;6&lt;/value&gt;&lt;/property&gt;&lt;/properties&gt;&lt;aggregation&gt;&lt;/aggregation&gt;&lt;sql&gt; AND ([CurrentActionType] = 6)&lt;/sql&gt; &lt;/customobject&gt;&lt;/objectset&gt;&lt;/response&gt;" />
                                           <Property Name="RetentionPeriodMonths" Value="0" />
                                           <Property Name="RetentionPeriodYears" Value="2" />
                                           <Property Name="RetentionPeriodDays" Value="0" />
                                     </Properties>
                               </ObjectValue>
                         </Property>
                   </Properties>
             </RMEntity>


Commentaires

Dernière mise à jour : Août 2011


© Copyright IBM Corp. 2011.
Ce centre de documentation est basé sur la Technologie Eclipse. (http://www.eclipse.org)