点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
在CDS中,可以将用户定义的类型引用为结构化类型中的类型。 可以在.hdbtabletype中使用用户定义的类型吗?
在hdbcds中,这可以通过以下方法实现。 帮助文档 >
MyStruct 是一种表类型,它使用MyString80和MyInteger作为派生类型。
命名空间Pack1.Pack2; 上下文MyModel { 输入MyInteger:Integer; 类型MyString80:String(80); 表类型MyStruct { aNumber:MyInteger; someText:字符串(80); otherText:MyString80; }; };
但是,如果您想使用hdbtabletype创建类型,该如何实现呢? 我想继续使用以下示例中的派生类型,而不是在每种表类型中定义列类型。
MyModel.hdbcds
命名空间Pack1.Pack2; 上下文MyModel { 输入MyInteger:Integer; 类型MyString80:String(80); };
MyStruct.hdbtabletype
TYPE" Pack1.Pack2 :: MyModel.MyStruct"如表( " aNumber"" Pack1.Pack2 :: MyModel.MyInteger", " someText"" Pack1.Pack2 :: MyModel.MyString80", "其他文本"" Pack1.Pack2 :: MyModel.MyString80" )
但这不起作用。
这种方法可行吗?
谢谢
HI Ashish Singh ,
据我所知,您不能将Data Persistence Artifacts中带有CDS的用户定义类型与SQL DDL中的类型混合在一起。
最后,永远不会将您带有CDS的数据持久性工件中的用户定义类型创建为任何类型的数据库对象。 因此,SQL DDL工件无法引用它。
我对您的建议(价值)实际上是决定是否要对CDS或SQL DDL使用数据持久性工件,并仅使用一种方法。
最诚挚的问候
@bdel
感谢您分享您的想法,阿卜杜勒!
一周热门 更多>