我正在使用 Tridion R5.3。我正在尝试删除一个组件,但它显示为已发布。无论我做什么,我都无法将其取消发布。我对数据库运行了以下查询以确定组件的发布位置。
SELECT *
FROM [dbo].[PUBLISH_STATES] WITH (NOLOCK)
WHERE REFERENCE_ID = 268494
我收到了以下信息
- 编号:45173
- REFERENCE_ID:268494
- 项目类型:16
- PUBLICATION_ID:4
- 状态:1
- STATE_CHANGE_DATE : 2006-08-18 12:50:25.597
- PUBLICATION_TARGET_ID:2
- TRUSTEE_ID : 43
- TEMPLATE_REFERENCE_ID:89798
- 模板项目类型:32
我试图从 ID 为 2 的发布目标中取消发布该组件,但没有成功。
我可以安全地删除数据库中的行吗?
更新
根据 Nuno 的建议,在阅读了另一个问题后,我认为我必须取消发布相关的组件模板。我已经尝试了以下方法,并且Type Mismatch
在执行该SetPublishedTo()
方法时得到了一个。
TDS.TDSE tdse = new TDS.TDSE();
var componentTemplate = (TDS.ComponentTemplate)tdse.GetObject("tcm:4-89798-32", TDSDefines.EnumOpenMode.OpenModeView);
componentTemplate.SetPublishedTo("tcm:4-268494", "tcm:0-2-65537", false, tdse.User);