管理员可以使用以下类型的一种,清除生成数据库和ODS数据的:
- 基于时间Purge(Time-Based Purge)——仅基于保留期删除记录。
- 基于状态Purge(Status-Based Purge)——根据对象类型和每种对象类型的特定条件删除记录。
要设置Purge作业,必须配置以下内容
1.选择要清除的数据库(database)。
2.定义清除作业的属性(properties)。
3.定义清除作业的计划(schedule)。
Purge 限制
Purge具有以下限制:
- 如果已删除基于时间(Time-Based)的清除作业,则可以为运行基于时间的清除作业的数据库配置并运行基于状态(Status-Based)的清除作业。
- 无法在已运行基于状态(Status-Based)的清除作业的数据库上配置和运行基于时间(Time-Based)的清除作业。
- 可以安排多个清除作业同时运行,但每个任务应该针对不同的数据库运行。
受影响的表
当运行Purge作业时,只会影响数据库表中包含运行时(runtime)对象的行及其相应的审计表。与构建时(buildtime)对象对应的行不会被Purge。例如,即使BOM表受到清除作业的影响,在Process Designer中创建的BOM对象也不会被Purge。只清除与Work Order关联的运行时bom。UDA_BillOfMaterials表中的Work Order BOM记录也被Purge。
- 实例表
即使实例表(例如,AT_*、DC_*、STA_*和UDA_*表)通常会受到Purge的影响,但并不是每个实例表都会受到影响。如果正在运行基于状态(status-based)的清除作业,则只会影响父对象类为可Purge的那些表(例如,Part对象不可清除,因此UDA_Part不会被清除)。如果正在运行一个基于时间(time-based)的清除作业,那么不管父对象是否可以被Purge,实例表都将被清除(例如,一个Work Order对象不可Purge,但是UDA_Order表仍然可以被Purge。)
- AT表
AT表的运行时数据是否被清除取决于运行时数据的管理类型(management type)、清除状态(purge status)和父AT表的Purge状态。
- 如果AT表的运行时数据被标记为非静态数据(dataManagementType = purgeable), ATRow的清除状态设置为true [ATRow. setpurgestatus (true)],如果满足保留期,则在计划的Purge作业期间删除数据。
- 如果应用程序表的运行时数据被标记为静态数据(dataManagementType = static或exportable)或将ATRow的清除状态设置为false [ATRow. setpurgestatus (false)],则在计划的Purge作业期间不会删除数据。
- 将所有父应用程序表和从属表行配置为purgeable [dataManagementType = purgeable and
setpurgestatus (true)],然后当一个从属AT表行被清除时,将取决于父AT表行的purge状态,而与从属AT表行的清除状态无关。除非父AT表行是可Purge的,否则无法清除从AT表行。
在配置AT表定义的dataManagementType属性时,以及通过设置ATRow的清除状态[ATRow. setpurgestatus (boolean)],可以配置运行时数据是否可Purge。