|
v7: Отбор по реквизиту документа. | ☑ | ||
---|---|---|---|---|
0
r_p
01.10.13
✎
11:28
|
Приветствую. Есть конфа 7.7. Есть документ, у документа общий реквизит "Примечание" (Строка(256)), галочка "Отбор" в св-вах общего реквизита отжата и по причинам от меня не зависящий я не могу ее поставить.
Надо получить список документов со значением этого реквизита. ВыбратьПоЗначению использовать не могу, из-за галочки "Отбор". Запросом не могу получить, пишет ошибку "Длина индекса превышает максимальную длину и не может быть уменьшена." Перебором делать долго. Есть еще варианты или я туплю где-то. Текст запроса на всякий случай: ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ДатаНач по ДатаКон; |ОбрабатыватьДокументы все; |Без итогов; |ТекущийДокумент = Документ.Получение.ТекущийДокумент; |Примечания = Документ.Получение.Примечания; |Группировка ТекущийДокумент; |Группировка Примечания; |Условие(Примечания = Примечание); |";//}}ЗАПРОС |
|||
1
КапЛей
01.10.13
✎
11:30
|
мдя... отбор по строке, да еще скорее всего неограниченной длины это пять!
|
|||
2
r_p
01.10.13
✎
11:31
|
(1) Знаю что жесть. Она не ограничена. 256 символов.
|
|||
3
r_p
01.10.13
✎
11:32
|
Конфу писал юный рарусец. Проклинаем его ежедневно.
|
|||
4
VladZ
01.10.13
✎
11:33
|
(0) "Надо получить список документов со значением этого реквизита" - зачем? Точнее так: зачем анализировать весь бред из примечания длинной 256 символов?
|
|||
5
КапЛей
01.10.13
✎
11:33
|
а пользуются ей дятлы, которые заставляют такого же дятла юного мастерить ненужные отборы.
|
|||
6
VladZ
01.10.13
✎
11:33
|
Если вам нужна некая информация для анализа - вытаскивайте ее в отдельные реквизиты и анализируйте по ним.
|
|||
7
VladZ
01.10.13
✎
11:34
|
(5) Жестоко, хоть и в точку... С таким подходом не найдешь себе клиентов. :)
|
|||
8
r_p
01.10.13
✎
11:35
|
(6) Я бы с БОЛЬШИМ удовольствием так бы и сделал. Но конфа стоит на over 9000 машинах и поменять конфу как либо не получится.
|
|||
9
КапЛей
01.10.13
✎
11:40
|
(8) зачем отбор по примечанию? проверить не написал ли кто на более чем 9000 машинах случайно "Войну и Мир"?
|
|||
10
oslokot
01.10.13
✎
11:44
|
(0) Просто выбрать по условию ПустаяСтрока(Примечание) = 0 ?
Попробуй прямым запросом |
|||
11
r_p
01.10.13
✎
11:45
|
Ладно. Понял что вопрос скорее политический, чем по коду. Буду продавливать создание нового реквизита.
|
|||
12
oslokot
01.10.13
✎
11:46
|
(10) а, сравнивать с чем-то. Ну тоже прямым запросом можно быстро вытянуть
|
|||
13
Ёпрст
01.10.13
✎
11:47
|
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать) |Период с ДатаНач по ДатаКон; |ОбрабатыватьДокументы все; |Без итогов; |ТекущийДокумент = Документ.Получение.ТекущийДокумент; |Примечания = Документ.Получение.Примечания; |Группировка ТекущийДокумент; |Условие(Найти(Примечания,Примечание)>0); |";//}}ЗАПРОС |
|||
14
Ёпрст
01.10.13
✎
11:47
|
|Условие(Найти(Примечания,СокрЛП(Примечание))>0);
даже так лучшее |
|||
15
r_p
01.10.13
✎
11:51
|
(13) Кстати работает, спасибо.
|
|||
16
r_p
01.10.13
✎
11:52
|
Привык к запросам 8-ки. Забыл что можно использовать стандартные функции в запросе.
|
|||
17
PRO100 NigGaZ
01.10.13
✎
14:42
|
ТекстЗапроса = "
|SELECT Получение.IDDOC [ТекущийДокумент $Документ.Получение] | , Cast(Left(Получение.Примечания, 256) AS Примечания |FROM $Документ.Получение AS Получение With (NOLOCK) |WHERE (Cast(Left(Получение.Примечания, 256) AS Примечания) = :Примечение) |"; может так хз |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |