Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 июл 2021, 15:13

Разные виды документов с 1 названием

Автор SoOliateR, 09 мар 2021, 09:18

0 Пользователей и 1 гость просматривают эту тему.

SoOliateR

Добрый день!

Подскажите, как все таки правильнее выводить несколько видом документов с 1 названием.
Суть задачи такая: Необходимо вывести дату ПОСЛЕДНЕГО документа по клиенту.
Создал отчет СКД.
1Набор дарных  -Реализация. Вывел ссылку, назвал "документ"
создал 2 набор данных - Коммерческое предложение, назвал так же "документ".
В 1 и 2 наборе данных вывел партнера и дату ( максимум) (дата последнего докумпнта)
в Итоге формирую структуру отчета: Партнер- Дата(дата последнего документа, за любой период.
Наборы данных были в объединение и нет (связаны по партнеру).

В 1с Предприятии при расшифровке "документ" у меня выводится только первый набор данных (Реализация), хотя после нее было новое КП в разрезе этого клиента.
РТУ 01.02.21, а КП от02.02.21.. При расшифровке выводит документ  РТУ.
Если делать название ссылок разными, например, "документ" и "документ1" тогда выводит нормально, но это не удобно.

Данный функционал можно через СКД реализовать, или только программно?

LexaK

ЦитироватьСуть задачи такая: Необходимо вывести дату ПОСЛЕДНЕГО документа по клиенту.
а сам документ не надо выводить?
т.е должно получиться всего две колонки
Партнер, ПоследняяДата
- так? 

(а зачем вы тогда оперируете полями Документ 1,2,. и причем здесь расшифровка?)
ответ Понравился? (в смысле пригодился?)

SoOliateR

Цитата: LexaK от 10 мар 2021, 11:50
ЦитироватьСуть задачи такая: Необходимо вывести дату ПОСЛЕДНЕГО документа по клиенту.
а сам документ не надо выводить?
т.е должно получиться всего две колонки
Партнер, ПоследняяДата
- так? 

(а зачем вы тогда оперируете полями Документ 1,2,. и причем здесь расшифровка?)

Сам документ выводить не надо.
Нужно видеть Партнера и дату последнего взаимодействия с ним (это может быть заказ, реализация, кп и тп.. но дата тянется того документа, что ближе к текущей).
Расшифровка "документ" нужна для того, чтобы проверить какой документ был последний по клиенту.

Документ 1,2 - это пробовал, тестировал.. Если делать расшифровку  по документ1, то в расшифровке вижу РТУ, а если по документ2 то вижу расшифровку по заказу.
Вот поэтому и хотел схлопнуть все эти документ 1,2.. в один реквизит "документ".
Ошибок нет, но он не формируется так как надо.. он либо выводит только заказы, либо только реализации


т.е по сути этот отчет отражать должен Забытость клиента. Сколько дней не было с ним взаимодействий/когда было последнее взаимодействие.

LexaK

не часто, но очень даже может быть, что на одну дату-время (что было последним) может быть несколько документов, по одному и тому-же Партнеру,
так все 2,3,..5 документа надо показывать, или достаточно одного? а какого из трех или пяти?
Добавлено: 10 мар 2021, 14:27


если, все же, правильно понял задачу, то запрос примерно выглядит так, (это только пример, вам необходимо заменить на свои Типы)
и у меня используется всего два типа документов, вы можете добавить сколько нужно, там где Объединить все 

//собираем таблицу Контрагент - МаксДата - типДокумента
выбрать первые 100
док.Контрагент,
Максимум(Док.Дата) как Дата,
"РТУ" как ТипДок
Поместить Таб
из
документ.РеализацияТоваровУслуг док
где
Не док.ПометкаУдаления
сгруппировать по
док.Контрагент

Объединить все

выбрать первые 100
док.Контрагент,
Максимум(Док.Дата) как Дата,
"Заказ"
из
документ.ЗаказКлиента док
где
Не док.ПометкаУдаления
сгруппировать по
док.Контрагент
;
//выбираем Контрагента с Максимальной датой из выбранных документов
//но здесь мы не знаем какой тип последнего документа
Выбрать
док.Контрагент,
Максимум(Док.Дата) как Дата
поместить ТабМакс
из
Таб Док
сгруппировать по
док.Контрагент
;

//к последней дате получаем тип последнего документа,
//здесь можно заменить на получение ссылки последнего документа
Выбрать
Док.Контрагент,
Док.Дата,
Таб.ТипДок
из
ТабМакс Док
левое соединение Таб
по Док.Контрагент = Таб.Контрагент
и Док.Дата = Таб.Дата

Упорядочить по
Док.Дата
ответ Понравился? (в смысле пригодился?)

SoOliateR

Цитата: LexaK от 10 мар 2021, 13:45не часто, но очень даже может быть, что на одну дату-время (что было последним) может быть несколько документов, по одному и тому-же Партнеру,
так все 2,3,..5 документа надо показывать, или достаточно одного? а какого из трех или пяти?
Документ берется всегда 1, последний.. даже по времени.
Заказ 10.58, рту 10.59.... должно выводиться РТУ.


Спасибо! попробую изменить  запрос.

LexaK

а если так
Заказ 10.58 ииии рту 10.58  что должно выводиться?
ответ Понравился? (в смысле пригодился?)

SoOliateR

Цитата: LexaK от 11 мар 2021, 12:40
а если так
Заказ 10.58 ииии рту 10.58  что должно выводиться?

Да.. тут МАКС выводить надо еще с учетом секунды тогда.
Вряд ли разные документы будут с одинаковой датой и временем (если ручками не менять конечно)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru Rambler's Top100

Поиск