#0
by tciban
Почтенные коллеги! Занимаясь написанием некоего отчета под СКД столкнулся со следующей проблемой: я вывожу таблицу документов одного вида и в колонках среди прочего должна быть колонка с последним (по дате) документом, связанным с этим документом. Есть критерий отбора, но в данном случае наверное он неприменим. Как это реализовать? Подробнее и понятнее - есть документ Сделка, есть куча видов документов в которых есть реквизит "Сделка" - ссылка на документ Сделка, для каждой Сделки нужно получить последний по дате документ (не важно какого вида) связанный с этой Сделкой через реквизит Сделка. Как это сделать?
#1
by Demasiado
Можно, посмотреть как работает отчет Структура подчиненности в любой типовой конфе, там это сделано запросом
#3
by tciban
Там это делается для одного документа. И запрос строится по метаданным :) У меня же несколько иной случай...
#9
by Господин ПЖ
>В конфах ведь процедурно реализовано там реализовано "процедурно" рисование полное дерево структуры подчиненности Док1 ----->Док2 ---------->Док3 вниз оно рисуется по критерию, вверх по метаданным
#12
by tciban
Ну хорошо, а как можно запросом выбрать самый последний документ определенного вида из всех у кого реквизит равен некоему параметру в запросе?
#14
by tciban
Я не понял как в запросе применить отбор. Вот например простой запрос: И как тут использовать критерий отбора что бы получить по каждой сделке последний по дате документ у которого реквизит "Сделка" ссылается на эту сделку? Критерий отбора "ДокументыСделки" есть.
#16
by tciban
Все парни, уже башку почти сломал, скоро увезут меня в дурку - ничего не могу придумать. Как получить последний документ определенного вида - нашел, но тут то дофига документов! И надо последний из них. Может кто чего умного сказать?
#17
by tciban
Да. Я таки сделал это. Но чертовски долго работает. :( Теперь все это надо как-то ускорить ИЗ ИЗ ИЗ ИЗ ИЗ (ВЫБРАТЬ ПЕРВЫЕ 1 ПДокК.Ссылка ИЗ
#18
by FIXXXL
а в РН какой-нить у тебя сделка не пишется? Взаиморасчеты к примеру? и если по докам: про Проведен=Истина не забудь
#19
by tciban
Не, проведен тут не важно. Важен факт наличия документ как некая стадия развития сделки. Сделка пишется в регистр всяко, в регистр накопления "Баланс сделки" оттуда тоже для отчета достаю инфу, с этим без проблем. Проблема только в этом запросе - пеприемлимо долго работает. Я уж склоняюсь к созданию регистра сведений для запоминания последнего документа по сделке, останавливает только то, что как то глупо городить регистр ради одного отчета.
#22
by tciban
В сторону бизнес процессов гляжу давно, но в данном случае мне нужно написать отчет, а бизнес процесс как поможет - не совсем понимаю :)
#24
by Икогнито
Земля круглая. Когда-то очень давно в каком-то франче мне дали тестовое задание: напишите универсальный запрос, работающий на любой конфигурации, осуществляющий выборку всех подчиненных документов документу, переданному в параметре запроса. Параметр у запроса должен быть только один. Текст запроса в процедуре не должен формироваться с помощью средств встроеного языка системы. До сих пор не знаю как это сделать.
#26
by Господин ПЖ
судя по всему - через критерий отбора... но это перечеркивает "любой конфигурации"
#27
by tciban
нереально, т.к. у в типовых и то запрос формируется с помощью средств языка и (в некоторых конфах) с использованием критерия отбора.
#29
by tciban
Кстати, наилучшим по скорости решением проблемы оказалось использование в запросе внешней функции. Если кому интересно: на моей базе получение последнего документа запросом в СКД - 16 сек., с использованием набора данных-объекта (заранее заполненная с помощью критерия отбора таблица) в СКД - 7 сек., вызов в СКД внешней функции в вычисляемом поле (последний документ получаем опять же с использованием критерия отбора) - 3 сек.
#30
by dimoff
"Я уж склоняюсь к созданию регистра сведений для запоминания последнего документа по сделке, останавливает только то, что как то глупо городить регистр ради одного отчета." Зависит от того как часто отчетом пользуются
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как получить в запросе список дат из интервала (месяц)
- УТ: как получить список подчинённых документов?
- Как в запросе получить дату документа без времени?
- Как получить список подчиненных документов?
- Условие в запросе, аналогичное условию в запросе 77
- Пролистать список типов или Получить список видов документов, справочников и т.п
- Интересная фишка в запросе в 7-ке. Сумма из шапки и из ТЧ в запросе
- Как в запросе можно получить процент от значения
- Как в запросе получить Список Значений - результат выборки вложенного запроса?
- Как получить список полей в Запросе
- "Несовместимые типы выразить в запросе 1с" ошибка в динамическом запросе списка документов
В этой группе 1С
- 8.2. ВнешнееСобытие() и Сканер ШК с памятью. Передать данные одним потоком.
- ЗУП: с премии забыли взять алименты в прошлом месяце
- Внешняя печатная форма М29
- Отчет по остаткам на складе с датами поступления номенклатуры и ценой
- Сложный вопрос по 1С7.7 и 8, модальные окна и OLE
- v8: Публикация web-сервисов 8.2 на IIS 7.5
- 8.2 фатальная ошибка разбора xml
- При начислении ЗП не расчитывает НДФЛ (1с Бухгалерия 7..70.528)
- СКД объединение 3-х таблиц
- ЗУП: Пустой НДФЛ в Расчетной ведомости
- Обнаружено нулевое количество при пересчете в единицу хранения в строке
- УПП: Затраты с кодом операции "Внутренние услуги на постоянные затраты"
- Обмен Документооборот КОРП и УТ 11
- УТ11 Программное изменение набора дополнительных реквизитов и сведений
- Как настроить авто-отчисление в резерв в УПП?
- Перенос учетных данных с бюджет.учрежд-й на госуд.учрежд-я. КБК???
- Написал обработку "Главная книга" , как сделать выборку по нескольким счетам ?
- 1с 8 ЗУП задвоение физ лиц
- v7: Как вставить в счет прозрачную печать?
- Как у динамического списка убрать активную строку (или отключить подсветку)?