APF model和Fiori launchpad tile的同步问题

If I create a new representation in APF modeler:

APF model和Fiori launchpad tile的同步问题

Execute the configuration in APF modeler, I could see the new representation:

APF model和Fiori launchpad tile的同步问题

But why will the changes affect the app in Fiori Launchpad Tile? If I go to the tile and run the app:

APF model和Fiori launchpad tile的同步问题

I could see the new representation too:

APF model和Fiori launchpad tile的同步问题

Usually I need to update the Fiori Project code manually and commit to project portal for review and central build, then update to BSP application.
I thought now APF modeler is automatically connected to the Fiori Project and trigger an automatic upload, but it’s not.
To my understanding, the tile is using the Semantic Object/Actions to link to a certain Target Mapping, and Target Mapping is linked to a certain BSP application, only when BSP app is updated, the tile will be updated too.

The reason for this phenomenon is because of this:

APF model和Fiori launchpad tile的同步问题

There’s now a APF drill down option in the Smart Business Tile configuration, could also select a specific APF configuration;

APF model和Fiori launchpad tile的同步问题

but why is drill down has such a effect?

No, I double checked, the reason is not simply because of this. I checked my tile, I’m using the old tile, not the new one Sean created, the old one didn’t have this configuration.

APF model和Fiori launchpad tile的同步问题APF model和Fiori launchpad tile的同步问题

对比了一下读取Representation时的请求和新增Representation时的请求:
在Tile App中读取的时候:

APF model和Fiori launchpad tile的同步问题

在APF Modeler中新增Representation保存的时候:

APF model和Fiori launchpad tile的同步问题

URL是一样的,是否可以认为是读取了同一个后台文件?但是去后台上怎么找这个文件呢?在SICF中查不到这个Service:

APF model和Fiori launchpad tile的同步问题

APF的configuration都是以文件的形式存在LREP里的,这个LREP是一个repository,里面的内容实际还是存在database table里的。
你在UXT/928里执行这个report ZLREP_READ试试。

*&---------------------------------------------------------------------*
*& Report ZLREP_READ
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zlrep_read.

DATA: lo_lrep_api          TYPE REF TO /uif/cl_lrep_api,
      lv_layer_type_result TYPE /uif/lrep_layer_type,
      ls_file_id           TYPE /uif/lrep_file_id,
      ls_admin             TYPE /uif/lrep_admin,
      lv_content           TYPE /uif/lrep_content,
      lv_found             TYPE boole_d VALUE abap_false,
      lv_layer_type        TYPE /uif/lrep_layer_type.

ls_file_id-name = '14638100006405115631366280507841'.
ls_file_id-namespace = 'sap/apf/dt/14638099251984376548304796678006/'.
ls_file_id-type = 'apfconfiguration'.
CREATE OBJECT lo_lrep_api.
lo_lrep_api->read_rt_content( EXPORTING is_file_id    = ls_file_id
                                                  iv_layer_type = lv_layer_type
                                                  iv_admin      = abap_true
                                        IMPORTING ev_found      = lv_found
                                                  ev_content    = lv_content
                                                  ev_layer_type = lv_layer_type_result
                                                  es_admin      = ls_admin ).

APF在runtime的时候分为了vendor layer和customer layer. 在runtime的时候,如果用户在smart business tile的设置中设置了Configuration,或者在Target Mapping中配置了Configuration ID,APF在runtime的时候都会在vendor layer直接去APF modeler中读取app,不通过BSP application去取,在Tile中也一样。
这是为了方便在开发系统上进行测试,也是方便客户通过在APF modeler中import程序之后进行修改。只有在程序deploy的时候,是通过自定义的Semantic Object/Action去获取的BSP application。
也就是说在smart business tile中如果作的是如下设置:

APF model和Fiori launchpad tile的同步问题

没有在Drill Down中选择APF,但是只要在target mapping中设置了Configuration ID,那么APF runtime的时候都会去读APF modeler中的设置。

APF model和Fiori launchpad tile的同步问题

但是很奇怪的是这和UXT重开之前的behavior是不一样的,我很确定在之前我在target mapping中也设置了configuration ID,但是smart business tile是去取的BSP的application。
所以针对这一点,我会去Target Mapping中删除掉configuration ID,然后试试Tile是不是可以直接去取BSP app。原因在target mapping的设置里,只要target mapping里设置了configuration id,那么最终就会直接根据config id去lrep拿而忽略bsp的。换言之,在SSB里tile里的设置config其实是没有用的。

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
APF model和Fiori launchpad tile的同步问题

上一篇:Customer Report这个Fiori应用必须和CRM耦合在一起么


下一篇:Opportunity在Fiori cloud system上编辑之后超时的根源分析