cancel
Showing results for 
Search instead for 
Did you mean: 

SAPUI5 ProcessFlow not updating

florian_halder
Participant
0 Kudos

Hello, experts,

I'm new to SAPUI5 and I'am currently playing with ProcessFlow Control (only lanes). The data is displayed correctly the first time it is loaded. But unfortunately the control doesn't update when the data changes.

The application is a master detail application, created using Fiori template and has an oData binding.

The goal is that when an entry is clicked on the master view, the ProcessFlow control on the detail view is updated. I have inserted a table for testing. This is updated correctly with the same binding.

The whole is realized by XML Views.

<List xmlns:commons="sap.suite.ui.commons" xmlns="sap.m" xmlns:mvc="sap.ui.core.mvc" xmlns:semantic="sap.m.semantic"
xmlns:footerbar="sap.ushell.ui.footerbar" noDataText="Drop list items here" id="__list0" items="{workflowSet}">
 <items>
  <StandardListItem type="Navigation" title="{ABT}" description="{UNAME}" icon="sap-icon://picture" id="__item2"/>
 </items>
</List>

<commons:ProcessFlow id="processflow" zoomLevel="Two" scrollable="true" nodePress="onNodePress" nodeTitlePress="onNodeTitlePress" lanes="{workflowSet}" foldedCorners="true">
 <commons:lanes>
  <commons:ProcessFlowLaneHeader laneId="{ABT}" iconSrc="sap-icon://payment-approval" text="{ABT}: {UNAME}" position="{POSITION}"/>
  </commons:lanes>
</commons:ProcessFlow>

Do I have to refresh/rerender it manually? If yes, is this a bug?

Thank you in advance for your help.

Accepted Solutions (0)

Answers (1)

Answers (1)

florian_halder
Participant
0 Kudos

Hi all,

I think I found something in the Process Flow documentation (section Implementation Tips):

  • When to call the updateModel() method

    When you change the model that is bound to the ProcessFlow control, you also need to call the updateModel() method. You need to do this because when the nodes and lanes change, the complete Process Flow with all its connections has to be recalculated. When you change only the content of the nodes, calling only the updateNodesOnly() method is sufficient.