Имя: Пароль:
1C
1С v8
Подскажите, чем вызвана различие в результате работы одинакового блока кода?
0 AlexHUmmer
 
25.02.15
01:15
Добрый день всем.

Такой вопрос.
Есть кусок кода, который выполняется корректно в одной базе и НЕ выполняется в другой... Помогите пожалуйста, определить причину такого поведения!?
текст:
"
Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    НоменклатураДополнительныеРеквизиты.Ссылка
        |ИЗ
        |    Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
        |ГДЕ
        |    НЕ НоменклатураДополнительныеРеквизиты.Ссылка.ПометкаУдаления
        |    И НоменклатураДополнительныеРеквизиты.Ссылка.НоменклатурнаяГруппа В (&МассивНоменклатурнаяГруппа)
        |    И НоменклатураДополнительныеРеквизиты.Ссылка В ИЕРАРХИИ(&МассивГруппа)
        |    И НоменклатураДополнительныеРеквизиты.Свойство = &Свойство
        |    И ВЫБОР
        |            КОГДА НоменклатураДополнительныеРеквизиты.Значение ПОДОБНО &АртикулНаименование
        |                ТОГДА ИСТИНА
        |            ИНАЧЕ ЛОЖЬ
        |        КОНЕЦ ";
        Если МассивНоменклатурныхГрупп.Количество() = 0 Тогда
            Запрос.Текст = СтрЗаменить(Запрос.Текст,"Номенклатура.НоменклатурнаяГруппа В(&МассивНоменклатурнаяГруппа)"," Истина ");
        КонецЕсли;
        
        Если МассивГруппы.Количество() = 0 Тогда
            Запрос.Текст = СтрЗаменить(Запрос.Текст,"Номенклатура.Ссылка В ИЕРАРХИИ(&МассивГруппа)"," Истина ");
        КонецЕсли;
        
        Запрос.УстановитьПараметр("МассивГруппа",МассивГруппы);
        Запрос.УстановитьПараметр("МассивНоменклатурнаяГруппа",МассивНоменклатурныхГрупп);
        Запрос.УстановитьПараметр("АртикулНаименование","%"+СокрЛП(АртикулНаименование)+"%");
        Запрос.УстановитьПараметр("Свойство", ДопРеквизитПоискаСоответствий);
"
Суть проста, необходимо выбрать карточку, в ДопРеквизите (Свойство) которой встречается требуемый нам отрывок строки(АртикулНаименование)

Отрабатывает на локальной базе, 1С:8.3 (8.3.4.389), УНФ(1.4.6.19)
НЕ отрабатывает на серверной базе 1С:8.3 (8.3.5.1428), УНФ(1.4.10.4)

Вызвано ли это расхождениями в платформе, релизе конфигураций, видом базы (локальная-серверная) или может чем-то еще?
Можно ли побороть как-то?
1 sanja26
 
25.02.15
01:23
(0) артикул в другой группе теперь...
2 su_mai
 
25.02.15
04:32
ВЫБОР КОГДА НоменклатураДополнительныеРеквизиты.Значение ПОДОБНО &АртикулНаименование ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ

Можно без конструкции ВЫБОР, так как ПОДОБНО возвращает булев тип данных.
3 Лодырь
 
25.02.15
05:08
(0) И почему код некорректно выполняется? В чем некорректность?
4 VladZ
 
25.02.15
05:46
Возможные причины:
1. Отличается структура данных.
2. Отличаются сами данные.
5 ИС-2
 
naïve
25.02.15
06:58
почисти кэш
6 ILM
 
гуру
25.02.15
07:51
Программирование - это магия, так как результат непредсказуем, но быстр.
7 kosts
 
25.02.15
07:55
(4) +
3. Отличаются параметры
8 shuhard
 
25.02.15
07:58
(0) без указания сиквела топик ни о чем
9 shuhard
 
25.02.15
08:15
(8) +1
и если у ТС-а postgresql,  то там Like регистрозависим
Закон Брукера: Даже маленькая практика стоит большой теории.