Модификация информационной системы на предприятии "Управляющая компания жилищно-коммунального хозяйства "Левинцы""

Информационные системы в сфере ЖКХ. Анализ технологий автоматизации бухгалтерского учета и работы экономиста, используемых на предприятии ОМУП "УК ЖКХ Лёвинцы". Модификация 1С:Бухгалтерия для формирования калькуляций себестоимости, листинг отчетов.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 19.09.2011
Размер файла 4,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; // **Переменная для кода поиска из справочника **//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп470.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №480*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп480.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(9, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп480.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №490*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп490.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(10, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп490.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №500*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп500.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(11, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; // **Переменная для кода поиска из справочника **//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп500.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №610*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп610.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(13, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп610.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//********Строка №620*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп620.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(14, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; // **Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп620.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №630*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп630.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(15, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп630.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №631*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп631.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(16, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп631.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №640*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп640.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(17, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника **//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп640.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №650*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп650.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(18, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп650.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №660*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп660.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(19, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп660.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №700*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп700.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(20, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; // **Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп700.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №800*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп800.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(21, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника **//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп800.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №900*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп900.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(22, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп900.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******Строка №910*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп910.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(23, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Переменная для кода поиска из справочника **//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп910.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

//*******С трока №1000*******//

СтрКоды = ""; //**Переменная строки с кодами, берется из таблицы

заполнения**//

Сп1000.УдалитьВсе();

СтрКоды = СокрЛП(ТаблК.Область(25, 2).Текст);

Если ПустаяСтрока(СтрКоды) = 0 Тогда

КодСуб = ""; //**Ппеременная для кода поиска из справочника**//

Для й = 1 по СтрДлина(СтрКоды) цикл

Если Сред(СтрКоды, й, 1) = "," Тогда

//*******Поиск в справочник, если не найден сообщаем код*******//

Если СпрЗатрат.НайтиПоКоду(КодСуб) = 1 тогда

Сп1000.ДобавитьЗначение(СпрЗатрат.ТекущийЭлемент());

Иначе

Сообщить("Элемент с кодом " + КодСуб + " не найден, обратитесь к

программисту");

КонецЕсли;

КодСуб = ""; //**Обнулим код субконто**//

Иначе

КодСуб = КодСуб + Сред(СтрКоды, й, 1);//**Добавляем символ к

строке кода**//

КонецЕсли;

КонецЦикла;

КонецЕсли;

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

//*******Заполняем табличную часть данными*******//

Процедура Заполнить()

//*******заполняем из отчета за предыдущий год*******//

Если ЗаполнИзОтчета = 1 Тогда

Если ФС.СуществуетФайл(КаталогФормы +

СтрЗаменить(ПериодСтр(Дата11,Дата21),".","")) = 1 Тогда

СписокСохранения = СоздатьОбъект("СписокЗначений");

ЗначениеИзФайла(КаталогФормы +

СтрЗаменить(ПериодСтр(Дата11,Дата21),".",""),СписокСохранения);

Если ТипЗначенияСтр(СписокСохранения)="СписокЗначений" Тогда

СписокЗаполнения = СоздатьОбъект("СписокЗначений");

Для й =1 по СписокСохранения.РазмерСписка() цикл

ИдентПер = "";

СписокСохранения.ПолучитьЗначение(й, ИдентПер);

Если Лев(СокрЛП(ИдентПер),2) = "П2" Тогда

СписокЗаполнения.ДобавитьЗначение(СписокСохранения.Получить(И

дентПер),СтрЗаменить(ИдентПер,"П2","П1"));

КонецЕсли;

КонецЦикла;

Таблица.Загрузить(СписокЗаполнения);

КонецЕсли;

Иначе

Сообщить("Сохраненных данных за период " +

ПериодСтр(Дата11,Дата21) + " не найдено");

КонецЕсли;

КонецЕсли;

//*******установим вид номенклатуры для отбора, если найден в

справочнике с кодом, то устанавливаем, иначе выбирается из списака,

при отмене выход из процедуры*******//

Спр = СоздатьОбъект("Справочник.ВидыНоменклатуры");

Спр.ВыборГруппы(1);

Если Спр.НайтипоКоду("0000014") = 1 Тогда

ТекВидНоменклатуры = Спр.ТекущийЭлемент();

Иначе

Если Спр.Выбрать("Выберите вид номенклатуры",) = 1 тогда

ТекВидНоменклатуры = Спр.ТекущийЭлемент();

Иначе

Возврат;

КонецЕсли;

КонецЕсли;

//*******заполнение оборотов по строкам бухгалтерскими

итогами*******//

//*******Строка №410*******//

Если Сп410.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп410, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П221 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп410, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П121 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №420*******//

Если Сп420.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп420, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П222 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп420, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П122 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №430*******//

Если Сп430.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп430, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П223 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп430, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П123 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №440*******//

Если Сп440.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп440, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П224 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп440, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П124 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №450*******//

Если Сп450.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп450, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П225 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп450, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П125 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №460*******//

Если Сп460.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп460, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П226 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп460, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П126 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №461******//

Если Сп461.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп461, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П227 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп461, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П127 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №470*******//

Если Сп470.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп470, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П228 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп470, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П128 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №480*******//

Если Сп480.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп480, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П229 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп480, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П129 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №490*******//

Если Сп490.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп490, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П230 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп490, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П130 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №500*******//

Если Сп500.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп500, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П231 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп500, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П131 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №610*******//

Если Сп610.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп610, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П233 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп610, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П133 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №620*******//

Если Сп620.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп620, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П234 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп620, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П134 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №630*******//

Если Сп630.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп630, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П235 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп630, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П135 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №631*******//

Если Сп631.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп631, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П236 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп631, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П136 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №640*******//

Если Сп640.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп640, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П237 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп640, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П137 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №650*******//

Если Сп650.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп650, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П238 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп650, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П138 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №660*******//

Если Сп660.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп660, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П239 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп660, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П139 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №700*******//

Если Сп700.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп700, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П240 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп700, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П140 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №800*******//

Если Сп800.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп800, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П241 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп800, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П141 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №900*******//

Если Сп900.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп900, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П242 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп900, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П142 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******Строка №910*******//

Если Сп910.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп910, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

П243 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп910, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

П143 = Ит.ДО();

КонецЕсли;

КонецЕсли;

//*******без учета второго субконто*******//

//*******Строка №1000*******//

Если Сп1000.РазмерСписка() > 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп1000, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "20");

Сум20П244 = Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ИспользоватьСубконто(ВидыСубконто.СтатьиЗатратНаПроизводст

во, Сп1000, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "20");

Сум20П144 = Ит.ДО();

КонецЕсли;

КонецЕсли;

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "90.8");

П244 = Сум20П244 + Ит.ДО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "90.8");

П144 = Сум20П144 + Ит.ДО();

КонецЕсли;

//*******Строка №1700*******//

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ВыполнитьЗапрос(Дата1, Дата2, "90.1");

П217002 = Ит.КО();

Если ЗаполнИзотчета = 0 Тогда

Ит = СоздатьОбъект("БухгалтерскиеИтоги");

Ит.ИспользоватьСубконто(ВидыСубконто.ВидыНоменклатуры,

ТекВидНоменклатуры, 2);

Ит.ВыполнитьЗапрос(Дата11, Дата21, "90.1");

П117001 = Ит.КО();

КонецЕсли;

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

//*******Итоги расчета расходов на производство*******//

Функция Расчет()

П120 = П121 + П122 + П123 + П124 + П125 + П126 + П128 + П129 +

П130;

П220 = П221 + П122 + П223 + П224 + П225 + П226 + П228 + П229 +

П230;

П320 = П321 + П322 + П323 + П324 + П325 + П326 + П328 + П329 +

П330;

//*******расходы на распределение итог*******//

П132 = П133 + П134 + П135 + П137 + П138 + П139;

П232 = П233 + П234 + П235 + П237 + П238 + П239;

П332 = П333 + П334 + П335 + П337 + П338 + П339;

//итого расходов по эксплуатации*******//

П111001 = П120 + П131 + П132 + П140 + П141 + П142 + П144;

П211002 = П220 + П231 + П232 + П240 + П241 + П242 + П244;

П311003 = П320 + П331 + П332 + П340 + П341 + П342 + П344;

//итог расходов по полной себестоимости*******//

П113001 = П111001 + П145 + П146;

П213002 = П211002 + П245 + П246;

П313003 = П311003 + П345 + П346;

//*******расчет себестоимости 1Гкал*******//

П147 = П113001/100;

П247 = П213002/100;

П347 = П313003/100;

КонецФункции

//*******Вывод отчета на печать*******//

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

Таб = СоздатьОбъект("Таблица");

Таб.ИсходнаяТаблица("Печать");

Таб.Вывести();

Таб.Толькопросмотр(1);

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

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

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

//*******Сохранение отчета*******//

СписокСохранения = Создатьобъект("СписокЗначений");

Таблица.Выгрузить(СписокСохранения);

Для Инд = 1 По СписокСохранения.РазмерСписка() Цикл

ПредставлениеЗначения = "";

СписокСохранения.ПолучитьЗначение(Инд, ПредставлениеЗначения);

СписокСохранения.УстановитьЗначение(Инд,

ПолучитьПустоеЗначение(), ПредставлениеЗначения);

КонецЦикла;

Таблица.Загрузить(СписокСохранения);

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

//*******Восстановление сохраненных ранее данных*******//

Процедура Восстановить(Спрашивать)

Перем ВыбДанные;

Перем Позиция;

Если Спрашивать=1 Тогда

Если ФС.СуществуетФайл(КаталогФормы +

СтрЗаменить(ПериодСтр(Дата1,Дата2),".","")) = 1 Тогда

Иначе

Сообщить("Файл сохраненных данных не найден");

Возврат;

КонецЕсли;

СписокСохранения = СоздатьОбъект("СписокЗначений");

ЗначениеИзФайла(КаталогФормы +

СтрЗаменить(ПериодСтр(Дата1,Дата2),".",""),СписокСохранения);

Если ТипЗначенияСтр(СписокСохранения)="СписокЗначений" Тогда

Если Вопрос("Текущие данные будут очищены!

Продолжить?","Да+Нет")="Нет" Тогда

Возврат;

КонецЕсли;

КонецЕсли;

Очистить(0);

Таблица.Загрузить(СписокСохранения);

Иначе

Если ФС.СуществуетФайл(КаталогФормы +

СтрЗаменить(ПериодСтр(Дата1,Дата2),".","")) = 1 Тогда

СписокСохранения = СоздатьОбъект("СписокЗначений");

ЗначениеИзФайла(КаталогФормы +

СтрЗаменить(ПериодСтр(Дата1,Дата2),".",""),СписокСохранения);

Если ТипЗначенияСтр(СписокСохранения)="СписокЗначений" Тогда

Очистить(0);

Таблица.Загрузить(СписокСохранения);

КонецЕсли;

Иначе

Очистить(0);

КонецЕсли;

КонецЕсли;

КонецПроцедуры //** Восстановить() **//

//*******Сохранение отчетной калькуляции*******//

Процедура Сохранить(Спрашивать)

Если Спрашивать=1 Тогда

Если Вопрос("Сохранить данные отчета ""Отчет о прибылях и

убытках""?","Да+Нет",60)="Нет" Тогда

Возврат;

КонецЕсли;

КонецЕсли;

ИмяФайлаСохраненияОтчета = КаталогФормы +

СтрЗаменить(ПериодСтр(Дата1,Дата2),".","");

Если ПустаяСтрока(ИмяФайлаСохраненияОтчета)=1 Тогда

Возврат;

КонецЕсли;

СписокСохранения = СоздатьОбъект("СписокЗначений");

Таблица.Выгрузить(СписокСохранения);

Если ФС.СуществуетФайл(КаталогФормы)=0 Тогда

ФС.СоздатьКаталог(КаталогФормы);

КонецЕсли;

Если ФС.СуществуетФайл(КаталогФормы+

СтрЗаменить(ПериодСтр(Дата1,Дата2),".","")) = 1 Тогда

Если Вопрос("Заменить сохраненные ранее

данные?","Да+Нет",60)="Нет" Тогда

Возврат;

КонецЕсли;

КонецЕсли;

//******* сохраняем данные формы в файле*******//

Если

ЗначениеВФайл(ИмяФайлаСохраненияОтчета,СписокСохранения) > 0

Тогда

Сообщить("Данные отчета за "+ПериодСтр(Дата1,Дата2)+"

сохранены","I");

Иначе

Сообщить("Не удалось сохранить данные отчета","!!");

КонецЕсли;

КонецПроцедуры // Сохранить()

//*******Изменение периода на форме*******//

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

Дата2 = ДобавитьМесяц(Дата2,Шаг);

Дата1 = НачГода(Дата2);

//*******Дата для показа в колонке "Коды"*******//

Дата_Год = ДатаГод(Дата2);

Дата_Месяц = Формат(ДатаМесяц(Дата2), "Ч(0)2");

Дата_Число = Формат(ДатаЧисло(Дата2), "Ч(0)2");

//*******Период для показа в шапке отчета*******//

ПериодОтчета = Строка (" период с 1 Января по " + Формат(Дата2,"Д

ДДММММГГГГ"));

Восстановить(0);

КонецПроцедуры //** ИзменитьПериод()**//

//*******Заполнение формы при открытии, предопределенная

процедура*******//

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

ИдентКонфигурации = ВРЕГ(глИдентификаторКонфигурации());

ФорматыВывода = СоздатьОбъект("СписокЗначений");

ФорматыВывода.ДобавитьЗначение("383", "в рублях");

ФорматыВывода.ДобавитьЗначение("384", "в тысячах рублей");

ФорматыВывода.ДобавитьЗначение("385", "в миллионах рублей");

Дата2 = КонГода(РабочаяДата());

Дата1 = НачГода(Дата2);

Дата11 = НачГода(Дата1-1);

Дата21 = КонГода(Дата1-1);

//******* Период для показа в шапке отчета*******//

ПериодОтчета = Строка (" период с 1 Января по " + Формат(Дата2,"Д

ДДММММГГГГ"));

Форма.Заголовок("(отчетность за " + ПериодСтр(Дата1,Дата2),1);

КаталогФормы = КаталогИБ() +

"\extForms\МССохраненныеотчеты\Теплоэнергия\";

Восстановить(0);

ЗаполнитьСпискиНоменклатуры();

Форма.Расшифровать.Видимость(0);

Форма.Раскрыть.Видимость(0);

Форма.Пер1.Видимость(0);

Форма.Пер2.Видимость(0)

КонецПроцедуры // **ПриОткрытии()**//

Сп410 = СоздатьОбъект("СписокЗначений");

Сп420 = СоздатьОбъект("СписокЗначений");

Сп430 = СоздатьОбъект("СписокЗначений");

Сп440 = СоздатьОбъект("СписокЗначений");

Сп450 = СоздатьОбъект("СписокЗначений");

Сп460 = СоздатьОбъект("СписокЗначений");

Сп461 = СоздатьОбъект("СписокЗначений");

Сп470 = СоздатьОбъект("СписокЗначений");

Сп480 = СоздатьОбъект("СписокЗначений");

Сп490 = СоздатьОбъект("СписокЗначений");

Сп610 = СоздатьОбъект("СписокЗначений");

Сп620 = СоздатьОбъект("СписокЗначений");

Сп630 = СоздатьОбъект("СписокЗначений");

Сп631 = СоздатьОбъект("СписокЗначений");

Сп640 = СоздатьОбъект("СписокЗначений");

Сп650 = СоздатьОбъект("СписокЗначений");

Сп660 = СоздатьОбъект("СписокЗначений");

Сп700 = СоздатьОбъект("СписокЗначений");

Сп800 = СоздатьОбъект("СписокЗначений");

Сп900 = СоздатьОбъект("СписокЗначений");

Сп910 = СоздатьОбъект("СписокЗначений");

Сп500 = СоздатьОбъект("СписокЗначений");

Сп1000 = СоздатьОбъект("СписокЗначений");

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.