|
v7: Запрос к таб части документа | ☑ | ||
---|---|---|---|---|
0
1С-ница
04.06.13
✎
17:07
|
Помогите разобраться: нужно чтобы в запросе выбирались услуги из документа.
Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ДатаНач по ДатаКон; |Остаток = Регистр.ОстатокНаСчете.Сумма; |Клиент = Регистр.ОстатокНаСчете.Клиент; |Док = Регистр.ОстатокНаСчете.Документ; |ТекДок = Регистр.ОстатокНаСчете.ТекущийДокумент; |Функция Нач = НачОст(Остаток); |Функция Прих = Приход(Остаток); |Функция Расх = Расход(Остаток); |Функция Кон = КонОст(Остаток);"; Если флПоДокументам=0 Тогда ТекстЗапроса = ТекстЗапроса + " |Группировка Клиент; |Группировка ТекДок;"; Иначе ТекстЗапроса = ТекстЗапроса + " |Группировка Клиент; |Группировка Док; //|Группировка ТекДок;"; //Ольга |Группировка ТекДок; |Группировка Услуга;"; КонецЕсли; Если флПополнения=0 Тогда ТекстЗапроса = ТекстЗапроса + " |Условие(((ТекДок.Вид()<>""ПриходныйОрдер"") и (ТекДок.Вид()<>""ПоступлениеДенег"") и (ПредставлениеДокумента(ТекДок)<>""Чек на продажу"")) или (Док.Выбран()=0));"; КонецЕсли; Если флОплатаКредита=0 Тогда ТекстЗапроса = ТекстЗапроса + " |Условие(((ТекДок.Вид()<>""ПриходныйОрдер"") и (ТекДок.Вид()<>""ПоступлениеДенег"") и (ПредставлениеДокумента(ТекДок)<>""Чек на продажу"")) или (Док.Выбран()=1));"; КонецЕсли; Если флСнятия=0 Тогда ТекстЗапроса = ТекстЗапроса + " |Условие((ТекДок.Вид()<>""РасходныйОрдер"") и (ПредставлениеДокумента(ТекДок)<>""Чек на возврат""));"; КонецЕсли; Если флПродажи=0 Тогда ТекстЗапроса = ТекстЗапроса + " |Условие((ТекДок.Вид()<>""ОказаниеУслуг"") и (ТекДок.Вид()<>""ПродажаМатериалов"") и (ТекДок.Вид()<>""РасходМатериалов"") и (ТекДок.Вид()<>""ВыдачаКарты""));"; КонецЕсли; Если флВозвраты=0 Тогда ТекстЗапроса = ТекстЗапроса + " |Условие((ТекДок.Вид()<>""ВозвратУслуг"") и (ТекДок.Вид()<>""ВозвратОтПокупателя""));"; КонецЕсли; ТекстЗапроса = ТекстЗапроса + " |Условие(Клиент в ВыбКлиент); |"//}}ЗАПРОС ; |
|||
1
Ёпрст
04.06.13
✎
17:10
|
(0) как бэ записи регистров к строкам документа имеют весьма посредственное отношение.
|
|||
2
Ёпрст
04.06.13
✎
17:11
|
Ты уж определись, что тебе надо - обращение к регистру, или к документам и его строкам.
|
|||
3
1С-ница
04.06.13
✎
17:11
|
И вместе с услугой (с отбором по виду услуги) мастер (тоже есть в таб части документа)
|
|||
4
1С-ница
04.06.13
✎
17:11
|
Запрос не я писала, допилить его надо
|
|||
5
Ёпрст
04.06.13
✎
17:12
|
Ну и совсем не комильфо - пихать условие на вид документа движения регистра при вычислении НачОст и КонОст.
|
|||
6
Ёпрст
04.06.13
✎
17:13
|
(4) его надо не допилить, ему место в топке.
|
|||
7
1С-ница
04.06.13
✎
17:14
|
(6) Если знаете как сделать более оптимальный запрос со всеми условиями - я все внимание
|
|||
8
1С-ница
04.06.13
✎
17:15
|
Я даже не могу открыть этот запрос конструктором, ругается видимо на то что запрос рваный..
|
|||
9
1С-ница
04.06.13
✎
17:16
|
Функция Кон = КонОст(Остаток); <<?>> ";
Запрос[10] : Неизвестая ошибка '"; ' Ошибок - 1, Предупреждений - 0. |
|||
10
Ёпрст
04.06.13
✎
17:17
|
А зачем его открывать конструктором ?
:) |
|||
11
1С-ница
04.06.13
✎
17:18
|
Я в 7.7 ни разу запросы не делала, не понимаю как они устроены..
|
|||
12
1С-ница
04.06.13
✎
17:21
|
хотя зайти в конструктор все-таки получилось)
|
|||
13
1С-ница
04.06.13
✎
17:24
|
Может проще организовать выборку по документу и не париться с запросом...
|
|||
14
Ёпрст
04.06.13
✎
17:24
|
Короче, не знаю, зачем тебе строки документа в этом запросе, но если нужны в нём НачОст и КонОст, то своими условиями на вид документа..ты их теряешь напрочь.
Ну и тормозня тоже дикая из-за этих условия, особенно там, где на Выбран() у тя еще проверяется. |
|||
15
1С-ница
04.06.13
✎
17:26
|
(14) строки документа нужны чтобы получить услуги и мастера
|
|||
16
Ёпрст
04.06.13
✎
17:27
|
(15) возьми эти данные с нужного регистра.
|
|||
17
Ёпрст
04.06.13
✎
17:27
|
или делай запрос к документам и его табличной части.
|
|||
18
Ёпрст
04.06.13
✎
17:28
|
Цель твоя не ясна, судя по запросу - это получение долгов клиентоса в разрезе КредДокументов..
Какое отношение он имеет к табличной части дока - не ясно. |
|||
19
1С-ница
04.06.13
✎
17:34
|
(18) В отчете есть информация по клиенту: начальный остаток, приход, расход, конечный остаток. Сейчас это сделано в разрезе документов (Оказание услуг), нужно чтобы была аналитика по услугам по каждому Оказанию услуг.
|
|||
20
1С-ница
04.06.13
✎
17:35
|
переделывать запрос не хочется, хочется добавить группировку по Услугам и выводить ее..
|
|||
21
Ёпрст
04.06.13
✎
17:35
|
(19) Ну скажем так, нет у тебя НачОст и КонОст, если хоть 1 фильтр будет включен
|
|||
22
Ёпрст
04.06.13
✎
17:36
|
(20) её нет и не будет в этом запросе, ибо в регистре нет никакой инфы об этом, а строки документа не имеют никакого отношения к записям этого регистра.
|
|||
23
Ёпрст
04.06.13
✎
17:44
|
Подсказка: останки по долгам бери с этого регистра, всё остальное - с другово, подходящего.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |