点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我们已经在PaymentInfo对象(在PAYMENTINFOS中)的表中添加了新列
要获取Java中的这些值,请使用paymentInfo.getAttribute(" COLUMN_NAME")函数。
问题仍然存在,如何使用flexsearch访问这些列?
很明显,您无法做到
选择{ o.pk }。 paymentInfo} = {(a rel =" nofollow" hraf=" http://p.pk" target =" _ blank"> p.pk }}在('12345')中的{o.paymentMode}和 {o.store} IN('9999')AND({p.p_bankidnumber}不为空或{p.p_accountnumber}不为空)
因为p_bankidnumber和p_accountnumber不属于Hybris平台随附的PaymentInfo对象。
所以也许必须有一种模仿我上面提到的getAttribute函数的方法?
汤姆,你好。
我不知道我是否正确理解了您,但似乎您直接在数据库中将列添加到了Paymentinfos表中。
我的问题是:为什么不像您应该的那样通过-items.xml文件添加属性? 这样,该属性将可用于Model中的setter和getter,而无需使用getAttribute()函数,并且还可以在灵活的搜索查询中使用它。
话虽如此,请记住,您可以在灵活的搜索查询中使用标准SQL。 因此,如果您使用数据库中存在的列名(例如:p.p_bankidnumber)而不使用方括号,那也应该有效。 当在灵活搜索查询上使用括号时,Hybris将通过使用表,列等的正确数据库名称替换括号来生成最终的SQL查询。 因此,当您使用{PaymentInfo as p}时,Hybris会将其替换为" paymentinfos as p"(因为paymentinfos是表名)。
如果在hybris之外添加了任何列,则如果您在hybris之外输入数据,如果您在hybris之外创建了表,则无法从hybris进行访问。 只有hybris创建的数据,从hybris插入到数据库中的数据才能从hybris中查询和检索。
谢谢
根据先前的答案,Hybris类型系统的扩展(以正确的方式)是成功实施Hybris项目的关键。 查看在线帮助,以了解类型系统https://help.hybris.com/6.7.0/hcd/8c317a28866910149816b4a652470b16.html。
非常感谢,非常感谢。 问题实际上是我缺乏对在Hybris中如何完成类型层次结构的了解。 但是我现在能够找到正确的类型来扩展PaymentInfo,从而解决这些自定义表列。
一周热门 更多>