1
0
-1

How to make three related  tables show records. As an example masterDetail.png. Row selection on first table should populate row in 2nd table a row selection in 2nd table should populate rows in 3rd table.These would be read only Tables.

    CommentAdd your comment...

    4 answers

    1.  
      1
      0
      -1

      I tried Subform_Repeater and it does not show the second Grid. It does not load Data at all . Walter I would appreciate if you can show with an example.

      I tried creating a Form view and it shows "save button"  in the bottom and these three Tables are going to be read only Tables.This makes me think I am not using this correctly. Also the Grid when read only is not selectable.So you don't know which row is selected. Although the selection highlighting problem may be solved by using Spreadsheet grid.

      I also considered using List view but it does not allow multiple Grids on same Page.

      Example Student Parent Table Course Child Table and Lectures Grandchild Table. Each of them dependent on the selection of row of last table.

      I would appreciate if Matthew or one of the experts on the forum can provide a quick Example. If this is a limitation of the platform I would appreciate some insight.

        CommentAdd your comment...
      1.  
        1
        0
        -1

        Based on the suggestion, I am using 2 Grid Tables, each of them are backed by their own bean shells load method i.e load (Element element, FormData formData) that returns the FormRowSet. 

        However, it is not clear to me
        1. How to pass or set a variable in the Bean shell that would be accessible by the child's bean Shell.
        2. How can I trigger a load method for the child Table based on the clicking of rows of the Parent table? (assuming in Javascript/custom HTML).

        As mentioned I am challenged to create the injection point on a form where I need to 

        1. set and pass a parameter from a parent Gird to be accessible by the child's bean Shell. 
        2. Call the Child load Bean method based on the click event of the parent Grid. 
        A parameter key needs to be passed that I need to use to retrieve the record for child Table.

          CommentAdd your comment...
        1.  
          1
          0
          -1

          It seems that there are multiple rows on first table, so there will be a need to iterate through second table? Maybe you can also consider https://marketplace.joget.org/jw/web/userview/mp/mpp/_/vad?id=Subform_Repeater plugin in your form design.

            CommentAdd your comment...
          1.  
            1
            0
            -1

            Hi Bilal

            You can use custom JDBC Form Binder or Bean Shell Programming Guide#UseasFormMultiRowLoadBinder to populate the tables according to your specific rules.

            More information in Load & Store Form Grid Data Using Bean Shell Form Binder .

              CommentAdd your comment...