Разработка информационно-аналитической системы проведения маркетинговых исследований для функционирования на предприятии ТОО "Десятка"
Информационное обеспечение предприятия. Защита от несанкционированного доступа к информации. Характеристика классификаторов и систем кодирования. Схема пакета дерева вызова процедур и программ. Взаимосвязь программных модулей и информационных файлов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 20.05.2013 |
Размер файла | 258,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Процедура ПроцентПриИзменении(Элемент)
РознЦена = Цена*(Процент/100+1);
КонецПроцедуры
Процедура Печать1(Элемент)
//{{_КОНСТРУКТОР_ПЕЧАТИ_СПИСОК(Печать1)
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
ТабДок = Новый ТабличныйДокумент;
Макет = Справочники.Номенклатура.ПолучитьМакет("Печать");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
ТабДок.Вывести(Область);
Выборка = Справочники.Номенклатура.ВыбратьИерархически();
Пока Выборка.Следующий() = Истина Цикл
Объект = Выборка.ПолучитьОбъект();
Если Объект.ЭтоГруппа = Истина Тогда
Область = Макет.ПолучитьОбласть("Группа");
Область.Параметры.Код = Объект.Код;
Область.Параметры.Наименование = Объект.Наименование;
ТабДок.Вывести(Область);
Иначе
Область = Макет.ПолучитьОбласть("Элемент");
Область.Параметры.Код = Объект.Код;
Область.Параметры.Шифр = Объект.Шифр;
Область.Параметры.Наименование = Объект.Наименование;
Область.Параметры.ЕдИзм = Объект.ЕдИзм;
Область.Параметры.Остаток = Объект.Остаток;
Область.Параметры.Процент = Объект.Процент;
Область.Параметры.Цена = Объект.Цена;
Область.Параметры.РознЦена = Объект.РознЦена;
ТабДок.Вывести(Область);
КонецЕсли;
КонецЦикла;
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
//}}_КОНСТРУКТОР_ПЕЧАТИ_СПИСОК
КонецПроцедуры
Процедура СправочникСписокПриАктивизацииСтроки(Элемент)
ЭлементыФормы.СправочникДерево.ТекущаяСтрока = ЭлементыФормы.СправочникСписок.ТекущийРодитель;
КонецПроцедуры
Процедура СписокПриАктивизацииСтроки(Элемент)
ЭлементыФормы.СправочникДерево.ТекущаяСтрока = ЭлементыФормы.СправочникСписок.ТекущийРодитель;
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ ДЛЯ УПРАВЛЕНИЯ ВНЕШНИМ ВИДОМ ФОРМЫ
// Процедура управляет доступностью/видимостью элементов формы
//
Процедура ДоступностьЭлементовФормы(СтрокаТЧ, ФормаТЧ)
Если СтрокаТЧ = Неопределено Тогда
Возврат;
КонецЕсли;
//Если НЕ ЗначениеНеЗаполнено(СтрокаТЧ.Номенклатура) Тогда
// //КолонкаХарактеристикаНоменклатуры = ФормаТЧ.Колонки.ХарактеристикаНоменклатуры;
// Если ТипЗнч(СтрокаТЧ.Номенклатура) = Тип("СправочникСсылка.Номенклатура") Тогда
// Если СтрокаТЧ.Номенклатура.ВестиУчетПоХарактеристикам
// ИЛИ НЕ ЗначениеНеЗаполнено(СтрокаТЧ.ХарактеристикаНоменклатуры) Тогда
// КолонкаХарактеристикаНоменклатуры.Доступность = Истина;
// Иначе
// КолонкаХарактеристикаНоменклатуры.Доступность = Ложь;
// КонецЕсли;
// Иначе
// КолонкаХарактеристикаНоменклатуры.Доступность = Ложь;
// КонецЕсли;
//КонецЕсли;
КонецПроцедуры // ДоступностьЭлементовФормы()
Процедура ОбновлениеОтображения()
ЭлементыФормы.ДатаУтверждения.Видимость = (Состояние = Перечисления.СостоянияОбъектов.Утвержден);
ЭлементыФормы.НадписьДатаУтверждения.Видимость = (Состояние = Перечисления.СостоянияОбъектов.Утвержден);
КонецПроцедуры
Процедура СостояниеПриИзменении(Элемент)
Если Состояние = Перечисления.СостоянияОбъектов.Утвержден Тогда
ДатаУтверждения = РабочаяДата;
Иначе
ДатаУтверждения = Неопределено;
КонецЕсли;
ЭлементыФормы.ДатаУтверждения.Видимость = (Состояние = Перечисления.СостоянияОбъектов.Утвержден);
ЭлементыФормы.НадписьДатаУтверждения.Видимость = (Состояние = Перечисления.СостоянияОбъектов.Утвержден);
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ РЕКВИЗИТОВ ТЧ ИСХОДНЫЕ КОМПЛЕКТУЮЩИЕ
// Процедура - обработчик события "ПриАктивизацииСтроки" табличной части "Исходные комплектующие".
//
Процедура ИсходныеКомплектующиеПриАктивизацииСтроки(Элемент)
ДоступностьЭлементовФормы(Элемент.ТекущиеДанные, ЭлементыФормы.ИсходныеКомплектующие);
КонецПроцедуры // ИсходныеКомплектующиеПриАктивизацииСтроки()
// Процедура - обработчик события "ПриНачалеРедактирования" табличной части "Исходные комплектующие".
//
Процедура ИсходныеКомплектующиеПриНачалеРедактирования(Элемент, НоваяСтрока)
ДоступностьЭлементовФормы(Элемент.ТекущиеДанные, ЭлементыФормы.ИсходныеКомплектующие);
КонецПроцедуры // ИсходныеКомплектующиеПриНачалеРедактирования()
// Процедура - обработчик события "ПриИзменении" вида норматива табличной части "Исходные комплектующие".
//
//Процедура ИсходныеКомплектующиеВидНормативаПриИзменении(Элемент)
//
// Если Элемент.Значение = Перечисления.ВидыНормативовНоменклатуры.Комплектующая Тогда
// ПустаяНоменклатура = Справочники.Номенклатура.ПустаяСсылка();
// Иначе
// ПустаяНоменклатура = Справочники.НоменклатурныеУзлы.ПустаяСсылка();
// КонецЕсли;
//
// Если ТипЗнч(ЭлементыФормы.ИсходныеКомплектующие.ТекущиеДанные.Номенклатура) <> ТипЗнч(ПустаяНоменклатура) Тогда
// ЭлементыФормы.ИсходныеКомплектующие.ТекущиеДанные.Номенклатура = ПустаяНоменклатура;
// ИсходныеКомплектующиеНоменклатураПриИзменении(Элемент);
// КонецЕсли;
//
//КонецПроцедуры // ИсходныеКомплектующиеВидНормативаПриИзменении()
// Процедура - обработчик события "ПриИзменении" номенклатуры табличной части "Исходные комплектующие".
//
Процедура ИсходныеКомплектующиеНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ИсходныеКомплектующие.ТекущиеДанные;
Если СтрокаТабличнойЧасти.Номенклатура <> СтрокаТабличнойЧасти.ЕдиницаИзмерения.Владелец Тогда
СтрокаТабличнойЧасти.ЕдиницаИзмерения = Неопределено;
КонецЕсли;
//Если ТипЗнч(СтрокаТабличнойЧасти.Номенклатура) = Тип("СправочникСсылка.Номенклатура")
// И НЕ ЗначениеНеЗаполнено(СтрокаТабличнойЧасти.Номенклатура) Тогда
// СтрокаТабличнойЧасти.ЕдиницаИзмерения = СтрокаТабличнойЧасти.Номенклатура.ЕдиницаХраненияОстатков;
// //СтрокаТабличнойЧасти.СтатьяЗатрат = СтрокаТабличнойЧасти.Номенклатура.СтатьяЗатрат;
//КонецЕсли;
ДоступностьЭлементовФормы(СтрокаТабличнойЧасти, ЭлементыФормы.ИсходныеКомплектующие);
КонецПроцедуры // ИсходныеКомплектующиеНоменклатураПриИзменении()
// Процедура - обработчик события "Очистка" номенклатуры табличной части "Исходные комплектующие".
//
//Процедура ИсходныеКомплектующиеНоменклатураОчистка(Элемент, СтандартнаяОбработка)
//
// Если ЭлементыФормы.ИсходныеКомплектующие.ТекущиеДанные.ВидНорматива = Перечисления.ВидыНормативовНоменклатуры.Комплектующая Тогда
// Элемент.Значение = Справочники.Номенклатура.ПустаяСсылка();
// Иначе
// Элемент.Значение = Справочники.НоменклатурныеУзлы.ПустаяСсылка();
// КонецЕсли;
//
// ИсходныеКомплектующиеНоменклатураПриИзменении(Элемент);
//
// СтандартнаяОбработка = ЛОЖЬ;
//
//КонецПроцедуры // ИсходныеКомплектующиеНоменклатураОчистка()
// Процедура - обработчик события "НачалоВыбора" единицы измерения табличной части "Исходные комплектующие".
//
Процедура ИсходныеКомплектующиеЕдиницаИзмеренияНачалоВыбора(Элемент, СтандартнаяОбработка)
Если ЗначениеНеЗаполнено(ЭлементыФормы.ИсходныеКомплектующие.ТекущиеДанные.Номенклатура) Тогда
СтандартнаяОбработка = Ложь;
Возврат;
КонецЕсли;
КонецПроцедуры // ИсходныеКомплектующиеЕдиницаИзмеренияНачалоВыбора()
// Процедура - обработчик события "НачалоВыбораИзСписка" номера операции маршрута табличной части "Исходные комплектующие".
//
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ РЕКВИЗИТОВ ТЧ ВЫХОДНЫЕ ИЗДЕЛИЯ
// Процедура - обработчик события "ПриАктивизацииСтроки" табличной части "Выходные изделия".
//
Процедура ВыходныеИзделияПриАктивизацииСтроки(Элемент)
ДоступностьЭлементовФормы(Элемент.ТекущиеДанные, ЭлементыФормы.ВыходныеИзделия);
КонецПроцедуры // ВыходныеИзделияПриАктивизацииСтроки()
// Процедура - обработчик события "ПриНачалеРедактирования" табличной части "Выходные изделия".
//
Процедура ВыходныеИзделияПриНачалеРедактирования(Элемент, НоваяСтрока)
ДоступностьЭлементовФормы(Элемент.ТекущиеДанные, ЭлементыФормы.ВыходныеИзделия);
КонецПроцедуры // ВыходныеИзделияПриНачалеРедактирования()
// Процедура - обработчик события "ПриИзменении" номенклатуры табличной части "Выходные изделия".
//
Процедура ВыходныеИзделияНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ВыходныеИзделия.ТекущиеДанные;
//Если СтрокаТабличнойЧасти.Номенклатура <> СтрокаТабличнойЧасти.ХарактеристикаНоменклатуры.Владелец Тогда
// СтрокаТабличнойЧасти.ХарактеристикаНоменклатуры = Неопределено;
//КонецЕсли;
Если СтрокаТабличнойЧасти.Номенклатура <> СтрокаТабличнойЧасти.ЕдиницаИзмерения.Владелец Тогда
СтрокаТабличнойЧасти.ЕдиницаИзмерения = Неопределено;
КонецЕсли;
//Если НЕ ЗначениеНеЗаполнено(СтрокаТабличнойЧасти.Номенклатура) Тогда
// СтрокаТабличнойЧасти.ЕдиницаИзмерения = СтрокаТабличнойЧасти.Номенклатура.ЕдиницаХраненияОстатков;
//КонецЕсли;
ДоступностьЭлементовФормы(СтрокаТабличнойЧасти, ЭлементыФормы.ВыходныеИзделия);
КонецПроцедуры // ВыходныеИзделияНоменклатураПриИзменении()
// Процедура - обработчик события "Очистка" номенклатуры табличной части "Выходные изделия".
//
Процедура ВыходныеИзделияНоменклатураОчистка(Элемент, СтандартнаяОбработка)
ВыходныеИзделияНоменклатураПриИзменении(Элемент);
КонецПроцедуры // ВыходныеИзделияНоменклатураОчистка()
// Процедура - обработчик события "НачалоВыбора" единицы измерения табличной части "Выходные изделия".
//
Процедура ВыходныеИзделияЕдиницаИзмеренияНачалоВыбора(Элемент, СтандартнаяОбработка)
Если ЗначениеНеЗаполнено(ЭлементыФормы.ВыходныеИзделия.ТекущиеДанные.Номенклатура) Тогда
СтандартнаяОбработка = Ложь;
Возврат;
КонецЕсли;
КонецПроцедуры
// Процедура - обработчик события ПриЗакрытии
//
Процедура ПриЗакрытии()
Параметры = Новый Структура;
Параметры.Вставить("ЗапрашиватьКоличество", ЗапрашиватьКоличество);
СохранитьЗначение("СпецификацииНоменклатуры_ФормаПодбора_Параметры", Параметры);
КонецПроцедуры // ПриЗакрытии()
// Процедура - обработчик события ПриОткрытии
//
Процедура ПриОткрытии()
Параметры = ВосстановитьЗначение("СпецификацииНоменклатуры_ФормаПодбора_Параметры");
Если Не Параметры = Неопределено Тогда
Если Параметры.Свойство("ЗапрашиватьКоличество") Тогда
ЗапрашиватьКоличество = Параметры.ЗапрашиватьКоличество;
Иначе
ЗапрашиватьКоличество = Истина;
КонецЕсли;
Иначе
ЗапрашиватьКоличество = Истина;
КонецЕсли;
КонецПроцедуры // ПриЗакрытии()
// Процедура - обработчик события ВыборЗначения
//
Процедура СправочникСписокВыборЗначения(Элемент, СтандартнаяОбработка, Значение)
СтандартнаяОбработка = ЛОжь;
Параметры = Новый Структура;
Параметры.Вставить("Спецификация", Значение[0]);
Количество = 1;
Если ЗапрашиватьКоличество Тогда
Если Не ВвестиЧисло(Количество, "Укажите количество", 15, 3) Тогда
Возврат;
КонецЕсли;
КонецЕсли;
Параметры.Вставить("Количество", Количество);
ОповеститьОВыборе(Параметры);
КонецПроцедуры // СправочникСписокВыборЗначения()
Процедура МатериалыНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Номенклатура.Цена;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Номенклатура.ЕдИзм;
МатериалыКоличествоПриИзменении(Элемент);
КонецПроцедуры
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Процедура ОсновныеДействияФормыДействие(Кнопка)
Отчеты.ОтстаткиМатериалов.ПолучитьФорму().Открыть();
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "КС-";
УстановитьНовыйНомер(ПрефиксНомера);
ЭлементыФормы.НаимПрих.Значение="ПН-"+1+"/"+ЭлементыФормы.Номер.Значение;
КонецЕсли;
КонецПроцедуры
Процедура ОсновныеДействияФормыПечать(Кнопка)
Печать();
КонецПроцедуры
Процедура Кнопка1Нажатие(Элемент)
ФормаДокумента = Документы.ПриходнаяНакладная.ПолучитьФормуНовогоДокумента();
ФормаДокумента.Открыть();
КонецПроцедуры
Процедура Кнопка2Нажатие(Элемент)
ФормаЖурнала = ЖурналыДокументов.ЖурналПриходная.ПолучитьФорму();
ФормаЖурнала.Открыть();
КонецПроцедуры
Процедура Кнопка1Нажатие(Элемент)
ФормаДокумента = Документы.РасходнаяНакладная.ПолучитьФормуНовогоДокумента();
ФормаДокумента.Открыть();
КонецПроцедуры
Процедура Кнопка2Нажатие(Элемент)
ФормаЖурнала = ЖурналыДокументов.ЖурналРасходная.ПолучитьФорму();
ФормаЖурнала.Открыть();
КонецПроцедуры
Процедура МатериалыНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.МатериалыТТН.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Номенклатура.РознЦена;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Номенклатура.ЕдИзм;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ОстаткиМатериаловПТООбороты.Материал,
| ОстаткиМатериаловПТООбороты.КоличествоПриход,
| ОстаткиМатериаловПТООбороты.КоличествоРасход
|ИЗ
| РегистрНакопления.ОстаткиМатериаловПТО.Обороты КАК ОстаткиМатериаловПТООбороты";
ВыборкаРезультатаЗапроса = Запрос.Выполнить().Выбрать();
Пока ВыборкаРезультатаЗапроса.Следующий() Цикл
Если ВыборкаРезультатаЗапроса.Материал = СтрокаТабличнойЧасти.Номенклатура Тогда
СтрокаТабличнойЧасти.КоличествоОст = ВыборкаРезультатаЗапроса.КоличествоПриход-
ВыборкаРезультатаЗапроса.КоличествоРасход;
КонецЕсли;
КонецЦикла;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.МатериалыТТН.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Процедура ОсновныеДействияФормыДействие(Кнопка)
ТТН();
КонецПроцедуры
Процедура ОсновныеДействияФормыЗаявкаВМагазин(Кнопка)
Документы.ЗаявкаВМагазин.ПолучитьФормуНовогоДокумента().Открыть();
КонецПроцедуры
Процедура ОсновныеДействияФормыОстатки(Кнопка)
Отчеты.ОтстаткиМатериалов.ПолучитьФорму().Открыть();
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "РСКС-";
УстановитьНовыйНомер(ПрефиксНомера);
КонецЕсли;
КонецПроцедуры
Функция ПроверитьТЧ ()
СтрокаТабЧасти = ЭлементыФормы.МатериалыТТН.ТекущиеДанные;
флагЗаписи = Истина;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ОстаткиМатериаловПТООстаткиИОбороты.Материал КАК Материал,
| ОстаткиМатериаловПТООстаткиИОбороты.КоличествоКонечныйОстаток КАК Остаток
|ИЗ
| РегистрНакопления.ОстаткиМатериаловПТО.ОстаткиИОбороты КАК ОстаткиМатериаловПТООстаткиИОбороты
|ИТОГИ
| СУММА(Остаток)
|ПО
| Материал";
Результат = Запрос.Выполнить();
ТЗ = Результат.Выгрузить();
Для каждого СтрокаТЗ Из ТЗ Цикл
Если СтрокаТабЧасти.Номенклатура = СтрокаТЗ.Материал Тогда
Если СтрокаТабЧасти.Количество < СтрокаТЗ.Остаток Тогда
Продолжить;
Иначе
флагЗаписи = Ложь;
Сообщить("На складе " + СтрокаТЗ.Материал+ "осталось: "+СтрокаТЗ.Остаток);
Прервать;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Возврат флагЗаписи
КонецФункции
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
ВсеВпорядке = ПроверитьТЧ ();
Если ДопСоглашение.Пустая() или Объект.Пустая() Тогда
Предупреждение("Не заполненны значения дополнительного соглашения и наименование объекта");
//Отказ=Истина;
РежимЗаписи=РежимЗаписиДокумента.ОтменаПроведения;
Иначе
//Отказ=Ложь;
РежимЗаписи=РежимЗаписиДокумента.Проведение;
КонецЕсли;
Если ВсеВпорядке = Ложь тогда
//Отказ = Истина;
РежимЗаписи=РежимЗаписиДокумента.ОтменаПроведения;
иначе
Отказ =Ложь;
КонецЕсли;
КонецПроцедуры
Процедура Печать(Элемент)
//{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать)
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.РасходнаяНакладная.ПолучитьМакет("Печать");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Номер = Номер;
Область.Параметры.Дата = Дата;
Область.Параметры.НомерДоговора = НомерДоговора;
Область.Параметры.Объект = Объект;
Область.Параметры.Заказчик = Заказчик;
Область.Параметры.Подрядчик = Подрядчик;
Область.Параметры.НаименованиеРабот = НаименованиеРабот;
ТабДок.Вывести(Область);
// МатериалыТТН
Область = Макет.ПолучитьОбласть("МатериалыТТНШапка");
ТабДок.Вывести(Область);
Для Каждого ТекСтрокаМатериалыТТН Из МатериалыТТН Цикл
Область = Макет.ПолучитьОбласть("МатериалыТТН");
Область.Параметры.Номенклатура = ТекСтрокаМатериалыТТН.Номенклатура;
Область.Параметры.ЕдИзм = ТекСтрокаМатериалыТТН.ЕдИзм;
Область.Параметры.Количество = ТекСтрокаМатериалыТТН.Количество;
Область.Параметры.Цена = ТекСтрокаМатериалыТТН.Цена;
Область.Параметры.Сумма = ТекСтрокаМатериалыТТН.Сумма;
ТабДок.Вывести(Область);
КонецЦикла;
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ
КонецПроцедуры
Процедура ОсновныеДействияФормыПечатьРасх(Кнопка)
МакетРасх = Документы.РасходнаяНакладная.ПолучитьМакет("Печать");
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.РасходнаяНакладная.ПолучитьМакет("Печать");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Номер = Номер;
Область.Параметры.Дата = Дата;
Область.Параметры.НомерДоговора = НомерДоговора;
Область.Параметры.Объект = Объект;
Область.Параметры.Заказчик = Заказчик;
Область.Параметры.Подрядчик = Подрядчик;
Область.Параметры.НаименованиеРабот = НаименованиеРабот;
ТабДок.Вывести(Область);
// МатериалыТТН
Область = Макет.ПолучитьОбласть("МатериалыТТНШапка");
ТабДок.Вывести(Область);
Для Каждого ТекСтрокаМатериалыТТН Из МатериалыТТН Цикл
Область = Макет.ПолучитьОбласть("МатериалыТТН");
Область.Параметры.Номенклатура = ТекСтрокаМатериалыТТН.Номенклатура;
Область.Параметры.ЕдИзм = ТекСтрокаМатериалыТТН.ЕдИзм;
Область.Параметры.Количество = ТекСтрокаМатериалыТТН.Количество;
Область.Параметры.Цена = ТекСтрокаМатериалыТТН.Цена;
Область.Параметры.Сумма = ТекСтрокаМатериалыТТН.Сумма;
ТабДок.Вывести(Область);
КонецЦикла;
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура МатериалыНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Номенклатура.ЕдИзм;
КонецПроцедуры
Процедура ОсновныеДействияФормыДействие(Кнопка)
Отчеты.ОтстаткиМатериалов.ПолучитьФорму().Открыть();
КонецПроцедуры
Процедура Заявка(Элемент)
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.ЗаявкаВМагазин.ПолучитьМакет("Заявка");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Заявка = Заявка;
Область.Параметры.Номер = Номер;
Область.Параметры.Дата = Дата;
Область.Параметры.Организация = Организация;
ТабДок.Вывести(Область);
// Материалы
Область = Макет.ПолучитьОбласть("МатериалыШапка");
ТабДок.Вывести(Область);
Для Каждого ТекСтрокаМатериалы Из Материалы Цикл
Область = Макет.ПолучитьОбласть("Материалы");
Область.Параметры.Номенклатура = ТекСтрокаМатериалы.Номенклатура;
Область.Параметры.ЕдИзм = ТекСтрокаМатериалы.ЕдИзм;
Область.Параметры.Количество = ТекСтрокаМатериалы.Количество;
ТабДок.Вывести(Область);
КонецЦикла;
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "СКСЗ-";
УстановитьНовыйНомер(ПрефиксНомера);
ЭлементыФормы.Заявка.Значение = "ЗМ-"+дата;
КонецЕсли;
КонецПроцедуры
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Номенклатура.ЕдИзм;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ОстаткиМатериаловПТООбороты.Материал,
| ОстаткиМатериаловПТООбороты.КоличествоПриход,
| ОстаткиМатериаловПТООбороты.КоличествоРасход
|ИЗ
| РегистрНакопления.ОстаткиМатериаловПТО.Обороты КАК ОстаткиМатериаловПТООбороты";
ВыборкаРезультатаЗапроса = Запрос.Выполнить().Выбрать();
Пока ВыборкаРезультатаЗапроса.Следующий() Цикл
Если ВыборкаРезультатаЗапроса.Материал = СтрокаТабличнойЧасти.Номенклатура Тогда
СтрокаТабличнойЧасти.Остаток = ВыборкаРезультатаЗапроса.КоличествоПриход-
ВыборкаРезультатаЗапроса.КоличествоРасход;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Процедура МатериалыНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ПлановыеМатериалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Номенклатура.РознЦена;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Номенклатура.ЕдИзм;
ПлановыеМатериалыЦенаПриИзменении(Элемент);
//СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
//Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
// СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
//КонецЕсли;
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Подрядчик = Справочники.Контрагенты.НайтиПоКоду(4);
//СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Если ДопСоглашение.Пустая() или Объект.Пустая() Тогда
Предупреждение("Не заполненны значения дополнительного соглашения и наименование объекта");
//Отказ=Истина;
РежимЗаписи=РежимЗаписиДокумента.ОтменаПроведения;
Иначе
//Отказ=Ложь;
РежимЗаписи=РежимЗаписиДокумента.Проведение;
КонецЕсли;
//Договор = НомерДоговора;
//ДопСогл = ДопСоглашение;
//Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
//НаклРасх = СтрокаТаблицыЗатраты.Всего * ПолеВводаПроцентНакл/100;
//СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход;
//КонецЕсли;
//СуммаПрописью = ЧислоПрописью(СуммаДок,,"тенге, тенге,тенге, м,тиин, тиин, тиин,м, 2");
КонецПроцедуры
Процедура ПлановыеМатериалыЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ПлановыеМатериалы.ТекущиеДанные;
//СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
СуммаМатериалов = ПлановыеМатериалы.Итог("Сумма");
//Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
// СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
//КонецЕсли;
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "ПСКС-";
УстановитьНовыйНомер(ПрефиксНомера);
КонецЕсли;
//СтрокаЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Договор = НомерДоговора;
ДопСогл = ДопСоглашение;
//СуммаМатериалов = ПлановыеМатериалы.Итог("Сумма");
//ТрансРасход = СуммаМатериалов * ПолеВводаПроцент/100;
Подрядчик = Справочники.Контрагенты.НайтиПоКоду(4);
ПолеВводаМашин = Машины.Итог("ВсегоМаш");
СуммаРабот = ДопРаботы.Итог("Стоимость");
КонецПроцедуры
Процедура ЗатратыСметПотребностьПриИзменении(Элемент)
СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
СтрокаТаблицыЗатраты.Всего = СтрокаТаблицыЗатраты.СметПотребность*СтрокаТаблицыЗатраты.ТекущУровень;
Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
НаклРасх = СтрокаТаблицыЗатраты.Всего * ПолеВводаПроцентНакл/100;
СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
КонецЕсли;
КонецПроцедуры
Процедура ПолеВводаПроцентНаклПриИзменении(Элемент)
СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
НаклРасх = СтрокаТаблицыЗатраты.Всего * ПолеВводаПроцентНакл/100;
//СметнаяПрибль = (СтрокаТаблицыЗатраты.Всего + НаклРасх + ПолеВводаМашин)*ПолеВводаПроцентСметн/100;
СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
КонецЕсли;
НорматТруд = НаклРасх * ПолеВводаПроцентНорм/100;
КонецПроцедуры
Процедура ПолеВводаПроцент2ПриИзменении(Элемент)
НорматТруд = НаклРасх * ПолеВводаПроцентНорм/100;
КонецПроцедуры
Процедура ПолеВводаПроцент3ПриИзменении(Элемент)
СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
СметнаяПрибль = (СтрокаТаблицыЗатраты.Всего + НаклРасх + ПолеВводаМашин)*ПолеВводаПроцентСметн/100;
СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
КонецЕсли;
КонецПроцедуры
Процедура МашиныСметПотрМашПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Машины.ТекущиеДанные;
СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
СтрокаТабличнойЧасти.ВсегоМаш = СтрокаТабличнойЧасти.СметПотрМаш*СтрокаТабличнойЧасти.ТекущУрМаш;
ПолеВводаМашин = Машины.Итог("ВсегоМаш");
Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
СметнаяПрибль = (СтрокаТаблицыЗатраты.Всего + НаклРасх + ПолеВводаМашин)*ПолеВводаПроцентСметн/100;
СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
КонецЕсли;
КонецПроцедуры
Процедура МатериалыТТНПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
СуммаМатериалов = ПлановыеМатериалы.Итог("Сумма");
ТрансРасход = СуммаМатериалов * ПолеВводаПроцент/100;
КонецПроцедуры
Процедура Панель1ПриСменеСтраницы(Элемент, ТекущаяСтраница)
СуммаМатериалов = ПлановыеМатериалы.Итог("Сумма");
ТрансРасход = СуммаМатериалов * ПолеВводаПроцент/100;
КонецПроцедуры
Процедура ПолеВводаПроцентПриИзменении(Элемент)
ТрансРасход = СуммаМатериалов * ПолеВводаПроцент/100;
СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
КонецЕсли;
КонецПроцедуры
Процедура ПлановоеКолвоМатер(Элемент)
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.Плановые.ПолучитьМакет("ПлановоеКолвоМатер");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Номер = Номер;
Область.Параметры.Дата = Дата;
Область.Параметры.Заказчик = Заказчик;
Область.Параметры.Объект = Объект;
Область.Параметры.Подрядчик = Подрядчик;
Область.Параметры.НомерДоговора = НомерДоговора;
Область.Параметры.ДопСоглашение = ДопСоглашение;
ТабДок.Вывести(Область);
// ПлановыеМатериалы
Область = Макет.ПолучитьОбласть("ПлановыеМатериалыШапка");
ТабДок.Вывести(Область);
Для Каждого ТекСтрокаПлановыеМатериалы Из ПлановыеМатериалы Цикл
Область = Макет.ПолучитьОбласть("ПлановыеМатериалы");
Область.Параметры.Номенклатура = ТекСтрокаПлановыеМатериалы.Номенклатура;
Область.Параметры.ЕдИзм = ТекСтрокаПлановыеМатериалы.ЕдИзм;
Область.Параметры.Количество = ТекСтрокаПлановыеМатериалы.Количество;
Область.Параметры.Цена = ТекСтрокаПлановыеМатериалы.Цена;
Область.Параметры.Сумма = ТекСтрокаПлановыеМатериалы.Сумма;
ТабДок.Вывести(Область);
КонецЦикла;
// Подвал
Область = Макет.ПолучитьОбласть("Подвал");
Область.Параметры.ТрансРасход = ТрансРасход;
Область.Параметры.СуммаМатериалов = СуммаМатериалов;
Область.Параметры.Заказчик1 = Заказчик;
Область.Параметры.Подрядчик1 = Подрядчик;
ТабДок.Вывести(Область);
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура ДЦ(Элемент)
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.Плановые.ПолучитьМакет("ДЦ");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
Область.Параметры.Заказчик = Заказчик;
Область.Параметры.Подрядчик = Подрядчик;
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Номер = Номер;
Область.Параметры.Дата = Дата;
Область.Параметры.Объект = Объект;
Область.Параметры.НомерДоговора = НомерДоговора;
Область.Параметры.ДопСоглашение = ДопСоглашение;
Область.Параметры.НаимРабот = НаименованиеРабот;
ТабДок.Вывести(Область);
// ШапкаДЦ
Область = Макет.ПолучитьОбласть("ШапкаДЦ");
ТабДок.Вывести(Область);
//ДЦ
Область = Макет.ПолучитьОбласть("ДЦ");
СтрокаЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Если СтрокаЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
Область.Параметры.Затратыраб = СтрокаЗатраты.Всего;
Область.Параметры.НаклРасх = СтрокаЗатраты.Всего * ПолеВводаПроцентНакл/100;
КонецЕсли;
Область.Параметры.Затратымашин = Машины.Итог("ВсегоМаш");
Область.Параметры.СуммаЗатрат = Область.Параметры.Затратыраб+Область.Параметры.НаклРасх+ Область.Параметры.Затратымашин;
Область.Параметры.процент = ПолеВводаПроцентСметн;
Область.Параметры.СметнаяПрибль = Область.Параметры.СуммаЗатрат*ПолеВводаПроцентСметн/100;
Область.Параметры.СуммаДЗ = Область.Параметры.СуммаЗатрат+ Область.Параметры.СметнаяПрибль;
Область.Параметры.СуммаМТР = ПлановыеМатериалы.Итог("Сумма")*(ПолеВводаПроцент/100+1);
//Область.Параметры.СуммаДок = Область.Параметры.СуммаМТР+Область.Параметры.СуммаДЗ;
ТабДок.Вывести(Область);
//Дополнительные работы
Для Каждого ТекСтрокаДопРаботы Из ДопРаботы Цикл
Область = Макет.ПолучитьОбласть("ДопРаботы");
Область.Параметры.НаимДопРабот = ТекСтрокаДопРаботы.Наименование;
Область.Параметры.СуммаДопРабот = ТекСтрокаДопРаботы.Стоимость;
ТабДок.Вывести(Область);
КонецЦикла;
//Всего
Область = Макет.ПолучитьОбласть("Всего");
Область.Параметры.СуммаДок = СуммаДок;
ТабДок.Вывести(Область);
// Подвал
Область = Макет.ПолучитьОбласть("Подвал");
ТабДок.Вывести(Область);
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура ДопРаботыНаименованиеПриИзменении(Элемент)
СуммаРабот = ДопРаботы.Итог("Стоимость");
СтрокаТаблицыЗатраты = ЭлементыФормы.Затраты.ТекущиеДанные;
Если СтрокаТаблицыЗатраты.Услуга = Перечисления.Затраты.ЗатратыРабочих Тогда
СуммаДок = СтрокаТаблицыЗатраты.Всего + НаклРасх+ПолеВводаМашин+СметнаяПрибль+СуммаМатериалов+ТрансРасход+СуммаРабот;
КонецЕсли;
КонецПроцедуры
Процедура ОсновныеДействияФормыДействие2(Кнопка)
ДоговорМ = ПолучитьМакет("Макет");
MSWord = ДоговорМ.Получить();
НаимЗаказ = Заказчик;
НаимПодр = Подрядчик;
НомерДог = Договор;
НаимРабот = НаименованиеРабот;
Попытка
Документ = MSWord.Application.Documents(1);
Документ.Activate();
Замена = Документ.Content.Find;
Замена.Execute("<НомерДог>",
Ложь,Истина,Ложь,,,Истина,,Ложь,НомерДог);
//Замена = Документ.Content.Find;
//Замена.Execute("<НаимЗаказ>",
//Ложь,Истина,Ложь,,,Истина,,Ложь,НаимЗаказ);
//Замена.Execute("<НаимПодр>",
//Ложь,Истина,Ложь,,,Истина,,Ложь,НаимПодр);
//Замена.Execute("<НаимРабот>",
//Ложь,Истина,Ложь,,,Истина,,Ложь,НаимРабот);
MSWord.Application.Visible = Истина;
MSWord.Activate();
Исключение
Сообщить(ОписаниеОшибки());
MSWord.Application.Quit();
КонецПопытки;
КонецПроцедуры
Процедура ОсновныеДействияФормыВыгрузка(Кнопка)
Режим = РежимДиалогаВыбораФайла.Сохранение;
ДиалогВыбораФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
//ДиалогВыбораФайла.ПроверятьСуществованиеФайла = Истина;
ДиалогВыбораФайла.МножественныйВыбор = Ложь;
ДиалогВыбораФайла.Заголовок = "Укажите путь к каталогу ";
ДиалогВыбораФайла.Каталог = "С:\";
Если ДиалогВыбораФайла.Выбрать() Тогда
Путь = ДиалогВыбораФайла.Каталог;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
| ПлановыеПлановыеМатериалы.Номенклатура,
| ПлановыеПлановыеМатериалы.ЕдИзм,
| ПлановыеПлановыеМатериалы.Количество,
| ПлановыеПлановыеМатериалы.Номенклатура.Шифр Как Шифр,
| Плановые.Номер
|ИЗ
| Документ.Плановые.ПлановыеМатериалы КАК ПлановыеПлановыеМатериалы
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.Плановые КАК Плановые
| ПО ПлановыеПлановыеМатериалы.Ссылка = Плановые.Ссылка
|ГДЕ
| Плановые.Номер = &НомерДок";
Запрос.УстановитьПараметр("НомерДок", Номер);
Результат = Запрос.Выполнить();
Текст = Новый ТекстовыйДокумент;
ВыборкаЗапроса = Результат.Выбрать();
Пока ВыборкаЗапроса.Следующий() Цикл
Стр=СтрЗаменить(ВыборкаЗапроса.Номенклатура,Символ(100),"%квч%");
Шифр=Строка(ВыборкаЗапроса.Шифр);
//ЕдИзмер=СтрЗаменить(ВыборкаЗапроса.ЕдИзм,Символ(100),"%квч%");
//Колво=СтрЗаменить(ВыборкаЗапроса.Количество,Символ(100),"%квч%");
ЕдИзмер=Строка(ВыборкаЗапроса.ЕдИзм);
Колво=Строка(ВыборкаЗапроса.Количество);
Текст.ДобавитьСтроку(Шифр+"'"+Колво+"'"+"'"+Стр+"'"+ЕдИзмер+"*");
КонецЦикла;
//Текст.Записать ("c:\plan.txt");
Текст.Записать (ДиалогВыбораФайла.ПолноеИмяФайла+".txt");
КонецПроцедуры
Процедура СчитываниеНажатие(Элемент)
СтрокаТЧ = ЭлементыФормы.ПлановыеМатериалы.ТекущиеДанные;
Док = ПолучитьCOMОбъект("C:\OlyaTsoy\Diplom\mater.xls");
КоличествоСтраниц = 1;
Для ТекНомер = 1 По КоличествоСтраниц Цикл
Заказчик=Док.Sheets(ТекНомер).Cells(1,1).Value;
Номенклатура = Док.Sheets(ТекНомер).Cells(2,2).Value;
Цена = Док.Sheets(ТекНомер).Cells(2,3).Value;
счСтроки = 3;
Сообщить(Строка(Номенклатура) + "-" + Строка(Цена));
Пока СокрЛП(Номенклатура) <> "" Цикл // можно использовать другой признак окончания данных на листе
Номенклатура = Док.Sheets(ТекНомер).Cells(СчСтроки,2).Value;
Цена = Док.Sheets(ТекНомер).Cells(СчСтроки,3).Value;
Сообщить(Строка(Номенклатура) + "-" + Строка(Цена));
счСтроки = счСтроки + 1;
КонецЦикла;
//СтрокаТЧ.Номенклатура = Номенклатура;
//СтрокаТЧ.Цена = Цена;
КонецЦикла;
Док.Application.Quit();
КонецПроцедуры
Процедура МашиныПослеУдаления(Элемент)
ПолеВводаМашин = Машины.Итог("ВсегоМаш");
КонецПроцедуры
Процедура НовГрафРабКнопкаНажатие(Элемент)
ФормаДокумента = Документы.ГрафикРабот.ПолучитьФормуНовогоДокумента();
ФормаДокумента.Открыть();
КонецПроцедуры
роцедура Кнопка2Нажатие(Элемент)
ФормаЖурнала = ЖурналыДокументов.ЖурналГрафикРабот.ПолучитьФорму();
ФормаЖурнала.Открыть();
КонецПроцедуры
Процедура ОсновныеДействияФормыДиаграмма(Кнопка)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ГрафикРабот.Дата,
| ГрафикРабот.Организация,
| ГрафикРабот.Заказчик,
| ГрафикРаботГрафик.ВидРабот,
| ГрафикРаботГрафик.Длительность,
| ГрафикРаботГрафик.ДатаНачала,
| ГрафикРаботГрафик.ДатаОкончания
|ИЗ
| Документ.ГрафикРабот.График КАК ГрафикРаботГрафик
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ГрафикРабот КАК ГрафикРабот
| ПО ГрафикРаботГрафик.Ссылка = ГрафикРабот.Ссылка
|ГДЕ
| ГрафикРабот.Номер = &Номер";
Запрос.УстановитьПараметр("Номер",Номер);
ВыборкаРезультата = Запрос.Выполнить().Выбрать();
Диаграмма = ЭлементыФормы.ДиаграммаГанта;
Диаграмма.Обновление = Ложь;
Диаграмма.Очистить();
Диаграмма.ОтображатьЗаголовок = Ложь;
Пока ВыборкаРезультата.Следующий() Цикл
ТекущаяСерия = Диаграмма.УстановитьСерию("Планы работ", "Планы работ");
ТекущаяТочка = Диаграмма.УстановитьТочку(ВыборкаРезультата.ВидРабот,ВыборкаРезультата.ВидРабот);
ТекущееЗначение = Диаграмма.ПолучитьЗначение(ТекущаяТочка,ТекущаяСерия);
ТекущийИнтервал = ТекущееЗначение.Добавить();
ТекущийИнтервал.Начало = ВыборкаРезультата.ДатаНачала;
ТекущийИнтервал.Конец = ВыборкаРезультата.ДатаОкончания;
Неделя = 3600*24*7;
Выходные = 3600*48;
МаксимальнаяДата = ТекущийИнтервал.Начало+Неделя*4;
ТекДата = ТекущийИнтервал.Начало;
Пока ТекДата<=МаксимальнаяДата Цикл
Конец = НачалоНедели(ТекДата);
Начало=Конец-Выходные;
Диаграмма.ИнтервалыФона.Добавить(Начало,Конец);
ТекДата = ТекДата+Неделя;
КонецЦикла;
ТекущийИнтервал.Текст = ВыборкаРезультата.Организация;
КонецЦикла;
Диаграмма.Обновление = Истина;
КонецПроцедуры
Процедура ГрафикТрудоёмкостьПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.График.ТекущиеДанные;
СтрокаТабличнойЧасти.Длительность = СтрокаТабличнойЧасти.Трудоёмкость/КоличествоЧеловек/8;
СтрокаТабличнойЧасти.ДатаОкончания = КонецДня(Дата(СтрокаТабличнойЧасти.ДатаНачала + (СтрокаТабличнойЧасти.Длительность*86400)));
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Организация = Справочники.Контрагенты.НайтиПоКоду(4);
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "ГрСКС-";
УстановитьНовыйНомер(ПрефиксНомера);
КонецЕсли;
ОбщаяДлит = График.Итог("Длительность");
СуммаПрописью = ЧислоПрописью(ОбщаяДлит,,"день, дня, дней, 2");
КонецПроцедуры
Процедура СформироватьОтчет(ДиаграммаГанта) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ГрафикРабот.Дата,
| ГрафикРабот.Организация,
| ГрафикРабот.Заказчик,
| ГрафикРаботГрафик.ВидРабот,
| ГрафикРаботГрафик.Длительность,
| ГрафикРаботГрафик.ДатаНачала,
| ГрафикРаботГрафик.ДатаОкончания
|ИЗ
| Документ.ГрафикРабот.График КАК ГрафикРаботГрафик
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ГрафикРабот КАК ГрафикРабот
| ПО ГрафикРаботГрафик.Ссылка = ГрафикРабот.Ссылка";
ВыборкаРезультата = Запрос.Выполнить().Выбрать();
//Диаграмма = ЭлементыФормы.ДиаграммаГанта1;
ДиаграммаГанта.Обновление = Ложь;
ДиаграммаГанта.Очистить();
ДиаграммаГанта.ОтображатьЗаголовок = Ложь;
Пока ВыборкаРезультата.Следующий() Цикл
ТекущаяСерия = ДиаграммаГанта.УстановитьСерию("Планы работ", "Планы работ");
ТекущаяТочка = ДиаграммаГанта.УстановитьТочку(ВыборкаРезультата.ВидРабот,ВыборкаРезультата.ВидРабот);
ТекущееЗначение = ДиаграммаГанта.ПолучитьЗначение(ТекущаяТочка,ТекущаяСерия);
ТекущийИнтервал = ТекущееЗначение.Добавить();
ТекущийИнтервал.Начало = ВыборкаРезультата.ДатаНачала;
ТекущийИнтервал.Конец = ВыборкаРезультата.ДатаОкончания;
ТекущийИнтервал.Текст = ВыборкаРезультата.Организация;
КонецЦикла;
ДиаграммаГанта.Обновление = Истина;
КонецПроцедуры
Процедура Печать(Элемент)
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.ГрафикРабот.ПолучитьМакет("Печать");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Номер = Номер;
Область.Параметры.Дата = Дата;
Область.Параметры.Организация = Организация;
Область.Параметры.Заказчик = Заказчик;
Область.Параметры.КоличествоЧеловек = КоличествоЧеловек;
Область.Параметры.ОбщаяДлит = ОбщаяДлит;
Область.Параметры.Договор = Договор;
Область.Параметры.Соглашение = Соглашение;
Область.Параметры.Объект = Объект;
Область.Параметры.НаимРабот = НаименованиеРабот;
ТабДок.Вывести(Область);
// График
Область = Макет.ПолучитьОбласть("ГрафикШапка");
ТабДок.Вывести(Область);
Для Каждого ТекСтрокаГрафик Из График Цикл
Область = Макет.ПолучитьОбласть("График");
Область.Параметры.ВидРабот = ТекСтрокаГрафик.ВидРабот;
Область.Параметры.Длительность = ТекСтрокаГрафик.Длительность;
Область.Параметры.ДатаНачала = ТекСтрокаГрафик.ДатаНачала;
Область.Параметры.ДатаОкончания = ТекСтрокаГрафик.ДатаОкончания;
Область.Параметры.Трудоёмкость = ТекСтрокаГрафик.Трудоёмкость;
ТабДок.Вывести(Область);
КонецЦикла;
// Подвал
Область = Макет.ПолучитьОбласть("Подвал");
Область.Параметры.Заказчик1 = Заказчик;
Область.Параметры.Организация1 = Организация;
ТабДок.Вывести(Область);
//Область = Макет.ПолучитьОбласть("ДиаграммаГанта1");
//ТабДок.Вывести(Область);
//СформироватьОтчет(ТабДок.Рисунки.ДиаграммаГанта.Объект);
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "КС-";
УстановитьНовыйНомер(ПрефиксНомера);
КонецЕсли;
КонецПроцедуры
Процедура МатериалыНоменклатураПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Номенклатура.РознЦена;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Номенклатура.ЕдИзм;
МатериалыКоличествоПриИзменении(Элемент);
КонецПроцедуры
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Процедура ОсновныеДействияФормыДействие(Кнопка)
Отчеты.ВыходныеФормы.ПолучитьФорму().Открыть();
КонецПроцедуры
Процедура ПриОткрытии()
Если ЭтоНовый()Тогда
ПрефиксНомера = "ВСКС-";
УстановитьНовыйНомер(ПрефиксНомера);
КонецЕсли;
КонецПроцедуры
Процедура АктВыпРабКнопкаНажатие(Элемент)
ФормаДокумента = Документы.АктВыполненныхРабот.ПолучитьФормуНовогоДокумента();
ФормаДокумента.Открыть();
КонецПроцедуры
Процедура Кнопка2Нажатие(Элемент)
ФормаЖурнала = ЖурналыДокументов.ЖурналАктВыпРаб.ПолучитьФорму();
ФормаЖурнала.Открыть();
КонецПроцедуры
Процедура МатериалыНаименованиеПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Наименование.Цена;
СтрокаТабличнойЧасти.ЕдИзм = СтрокаТабличнойЧасти.Наименование.ЕдИзм;
МатериалыКоличествоПриИзменении(Элемент);
КонецПроцедуры
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Процедура ОсновныеДействияФормыДействие(Кнопка)
Отчеты.ОтстаткиМатериалов.ПолучитьФорму().Открыть();
КонецПроцедуры
Процедура Печать(Элемент)
//{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать)
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
ТабДок = Новый ТабличныйДокумент;
Макет = Документы.АктВыполненныхРабот.ПолучитьМакет("Печать");
// Заголовок
Область = Макет.ПолучитьОбласть("Заголовок");
ТабДок.Вывести(Область);
// Шапка
Область = Макет.ПолучитьОбласть("Шапка");
Область.Параметры.Дата = Дата;
Область.Параметры.Номер = Номер;
Область.Параметры.Заказчик = Заказчик;
Область.Параметры.Склад = Склад;
ТабДок.Вывести(Область);
// Материалы
Область = Макет.ПолучитьОбласть("МатериалыШапка");
ТабДок.Вывести(Область);
Для Каждого ТекСтрокаМатериалы Из Материалы Цикл
Область = Макет.ПолучитьОбласть("Материалы");
Область.Параметры.Наименование = ТекСтрокаМатериалы.Наименование;
Область.Параметры.Количество = ТекСтрокаМатериалы.Количество;
Область.Параметры.Сумма = ТекСтрокаМатериалы.Сумма;
Область.Параметры.ЕдИзм = ТекСтрокаМатериалы.ЕдИзм;
ТабДок.Вывести(Область);
КонецЦикла;
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ
КонецПроцедуры
Процедура ФлажокЗаказчикПриИзменении(Элемент)
Если ФлажокЗаказчик=Истина Тогда
ЭлементыФормы.ПолеЗаказчик.Видимость = 1;
ЭлементыФормы.ПолеОбъект.Видимость = 1;
ФлажокДоговор = Ложь;
ФлажокСоглашение = Ложь;
ЭлементыФормы.ПолеДоговор.Видимость = 0;
ЭлементыФормы.ПолеСоглашение.Видимость = 0;
Иначе
ЭлементыФормы.ПолеЗаказчик.Видимость = 0;
ЭлементыФормы.ПолеОбъект.Видимость = 0;
КонецЕсли;
КонецПроцедуры
Процедура ФлажокДоговорПриИзменении(Элемент)
Если ФлажокДоговор=Истина Тогда
ЭлементыФормы.ПолеДоговор.Видимость = 1;
ФлажокЗаказчик = Ложь;
ФлажокСоглашение = Ложь;
ЭлементыФормы.ПолеЗаказчик.Видимость = 0;
ЭлементыФормы.ПолеОбъект.Видимость = 0;
ЭлементыФормы.ПолеСоглашение.Видимость = 0;
Иначе
ЭлементыФормы.ПолеДоговор.Видимость = 0;
КонецЕсли;
КонецПроцедуры
Процедура ФлажокСоглашениеПриИзменении(Элемент)
Если ФлажокСоглашение=Истина Тогда
ЭлементыФормы.ПолеСоглашение.Видимость = 1;
ФлажокЗаказчик = Ложь;
ФлажокДоговор = Ложь;
ЭлементыФормы.ПолеЗаказчик.Видимость = 0;
ЭлементыФормы.ПолеОбъект.Видимость = 0;
ЭлементыФормы.ПолеДоговор.Видимость = 0;
Иначе
ЭлементыФормы.ПолеСоглашение.Видимость = 0;
КонецЕсли;
КонецПроцедуры
Процедура ВыбПериодНажатие(Элемент)
НастройкаПериода = Новый НастройкаПериода;
НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода)));
НастройкаПериода.РедактироватьКакИнтервал = Истина;
НастройкаПериода.РедактироватьКакПериод = Истина;
НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
НастройкаПериода.Редактировать();
НачПериода = НастройкаПериода.ПолучитьДатуНачала();
КонПериода = НастройкаПериода.ПолучитьДатуОкончания();
КонецПроцедуры
Процедура ДействияФормыпечать(Кнопка)
Если ФлажокЗаказчик=Истина Тогда
Заказчик();
КонецЕсли;
Если ФлажокСоглашение=Истина Тогда
ДопСогл();
КонецЕсли;
Если ФлажокДоговор=Истина Тогда
Договор();
КонецЕсли;
КонецПроцедуры
Процедура Заказчик()Экспорт
ТабДок = Новый ТабличныйДокумент;
Макет = ОтчетОбъект.ПолучитьМакет("Объект");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ОстаткиМатериаловОбъектОстаткиИОбороты.ДопСогл КАК ДопСогл,
| ОстаткиМатериаловОбъектОстаткиИОбороты.Материал КАК Материал,
| ПРЕДСТАВЛЕНИЕ(ОстаткиМатериаловОбъектОстаткиИОбороты.Материал),
| РасходнаяНакладнаяМатериалыТТН.Цена,
| ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоПриход - ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
| РасходнаяНакладнаяМатериалыТТН.Цена * (ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоПриход - ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоРасход) КАК Сумма
|ИЗ
| РегистрНакопления.ОстаткиМатериаловОбъект.ОстаткиИОбороты(&ДатаНачала, &ДатаОкончания, , , ) КАК ОстаткиМатериаловОбъектОстаткиИОбороты
| ПОЛНОЕ СОЕДИНЕНИЕ Документ.РасходнаяНакладная.МатериалыТТН КАК РасходнаяНакладнаяМатериалыТТН
| ПО ОстаткиМатериаловОбъектОстаткиИОбороты.Материал = РасходнаяНакладнаяМатериалыТТН.Номенклатура
|ГДЕ
| ОстаткиМатериаловОбъектОстаткиИОбороты.Заказчик = &ПолеЗаказчик
| И ОстаткиМатериаловОбъектОстаткиИОбороты.Объект = &ПолеОбъект
|
|УПОРЯДОЧИТЬ ПО
| Материал
|ИТОГИ
| СУММА(Сумма)
|ПО
| ОБЩИЕ,
| ДопСогл
|АВТОУПОРЯДОЧИВАНИЕ";
Запрос.УстановитьПараметр("ДатаНачала", НачПериода);
Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(КонПериода));
Запрос.УстановитьПараметр("ПолеЗаказчик", ПолеЗаказчик);
Запрос.УстановитьПараметр("ПолеОбъект", ПолеОбъект);
Результат = Запрос.Выполнить();
ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
//ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
ОбластьОбщийИтог = Макет.ПолучитьОбласть("ОбщиеИтоги");
ОбластьДопСогл = Макет.ПолучитьОбласть("ДопСогл");
ОбластьДопСоглУровень = Макет.ПолучитьОбласть("ДопСоглУровень");
ОбластьДопСоглУровеньСумма = Макет.ПолучитьОбласть("ДопСоглУровеньСумма");
ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");
ТабДок.Очистить();
//ОбластьЗаголовок.Параметры.Номер = ;
ОбластьЗаголовок.Параметры.РабДата = ТекущаяДата();
ТабДок.Вывести(ОбластьЗаголовок);
ОбластьДопСогл.Параметры.Заказчик = ПолеЗаказчик;
ОбластьДопСогл.Параметры.Объект = ПолеОбъект;
ТабДок.Вывести(ОбластьДопСогл);
ТабДок.НачатьАвтогруппировкуСтрок();
ВыборкаОбщийИтог = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ВыборкаОбщийИтог.Следующий(); // Общий итог
ТабДок.Вывести(ОбластьШапкаТаблицы);
ВыборкаДопСоглУровень = ВыборкаОбщийИтог.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаДопСоглУровень.Следующий() Цикл
ОбластьДопСоглУровень.Параметры.Заполнить(ВыборкаДопСоглУровень);
ТабДок.Вывести(ОбластьДопСоглУровень, ВыборкаДопСоглУровень.Уровень());
ОбластьДопСоглУровеньСумма.Параметры.Заполнить(ВыборкаДопСоглУровень);
ВыборкаДетали = ВыборкаДопСоглУровень.Выбрать();
НомСтроки =1;
Пока ВыборкаДетали.Следующий() Цикл
ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);
ОбластьДетальныхЗаписей.Параметры.НомСтроки = НомСтроки;
НомСтроки = НомСтроки + 1;
ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());
КонецЦикла;
ТабДок.Вывести(ОбластьДопСоглУровеньСумма, ВыборкаДопСоглУровень.Уровень());
КонецЦикла;
ОбластьОбщийИтог.Параметры.Заполнить(ВыборкаОбщийИтог);
ТабДок.Вывести(ОбластьОбщийИтог, ВыборкаОбщийИтог.Уровень());
ТабДок.ЗакончитьАвтогруппировкуСтрок();
//ТабДок.Вывести(ОбластьПодвалТаблицы);
ТабДок.Вывести(ОбластьПодвал);
ТабДок.ОтображатьСетку = Ложь;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура ДопСогл()Экспорт
ТабДок = Новый ТабличныйДокумент;
Макет = ОтчетОбъект.ПолучитьМакет("Допик");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ОстаткиМатериаловОбъектОстаткиИОбороты.Материал КАК Материал,
| ПРЕДСТАВЛЕНИЕ(ОстаткиМатериаловОбъектОстаткиИОбороты.Материал),
| ОстаткиМатериаловОбъектОстаткиИОбороты.Объект КАК Объект,
| ПРЕДСТАВЛЕНИЕ(ОстаткиМатериаловОбъектОстаткиИОбороты.Объект),
| ОстаткиМатериаловОбъектОстаткиИОбороты.Материал.ЕдИзм КАК ЕдИзм,
| РасходнаяНакладнаяМатериалыТТН.Цена,
| ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоПриход - ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
| РасходнаяНакладнаяМатериалыТТН.Цена * (ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоПриход - ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоРасход) КАК Сумма
|ИЗ
| РегистрНакопления.ОстаткиМатериаловОбъект.ОстаткиИОбороты(&НачПериода, &КонПериода, , , ) КАК ОстаткиМатериаловОбъектОстаткиИОбороты
| ПОЛНОЕ СОЕДИНЕНИЕ Документ.РасходнаяНакладная.МатериалыТТН КАК РасходнаяНакладнаяМатериалыТТН
| ПО ОстаткиМатериаловОбъектОстаткиИОбороты.Материал = РасходнаяНакладнаяМатериалыТТН.Номенклатура
|ГДЕ
| ОстаткиМатериаловОбъектОстаткиИОбороты.ДопСогл = &ДопСогл
|
|УПОРЯДОЧИТЬ ПО
| Материал
|ИТОГИ
| СУММА(Сумма)
|ПО
| ОБЩИЕ,
| Объект
|АВТОУПОРЯДОЧИВАНИЕ";
Запрос.УстановитьПараметр("ДопСогл", ПолеСоглашение);
Запрос.УстановитьПараметр("КонПериода", КонецДня(КонПериода));
Запрос.УстановитьПараметр("НачПериода", НачПериода);
Результат = Запрос.Выполнить();
ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
// ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
ОбластьОбщийИтог = Макет.ПолучитьОбласть("ОбщиеИтоги");
ОбластьОбъект = Макет.ПолучитьОбласть("Объект");
ОбластьОбъектСумма = Макет.ПолучитьОбласть("ОбъектСумма");
ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");
ТабДок.Очистить();
ТабДок.Вывести(ОбластьЗаголовок);
ТабДок.Вывести(ОбластьШапкаТаблицы);
ТабДок.НачатьАвтогруппировкуСтрок();
ВыборкаОбщийИтог = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ВыборкаОбщийИтог.Следующий(); // Общий итог
//ОбластьОбщийИтог.Параметры.Заполнить(ВыборкаОбщийИтог);
//ТабДок.Вывести(ОбластьОбщийИтог, ВыборкаОбщийИтог.Уровень());
ВыборкаОбъект = ВыборкаОбщийИтог.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаОбъект.Следующий() Цикл
ОбластьОбъект.Параметры.Заполнить(ВыборкаОбъект);
ТабДок.Вывести(ОбластьОбъект, ВыборкаОбъект.Уровень());
ОбластьОбъектСумма.Параметры.Заполнить(ВыборкаОбъект);
ВыборкаДетали = ВыборкаОбъект.Выбрать();
НомСтроки = 1;
Пока ВыборкаДетали.Следующий() Цикл
ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);
ОбластьДетальныхЗаписей.Параметры.НомСтроки = НомСтроки;
НомСтроки = НомСтроки + 1;
ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());
КонецЦикла;
ТабДок.Вывести(ОбластьОбъектСумма, ВыборкаОбъект.Уровень());
КонецЦикла;
ОбластьОбщийИтог.Параметры.Заполнить(ВыборкаОбщийИтог);
ТабДок.Вывести(ОбластьОбщийИтог, ВыборкаОбщийИтог.Уровень());
ТабДок.ЗакончитьАвтогруппировкуСтрок();
//ТабДок.Вывести(ОбластьПодвалТаблицы);
ТабДок.Вывести(ОбластьПодвал);
ТабДок.ОтображатьСетку = Истина;
ТабДок.Защита = Ложь;
ТабДок.ТолькоПросмотр = Ложь;
ТабДок.ОтображатьЗаголовки = Ложь;
ТабДок.Показать();
КонецПроцедуры
Процедура Договор()Экспорт
ТабДок = Новый ТабличныйДокумент;
Макет = ОтчетОбъект.ПолучитьМакет("Договор");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗЛИЧНЫЕ
| ОстаткиМатериаловОбъектОстаткиИОбороты.Материал КАК Материал,
| ПРЕДСТАВЛЕНИЕ(ОстаткиМатериаловОбъектОстаткиИОбороты.Материал),
| ОстаткиМатериаловОбъектОстаткиИОбороты.Объект КАК Объект,
| ПРЕДСТАВЛЕНИЕ(ОстаткиМатериаловОбъектОстаткиИОбороты.Объект),
| ОстаткиМатериаловОбъектОстаткиИОбороты.ДопСогл КАК ДопСогл,
| ПРЕДСТАВЛЕНИЕ(ОстаткиМатериаловОбъектОстаткиИОбороты.ДопСогл),
| ОстаткиМатериаловОбъектОстаткиИОбороты.Материал.ЕдИзм КАК ЕдИзм,
| РасходнаяНакладнаяМатериалыТТН.Цена,
| ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоПриход - ОстаткиМатериаловОбъектОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
Подобные документы
Понятие процесса архивации файлов. Программы, осуществляющие упаковку и распаковку файлов. Защита информации от несанкционированного доступа. Самораспаковывающиеся архивы. Основные характеристики программ-архиваторов. Распространенные алгоритмы сжатия.
презентация [801,6 K], добавлен 23.10.2013Защита от несанкционированного доступа. Классификация автоматизированных систем и требования по защите информации. Средство защиты информации от несанкционированного доступа Secret Net 6.0. Разработка интерфейсной части программы, целевых функций.
дипломная работа [1,2 M], добавлен 20.12.2013Программный модуль, обеспечивающий шифрование и расшифровывание информационных блоков. Защита информации, хранящейся в электронном виде, от несанкционированного доступа. Выбор методов шифрования. Программная реализация. Руководство пользователя.
курсовая работа [184,0 K], добавлен 09.03.2009Анализ программных средств несанкционированного доступа к информации в сетях ЭВМ и способов защиты. Возможности операционных систем по защите и разграничению доступа к информации и выбор самой защищенной. Планирование сети штаба объединения ВВС и ПВО.
дипломная работа [1,0 M], добавлен 14.09.2010Характеристика основных способов защиты от несанкционированного доступа. Разработка политики безопасности системы. Проектирование программного обеспечения применения некоторых средств защиты информации в ОС. Содержание основных разделов реестра.
лабораторная работа [1,9 M], добавлен 17.03.2017- Выбор комплекса задач автоматизации и характеристика существующих бизнес-процессов интернет-магазина
Организационная структура управления интернет-магазином. Классификаторы и системы кодирования. Характеристика нормативно-справочной, входной и оперативной информации. Программное обеспечение, характеристика базы данных. Дерево вызова программных модулей.
курсовая работа [2,6 M], добавлен 18.06.2013 Необходимость и потребность в защите информации. Виды угроз безопасности информационных технологий и информации. Каналы утечки и несанкционированного доступа к информации. Принципы проектирования системы защиты. Внутренние и внешние нарушители АИТУ.
контрольная работа [107,3 K], добавлен 09.04.2011Причины внедрения корпоративных информационных систем, их классификация. Угрозы нарушения конфиденциальности и целостности информации. Последовательность рубежей защиты данных от несанкционированного доступа, актуальные механизмы его разграничения.
курсовая работа [72,9 K], добавлен 22.02.2012Обзор программ, поставляемых нескольким пользователям для общего применения или функционирования. Анализ требований к описанию программного продукта, пользовательской документации, программам и данным. Защита информации от несанкционированного доступа.
презентация [42,4 K], добавлен 27.12.2013Программная и техническая характеристика информационных систем предприятия. Требования к информационной и программной совместимости. Проектирование программного обеспечения с использованием специализированных программных пакетов. Разработка базы данных.
отчет по практике [1,3 M], добавлен 11.04.2019