Смекни!
smekni.com

Підсистема статистичної звітності системи 1С Предприятие 80 (стр. 14 из 19)

Область.Параметры.Стр7 = ЭлементыФормы.ПолеТабличногоДокумента1П.Области.Стр7.Значение;

Область.Параметры.Отв1 = ЭлементыФормы.ПолеТабличногоДокумента1П.Области.Отв1.Значение;

Область.Параметры.Отв2 = ЭлементыФормы.ПолеТабличногоДокумента1П.Области.Отв2.Значение;

ТабДок.Вывести(Область);

ТабДок.ОтображатьЗаголовки = Ложь;

ТабДок.ОтображатьСетку = Ложь;

ТабДок.ЧерноБелыйПросмотр = Истина;

ТабДок.ЧерноБелаяПечать = Истина;

ТабДок.Автомасштаб = Истина;

ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;

ТабДок.Показать();

//Ландшафт

ТабДок1 = Новый ТабличныйДокумент;

Макет = ЭтотОбъект.ПолучитьМакет(«МакетЛандшафт»);

стр = 0;

Если стр = 0 тогда

Область = Макет.ПолучитьОбласть(«Шапка»);

ОО = Область.Область(«Шапка»);

ТабДок1.Вывести(Область);

КонецЕсли;

Для н = 0 По Рез2.Количество()-1 Цикл

Если стр < 38 Тогда

стр = стр+1;

Область = Макет.ПолучитьОбласть(«Строка»);

Область.Параметры.Номенклатура = Рез2[н].СубконтоКт1;

Область.Параметры.Ед = Рез2[н].СубконтоКт1БазоваяЕдиницаИзмерения;

Область.Параметры.Колво = Формат(Рез2[н].КоличествоОборотКт, «ЧЦ = 15; ЧРД=,; ЧРГ=.; ЧН=-; ЧО=0; ЧГ=3,0»);

Область.Параметры.Колво1 = Формат(Рез2[н].КоличествоОборотКт, «ЧЦ = 15; ЧРД=,; ЧРГ=.; ЧН=-; ЧО=0; ЧГ=3,0»);

Область.Параметры.СуммаОборот = Формат(Окр(Рез2[н].СуммаОборот/мДелитель, ТочностьЕдиницыИзмерения), «ЧЦ = 15; ЧДЦ = « + ТочностьЕдиницыИзмерения + «; ЧРД=,; ЧРГ=.; ЧН=-; ЧО=0; ЧГ=3,0»);

Если Рез2[н].КоличествоКонечныйОстатокДт >0 тогда

Область.Параметры.Остатки = Формат(Рез2[н].КоличествоКонечныйОстатокДт, « ЧРД=,; ЧРГ=.; ЧН=-; ЧО=0; ЧГ=3,0»);

Иначе

Область.Параметры.Остатки = 0;

КонецЕсли;

ТабДок1.Вывести(Область);

Иначе

стр = 0;

Область = Макет.ПолучитьОбласть(«Строк»);

ТабДок1.Вывести(Область);

КонецЕсли;

КонецЦикла;

ТабДок1.ОтображатьЗаголовки = Ложь;

ТабДок1.ОтображатьСетку = Ложь;

ТабДок1.ЧерноБелыйПросмотр = Истина;

ТабДок1.ЧерноБелаяПечать = Истина;

ТабДок1.Автомасштаб = Истина;

ТабДок1.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;

ТабДок1.Показать();

КонецПроцедуры

// Процедура вызывается при нажатии кнопки «Очистить».

Процедура КоманднаяПанельДействийДействиеОчистить(Кнопка)

Очистить();

КонецПроцедуры // КоманднаяПанельФормыОчистить()

/////////////////////////////////////////////////////////////////////////////////

// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ДИАЛОГА

// Процедура - обработчик события «ПриИзменении» поля ввода организации.

// Вызывает заполнение сведений об организации.

Процедура ПолеВводаОрганизацияПриИзменении(Элемент)

ЗаполнитьСведенияОбОрганизации();

Модифицированность = Истина;

КонецПроцедуры // ПолеВводаОрганизацияПриИзменении()

// Процедура - обработчик события «ПриИзменении» поля ввода даты

// представления отчета.

Процедура ПолеВводаДатаСдачиПриИзменении(Элемент)

м1П.Области.ДатаПодписиОтчета.Значение = ДатаПодписи;

м1П.Области.ДатаПодписиОтчета.Значение = Формат(ДатаПодписи,(«Л = uk_UA; ДФ = 'дд ММММ гггг'«));

Модифицированность = Истина;

КонецПроцедуры // ПолеВводаДатаСдачиПриИзменении()

// Процедура - обработчик события «ПриИзменении» поля ввода точности

// единицы измерения.

Процедура ПолеВводаТочностьЕдиницыИзмеренияПриИзменении(Элемент)

ПроверитьТочность();

УстановитьФорматВывода();

Модифицированность = Истина;

КонецПроцедуры // ПолеВводаТочностьЕдиницыИзмеренияПриИзменении()

// Процедура - обработчик события при изменении значения единицы измерения.

//Процедура ПолеВыбораЕдиницаИзмеренияПриИзменении(Элемент)

ПроверитьТочность();

УстановитьФорматВывода();

Модифицированность = Истина;

КонецПроцедуры // ПолеВыбораЕдиницаИзмеренияПриИзменении()

// Процедура вызывается при активизации поля табличного документа.

Процедура ПолеТабличногоДокумента1ППриАктивизацииОбласти(Элемент)

ТекущаяОбласть = Элемент.ТекущаяОбласть;

КонецПроцедуры // ПолеТабличногоДокументаБалансПриАктивизацииОбласти()

////////////////////////////////////////////////////////////////////////////////

// ОПЕРАТОРЫ ОСНОВНОЙ ПРОГРАММЫ

// Список выбора поля выбора «Единица измерения»

ЭлементыФормы.ЕдиницаИзмерения.СписокВыбора.Добавить(Перечисления.ПорядкиОкругленияОтчетности.Окр1, НСтр(«ru='в гривнях';uk='у гривнях'«));

ЭлементыФормы.ЕдиницаИзмерения.СписокВыбора.Добавить(Перечисления.ПорядкиОкругленияОтчетности.Окр1000, НСтр(«ru='в тысячах гривень';uk='у тисячах гривень'«));

ЭлементыФормы.ЕдиницаИзмерения.СписокВыбора.Добавить(Перечисления.ПорядкиОкругленияОтчетности.Окр1000000, НСтр(«ru='в миллионах гривень';uk='у мільйонах гривень'«));

Д 1.2 Лістинг форми 1-ПЕ (місячна)

// ПЕРЕМЕННЫЕ МОДУЛЯ

// Табличное поле документа

Перем м1ПЕ;

//// хранит форматную строку представления

//// денежных показателей отчета

Перем мСтрокаФормата;

//// хранит значение делителя при представлении

//// чисел в назначенной размерности

Перем мДелитель;

//Значения полученные,которые выводятся на форму и макет

Перем ОргНазв;

Перем ФИОГлавБуха;

Перем ФИОДиректора;

Перем КодЕДРПОУ;

Перем КодКОАТУУ;

Перем КодСПОДУ;

Перем КодЗКГНГ;

Перем КодКВЕД;

Перем Территория;

Перем КодКФВ;

//////////////////////////////////////////////////////////////////

// Функция округляет число согласно установленной размерности чисел.

Функция ОкруглитьЧислоПоФормату(ИсходноеЧисло)

// Процедура управляет показом в форме периода построения отчета,

Процедура ПоказатьПериод()

// Процедура устанавливает границы периода построения отчета.

Процедура ИзменитьПериод(Шаг)

// Заполняет сведения об организации

Процедура ЗаполнитьСведенияОбОрганизации()

// Процедура контролирует корректность установленной точности указания

// суммовых (денежных) показателей при выборе единицы измерения.

Процедура ПроверитьТочность()

// Процедура управляет представлением суммовых (денежных) показателей

// табличного документа при изменении размерности.

Процедура УстановитьФорматВывода()

// Процедура очищает содержимое редактируемыхи и вычисляемых ячеек

// поля табличного документа, переданного параметром ВыбТабличноеПоле.

Процедура ОчиститьТабличноеПоле(ВыбТабличноеПоле)

// Процедура очищает содержимое редактируемых и вычисляемых

// ячеек табличного документа.

Процедура Очистить()

////////////////////////////////////////////////////////////////////////////////

// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ

// Процедура - обработчик события «ПриОткрытии» формы.

Процедура ПриОткрытии()

// Процедура - обработчик события «ПередЗакрытием» формы.

Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка)

////////////////////////////////////////////////////////////////////////////////

// ПРОЦЕДУРЫ - ДЕЙСТВИЯ КОМАНДНЫХ ПАНЕЛЕЙ ФОРМЫ

// Процедура вызывается по нажатию кнопки «<« формы.

// Инициализирует изменение переиода построения отчета.

Процедура КнопкаПредыдущийПериодНажатие(Элемент)

// Процедура вызывается по нажатию кнопки «>« формы.

// Инициализирует изменение переиода построения отчета.

Процедура КнопкаСледующийПериодНажатие(Элемент)

// Процедура вызывается при нажатии кнопки «Выполнить»

//командной панели формы.

Процедура КнопкаВыполнитьНажатие(Кнопка)

Запрос = Новый Запрос; Запрос.Текст = «ВЫБРАТЬ | БР.СуммаОборотДт КАК СальдоДтТекущее |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2,,, Счет.Родитель.Код = ««70»«,, ) КАК БР |ГДЕ | БР.Организация = &Организация»;

Запрос.УстановитьПараметр(«Организация»,Организация); Запрос.УстановитьПараметр(«Дата1»,мДатаНачалаПериодаОтчета); Запрос.УстановитьПараметр(«Дата2»,мДатаКонцаПериодаОтчета);

Рез= Запрос.Выполнить().Выгрузить();

Попытка;

Значение = Окр(Рез[0].СальдоДтТекущее/мДелитель, ТочностьЕдиницыИзмерения);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка10Ряд1.Значение = Формат(Значение, «ЧЦ = 15; ЧДЦ = « + ТочностьЕдиницыИзмерения + «; ЧРД=,; ЧРГ=.; ЧН=-; ЧО=0; ЧГ=3,0»);

Исключение Предупреждение(«Виробленої продукції та товарів за період не має»); Возврат;

КонецПопытки;

Запрос1 = Новый Запрос; Запрос1.Текст = «ВЫБРАТЬ | БР.СуммаОборотДт КАК СальдоДтТекущее |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2,,, Счет.Код = ««701»«,, ) КАК БР |ГДЕ | БР.Организация = &Организация»;

Запрос1.УстановитьПараметр(«Организация»,Организация); Запрос1.УстановитьПараметр(«Дата1»,мДатаНачалаПериодаОтчета); Запрос1.УстановитьПараметр(«Дата2»,мДатаКонцаПериодаОтчета);

Рез1= Запрос1.Выполнить().Выгрузить();

Попытка;

Значение1 = Окр(Рез1[0].СальдоДтТекущее/мДелитель, ТочностьЕдиницыИзмерения);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка10Ряд2.Значение = Формат(Значение1, «ЧЦ = 15; ЧДЦ = « + ТочностьЕдиницыИзмерения + «; ЧРД=,; ЧРГ=.; ЧН=-; ЧО=0; ЧГ=3,0»);

Исключение

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка10Ряд2.Значение = Формат(0, мСтрокаФормата);

Предупреждение(«Виробленої продукції за період не має»);

КонецПопытки;

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка11Ряд1.Значение = Формат(0, мСтрокаФормата);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка11Ряд2.Значение = Формат(0, мСтрокаФормата);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка11Ряд3.Значение = Формат(0, мСтрокаФормата);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка12Ряд1.Значение = Формат(0, мСтрокаФормата);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка12Ряд2.Значение = Формат(0, мСтрокаФормата);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка12Ряд3.Значение = Формат(0, мСтрокаФормата);

ЭлементыФормы.ПолеТабличногоДокумента1ПЕ.Области.Строка10Ряд3.Значение = Формат(0, мСтрокаФормата);

Запрос2 = Новый Запрос; Запрос2.Текст = «ВЫБРАТЬ | БР.СуммаОборотДт КАК СальдоДтТекущее |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2,,, Счет.Код = ««702»«,, ) КАК БР |ГДЕ | БР.Организация = &Организация»;