Имя: Пароль:
1C
1С v8
СКД: Условие на поле в запросе
,
0 mirrr
 
09.12.11
13:42
Есть результат запроса в виде:
----------------------------------------
Договор_______Статьи
----------------------------------------
1__________Статья 1, Статья 2, Статья3
2__________Статья 2, Статья 4, Статья5
3__________Статья 1, Статья 2, Статья4

Поле "Статьи" - строковое, полученное путем перевода ссылочного типа (Справочник.Статьи) в строку.
В параметрах отчета есть параметр "Статья" (тип - Справочник.Статьи). Как можно сделать, чтобы отбор договоров был по выбранной статье, а если статья не указана - то по всем статьям.
1 rs_trade
 
09.12.11
13:44
В конструкторе, на закладке Компоновка данных. Выглядеть будет как то так

{ГДЕ
   РеализацияТоваровУслуг.Ссылка.*}
2 Gesperid10
 
09.12.11
13:44
Поле "Статьи" - строковое, полученное путем перевода ссылочного типа (Справочник.Статьи) в строку.
накуа?
3 ZanderZ
 
09.12.11
13:44
выбор когда тогда ИСТИНА иначе ЛОЖЬ конец
4 mirrr
 
09.12.11
13:46
(1) что фигурные скобки означают?
5 Gesperid10
 
09.12.11
13:47
расширения языка запросов для СКд
6 mirrr
 
09.12.11
13:47
(2) чтобы для одного договора в одном поле отображались все его статьи
7 Gesperid10
 
09.12.11
13:48
так фильтруй по ссылочным статьям, а выводи что хочешь
8 mirrr
 
09.12.11
13:51
(7) не понял, как можно в одном поле "Статьи" указать несколько ссылок?
9 Gesperid10
 
09.12.11
14:15
преобразуй свою таблицу к такой:

Договор  | Представление всех статей  | Статья
-------------------------------------------------
1        |Статья 1, Статья 2, Статья3 | Статья 1
2        |Статья 1, Статья 2, Статья3 | Статья 2
3        |Статья 1, Статья 2, Статья3 | Статья 3
10 Gesperid10
 
09.12.11
14:16
пардон, вот так:

Договор  | Представление всех статей  | Статья
-------------------------------------------------
1        |Статья 1, Статья 2, Статья3 | Статья 1
1        |Статья 1, Статья 2, Статья3 | Статья 2
1        |Статья 1, Статья 2, Статья3 | Статья 3
.....
11 PVV65
 
09.12.11
14:20
(0) Добавляешь вычисляемое поле -

Выбор Когда ЗначениеЗаполнено(&Параметр1) Тогда Выбор когда Строка(&Параметр1) ПОДОБНО Статьи  Тогда Истина Иначе Ложь Конец Иначе Истина Конец

Отбор делаешь по этому полю на Истину.
12 PVV65
 
09.12.11
14:22
+(11) не правильно


Выбор Когда ЗначениеЗаполнено(&Параметр1) Тогда Выбор когда "%" + Строка(&Параметр1) + "%" ПОДОБНО Статьи  Тогда Истина Иначе Ложь Конец Иначе Истина Конец
13 PVV65
 
09.12.11
14:23
Замутил

Выбор Когда ЗначениеЗаполнено(&Параметр1) Тогда Выбор когда Статьи ПОДОБНО "%" + Строка(&Параметр1) + "%"  Тогда Истина Иначе Ложь Конец Иначе Истина Конец
14 Gesperid10
 
09.12.11
14:47
кхм, а уменя есть статьи затрат "усл сч.20", "усл сч.20, 23"
15 Gesperid10
 
09.12.11
14:48
а ещё "Охрана" и "Охрана труда (услуги) сч. 25", "Охрана труда (услуги) сч. 26" и много подробного
16 PVV65
 
09.12.11
14:48
(14) И что?
17 PVV65
 
09.12.11
14:49
+(16) Отправить к изучению ПОДОБНО?
18 Gesperid10
 
09.12.11
14:52

ВЫБРАТЬ
  ИСТИНА
где
  "xxxxx, усл сч.20, 23, xxxx" ПОДОБНО "%усл сч.20%"
19 PVV65
 
09.12.11
14:57
(18) Не пойму. Ты хочешь сказать, что при помощи регулярных выражений (вообще) и функции ПОДОБНО (в частности) нельзя найти нужную подстроку?
20 Gesperid10
 
09.12.11
15:02
Мля

Договор  | Статья
---------------------------------------------------------------
1        |"Охрана", "Другая статья"
2        |"Охрана труда (услуги) сч. 25", "Дргуая статья"

Сделай отбор по статье "Охрана"
21 Gesperid10
 
09.12.11
15:03

Договор  | Статья
---------------------------------------------------------------
1        |<"Охрана", "Другая статья"
2        |"Охрана труда (услуги) сч. 25", "Дргуая статья"
22 Gesperid10
 
09.12.11
15:04
только кавычек представлении нет =)
23 PVV65
 
09.12.11
15:29
(20 - 22) Учите регулярные выражения.
24 Gesperid10
 
09.12.11
15:35
мля, вот ты непробиваемый
25 Gesperid10
 
09.12.11
15:37
В общем случае одни наименования являются подстроками других!
26 Gesperid10
 
09.12.11
15:38
+ ПОДОБНО - это не регулярные выражения
27 PVV65
 
09.12.11
15:43
(24) Для решения твоей задачи, я добавлю к статье кавычки и напишу -- ПОДОБНО "%""" + Строка(&Параметр1) + """%" --.
28 Gesperid10
 
09.12.11
15:48
а как ты решишь задачу, какие символы разделители использовать?
те которые не встречаются не в одном наименовании и никогда не появится или как?

Короче, я к тому, что фильтровать по наименованию имея доступ к ссылкам - это изврат и чреват хнёй
29 Gesperid10
 
09.12.11
15:49
(27) а с чего ты взял, что у меня нет статьи "услуги для ООО "Охрана""?
30 PVV65
 
09.12.11
16:03
(28) ТС решает свою конкретную задачу. Ты же говоришь о "нетленке". Естественно сравнивать надо ссылки. Но для этого надо вернутся к условию задачи, а не стартовать с итоговой таблицы. А его задаче легко решается при помощи ПОДОБНО и выбора "правильного" разделителя с учетом наименований статей затрат (это его база, это его локальное решение). Кроме этого, на основании предыдущих вопросов ТС, я приблизительно представляю путь, как была получена итоговая таблица. Плюс к этому, отборы зачастую накладываются на итоговые таблицы. Плюс  к этому, в данной задаче тащить ссылки на статьи вызовет дополнительный геморой. Зачем так много проблем, если задача, в данном контексте, решается легко и просто.
2 + 2 = 3.9999999999999999999999999999999...