SQL Sparx 文档生成不工作
SQL in Sparx document generation is not working
我正在尝试在 EA sparx 存储库模板中制作,用于在包中生成带有打印图表的文档,并列出所有组件、注释和它们存储的主要包。
- 模板包含图表和片段link。
- 片段包含 table 个组件、注释和存储组件的包。
在我只有组件和注释列表之前,一切正常。一旦我还添加了组件包(来自 t_package 的名称),SQL 显示错误“将 nvarchar 值转换为数据类型 int”
并且根本不会打印 table 个组件。
这就更奇怪了,因为 SQL 在 SQL 便签本中单独使用的命令完全可以正常工作并给你正确的结果。我已经创建了一个使用了 table 的图表,但我仍然不明白问题出在哪里...
我该如何解决这个问题?
观察:
这工作正常:
SELECT o1.Name as Component, o1.Note as "Note.Formatted"
from t_diagramobjects do1, t_diagram d1, t_object o1
where do1.diagram_id = d1.diagram_id
and do1.object_id = o1.object_id
and d1.ea_guid = #DIAGRAMID#
and o1.Object_type = 'Component'
order by o1.Name
这里有问题:
SELECT o1.Name as Component, p1.Name as "Part.of", o1.Note as "Note-Formatted"
from t_diagramobjects do1, t_diagram d1, t_object o1, t_package p1
where do1.diagram_id = d1.diagram_id
and o1.Package_ID = p1.Package_ID
and do1.object_id = o1.object_id
and d1.ea_guid = #DIAGRAMID#
and o1.Object_type = 'Component'
order by "Part.of"
错误在行
and d1.ea_guid = #DIAGRAMID#
#DIAGRAMID#
将包含图表的整数 ID,而不是图表的 GUID。
将其更改为
and d1.Diagram_ID = #DIAGRAMID#
使用 EA 时找出 SQL 错误的一个技巧是检查 EA 记录所有 SQL 错误的文件 %appdata%\Sparx Systems\EA\DbError.txt
。
我正在尝试在 EA sparx 存储库模板中制作,用于在包中生成带有打印图表的文档,并列出所有组件、注释和它们存储的主要包。
- 模板包含图表和片段link。
- 片段包含 table 个组件、注释和存储组件的包。
在我只有组件和注释列表之前,一切正常。一旦我还添加了组件包(来自 t_package 的名称),SQL 显示错误“将 nvarchar 值转换为数据类型 int”
并且根本不会打印 table 个组件。
这就更奇怪了,因为 SQL 在 SQL 便签本中单独使用的命令完全可以正常工作并给你正确的结果。我已经创建了一个使用了 table 的图表,但我仍然不明白问题出在哪里...
我该如何解决这个问题?
观察: 这工作正常:
SELECT o1.Name as Component, o1.Note as "Note.Formatted"
from t_diagramobjects do1, t_diagram d1, t_object o1
where do1.diagram_id = d1.diagram_id
and do1.object_id = o1.object_id
and d1.ea_guid = #DIAGRAMID#
and o1.Object_type = 'Component'
order by o1.Name
这里有问题:
SELECT o1.Name as Component, p1.Name as "Part.of", o1.Note as "Note-Formatted"
from t_diagramobjects do1, t_diagram d1, t_object o1, t_package p1
where do1.diagram_id = d1.diagram_id
and o1.Package_ID = p1.Package_ID
and do1.object_id = o1.object_id
and d1.ea_guid = #DIAGRAMID#
and o1.Object_type = 'Component'
order by "Part.of"
错误在行
and d1.ea_guid = #DIAGRAMID#
#DIAGRAMID#
将包含图表的整数 ID,而不是图表的 GUID。
将其更改为
and d1.Diagram_ID = #DIAGRAMID#
使用 EA 时找出 SQL 错误的一个技巧是检查 EA 记录所有 SQL 错误的文件 %appdata%\Sparx Systems\EA\DbError.txt
。