Hello.
I am still struggling with the upgrade to the new version (1.0.2004.1 -> 1.0.2005.1).
I have a created like this:
filter = new RelationPredicateBucket();
filter.Relations.ObeyWeakRelations = true;
filter.Relations.Add(WfProcessTaskEntity.Relations.WfProcessEntityUsingWfProcess);
filter.Relations.Add(WfProcessTaskEntity.Relations.SecGroupsEntityUsingAssignedGroup);
filter.Relations.Add(WfProcessTaskEntity.Relations.SecAdminEntityUsingAssignedUser);
filter.Relations.Add(WfProcessTaskEntity.Relations.WfProcessTaskStatusEntityUsingStatus);
filter.PredicateExpression.Add(PredicateFactory.CompareValue(Sinte.Scoring.DAL.WfProcessTaskFieldIndex.WfProcess,
ComparisonOperator.Equal,Convert.ToInt32(Request.QueryString["id"])));
Only I am using dynamic list, i.e. custom created fields collection:
adapter.FetchTypedList(fields, listData, filter, pageLength, sort, true, null, pageNumber, pageLength);
The problem is that specifying ObeyWeakRelations = true does not produce OUTER JOIN select.
I went through all previous threads regarding ObeyWeakRelations and found out that if I add JoinHint.Left like this:
filter.Relations.Add(WfProcessTaskEntity.Relations.SecGroupsEntityUsingAssignedGroup, JoinHint.Left);
I will get the desired result. But that does not solve my problem since I would have to go through all the existing code and check whether the relations are handled appropriately
Is there anything else I might have overlooked? I've already checked whether the relation is reported as a weak one...
Thanks for your replies,
Jakub