Architecting UI for Master-Detail-Detail RRS feed

  • Question

  • Hi

    There is plenty of documentation regarding the ol' master - detail pattern, but what about the case where we have master - detail - detail?

    The obvious master detail pattern example is order & orderline, where the 'master' is the order, and the orderline represents the 'detail' part.

    But the master-detail-detail is slightly more complex: An example of this is when a person places an order on behalf of other people, and the products they purchase have different options.

    John creates an order and purchases 2 products: one for himself, and one for Lucy.
    The product that he purchases for himself is not the same product he purchases for Lucy.
    The product he purchases for himself has 2 colours: blue and red. John wants Red.
    The product he purchases for Lucy has 3 colours: green, yellow and orange. John orders yellow on behalf of Lucy.

    Any thoughts on what is the easiest way to display this complexity to the user, while maintaining the functionality?

    Is it even possible to design this in a way that the overall context is not lost, while the user configures the optional parts on behalf of another person (i.e. the lowest detail in the master-detail-detail)

    Thanks for the input?



    Thursday, September 20, 2007 3:58 AM

All replies


    Hi, I think the solution is simple based on the example:


    Order(Master Form)


    OrderHeader(number, name, etc)

                                     + - *(add, edit, delete)

    | |    Product (Grid - OrderDetail)

    |x |    Product

    | |    Product

    | |    Product


    Order Detail (Form)



    Name ____

    |X| red

    || orange

    || blue


    But i wonder, where is the detail-detail ?




    Thursday, September 20, 2007 4:25 PM
  • Hi,


    I am not aware of any Master-Detail-Detail pattern as such but if I want to setup my UI for convincing user interface, my initial thought would be like as below

    • If your application allow customer to purchase on behalf of more than one user then take input initially so for all future transaction, you can identify whom this transaction is for In this case say John does some shopping for himself and Lucy so you will have two display on screen (may be grid or grouping grid according to user)
    • Whenever any product is being purchased by John, he has to mention whom this product is for which is quite obvious input.
    • After taking this input, reflect accordingly on the user screen

    A question goes how do you differentiate multiple users. This depends upon a question can logged in user shop on behalf of more than one user. If yes then you may need to go for datagrid and create group accordingly. This can be easy if you take input initially how many total users can be (including logged in). But there may be some other better UI option. From user point of view, he should be able to all in one screen for all users whom he/she shopped for. Link to detail of transaction is good.


    Hope this will help


    Tuesday, September 25, 2007 10:26 AM
  • Hi,


    Any updates on this one friend?


    Wednesday, October 3, 2007 4:06 AM