Имя: Пароль:
1C
 
бесконечная строка и "комментарий"
0 SZA
 
07.05.07
19:23
Расскажите, как вы лично обходите задачу вынимать "бесконечные строки", например реквизит "коментарий" из документов? Понятно, что напрямую в запрос не пропихнешь :(

Но каждый раз доставать через прямую ссылку документа - грузительно.

И самое неприятное, - требует везде "ручного вмешательства" и следовательно невозможности применения чудесного механизма "СхемаКОмпоновкиДанных" :(

Изменять везде длину строки - моветон, т.к. это требует изменять множество документов в типовых конфигурациях, а я сторонник минимального или невмешательства в код типовых конф 1С.
1 dimoff
 
07.05.07
19:26
Почему напрямую в запрос это не пропихнешь?
2 asady
 
07.05.07
19:26
(0) а ПОДСТРОКА не помогает?
3 dimoff
 
07.05.07
19:26
Это не пропихнешь в условия и в группировки, но тут спасет ВЫРАЗИТЬ(Комментарий КАК СТРОКА(200)) например
4 SZA
 
07.05.07
19:35
(1) приведи полный пример синтакиса "ВЫРАЗИТЬ" запроса плиз

"ВЫБРАТЬ
   ПриходныйКассовыйОрдер.Комментарий КАК Комментарий
ИЗ
   Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер"

? я видать упустил эти варианты из виду
5 SZA
 
07.05.07
19:38
я привел некорректный пример. Конечно пусть присутствует какая нидь группировка - например по Контрагенту.
6 dimoff
 
07.05.07
19:39
(4) То, что в 4 замечательно будет работать и без ВЫРАЗИТЬ, если захочешь поставить условие, то прийдется его ставить как

ВЫБРАТЬ
   ПриходныйКассовыйОрдер.Комментарий КАК Комментарий
ИЗ
   Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
ГДЕ ВЫРАЗИТЬ(ПриходныйКассовыйОрдер.Комментарий КАК СТРОКА(200)) Подобно "какой-то текст%"

если по полю Комментарий не дай бог захочется группировать, то

ВЫБРАТЬ
   ВЫРАЗИТЬ(ПриходныйКассовыйОрдер.Комментарий КАК СТРОКА(200)) КАК Комментарий
7 dimoff
 
07.05.07
19:40
вобщем с Выразить он будет себя вести как обычный строковый реквизит ограниченной длины
8 SZA
 
07.05.07
19:43
спасибо, работает
протер мне глаза - кстати, как сам думаешь, какое ограничение длины тут можно использовать? например 255 ?
9 dimoff
 
07.05.07
19:57
Не знаю, мне всегда 200 хватало, больше не пробовал, но причин для ограничений не вижу
10 GROOVY
 
07.05.07
20:02
(8) 600 было. Работает.
11 SZA
 
07.05.07
20:08
ну чем то ж оно ограничено? раз не размером байта 256, то чем? 4096 32576
12 MRAK
 
08.05.07
11:26
(11) да вроде как ничем не ограничено (в разумных пределах)
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн