Пример платежного календаря. СКД. Работает на любой платформе, без привязки к данным. Подробное описание действий

02.04.21

Разработка - СКД

Отчет-пример, в котором на СКД рассмотрены принципы построения платежного календаря без привязки к данным и работающий на любой платформе. Подробно описаны этапы решения задачи. Тестирование проводилось на платформе 8.3.16.1814.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
Результат
.erf 6,99Kb
70
70 Скачать бесплатно
Исходные данные
.erf 6,21Kb
47
47 Скачать бесплатно

Задачи перенести exсеl таблицу в 1С. Платежный календарь. Решим в общем виде, без привязки к конкретной конфигурации.

 

Дано:

Некий период =15 дней

Остаток на 1 число входящий =500. Приход:

 

Расход:

Найти: Посчитать остаток на конец и на начало дня за период. Исходные данные находятся в файле : ВнешнийОтчетДанные. 1.Создадим внешний отчет на СКД. Наборы данных – Запрос.

Создадим таблицу СписокДниМесяца в которую поместим дни с 1 по 15.

В стандартных конфигурациях чаще всего это регистр сведений –производственный календарь.

 

Результат:

  1. Создадим таблицу с остатком входящим – СписокОстатки.

В стандартных конфигурациях чаще всего это регистр накопления, где хранятся остатки денежных средств на расчетных счетах.

Результат:

  1. Создадим таблицу планируемых поступлений денежных средств- СписокПриход.

Документ, например- заказ клиента, из которого можно взять информацию о планируемых поступлениях денежных средство.

Результат:

  1. Создадим таблицу планируемых списаниях денежных средств- СписокРасход.

Документ, например- заказ поставщику, из которого можно взять информацию о планируемых списаниях денежных средство.

Результат:

  1. Добавим к Остаткам дни- СписокОстаткиДатаОтч.

Выбираем две таблицы и никак их не соединяем. Закладка связи пустая.

Результат:

  1. Добавим к Приходам дни- СписокПриходДатаОтч.

Выбираем две таблицы и связь – левое соединение.

Результат:

  1. Добавим к Расходам дни- СписокРасходДатаОтч.

Выбираем две таблицы и связь – левое соединение. Результат:

  1. Для решения задачи нам нужен нарастающий итог по приходу- СписокПриходНарастающийИтог. Для этого нужно соединить таблицу СписокПриходДатаОтч с этой же таблицей.

Выбираем СписокПриходДатаОтч и еще раз эту же таблицу СписокПриходДатаОтч и связь – левое соединение.

Группируем :

Переименуем поле – в ПриходНарастающийИтог. Результат:

  1. Для решения задачи нам нужен нарастающий итог по расходу- СписокРасходНарастающийИтог. Для этого нужно соединить таблицу СписокРасходДатаОтч с этой же таблицей.

Выбираем СписокРасходДатаОтч и еще раз эту же таблицу СписокРасходДатаОтч и связь – левое соединение.

Группируем :

Переименуем поле – в РасходНарастающийИтог.

Результат:

  1. Объединим три таблицы в одну- СписокОстатокПриходРасход.

Результат:

  1. Сгруппируем –СписокОстатокПриходРасходИтого

Группировка :

Результат:

  1. Рассчитаем остаток на конец дня-СписокОстатокНаКонецДня.

ОстНаКонецДня = Остаток+Приход-Расход. Результат:

  1. Расчетаем остаток на начало дня –СписокОстатокНаНачалоДня.

Объединим две таблицы: СписокОстатокНаКонецДня – для получения данных на следующий день,к ДатеОтч прибавим 1 день и СписокОстаткиДатаОтч – для получения остатка надень 1.

Добавим условие для ограничения периода :

Результат:

  1. Соберем таблицу Остаток на начало дня, Приход, Расход, Остаток на конец дня.

  1. В результате получаем:

16 .Добавляем сумму в ресурс.

  1. на закладке настройки создадим таблицу.

  1. Для группировки Отчет другие настройки уберем итоги.

  1. Для Группировка2 добавим отбор, чтоб в отчете не отображались пустые строки.

  1. Создадим макет для ДатаОтч чтоб из заголовка ресурсов убрать –СУММА. Макет группировки:

  1. Результат:

отчет остаток на начало дня конец

См. также

SALE! 15%

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    159729    876    399    

862

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    8741    implecs_team    6    

47

Инструментарий разработчика СКД Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

По выбранной схеме компоновки данных генерирует программный код, который генерирует СКД, аналогичную исходной схеме. Есть дополнительные инструменты для просмотра дерева схемы, сравнение исходной схемы и полученной по коду, а также сравнение изменений в сгенерированном коде для исходной схемы и для измененной.

3 стартмани

05.02.2024    7015    56    obmailok    21    

79

Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Есть список полей в виде текста, или запрос - закидываем в набор СКД.

1 стартмани

31.01.2024    3159    5    Yashazz    1    

34

СКД WEB-интеграция Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Долгое время поддерживаю web-портал, в котором появилась необходимость создавать отчеты. Просмотрев различные фреймворки на js, я решил сделать свое решение, которое позволяло бы быстро разрабатывать и добавлять новые отчеты на web-портал.

2 стартмани

11.12.2023    10843    23    John_d    25    

124

СКД Программист Платформа 1С v8.3 Система компоновки данных Конфигурации 1cv8 Бесплатно (free)

Рассмотрим еще не получивший широкого распространения способ работы с внешними данным в СКД. В процессе обсуждения работы с СКД выяснилось, что многие не знакомы со способом помещения туда временной таблицы, полученной предварительно. Статья будет полезна разработчикам, знакомым с программным созданием СКД.

05.12.2023    8060    PROSTO-1C    15    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. andreosh 103 05.04.21 17:09 Сейчас в теме
Другой способ решения подобной задачи в 2-ух частях https://youtu.be/FhG0KYzdVcg и https://youtu.be/kDy4iPCFXgE
2. tanner 30.04.21 07:59 Сейчас в теме
А у меня такой запрос получился, в первой таблице можно добавлять нужные документы, относящиеся к ДДС:

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
	ЗаявкаНаРасходованиеСредствРасшифровкаПлатежа.Ссылка.ДатаРасхода КАК ДатаОтч,
	"3.Расход" КАК ВидДДС,
	-ЗаявкаНаРасходованиеСредствРасшифровкаПлатежа.СуммаПлатежа КАК Оборот,
	ЗаявкаНаРасходованиеСредствРасшифровкаПлатежа.СтатьяДвиженияДенежныхСредств КАК СтатьяДДС,
	ЗаявкаНаРасходованиеСредствРасшифровкаПлатежа.Ссылка КАК Документ
ПОМЕСТИТЬ ВТОборотыИзДокументов
ИЗ
	Документ.ЗаявкаНаРасходованиеСредств.РасшифровкаПлатежа КАК ЗаявкаНаРасходованиеСредствРасшифровкаПлатежа

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ЗаказПокупателя.ДатаОплаты,
	"2.Приход",
	СУММА(ЗаказПокупателя.СуммаДокумента),
	"03. Поступление от покупателей",
	ЗаказПокупателя.Ссылка
ИЗ
	Документ.ЗаказПокупателя КАК ЗаказПокупателя
ГДЕ
	ЗаказПокупателя.ДатаОплаты МЕЖДУ &НачПериода И &КонПериода

СГРУППИРОВАТЬ ПО
	ЗаказПокупателя.ДатаОплаты,
	ЗаказПокупателя.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	NULL,
	"1.Остаток на начало дня",
	ДенежныеСредстваОстатки.СуммаОстаток,
	"",
	NULL
ИЗ
	РегистрНакопления.ДенежныеСредства.Остатки(НАЧАЛОПЕРИОДА(&НачПериода, ДЕНЬ), ) КАК ДенежныеСредстваОстатки

ИНДЕКСИРОВАТЬ ПО
	ДатаОтч
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТОборотыИзДокументов.ДатаОтч,
	СУММА(ВТОборотыИзДокументов.Оборот) КАК Оборот,
	ДенежныеСредстваОстатки.СуммаОстаток КАК СуммаОстатокНаНПНачДня
ПОМЕСТИТЬ ВТПлановыеОборотыДДС
ИЗ
	ВТОборотыИзДокументов КАК ВТОборотыИзДокументов,
	РегистрНакопления.ДенежныеСредства.Остатки(НАЧАЛОПЕРИОДА(&НачПериода, ДЕНЬ), ) КАК ДенежныеСредстваОстатки

СГРУППИРОВАТЬ ПО
	ВТОборотыИзДокументов.ДатаОтч,
	ДенежныеСредстваОстатки.СуммаОстаток
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	РегламентированныйПроизводственныйКалендарь.ДатаКалендаря КАК ДатаКалендаря,
	"4.Остаток на конец дня" КАК ВидДДС,
	"" КАК СтатьяДДС,
	СУММА(ВЫБОР
			КОГДА ВТПлановыеОборотыДДС.ДатаОтч = &НачПериода
				ТОГДА ВТПлановыеОборотыДДС.СуммаОстатокНаНПНачДня + ВТПлановыеОборотыДДС.Оборот
			ИНАЧЕ ВЫБОР
					КОГДА ВТПлановыеОборотыДДС.ДатаОтч <= РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
						ТОГДА ВТПлановыеОборотыДДС.Оборот
					ИНАЧЕ 0
				КОНЕЦ
		КОНЕЦ) КАК Сумма
ПОМЕСТИТЬ ВТОстаткинаКонецКаждогоДня
ИЗ
	ВТПлановыеОборотыДДС КАК ВТПлановыеОборотыДДС,
	РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
	РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &НачПериода И &КонПериода

СГРУППИРОВАТЬ ПО
	РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ЕСТЬNULL(ВТОборотыИзДокументов.ДатаОтч, &НачПериода) КАК ДатаОтч,
	ВТОборотыИзДокументов.ВидДДС КАК ВидДДС,
	ВТОборотыИзДокументов.СтатьяДДС,
	ВТОборотыИзДокументов.Оборот КАК Сумма,
	ВТОборотыИзДокументов.Документ КАК Документ
ИЗ
	ВТОборотыИзДокументов КАК ВТОборотыИзДокументов

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ВТОстаткинаКонецКаждогоДня.ДатаКалендаря,
	ВТОстаткинаКонецКаждогоДня.ВидДДС,
	ВТОстаткинаКонецКаждогоДня.СтатьяДДС,
	ВТОстаткинаКонецКаждогоДня.Сумма,
	NULL
ИЗ
	ВТОстаткинаКонецКаждогоДня КАК ВТОстаткинаКонецКаждогоДня

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ДОБАВИТЬКДАТЕ(ВТОстаткинаКонецКаждогоДня.ДатаКалендаря, ДЕНЬ, 1),
	"1.Остаток на начало дня",
	ВТОстаткинаКонецКаждогоДня.СтатьяДДС,
	ВТОстаткинаКонецКаждогоДня.Сумма,
	NULL
ИЗ
	ВТОстаткинаКонецКаждогоДня КАК ВТОстаткинаКонецКаждогоДня

УПОРЯДОЧИТЬ ПО
	ВидДДС,
	ДатаОтч
////////////////////////////////////////////////////////////­////////////////////////////////////////////////////////////­////////////////////////////////////////////////////////
Показать
Оставьте свое сообщение