Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Эскизный проект010101.docx
Скачиваний:
35
Добавлен:
01.04.2015
Размер:
29.89 Mб
Скачать
  1. Текст модулей разрабатываемой системы

Модуль объекта «Номенклатура».

Текст произвольного запроса динамического списка «СтоимостьМатериалы» из «РегистрСведений.СтоимостьМатериалы»

ВЫБРАТЬ

СтоимостьМатериалы.Период,

СтоимостьМатериалы.Номенклатура,

СтоимостьМатериалы.Поставщик,

СтоимостьМатериалы.ЗаводИзготовитель,

СтоимостьМатериалы.Цена

ИЗ

РегистрСведений.СтоимостьМатериалы КАК СтоимостьМатериалы

ГДЕ

СтоимостьМатериалы.Номенклатура = &Номенклатура

Модуль справочника «Номенклатура»

&НаКлиенте

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

ЭтаФорма.СтоимостьМатериалы.Параметры.УстановитьЗначениеПараметра("Номенклатура", Объект.Ссылка)

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

Модуль справочника «Проект»

&НаКлиенте

Процедура МатериалыНоменклатураПриИзменении(Элемент)

СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные;

СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.РозничнаяЦена(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);

СтрокаТабличнойЧасти.Поставщик = РаботаСоСправочниками.АктПоставщик(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);

СтрокаТабличнойЧасти.ЗаводИзготовитель = РаботаСоСправочниками.АктЗавод(Объект.Дата, СтрокаТабличнойЧасти.Номенклатура);

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

&НаКлиенте

Процедура МатериалыКоличествоПриИзменении(Элемент)

СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные;

РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти);

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

&НаКлиенте

Процедура РаботыНаименованиеПриИзменении(Элемент)

СтрокаТабличнойЧасти = Элементы.Работы.ТекущиеДанные;

СтрокаТабличнойЧасти.Стоимость = РаботаСоСправочникомРаботы.РозничнаяСтоимость(Объект.Дата, СтрокаТабличнойЧасти.Наименование);

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

&НаКлиенте

Процедура Обновить(Команда)

ЭтаФорма.Объект.Стиомость = Объект.Работы.Итог("Стоимость") + Объект.Материалы.Итог("Сумма") ;

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

Модуль объекта «Работа».

Текст произвольного запроса динамического списка «СтоимостьРаботы» из «РегистрСведений.СтоимостьРаботы»

ВЫБРАТЬ

СтоимостьРаботы.Период,

СтоимостьРаботы.Работа,

СтоимостьРаботы.Стоимость

ИЗ

РегистрСведений.СтоимостьРаботы КАК СтоимостьРаботы

ГДЕ

СтоимостьРаботы.Работа = &Работа

Модуль справочника «Работы»

&НаКлиенте

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

ЭтаФорма.СтоимостьРаботы.Параметры.УстановитьЗначениеПараметра("Работа", Объект.Ссылка)

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

Модуль объекта «Склад объекта строительства».

Текст произвольного запроса динамического списка «МатериалыСклад» из «РегистрНакопления.ОстаткиМатериалов.ОстаткиИОбороты»

ВЫБРАТЬ

ОстаткиМатериаловОстаткиИОбороты.Материал,

ОстаткиМатериаловОстаткиИОбороты.Склад,

ОстаткиМатериаловОстаткиИОбороты.ОбъектСтроительства,

ОстаткиМатериаловОстаткиИОбороты.КалендарныйПлан,

ОстаткиМатериаловОстаткиИОбороты.КоличествоНачальныйОстаток,

ОстаткиМатериаловОстаткиИОбороты.КоличествоОборот,

ОстаткиМатериаловОстаткиИОбороты.КоличествоПриход,

ОстаткиМатериаловОстаткиИОбороты.КоличествоРасход,

ОстаткиМатериаловОстаткиИОбороты.КоличествоКонечныйОстаток

ИЗ

РегистрНакопления.ОстаткиМатериалов.ОстаткиИОбороты КАК ОстаткиМатериаловОстаткиИОбороты

ГДЕ

ОстаткиМатериаловОстаткиИОбороты.ОбъектСтроительства = &ОбъектСтроительства Модуль формы справочника «Склад объекта строительства»

&НаКлиенте

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

ЭтаФорма.МатериалыСклад.Параметры.УстановитьЗначениеПараметра("ОбъектСтроительства", Объект.ОбъектСтроительства);

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

Модуль объекта справочника «Склад объекта строительства»

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.КалендарныйПлан") Тогда

// Заполнение шапки

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

Проект = ДанныеЗаполнения.Проект;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Модуль объекта «Внутренний заказ»

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.КалендарныйПлан") Тогда

// Заполнение шапки

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

КП = ДанныеЗаполнения.Ссылка;

Для Каждого ТекСтрокаКПМатериал Из ДанныеЗаполнения.КПМатериал Цикл

НоваяСтрока = Материалы.Добавить();

НоваяСтрока.ЗаводИзготовитель = ТекСтрокаКПМатериал.ЗаводИзготовитель;

НоваяСтрока.Количество = ТекСтрокаКПМатериал.Количество;

НоваяСтрока.Номенклатура = ТекСтрокаКПМатериал.Материал;

НоваяСтрока.Поставщик = ТекСтрокаКПМатериал.Поставщик;

НоваяСтрока.Цена = ТекСтрокаКПМатериал.Цена;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Модуль объекта «Заказ поставщику»

&НаКлиенте

Процедура ЗаказПриИзменении(Элемент)

СтрокаТабличнойЧасти = Элементы.Заказ.ТекущиеДанные;

СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;

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

&НаКлиенте

Процедура Обновить(Команда)

СтрокаТабличнойЧасти = Элементы.Заказ.ТекущиеДанные;

Для каждого СтрокаТабличнойЧасти из этаформа.Объект.Заказ цикл

СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;

конеццикла;

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

Модуль объекта «Заказ поставщику»

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ВнутреннийЗаказ") Тогда

// Заполнение шапки

КП = ДанныеЗаполнения.КП;

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

Для Каждого ТекСтрокаМатериалы Из ДанныеЗаполнения.Материалы Цикл

НоваяСтрока = Заказ.Добавить();

НоваяСтрока.ЗаводИзготовитель = ТекСтрокаМатериалы.ЗаводИзготовитель;

НоваяСтрока.Количество = ТекСтрокаМатериалы.Количество;

НоваяСтрока.Наименование = ТекСтрокаМатериалы.Номенклатура;

НоваяСтрока.Поставщик = ТекСтрокаМатериалы.Поставщик;

НоваяСтрока.Цена = ТекСтрокаМатериалы.Цена;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Модуль объекта «Календарный план»

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Проект") Тогда

// Заполнение шапки

Проект = ДанныеЗаполнения.Наименование;

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

Для Каждого ТекСтрокаМатериалы Из ДанныеЗаполнения.Материалы Цикл

НоваяСтрока = КПМатериал.Добавить();

НоваяСтрока.ЗаводИзготовитель = ТекСтрокаМатериалы.ЗаводИзготовитель;

НоваяСтрока.Количество = ТекСтрокаМатериалы.Количество;

НоваяСтрока.Материал = ТекСтрокаМатериалы.Номенклатура;

НоваяСтрока.Поставщик = ТекСтрокаМатериалы.Поставщик;

НоваяСтрока.Цена = ТекСтрокаМатериалы.Цена;

КонецЦикла;

Для Каждого ТекСтрокаРаботы Из ДанныеЗаполнения.Работы Цикл

НоваяСтрока = КПРаботы.Добавить();

НоваяСтрока.КонецРабот = ТекСтрокаРаботы.КонецРабот;

НоваяСтрока.Работа = ТекСтрокаРаботы.Наименование;

НоваяСтрока.НачалоРабот = ТекСтрокаРаботы.НачалоРабот;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Процедура ОбработкаПроведения(Отказ, Режим)

//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

// Данный фрагмент построен конструктором.

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

Движения.ОстаткиМатериалов.Записывать = Истина;

Для Каждого ТекСтрокаКПМатериал Из КПМатериал Цикл

// регистр ОстаткиМатериалов Приход

Движение = Движения.ОстаткиМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Приход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаКПМатериал.Материал;

Движение.ОбъектСтроительства = ОбъектСтроительства;

Движение.Количество = ТекСтрокаКПМатериал.Количество;

КонецЦикла;

//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

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

Модуль объекта «Приходная накладная»

роцедура ОбработкаПроведения(Отказ, Режим)

//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

// Данный фрагмент построен конструктором.

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

Движения.ОстаткиМатериалов.Записывать = Истина;

Для Каждого ТекСтрокаМатериалы Из Материалы Цикл

// регистр ОстаткиМатериалов Приход

Движение = Движения.ОстаткиМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Приход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаМатериалы.Материал;

Движение.Склад = Склад;

Движение.ОбъектСтроительства = ОбъектСтроительства;

Движение.КалендарныйПлан = КП;

Движение.Количество = ТекСтрокаМатериалы.Количество;

КонецЦикла;

//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

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

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказПоставщику") Тогда

// Заполнение шапки

КП = ДанныеЗаполнения.КП;

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

Для Каждого ТекСтрокаЗаказ Из ДанныеЗаполнения.Заказ Цикл

НоваяСтрока = Материалы.Добавить();

НоваяСтрока.ЗаводИзготовитель = ТекСтрокаЗаказ.ЗаводИзготовитель;

НоваяСтрока.Количество = ТекСтрокаЗаказ.Количество;

НоваяСтрока.Материал = ТекСтрокаЗаказ.Наименование;

НоваяСтрока.Поставщик = ТекСтрокаЗаказ.Поставщик;

НоваяСтрока.Цена = ТекСтрокаЗаказ.Цена;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Модуль объекта «Выполнение работ календарного плана»

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.КалендарныйПлан") Тогда

// Заполнение шапки

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

Проект = ДанныеЗаполнения.Проект;

КП = ДанныеЗаполнения.Ссылка;

Статус = ДанныеЗаполнения.Статус;

Для Каждого ТекСтрокаКПМатериал Из ДанныеЗаполнения.КПМатериал Цикл

НоваяСтрока = КПМатериал.Добавить();

НоваяСтрока.Количество = ТекСтрокаКПМатериал.Количество;

НоваяСтрока.Материал = ТекСтрокаКПМатериал.Материал;

КонецЦикла;

Для Каждого ТекСтрокаКПРаботы Из ДанныеЗаполнения.КПРаботы Цикл

НоваяСтрока = КПРаботы.Добавить();

НоваяСтрока.КонецРабот = ТекСтрокаКПРаботы.КонецРабот;

НоваяСтрока.НачалоРабот = ТекСтрокаКПРаботы.НачалоРабот;

НоваяСтрока.Работа = ТекСтрокаКПРаботы.Работа;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Модуль объекта «Списание материалов»

Процедура ОбработкаПроведения(Отказ, Режим)

//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

// Данный фрагмент построен конструктором.

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

Движения.ОстаткиМатериалов.Записывать = Истина;

Для Каждого ТекСтрокаМатериалы Из Материалы Цикл

// регистр ОстаткиМатериалов Расход

Движение = Движения.ОстаткиМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Расход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаМатериалы.Материал;

Движение.Склад = Склад;

Движение.ОбъектСтроительства = ОбъектСтроительства;

Движение.КалендарныйПлан = КП;

Движение.Количество = ТекСтрокаМатериалы.Количество;

КонецЦикла;

//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ

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

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.НарядЗадание") Тогда

// Заполнение шапки

КП = ДанныеЗаполнения.КП;

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

Склад = ДанныеЗаполнения.Склад;

Для Каждого ТекСтрокаМатериалы Из ДанныеЗаполнения.Материалы Цикл

НоваяСтрока = Материалы.Добавить();

НоваяСтрока.Количество = ТекСтрокаМатериалы.Количество;

НоваяСтрока.Материал = ТекСтрокаМатериалы.Материал;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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

Модуль объекта «Наряд задание»

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

//{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

// Данный фрагмент построен конструктором.

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

Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.КалендарныйПлан") Тогда

// Заполнение шапки

ОбъектСтроительства = ДанныеЗаполнения.ОбъектСтроительства;

КП = ДанныеЗаполнения.Ссылка;

Для Каждого ТекСтрокаКПМатериал Из ДанныеЗаполнения.КПМатериал Цикл

НоваяСтрока = Материалы.Добавить();

НоваяСтрока.Количество = ТекСтрокаКПМатериал.Количество;

НоваяСтрока.Материал = ТекСтрокаКПМатериал.Материал;

КонецЦикла;

Для Каждого ТекСтрокаКПРаботы Из ДанныеЗаполнения.КПРаботы Цикл

НоваяСтрока = Наряд.Добавить();

НоваяСтрока.КонецРабот = ТекСтрокаКПРаботы.КонецРабот;

НоваяСтрока.Работа = ТекСтрокаКПРаботы.Работа;

КонецЦикла;

КонецЕсли;

//}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ

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