Create a ManyValuedAssociation in TItems class pointing to Tp_iteminzet:
[ManyValuedAssociation([TAssociationProp.Lazy], CascadeTypeAll, 'FItemid')]
FItemzetList: Proxy<TList<Tp_iteminzet>>;
Then find TItems objects using distinct but where the association is not null:
Result := OM.Find<TItems>
.CreateAlias('Itemzetlist', 'p')
.Where(not TLinq.IsNull('p.p_itemzetid'))
.RemovingDuplicatedEntities
.List
More info: