Table: How to save the clicked row data into a variable for later binding

  • Roman Moraru
    Participant
      Has successfully completed the online course Basics (100)
    2 years, 8 months ago #34235

    Hello,

     

    Let*s say i do have  a table with two columns, name + description x 4 rows of information.

    How do i save the clicked row into a variable so it can later on be used as a binding for some controls?

    Attempt: Create a struct with two parameters name, description => create a global variable (data), with this struct as a data type => via UI Actions save the selectedItem to the data variable => bind the data variable to the controls.

    Issues: the selectedItem doesn’t get saved to the data variable; when binding the data to the controls it can’t be specified what parameter i want to use.

     

     

     

    Vitali Kurdasov
    Moderator
      Has successfully completed the online course Intermediate (200)
      Has successfully completed the online course Basics (100)
      Has successfully completed the online course Advanced (310)
      Has successfully completed the Intermediate Certification
    2 years, 8 months ago #34237
    Up
    1
    Down
    ::

    Hi Roman,

    you can use the client-side BusinessObject SF_Ui5BindingHelper with the function getSelectedListItem to extract your clicked tablerow. In the output mapping you can map the selectedItem to your global variable.

    Please note to use the Table itemPress event instead of the ColumnListItem press event.

    Armin Winkler
    Moderator
      Has successfully completed the online course Introduction
      Has successfully completed the online course Intermediate (200)
      Has successfully completed the online course Advanced (300)
      Has successfully completed the online course Basics (100)
    2 years, 8 months ago #34254
    Up
    1
    Down
    ::

    Hi Roman,

     

    are you using the itemPress event of the table or another widget event to which you subscribe in your process designer story?

     

    Kind regards,

    Armin

    Armin Winkler
    Moderator
      Has successfully completed the online course Introduction
      Has successfully completed the online course Intermediate (200)
      Has successfully completed the online course Advanced (300)
      Has successfully completed the online course Basics (100)
    2 years, 8 months ago #34330
    Up
    1
    Down
    ::

    Hi Roman,

     

    you could have made it work using the ColumnListItem’s press event as well. In that case you needed to use the function getSelectedSourceItem of the business object SF_Ui5BindingHelper instead as the press event does not provide any parameter called ‘listItem’ while the itemPress event of the Table does. Please compare the description of the two events on the API Reference of OpenUI5:

     

    https://sapui5.hana.ondemand.com/1.71.47/#/api/sap.m.ListItemBase/events/press vs. https://sapui5.hana.ondemand.com/1.71.47/#/api/sap.m.ListBase/events/itemPress

     

    Concerning your question: You don’t necessarily have to use a struct with the fields if you rely purely on scripting. However, if you want to use the data source for binding your data to the UI and also want to do field mappings later on you are required to use a proper data type (i.e. struct), yes.

     

    Kind regards,

    Armin

    Roman Moraru
    Participant
      Has successfully completed the online course Basics (100)
    2 years, 8 months ago #34252
    Up
    0
    Down
    ::

    Hi Vitali,

     

    Thank You for your answer!

    I got a strange error: “Error: Event has no List Item” eventho there are list items ?!

    The binding to the specific property is now possible tho.

    Roman Moraru
    Participant
      Has successfully completed the online course Basics (100)
    2 years, 8 months ago #34270
    Up
    0
    Down
    ::

    Fixed: via itemPress it works, ColumnListItem press doesn’t for some reason.

     

    Another question: for such purposes it is always required to use a struct with the properties ?

Viewing 6 posts - 1 through 6 (of 6 total)

You must be logged in to reply to this topic.