カレンダーにアクティビティを表示する iPad アプリを開発しています。このアクティビティに関連する 2 つの MBO があります。クエリ + 結合で結果セットを取得できます。しかし、テスト基準文を使用して「where」クエリを取得できません。testcriteria 行を追加するまで、クエリは問題ありません。これはコードです:
SUPQuery *oneActivitiesQuery = [SUPQuery getInstance];
[oneActivitiesQuery select:@"c.DATE_FROM, d.DESCRIPTION"];
[oneActivitiesQuery from:@"GetCalendar" :@"c"];
[oneActivitiesQuery join:@"GetActivityDetail" :@"d" :@"d.GUID" :@"c.GUID"];
oneActivitiesQuery.testCriteria = [SUPAttributeTest match:@"c.DATE_FROM" :d];
SUPQueryResultSet* calendarResultSet = [MBOCRM_MOBILE_MBOCRM_MOBILEDB executeQuery:oneActivitiesQuery ];
if (calendarResultSet == nil) {
MBOLog(@"executeQuery failed");
return;
}
for (SUPDataValueList* result in calendarResultSet ){
MBOLog(@"Date --> %@", [[SUPDataValue getNullableDate:[result item:0]] description]);
MBOLog(@"Description --> %@", [SUPDataValue getNullableString:[result item:1]]);
}
5 行目の「d」は NSDate 変数です。
そして、これはエラーメッセージです:
Terminating app due to uncaught exception 'SUPPersistenceException', reason: 'unexpected null value for '"b"'