IBM Enterprise Records, Versio 5.1.+            

Arkistonmuodostussuunnitelman tuonti- ja vientityökalun vianmääritys

IBM Enterprise Records -ohjelman arkistonmuodostussuunnitelman tuonti- ja vientityökalun käytössä mahdollisesti vastaan tulevien virheiden yleiset syyt on hyvä tietää. On hyödyllistä myös tietää, miten voit pienentää virheiden kohtaamisen todennäköisyyttä.

Virheiden yleiset syyt

Saatat havaita virheen, kun tuot arkistonmuodostussuunnitelman. Useimmissa tapauksissa tuontiprosessi keskeytyy, kun virhe havaitaan, eikä näkyviin tule yhtään sanomaa. Virheen syy voi olla jokin seuraavista: Arkistonmuodostussuunnitelman tuonti- ja vientityökalu sisältää asetuksia, joiden avulla voit ratkaista mahdolliset virheet. Nämä asetukset on esitelty jäljempänä.

XML-tiedoston luonti manuaalisesti

Selkeyden vuoksi XML-tiedoston luonti manuaalisesti tarkoittaa XML-tiedoston luontia muulla kuin arkistonmuodostussuunnitelman tuonti- ja vientityökalulla (esimerkiksi käyttämällä makroja tai muita ohjelmallisia keinoja XML-tiedoston luonnissa). Ennen kuin voi tuoda arkistonmuodostussuunnitelman, luo XML-tiedosto, joka noudattaa XML-standardia ja on yhteensopiva FileNet-ohjelmiston XML-skeeman kanssa.

Jos luot arkistonmuodostussuunnitelman tuonnissa käytettävän XML-tiedoston manuaalisesti, tiedoston perustana on oltava IBM:n toimittama XML-skeema.

Tärkeää:  Useimpien arkistonmuodostussuunnitelman tuonnin aikana ilmenevien virheiden syynä on yhteensopimaton tai standardia noudattamaton XML-tiedosto. Tästä syystä XML-tiedoston manuaalisessa luonnissa on oltava erityisen huolellinen.

Kun XML-tiedosto on luotu manuaalisesti, on suositeltavaa ajaa arkistonmuodostussuunnitelman tuonti- ja vientityökalu tarkistustilassa. Tarkistustilassa ajettava työkalu lukee XML-tiedoston ja tarkistaa, ettei tiedosto sisällä virheitä tai standardin noudattamiseen liittyviä ongelmia. (Lisätietoja tarkistustilasta on kohdassa Arkistonmuodostussuunnitelman tuonti- ja vientityökalun käyttö.)

Osa XML-tiedoston manuaalisen luonnin aikana käytettävissä olevista asetuksista on käsitelty osissa Aliluokan aikataulun periytyminen ja ConditionXML-ominaisuus.

Arkistonmuodostussuunnitelman tuonti- ja vientityökalun toimintojen tutkiminen

Jos aiot luoda manuaalisesti suuren, mukautettuja luokkia ja objekteja sisältävän arkistonmuodostussuunnitelman tuonnissa käytettävän XML-tiedoston, on suositeltavaa luoda ensin pieni arkistonmuodostussuunnitelma sekä siihen liittyvät metatiedot ja suorittaa työkalu vientitilassa. Tällaisesta kokeilusta on hyötyä erityisesti silloin, kun luot manuaalisesti XML-tiedoston sellaisia arkistonmuodostussuunnitelmia varten, joissa on ehdollisia pitoja, sisäisten tapahtumien liipaisimia ja vaihtoehtoisia säilytysobjekteja, jotka kaikki sisältävät monimutkaisen ConditionXML-ominaisuus -ominaisuuden. Vaikka luot tiedoston, jonka XML-muoto on oikea, XML-tiedosto voi sisältää virheellisiä ominaisuusarvoja tai virheellisen syntaksin, mikä saattaa aiheuttaa virhetilanteen tuonnin aikana. Pienen arkistonmuodostussuunnitelman viennin avulla voit arvioida työkalun luoman XML-tiedoston ja tutkia XML-tiedoston syntaksia sekä ominaisuusarvoja.

Alueen metatietoasetuksen käyttö

Jos arkistonmuodostussuunnitelma sisältää mukautettuja luokkia tai ominaisuuksia, vientiprosessissa on käytettävä alueen metatietoasetusta. Alueen metatietoasetus luo erillisen XML-tiedoston mukautettuja luokkia ja ominaisuuksia varten. Tästä syystä, kun arkistonmuodostussuunnitelma sisältää mukautettuja luokkia tai ominaisuuksia, sekä vienti- että tuontiprosessi koostuu kahdesta vaiheesta: yksi vaihe mukautettuja luokkia ja ominaisuuksia varten ja toinen arkistonmuodostussuunnitelman loppuosaa varten. Arkistonmuodostussuunnitelman tuonti- ja vientityökalun käyttö -ohjeaihe sisältää alueen metatietoasetuksen käytön toimintavaiheet.

Uudelleentuontiasetuksen käyttö

Uudelleentuontiasetuksen avulla voit määrittää lisäystoiminnon toimintatavan XML-tiedostossa. Uudelleentuontiasetuksella on kolme parametria: Suuren arkistonmuodostussuunnitelman ensimmäisen tuonnin aikana voit käyttää Ohita-vaihtoehtoa. Häiriötilanteessa ja saman arkistonmuodostussuunnitelman toisen tuontiyrityksen aikana voit välttää jo tuotujen yksiköiden uudelleentuonnin käyttämällä Ohita-vaihtoehtoa. Jos toinen tuontiyritys edellyttää kuitenkin ensimmäisellä kerralla jo tuotujen yksiköiden vähäistä muokkausta, voit käyttää Korvaa-vaihtoehtoa.

Kun tuot peräkkäin muutamien yksiköiden vähäisiä muutoksia, on suositeltavaa määrittää yksiköiden XML-tiedostoon määritys Action="Modify" alkuperäisen XML-tiedoston muokkauksen sijasta. Käyttämällä Päivitä-tilaa voit myös tunnistaa helpommin peräkkäiset päivitykset ensimmäisten täysien tuontien joukosta.

Aliluokan aikataulun periytyminen

Kun luot aliluokan, IBM Enterprise Records -käyttöliittymän avulla voit määrittää, että aliluokka perii päätason poistoaikataulun. Jos luot manuaalisesti sen arkistonmuodostussuunnitelman tuonnissa käytettävän XML-tiedoston, johon aliluokka sisältyy, voit tarvittaessa määrittää, ettei aliluokka peri päätason aikataulua, ja määrittää toisen aikataulun.

Käytä luotavassa XML-tiedostossa DisposalScheduleInheritedFrom-ominaisuutta, kun haluat osoittaa, periikö asiakirjaluokka päätason poistoaikataulun. Esimerkiksi:

<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>
Voit käyttää DisposalScheduleInheritedFrom-ominaisuutta neljässä tilanteessa seuraavasti:
<Property Name="DisposalScheduleInheritedFrom" Value="/myCat1" />

ConditionXML-ominaisuus

Kun luot XML-tiedoston manuaalisesti arkistonmuodostussuunnitelman tuontia varten, voit määrittää ConditionXML-ominaisuuden arvot, joita arkistonmuodostussuunnitelman tuonti- ja vientityökalu käyttää seuraavien kohteiden tuonnissa: Hakuehdot on tallennettu XML-muodossa ConditionXML-ominaisuuteen vaihtoehtoisten säilytysten, sisäisten tapahtumien liipasimien ja dynaamisten (ehdollisten) pitojen yksiköissä. ConditionXML-ominaisuuden ominaisuustunnisteeseen on tallennettu IBM Enterprise Records -käyttöliittymän ominaisuuden nimi, arvo tai operaattori. SQL-käsky on tallennettu ConditionXML-ominaisuuden sql-tunnisteeseen. Kun kirjoitat ConditionXML-ominaisuuden arvon arkistonmuodostussuunnitelman tuontia varten, erikoismerkit (< > & " ') on muunnettava normaaliin esitysmuotoon (&lt; &gt; &amp; &quot; &apos;). Alla on esimerkkejä ConditionXML-ominaisuuden sisältävien yksiköiden XML-koodista arkistonmuodostussuunnitelman tuontia ja vientiä varten.

Vaihtoehtoisen säilytyksen ConditionXML-esimerkki

<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>

Poistoliipaisinesimerkki, jossa on käytetty ConditionXML-ominaisuutta:

<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;Date Created&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>

Dynaamisen pidon esimerkki, jossa on käytetty ConditionXML-ominaisuutta:

<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>

Säilytysajan päivitys

Jos haluat päivittää aiemmin luodun vaiheen säilytysajan null-arvoiseksi, säilytysajan ominaisuudet (RetentionPeriodYears, RetentionPeriodMonths ja RetentionPeriodDays) on sisällytettävä XML-tiedostoon ilman arvoa. Alla on esimerkki vaiheyksikön XML-koodista arkistonmuodostussuunnitelman tuonti- ja vientityökalua varten:
<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>


Palaute

Päivitetty viimeksi: Elokuu 2011


© Copyright IBM Corp. 2011.
Tämä Information Center -sivusto perustuu Eclipse-tekniikkaan. (http://www.eclipse.org).