点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我正在研究将数组传递给component.js函数的SDK扩展。 在调试模式下,阵列应在没有数据的情况下进行处理。 功能如下:
this.tableheader = function(value){ for(var int = 0; int这是tribution.xml属性:
<属性 id =" tableheader" title ="表头" type =" Array" group =" Display"/>这是tribution.ztl(我都尝试过):
void setHeader(Array value){* this.tableheader =值; *} void setHeader(StringArray value){* this.tableheader =值; *}这是我在日食中遇到的错误:
TABLE_1.setHeader(test);"" java.lang.RuntimeException:java.lang.ArrayIndexOutOfBoundsException:0
Chrome在调试中具有相同的错误。
我可以将属性类型更改为字符串,然后发送
value ='["," data"," moredata"," more","]'
感谢您的帮助。
贾斯汀,你好
我还没有详细检查您的问题,但是我想分享一下在阅读您的问题时想到的想法。 通常,将sdk属性值传递到js文件上的特定javascript模式以处理更新(一个函数中的getter和setter)。 看起来像这样:
因此,在您的情况下,您可以将警报代码放在else块上。 需要在js文件中全局定义saveTableHeader变量,以包含跨函数传递的值。
您的意思是当将属性类型从数组更改为字符串(或StringArray)时,警报块会提示您期望的消息吗?
亲切的问候
马丁
贾斯汀,
我试图向您介绍在Studio组件的生命周期内DesignStudio框架如何调用函数的模式。
在第一次调用期间,该函数的值未定义,因此第一个if子句应处理" getter"部分。 我意识到,通过使用全局变量可以保留该属性的当前值。 第二个调用是"设置器"部分,其中函数的value参数包含来自设计器的值。
您上面的示例是将更新代码与属性值处理混合在一起。 更改每个属性后,将调用框架方法" afterUpdate"或" afterDesignStudioUpdate"(取决于您使用的sdk处理程序)。 您的逻辑应该在那里处理。
值得一看SAP的SDK示例。 它们中有一组很好的实现变体和模式。
亲切的问候
马丁
一周热门 更多>