Автоматизация учета бракованной продукции
Анализ предметной области. Разработка информационной системы учёта бракованной продукции в "1С: Предприятие 8.2". Создание констант, документов, плана счетов, справочников, отчётов, регистров накопления. Характеристика пользовательского интерфейса.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 19.10.2015 |
Размер файла | 8,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.Материалы;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.Период = Дата;
Движение.Сумма = ТекСтрока.Сумма;
ОбщаяСуммаМатериалов = ОбщаяСуммаМатериалов + ТекСтрока.Сумма;
Движение.КоличествоКт = ТекСтрока.Количество;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрока.Номенклатура;
КонецЦикла;
КоличествоПартий = СписокБракованныхТоваров.Количество();
Для Каждого ТекСтрокаСписокБракованныхТоваров Из СписокБракованныхТоваров Цикл
// рагистр ИсправимыйВнутреннийБрак
Движение = Движения.ИсправимыйВнутреннийБрак.Добавить();
Движение.Период = Дата;
Движение.Подразделение = Подразделение;
Движение.МОЛ = МОЛ;
Движение.Номенклатура = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.ПричинаБрака = ПричинаБрака;
Движение.ОтветственныйЗаИсправление = ОтветственныйЗаИсправление;
Движение.КоличествоБракованныхТоваров = ТекСтрокаСписокБракованныхТоваров.Количество;
// стоимость оплаты за исправление и стоимость затраченных ресурсов записываются пропорционально количеству бракованных партий продукции
Движение.ОплатаЗаИсправление = ОплатаЗаИсправление / КоличествоПартий;
Движение.СтоимостьЗатраченныхМатериалов = ОбщаяСуммаМатериалов / КоличествоПартий;
Если (ПричинаБрака = Перечисления.ПричинаБрака.Технический) тогда
// регистр Управленческий Д28 К70
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.РасчетыСПерсоналомПоОплатеТруда;
Движение.Период = Дата;
Движение.Сумма = ОплатаЗаИсправление / КоличествоПартий;
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = ОтветственныйЗаИсправление;
// регистр Управленческий Д28 К69
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.РасчетыПоСоциальномуСтрахованиюИОбеспечению;
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.Период = Дата;
Движение.Сумма = ОплатаЗаИсправление * ФСЗН / КоличествоПартий;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = ОтветственныйЗаИсправление;
// регистр Управленческий Д28 К76
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.РасчетыПоИмущественномуИЛичномуСтрахованию;
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.Период = Дата;
Движение.Сумма = ОплатаЗаИсправление * Страховые / КоличествоПартий;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = ОтветственныйЗаИсправление;
// регистр Управленческий Д20 К28
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.ОсновноеПроизводство;
Движение.СчетКт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.Период = Дата;
Движение.Сумма = (ОбщаяСуммаМатериалов / КоличествоПартий) + (ОплатаЗаИсправление / КоличествоПартий) + (ОплатаЗаИсправление * ФСЗН / КоличествоПартий) + (ОплатаЗаИсправление * Страховые / КоличествоПартий);
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.КоличествоКт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
ИначеЕсли (МОЛ <> ОтветственныйЗаИсправление) тогда
// регистр Управленческий Д28 К70
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.РасчетыСПерсоналомПоОплатеТруда;
Движение.Период = Дата;
Движение.Сумма = ОплатаЗаИсправление / КоличествоПартий;
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = ОтветственныйЗаИсправление;
// регистр Управленческий Д28 К69
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.РасчетыПоСоциальномуСтрахованиюИОбеспечению;
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.Период = Дата;
Движение.Сумма = ОплатаЗаИсправление * ФСЗН / КоличествоПартий;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = ОтветственныйЗаИсправление;
// регистр Управленческий Д28 К76
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.СчетКт = ПланыСчетов.Управленческий.РасчетыПоИмущественномуИЛичномуСтрахованию;
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.Период = Дата;
Движение.Сумма = ОплатаЗаИсправление * Страховые / КоличествоПартий;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = ОтветственныйЗаИсправление;
// регистр Управленческий Д73 К28
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.РасчетыПоВозмещениюУщерба;
Движение.СчетКт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.КоличествоКт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.Период = Дата;
Движение.Сумма = (ОбщаяСуммаМатериалов / КоличествоПартий) + (ОплатаЗаИсправление / КоличествоПартий) + (ОплатаЗаИсправление * ФСЗН / КоличествоПартий) + (ОплатаЗаИсправление * Страховые / КоличествоПартий);
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Иначе
// регистр Управленческий Д20 К28
// В случае отсутствия затрат проводка не формируется
Если (ОбщаяСуммаМатериалов > 0) тогда
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Управленческий.ОсновноеПроизводство;
Движение.СчетКт = ПланыСчетов.Управленческий.БракВПроизводстве;
Движение.Период = Дата;
Движение.Сумма = (ОбщаяСуммаМатериалов / КоличествоПартий) + (ОплатаЗаИсправление / КоличествоПартий) + (ОплатаЗаИсправление * ФСЗН / КоличествоПартий) + (ОплатаЗаИсправление * Страховые / КоличествоПартий);
Движение.КоличествоДт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.КоличествоКт = ТекСтрокаСписокБракованныхТоваров.Количество;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Подразделение] = Подразделение;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.МОЛ] = МОЛ;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.ПричинаБрака] = ПричинаБрака;
Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатуры] = ТекСтрокаСписокБракованныхТоваров.Номенклатура;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Листинг И.2 - Код модуля формы документа АктОбИсправимомБраке
Примечание - Источник: собственная разработка
&НаСервере
Функция ЦенаНоменклатуры(Номенклатура)
Возврат Номенклатура.Цена;
КонецФункции
&НаКлиенте
Функция РасчётСуммы(Количество, Цена)
Возврат Количество * Цена;
КонецФункции
&НаКлиенте
Процедура СписокБракованныхТоваровНоменклатураПриИзменении(Элемент)
Элем = Элементы.СписокБракованныхТоваров.ТекущиеДанные;
Элем.Цена = ЦенаНоменклатуры(Элем.Номенклатура);
Элем.Сумма = РасчётСуммы(Элем.Количество, Элем.Цена);
КонецПроцедуры
&НаКлиенте
Процедура СписокБракованныхТоваровКоличествоПриИзменении(Элемент)
Элем = Элементы.СписокБракованныхТоваров.ТекущиеДанные;
Элем.Сумма = РасчётСуммы(Элем.Количество, Элем.Цена);
КонецПроцедуры
&НаКлиенте
Процедура МатериалыНаИсправлениеНоменклатураПриИзменении(Элемент)
Элем = Элементы.МатериалыНаИсправление.ТекущиеДанные;
Элем.Цена = ЦенаНоменклатуры(Элем.Номенклатура);
Элем.Сумма = РасчётСуммы(Элем.Количество, Элем.Цена);
КонецПроцедуры
&НаКлиенте
Процедура МатериалыНаИсправлениеКоличествоПриИзменении(Элемент)
Элем = Элементы.МатериалыНаИсправление.ТекущиеДанные;
Элем.Сумма = РасчётСуммы(Элем.Количество, Элем.Цена);
КонецПроцедуры
&НаКлиенте
Процедура ОплатаЗаИсправлениеПриИзменении(Элемент)
ОтветственныйМОЛ();
КонецПроцедуры
&НаКлиенте
Процедура ОтветственныйМОЛ()
Если (Объект.МОЛ = Объект.ОтветственныйЗаИсправление) тогда
Объект.ОплатаЗаИсправление = 0;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура МОЛПриИзменении(Элемент)
ОтветственныйМОЛ();
КонецПроцедуры
&НаКлиенте
Процедура ОтветственныйЗаИсправлениеПриИзменении(Элемент)
ОтветственныйМОЛ();
КонецПроцедуры
Размещено на Allbest.ur
Подобные документы
Организация деятельности туристического оператора. Описание фирмы и учётной системы. Введение единого учёта данных. Разработка констант, перечислений, справочников, документов, регистров накопления, отчётов, интерфейса. Формирование новых туров.
курсовая работа [1,5 M], добавлен 13.01.2015Разработка концептуальной модели предметной области. Автоматизация справочной системы. Разработка конфигурации в 1С:Предприятии. Создание констант и перечислений. Формирование и проведение документов. Создание пользователя и пользовательского интерфейса.
курсовая работа [1016,6 K], добавлен 09.03.2015Типы объектов, используемых при разработке конфигурации. Разработка и последующее тестирование автоматизации учета услуг студии на основе платформы "1С: Предприятие 8.2". Создание перечислений, справочников, документов, регистров накопления, плана счетов.
курсовая работа [3,6 M], добавлен 27.12.2014Характеристика предметной области. Загрузка системы "1С: Предприятие 8.2". Обработка и учет информации о книгах, работниках и читателях. Создание и изменение подсистем, справочников, документов, регистров накопления, регистра сведений, модулей, отчетов.
курсовая работа [4,2 M], добавлен 22.01.2016Проектирование информационных систем. Разработка информационной системы в 1С. Создание справочников и документов, регистров накопления и регистров сведений. Пропускная способность системы. Автоматизация рабочего места оператора телефонной компании.
курсовая работа [1,6 M], добавлен 29.07.2013Проектирование информационной системы "учет гостиничных номеров" в среде 1С. Создание структуры подсистем, констант, перечислений, справочников, документов, регистров, объектов бухгалтерского учета и отчетов. Разработка ролей и интерфейсов пользователей.
курсовая работа [917,4 K], добавлен 02.03.2014Понятие и содержание системы документооборота, выбор системы автоматизации. Основы программирования средствами системы "1С: Предприятие". Описание подсистем, справочников, документов, регистров, отчётов программы, разработанной для охранного предприятия.
дипломная работа [788,7 K], добавлен 20.07.2015Постановка задачи и создание перечислений ("статус", "банк поставщика", "единица измерения", "должность"). Создание справочников ("парфюмерия", "поставщик", "клиент", "тип цены", "склад", "сотрудники", "договоры"). Создание планов счетов и констант.
курсовая работа [2,8 M], добавлен 05.02.2010Информатизация общества и её роль в развитии управленческой деятельности. Обоснование идеи японского проекта информатизации. Требования к системам, используемым в процессе управления. Автоматизация офиса. Сводная ведомость учёта бракованной продукции.
курсовая работа [298,5 K], добавлен 09.12.2010Разработка программы для ввода данных из актов о возврате бракованных ванн в БД учета брака. Проектирование информационных систем. Разработка модели БД с помощью ERWin, приложения ввода данных в Borland Delphi 7, системы создания отчётности в MS Excel.
курсовая работа [2,6 M], добавлен 30.03.2011