How to?

Como modelar uma entidade master detail?

Dizer que uma entidade é master detail não é nada mais do que dizer que uma entidade é detalhe de outra.

Para proceder à criação de uma entidade master detail é necessário aceder ao modelo de entidades e definir a que entidade master iremos associar uma entidade do tipo detail.

Modelo de Entidades

Tendo a entidade master criada e definida é, então necessário adicionar a entidade que será do tipo detail. A adição de uma entidade deste tipo é igual a adicionar uma entidade master.

Assim, é necessário aceder à toolbox e arrastar uma caixa do tipo Entity. Como para as entidades master, aqui poderão ser adicionados os atributos pretendidos para a entidade, não podendo existir nenhum atributo que seja naturalkey e, para cada um deles, definir as suas propriedades.

No exemplo seguinte, pretendemos que a entidade ExpenseLine seja um detalhe da entidade Expense:

Modelo de Entidades - entidade master detail

De seguida, deve criar-se a respetiva associação entre a entidade master e a entidade que será detalhe.

Para tal, basta aceder novamente à toolbox e selecionar a seta "Association". A associação deve ter sempre a entidade master como origem, no exemplo a entidade Expense, e a entidade detail como destino, ExpenseLine.

Após isto, é necessário, então, dizer que este tipo de associação será referente a um detalhe. Para isso é necessário selecionar a seta de associação entre as entidades e, nas suas propriedades, definir a "Composition" com o valor a true.

Modelo de Entidades - entidade master detail association

Nota: Para saber como adicionar um atributo do tipo Money consultar o documento: Como adicionar atributos do tipo money a uma entidade?