您需要瞭解使用 IBM® Enterprise Records 的「檔案計劃匯入匯出工具」時,可能發生之錯誤的常見原因,以及如何減少發生錯誤的可能性等相關資訊。
如果您手動建立要用於匯入檔案計劃的 XML 檔案,檔案必須以 IBM 提供的 XML 綱目為根據。
手動建立 XML 檔案之後,強烈建議您在驗證模式下執行「檔案計劃匯入匯出工具」。驗證模式下的工具會讀取 XML 檔案,驗證檔案內沒有任何錯誤或不符標準的問題。 (如需驗證模式的詳細資料,請參閱使用檔案計劃匯入和匯出工具。)
在子種類排程繼承和ConditionXML 屬性章節中,包含手動建立 XML 檔案時可用的部分選項。
後續在匯入對少量實體所做的少量修改期間,建議您在實體的 XML 檔案中指定 Action="Modify",而不是對原始 XML 檔案進行變更。另外,使用「更新」模式可讓您更容易地從初始完整匯入中識別出後續更新。
在建立的 XML 檔案中,使用 DisposalScheduleInheritedFrom 內容來指出記錄種類是否從母項繼承處置排程。例如:
<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>您可以在下列四種實務中使用 DisposalScheduleInheritedFrom 內容:
<Property Name="DisposalScheduleInheritedFrom" Value="/myCat1" />
<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="<response xmlns="http://filenet.com/namespaces/wcm/apps/1.0"><objectset><count>1</count><customobject><properties><property><symname>ClosedBy</symname><operator>IEQUAL</perator><value>Administrator</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="<response xmlns="http://filenet.com/namespaces/wcm/apps/1.0"><objectset><count>1</count><customobject><properties><property><symname>RMEntityDescription</symname><operator>LKE</perator><value>something</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>
<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="<response xmlns="http://filenet.com/namespaces/wcm/apps/1.0"><objectset><count>1</count><customobject><properties><property><symname>DateCreated</symname><displayname>Date Created</displayname><propertytype>3</propertytype><value/><operator>IS NOT NULL</operator><jointype>AND</jointype></property></properties><aggregation>RecordInfo</aggregation><sql> SELECT OIID , ID , RMENTITYTYPE FROM RecordInfo WHERE ( DateCreated IS NOT NULL )</sql></customobject></objectset></response>"/> <Property Name="CycleMonths" Value="0" /> </Properties> </RMEntity> </DisposalTriggers>
<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="<response xmlns="http://filenet.com/namespaces/wcm/apps/1.0"><objectset><count>2</count><customobject><properties><property><symname>RecordCategoryName</symname><displayname>Record Category Name</displayname><propertytype>8</propertytype><selectable>true</selectable><value>dynamic</value><operator>like</operator><jointype>AND</jointype></property></properties><aggregation>RecordCategory</aggregation><sql> SELECT ro.[RecordCategoryName] , ro.[RecordCategoryName] FROM RecordCategory ro Where ro.[RecordCategoryName] like '%dynamic%' </sql>< /customobject><customobject><properties><property><symname>RecordFolderName</symname><displayname>Record Folder Name</displayname><propertytype>8</propertytype><selectable>true</selectable><value>dynamic</value><operator>like</operator><jointype>AND</jointype></property></properties><aggregation>RecordFolder</aggregation><sql> SELECT ro.[RecordFolderName] , ro.[RecordFolderName] FROM RecordFolder ro Where ro.[RecordFolderName] like '%dynamic%' </sql></customobject></objectset></response>" /> <Property Name="HoldType" Value="Audit" /> </Properties> </RMEntity> </Holds>
<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="<response xmlns="http://filenet.com/namespaces/wcm/apps/1.0"><objectset><count>1</count><customobject><properties><property><symname>CurrentActionType</symname><operator>IS EQUAL</operator><value>6</value></property></properties><aggregation></aggregation><sql> AND ([CurrentActionType] = 6)</sql> </customobject></objectset></response>" /> <Property Name="RetentionPeriodMonths" Value="0" /> <Property Name="RetentionPeriodYears" Value="2" /> <Property Name="RetentionPeriodDays" Value="0" /> </Properties> </ObjectValue> </Property> </Properties> </RMEntity>