Infomaker - One menu dependent on Another

Hello, 

Has anyone built custom screens or anything else using infomaker where two menus are related. (This lives on a constituent account). 

MenuA has values and MenuB has values a user selects a value from MenuA and that filters down the possible values in MenuB. A user selects a program, and prior to hitting save the values in curriculum are no limited by the program.

User selects Secondary the curriculum values displayed are only Bowie and Dylan. 

The relationship between program and curriculum live in one local/system table.
Has anyone done anything like this, with this relationship? Please tell me its feasible and I would love any guidance/advice on how to accomplish it. 

For example. 

ID   PROGRAM         Curriculum
1    Elementary      Presley
2    Elementary      Jackson
3    Elementary      Hendrix
4    Secondary       Bowie
5    Secondary       Dylan



(Putting this inquiry here as well as its the Developers Forum).

Thank you,

-Lisa

Parents
  • Hi Lisa

    This is definitely possible - in my case, I have a screen that does this. It is based in the area of Ticketing so MenuA is Season and MenuB is Production Season filtered by the choice of Season selected in MenuA. Whilst I'm referencing two different tables, there's no reason you couldn't adjust the logic to suit your single table. The selection SQL for each of the drop down windows in embedded in the InfoMaker report rather then a stored procedure - so here's the logic behind them:

    MenuA 

    SELECT
    id season_id,
    description season_desc,
    fyear,
    inactive,
    start_dt
    from TR_SEASON
    UNION
    SELECT
    null, '(none)', 0, null, null
    order by inactive, start_dt desc, description

    MenuB

    SELECT prod_season_no prod_season_id,
    i.description prod_season_desc,
    ps.season season_id
    from T_PROD_SEASON ps
    join T_INVENTORY i on i.inv_no = ps.prod_season_no
    where ps.season = :season_id
    UNION
    Select null, '(none)', null
    order by i.description

    The filtering of MenuB is effected by having {prod_season_desc, season_id} in the Tag field of the underlying id field

    Martin

  • Thank you Martin, 


    Could i email/write you here offline or I can continue here.

    We set it up as per your advice, but are not getting anything in MenuB now. 

    What does this mean: by having {prod_season_desc, season_id} in the Tag field of the underlying id field? We tried putting it in the MenuB file, in both prog_id (as the underlying ID field as well as track field). I'm just not sure what else to do. 

    On what field do i put the tag? Does my tag seem like the correct one? {tracks, main_prog_id}  

    Just a sample of my data (I should note these are two seprate dddw files. 

    This is the parent file:

    -----------------------

    This is MenuA (Program Heading)

    SELECT      C_PROGRAM.prog_id as main_prog_id, 
                        C_PROGRAM.program
    FROM          C_PROGRAM
    ORDER BY C_PROGRAM.program asc

    -----------------------

    This is MenuB (Curriculum Track)

    SELECT   LTR_WMI_Program_Track.id as 'Main_Prog_id',
                     C_PROGRAM.Prog_id as 'Prog_ID',
                     LTR_WMI_Program_Track.tracks as 'Tracks'
    FROM      LTR_WMI_Program_Track
    JOIN         C_PROGRAM on C_CHC_SF_GOV_PROGRAM.prog_id = LTR_WMI_Program_Track.wmi_program
    WHERE C_PROGRAM.Prog_id = :main_prog_id
    ORDER BY LTR_WMI_Program_Track.tracks asc

    -----------------------

    I can take this off line if you prefer, and just to reiterate 

    Thank you again for your help and advice,

    -Lisa

Reply
  • Thank you Martin, 


    Could i email/write you here offline or I can continue here.

    We set it up as per your advice, but are not getting anything in MenuB now. 

    What does this mean: by having {prod_season_desc, season_id} in the Tag field of the underlying id field? We tried putting it in the MenuB file, in both prog_id (as the underlying ID field as well as track field). I'm just not sure what else to do. 

    On what field do i put the tag? Does my tag seem like the correct one? {tracks, main_prog_id}  

    Just a sample of my data (I should note these are two seprate dddw files. 

    This is the parent file:

    -----------------------

    This is MenuA (Program Heading)

    SELECT      C_PROGRAM.prog_id as main_prog_id, 
                        C_PROGRAM.program
    FROM          C_PROGRAM
    ORDER BY C_PROGRAM.program asc

    -----------------------

    This is MenuB (Curriculum Track)

    SELECT   LTR_WMI_Program_Track.id as 'Main_Prog_id',
                     C_PROGRAM.Prog_id as 'Prog_ID',
                     LTR_WMI_Program_Track.tracks as 'Tracks'
    FROM      LTR_WMI_Program_Track
    JOIN         C_PROGRAM on C_CHC_SF_GOV_PROGRAM.prog_id = LTR_WMI_Program_Track.wmi_program
    WHERE C_PROGRAM.Prog_id = :main_prog_id
    ORDER BY LTR_WMI_Program_Track.tracks asc

    -----------------------

    I can take this off line if you prefer, and just to reiterate 

    Thank you again for your help and advice,

    -Lisa

Children
No Data