AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.01.2008, 15:23   #1  
Starling is offline
Starling
Участник
Дети Юза
 
530 / 76 (4) ++++
Регистрация: 20.10.2005
Адрес: Kiev
Взаимоисключающие условия для like
Исходные данные задачи:
1. Есть Table1 c полями:
a. Id – код
b. Amount – сумма
2. Есть периодическая операция, которая должна выбрать записи из table1 и увеличить значение поля Amount на заданную величину. При запуске операции открывается временная таблица tmpTable1, с полями:
a. Mask – маска для поля id в Table1
b. addAmount – величина , на которую необходимо увеличить значение в поле Amount в Table1
Т.е. примерно такой код:
X++:
While select from tmpTable1
	Join forUpdate  Table1 where Table1.Id like tmpTable1.Mask
{
	Table1.Amount += tmpTable1.addAmount;
	Table1.update();
}
Вопрос – как реализовать проверку, чтобы значение в поле mask таблицы tmpTable1 были взаимоисключающими, т.е. чтобы одно значение Id в Table1 удовлетворяло только одной (или ни одной) записи в tmpTable1.
Пример:
Вариант 1 (корректный) - когда одна запись из table1 может быть сджойнена только с одной записью tmpTable1
Mask1 = 6*
Mask2 = 7*
Вариант2 (некорректный) - когда одна запись из table1 может быть с джойнена c несколькими записями tmpTable1
Mask1 = 6*
Mask2 = *7
Теги
join, like, фильтр, ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Fred Shen: 'Not Like' in Dynamics AX Blog bot DAX Blogs 0 28.10.2006 16:40
Использование "like" при работе с классом "QueryBuildRange" poul DAX: Программирование 18 11.08.2006 12:20
как правильно использовать not like polygris DAX: Программирование 1 06.05.2006 16:59
Как правильно сделать проверку условия? Hidden DAX: Программирование 2 11.01.2006 13:05
Возможность использования Like в QueryBuildRange Koriolis DAX: Программирование 5 14.02.2005 17:43

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:35.