Имя: Пароль:
1C
1С v8
Забавный баг или фича?
0 BiBijke
 
23.04.14
16:44
Словил забавный баг, хотел спросить у всех так?

Код:

Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Поле1", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(0)));

Таблица.Добавить().Поле1 = "qwe";
Таблица.Добавить().Поле1 = "123";

Построитель = Новый ПостроительОтчета;
Построитель = Новый ПостроительОтчета;
Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(Таблица);
Построитель.ЗаполнитьНастройки();

э = Построитель.Отбор.Добавить("Поле1");
э.Использование = Истина;
э.Значение = "Богданова ыва";

Построитель.Выполнить();

Таблица = Построитель.Результат.Выгрузить();

Баг в том что если колонка таблицы строка не ограниченной длинны, то какое бы значение в отборе мы не ставили, на выходе получим туже таблицу без изменений. Если ограничить строку, то отбор работает как надо, в чем подвох ?)
1 fisher
 
23.04.14
16:49
Подвох в ограничениях работы со строками неограниченной длины в запросах. То бишь, это фича.
2 BiBijke
 
23.04.14
16:51
(1) А где ексепшен? в запросах вроде всегда ексепшен вылезал, а тут просто тупо ничего не происходит...
3 le_
 
23.04.14
17:00
(0) Можно в отборе ставить вид сравнения "Содержит"...
4 BiBijke
 
23.04.14
17:03
(3) Костыль всегда запилить можно ) А если необходимо точной сравнение ?)
5 fisher
 
23.04.14
17:07
(2) Потому и фича, а не сам дурак :)
6 BiBijke
 
23.04.14
17:18
(5) Сколько еще таких фич в 1С, а потеряное время уже не вернешь )
7 fisher
 
23.04.14
17:23
Освоение фич СКД - занятие более благодарное, чем фич ПостроителяОтчетов. Оно понятно, что в коде сабж проще получается. Сейчас. Зато СКД покрыло бы поле последующих возможных доработок.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший