Имя: Пароль:
1C
1С v8
Найти по реквизиту ("Комментарий", )
, ,
0 Comaro
 
02.05.15
18:13
Здравствуйте!
Не могу найти по комментарию документ. Пытаюсь найти так:
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
    |    ОперацияБух.Ссылка,
    |    ВЫРАЗИТЬ (ОперацияБух.Комментарий КАК Строка (30))
    |ИЗ
    |    Документ.ОперацияБух КАК ОперацияБух
    |ГДЕ
    |    ОперацияБух.Комментарий ПОДОБНО &КомментарийОперация
    |    И ОперацияБух.Дата = &ДатаВыписки";
КомментарийОперация = СокрЛП(Строка(ВыборкаДетальныеЗаписи.Ссылка));
        Запрос.УстановитьПараметр("КомментарийОперация",КомментарийОперация);
        Запрос.УстановитьПараметр("ДатаВыписки",ВыборкаДетальныеЗаписи.Дата);
РезультатЗапроса = Запрос.Выполнить();

Запрос ничего не возвращает, хотя в комментарий программно заполнен тем, что мне нужно. Что может быть не так?
1 jsmith82
 
02.05.15
18:15
А где %
И ВЫРАЗИТЬ
2 Comaro
 
02.05.15
18:38
(1) Синтаксис: ВЫРАЗИТЬ(<Выражение> КАК <Тип значения>)
Где именно не хватает %?
3 ИУБиПовиц
 
02.05.15
19:03
Попробуйте так.
КомментарийОперация = СокрЛП("%" + Строка(ВыборкаДетальныеЗаписи.Ссылка) + "%");
И точно в ВыборкаДетальныеЗаписи.Ссылка хранится ваш комментарий.
И запрос в цикле лучше не делать:)
4 НП
 
02.05.15
19:07
Параметры подозрительные.
Дата - это секунда. Есть ли там чего?
И КомментарийОперация - странный. Текстовое значение ссылки.
5 Comaro
 
02.05.15
19:16
(4) Дата совпадает с точностью до секунды, т.к. программно создан документ с такой же датой, в комментарии документа указана строкой ссылка на документ-основание.
6 Провинциальный 1сник
 
02.05.15
19:25
Хранить в базе представления с целью отбора по ним - неблагодарное занятие. Завтра 1с в очередном релизе платформы поменяет формат представления - и ваш алгоритм перестанет работать.
7 Провинциальный 1сник
 
02.05.15
19:27
+(6) Если уж хотите так делать - то формируйте представление самостоятельно из вида документа, даты и номера, а не преобразованием Строка(<>.Ссылка)
8 Comaro
 
02.05.15
19:27
(3) Не помогло(
Запрос в цикле не лучшее решение, но не знаю как реализовать то, что мне нужно.
Нужно вывести на форму таблицу где в одном столбике отражается один вид документов. Справа соответствующие им Операции вручную. Операцию можно найти или по дате - она равна дате выписки или по комментарию - текстовое значение ссылки соответствующей выписки.
В Цикле выписки по результатам отбора пользователя и уже из них запросом хочу вытащить операции по комментарию
9 Otkr
 
02.05.15
19:40
(8) Продам СП со скидкой)
10 CnupT45rus
 
02.05.15
19:46
Проблема скорее всего тут:
КомментарийОперация = СокрЛП(Строка(ВыборкаДетальныеЗаписи.Ссылка));

Попробуйте сначала так:
КомментарийОперация = "Какоето значение";
11 Comaro
 
02.05.15
19:56
(10) Здесь как раз вижу в отладчике значение
12 b_ru
 
02.05.15
20:27
|ГДЕ
    |    ВЫРАЗИТЬ(ОперацияБух.Комментарий КАК Строка (30)) ПОДОБНО &КомментарийОперация
13 НП
 
02.05.15
21:16
(0) Снимите фильтр, выгрузите запрос в таблицу. Потом распечатайте. Там всё будет видно. Вся выборка. Фильтры можно снимать по очереди. Сначала комментарий. Если выборка непустая, значит, дело в комментарии. Без эксперимента можно год думать.
14 CnupT45rus
 
02.05.15
22:01
НП "Без эксперимента можно год думать."
+1
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой