Получение данных
Добрый день!
Помогите, пожалуйста, как программно получить данные (запросами, без СКД) которые выводит данный отчет (приложение 1).
Не понимаю как программно можно получить сальдо счетов (1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 2000, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900), как это можно сделать, в журнале проводок ничего по ним нет.
Платформа - 1С:Предприятие 8.3, учебная версия (8.3.18.1128).
Конфигурация - Бухгалтерия для Казахстана, редакция 3.0, разработка для Казахстана: «1С-Рейтинг» (3.0.39.4).
Помогите, пожалуйста, как программно получить данные (запросами, без СКД) которые выводит данный отчет (приложение 1).
Не понимаю как программно можно получить сальдо счетов (1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 2000, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900), как это можно сделать, в журнале проводок ничего по ним нет.
Платформа - 1С:Предприятие 8.3, учебная версия (8.3.18.1128).
Конфигурация - Бухгалтерия для Казахстана, редакция 3.0, разработка для Казахстана: «1С-Рейтинг» (3.0.39.4).
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
Остальные ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(1)Попробуй как-то так
сам отчет у меня генерируется так
ТаблицаЗначенийОчтетаПоВзаиморасчетамЗаВчера = ОтчетВзаиморасчетыНаСервере("ТаблицаЗначений", НачалоДня(Объект.ДатаИВремяНачала - 3600), КонецДня(Объект.ДатаИВремяНачала - 3600));
Объект.СуммаВзаиморасчетовЗаВчера = ТаблицаЗначенийОтчетаПоВзаиморасчетам[ТаблицаЗначенийОтчетаПоВзаиморасчетам.Количество()-1].ДолгНачальныйОстаток;
сам отчет у меня генерируется так
&НаСервере
Функция ОтчетВзаиморасчетыНаСервере(ТипРезультата = "ТабличныйДокумент", НачалоПериода = Неопределено , КонецПериода = Неопределено)
Если НачалоПериода = Неопределено Тогда
НачалоПериода = Объект.ДатаИВремяНачала;
КонецЕсли;
Если КонецПериода = Неопределено Тогда
КонецПериода = Объект.ДатаИВремяОкончания;
КонецЕсли;
Результат = Неопределено;
Отчет = Отчеты.РасчетыСКлиентамиПоМагазинамМБ.Создать();
ОтчетТабличныйДокумент = Отчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройка = Отчет.КомпоновщикНастроек.Настройки;
ДН = Настройка.ПараметрыДанных.Элементы.Найти("НачалоПериода");
ДН.Значение = НачалоПериода;
ДН.Использование = Истина;
ДК = Настройка.ПараметрыДанных.Элементы.Найти("КонецПериода");
ДК.Значение = КонецПериода;
ДК.Использование = Истина;
//Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Валюта",Константы.ВалютаРегламентированногоУчета.Получить());
ЭлементОтбораНайден = Ложь;
Для каждого ЭлементОтбора Из Настройка.Отбор.Элементы Цикл
Если ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Заказ.Склад") Тогда
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Объект.Склад;
ЭлементОтбора.Использование = Истина;
ЭлементОтбораНайден = Истина;
Прервать;
КонецЕсли;
КонецЦикла;
Если НЕ ЭлементОтбораНайден Тогда
ЭлементОтбора = Настройка.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Заказ.Склад");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Объект.Склад;
ЭлементОтбора.Использование = Истина;
КонецЕсли;
ПараметрыВывода = Настройка.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ВыводитьОтбор"));
ПараметрыВывода.Использование=Истина;
Если ТипРезультата = "ТаблицаЗначений" Тогда
Результат = Новый ТаблицаЗначений;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(Отчет.СхемаКомпоновкиДанных,
Настройка, , ,
Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"),Истина);
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ПроцессорВывода.УстановитьОбъект(Результат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
ИначеЕсли ТипРезультата = "ТабличныйДокумент" Тогда
ТабличныйДокумент = Новый ТабличныйДокумент;
ТабДок = Новый ТабличныйДокумент;
Попытка
Отчет.СкомпоноватьРезультат(ТабличныйДокумент);
ТабДок.Вывести(ТабличныйДокумент);
ТабДок.ОтображатьСетку=Ложь;
ТабДок.ОтображатьЗаголовки=Ложь;
ТабДок.ТолькоПросмотр=Истина;
Результат = ТабДок;
Исключение
КонецПопытки;
КонецЕсли;
Возврат Результат;
КонецФункции
Показать
Примерно так. Это из Бухгалтерии, у вас (Бухгалтерия для Казахстан) может быть другой регистр будет.
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК СуммаНачальныйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК СуммаНачальныйОстатокКт,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК СуммаКонечныйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК СуммаКонечныйОстатокКт
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНачало, &ДатаКонец, , , Счет В (&Счета), , ) КАК ХозрасчетныйОстаткиИОбороты";
Запрос.УстановитьПараметр("ДатаКонец", ДатаКонец);
Запрос.УстановитьПараметр("ДатаНачало", ДатаНачало);
Запрос.УстановитьПараметр("Счета", Счета);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ОстатокНачалоДт = ВыборкаДетальныеЗаписи.СуммаНачальныйОстатокДт;
ОстатокНачалоКт = ВыборкаДетальныеЗаписи.СуммаНачальныйОстатокКт;
ОстатокКонецДт = ВыборкаДетальныеЗаписи.СуммаКонечныйОстатокДт;
ОстатокКонецКт = ВыборкаДетальныеЗаписи.СуммаКонечныйОстатокКт;
КонецЦикла;
Показать
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)