14.07.2010, 12:19 | #1 |
Участник
|
Помогите с range
Здравствуйте.
Помогите с range, есть такой код: X++: QueryBuildRange range; str strOrganization; ; range = SysQuery::findOrCreateRange(queryRun.query().dataSourceTable(tableNum(RPayTrans)),fieldnum(RPayTrans, HrmOrganisationId) ); //строку упростили для наглядности (переменные достаются из контейнера) strOrganization = 'HrmOrganisationId = ' + "N'ЦД0001'" + ' OR HrmOrganisationId = ' + "N'УР0019'"; range.value("( " + strOrganization + ") "); Правильный запрос выглядит так: SELECT * FROM EmplTable ORDER BY EmplTable.EmplId ASC EXISTS JOIN * FROM RPayTrans WHERE EmplTable.EmplId = RPayTrans.Emplid AND ((PayPeriod = {ts '2010-06-30 00:00:00.000'})) AND ((NOT (Amount = 0))) AND ((HrmOrganisationId = N'ЦД0001' OR HrmOrganisationId = N'УР0019')) У меня же получается: SELECT * FROM EmplTable ORDER BY EmplTable.EmplId ASC EXISTS JOIN * FROM RPayTrans WHERE EmplTable.EmplId = RPayTrans.Emplid AND ((PayPeriod = {ts '2010-06-30 00:00:00.000'})) AND ((NOT (Amount = 0))) AND (((HrmOrganisationId=N'ЦД0001'OR HrmOrganisationId=N'УР0019'))) Как я понимаю, все дело в тройных кавычках. Как передать value чтобы было меньше кавычек не понимаю, или же как передать сразу контейнер? Спасибо. |
|