无法在SDL Tridion中获取渲染内容错误

无法在SDL Tridion中获取渲染内容错误,tridion,tridion-2011,tridion-content-delivery,Tridion,Tridion 2011,Tridion Content Delivery,我想知道SDL Tridion中可能出现“无法获取渲染内容”错误的场景。我们使用VBScript进行模板制作,我的事件日志中列出了一些场景。但我无法理解这件事 情景1: 无法获取页面的呈现内容(tcm:48-215280-64) 情景2: Unable to get rendered content of Component (tcm:57-215271). No data found. [ETA_ITEMS, U] Cannot insert the value NULL into colum

我想知道SDL Tridion中可能出现“无法获取渲染内容”错误的场景。我们使用VBScript进行模板制作,我的事件日志中列出了一些场景。但我无法理解这件事

情景1: 无法获取页面的呈现内容(tcm:48-215280-64)

情景2:

Unable to get rendered content of Component (tcm:57-215271).
No data found. [ETA_ITEMS, U]
Cannot insert the value NULL into column 'ITEM_ID', table 'Tridion_cm_2011.dbo.ITEM_ASSOCIATIONS'; column does not allow nulls. INSERT fails.
The statement has been terminated.
情景3:

Unable to get rendered content of Page (tcm:52-213774-64).
Error 1017 occurred while rendering the Page: Expected 'Then' (source:
   If Rendermode() != "PreviewDynamic" Then).
情景4:

Unable to retrieve rendered data from Component Presentation.
Error 3004 occurred while rendering the Component Presentation (Nytt dagstilbud iPhone 4S:Artikkel): 
Write to file failed. (source:
              .SaveToFile strTempFile, conSaveCreateOverWrite).
情景5:

Unable to get rendered content of Page (tcm:48-215164-64).
Error 3004 occurred while rendering the Component Presentation (Ring inn julen med Comoyo:Artikkel): 
Write to file failed. (source:
              .SaveToFile strTempFile, conSaveCreateOverWrite).
情景6:

Unable to get rendered content of Page (tcm:48-215164-64).
Invalid value for property 'BinaryContent'. Unable to open uploaded file: C:\Windows\TEMP\tcm-48-215158square940.jpg.

如果你们中的任何人能给我任何关于问题可能出在哪里的线索,这将是很有帮助的,这样我就可以有一个线索。提前多谢

场景1看起来像是VBScript语法错误,所以很可能是模板代码中的输入错误。场景2看起来有点问题,因为它是一个数据库错误。场景3、4、5和6看起来都像是标准的VBScript语法错误

场景3中的一些示例:

Unable to get rendered content of Page (tcm:52-213774-64).
Error 1017 occurred while rendering the Page: Expected 'Then' (source:
   If Rendermode() != "PreviewDynamic" Then).
If Rendermode()!=那么“预览动态”呢
有一个语法错误,它提到了
Expected'Then'
,因此我们知道错误在
Then
语句之前。仔细看看,变量
RenderMode
后面有parentesis,这是不正确的,应该是:

If RenderMode!=那么“预览动态”呢

您希望将VBScript模板迁移到模块化模板的一个典型原因,因为在运行时C#程序集或片段不再存在语法错误的问题。VBScript中的“不等于”运算符是“”,而不是“!=”。这就是错误的原因。@John:非常感谢你的解释。模板中的这些语法错误可能只会在运行时导致问题,因为它们会导致内存问题,可能是我脑子里想不到的,对象正在创建但没有发布。@Bart:是的,我们想迁移到C程序集,但是这个应用程序使用VBScript和Tridion2009已经很长时间了,现在我们将它迁移到了2011年。希望我们的客户同意使用C#而不是VBScript.)欢迎来到stack overflow@user1903749。请考虑加入一个Trdion专用堆栈交换网站的建议: