Показать сообщение отдельно
Старый 15.09.2021, 21:18   #1  
Perc is offline
Perc
Участник
 
193 / 47 (2) +++
Регистрация: 05.03.2005
Настройка структуры счета. Критерии
AX 2012 R3
В настройках для плана счетов есть форма из темы. Есть возможность задавать критерии с условием "начинается с".
В итоге все это потом прилетает в запрос с участием таблицы DimensionConstraintNodeCriteria (\Classes\DimensionAttributeValueGroupValidation\findConstraintNodeByParentValue)
Одно из условий в запросе:
X++:
(_displayValue like dimensionConstraintNodeCriteria.WildCardString)
_displayValue - собственно значение аналитики которое проверяется.
Наткнулся на то что запрос не возвращает то что должен бы был. Упростил, посмотрел трассировку. Первый запрос просто сделал чтобы показать, что есть на самом деле в таблице. Второй запрос возвращает строку. Третий не возвращает ничего:
X++:
SELECT * FROM DIMENSIONCONSTRAINTNODECRITERIA T1 
WHERE ((PARTITION=5637144576) AND (RECID = 5637213979 OR RECID = 5637213968))

SELECT * FROM DIMENSIONCONSTRAINTNODECRITERIA T1 
WHERE ((PARTITION=5637144576) AND ((N'48\_0000' LIKE WILDCARDSTRING ESCAPE '\' ) AND RECID = 5637213979))

SELECT * FROM DIMENSIONCONSTRAINTNODECRITERIA T1 
WHERE ((PARTITION=5637144576) AND ((N'58\_0303040302' LIKE WILDCARDSTRING ESCAPE '\' ) AND RECID = 5637213968))


В _displayValue значение были без бэкслэша. Их аксапта сама подставляет.

Это что так плохо реагирует like на подчеркивание в тексте кода?
И что с этим собственно сделать малой кровью?
Миниатюры
Нажмите на изображение для увеличения
Название: DIMENSIONCONSTRAINTNODECRITERIA.JPG
Просмотров: 153
Размер:	57.6 Кб
ID:	13239