Hi,
I have a structure that compares to the following:
Type
//- ENTITY ORDERITEM
[Entity]
[Table('ORDERITEM')]
[Sequence('SEQ_ORDERITEM_ID')]
[Id('FId', TIdGenerator.IdentityOrSequence)]
TOrderItem = class
private
[Column('ID',[TColumnProp. Unique, TColumnProp.Required ] ) ]
FId:Integer;
[Column('AMOUNT',[] ) ]
FAmount:integer;
procedure SetAmount(const Value: integer);
public
property Amount: integer read FAmount write SetAmount;
..
..
end;
//- ENTITY ORDER
[Entity]
[Table('ORDER')]
[Sequence('SEQ_ORDER_ID')]
[Id('FId', TIdGenerator.IdentityOrSequence)]
TOrder = class
private
[Column('ID',[TColumnProp. Unique, TColumnProp.Required ] ) ]
FId:Integer;
[ManyValuedAssociation([], CascadeTypeAll)]
[ForeignJoinColumn('ORDER_ID', [TColumnProp.Required])]
FOrderItems: TList<TOrderItem>;
public
..
..
end;
//Given this definition, Ii want to query all orders with items that has amount >= 100 ,
//So i coded something like this :
var
lItemCollection : TList<TOrderItem>;
lOrderCollection : TList<TOrder>;
lOrderItem : TOrderItem;
lItemCollection := TStaticObjectManager.Find<TOrderItem>
.Add(TExpression.GreaterOrEqual('Amount', 100))
.List;
for lOrderItem in lCollection do
begin
// here comes my question....
// how can i get the corresponding order ?
end;
I hope you can help me.
TIA