Диплом: Автоматизация документооборота сервисного центра в системе «1С: Управление нашей фирмой» в компании «5 звёзд» (ИП Руксов А.Г.)

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
67
2.3.2. Характеристика базы данных
Для разработки информационно-справочной системы автоматизации
предприятия используется типовое решение «Управление нашей фирмой» на
платформе 1С: Предприятие 8.3. Эта система имеет объектную форму
организации данных. Основные прикладные объекты: справочники, документы,
перечисления, отчеты, обработки, регистры.
Справочники предназначены для отражения в системе некоторой условно
постоянной информации (списков сотрудников, товаров, клиентов и т.д..
Документы отражают некоторые события предметной области (продажу,
приём сотрудника на работу, перечисление денег в банк). Иногда они
называются по названиям печатных форм («платежное поручение», «приказ о
приеме на работу»). Но это только для удобства понимания. По сути, это именно
тип события, а не печатной формы.
Регистры накопления предназначены для отражения в приложении
некоторой системы учета. Например, учета хранения денежных средств или
товаров на складах.
Структуру программы можно описать следующими основными блоками,
представленными на рисунке 2.7.
Справочники и
перечисления
Главные модули
Регистры
Домументы
Отчеты и обработки
Рис. 2.7. Структура программы
68
2.3.3. Структурная схема пакета (дерево вызова процедур и программ)
Основным документом рассматриваемой ИС является «Прием и передача
в ремонт». Документ предназначен для оформления приема изделий в ремонт и
отражения операций ремонта.
Если для номенклатуры изделия ведется учёт по серийным номерам и
указаны параметры гарантийного срока, в истории продаж на форме будет
показан документ продажи и рассчитан гарантийный срок.
В зависимости от установленного варианта ремонта, с помощью данного
документа может быть оформлен ремонт:
- в стороннем сервисном центре
Используется для магазинов, которые принимают изделия в ремонт, но не
выполняют его самостоятельно. Изделие передается в сторонний сервисный
центр, где выполняется его ремонт. Отремонтированное изделие возвращается в
магазин, после чего выдаётся покупателю. Взаиморасчёты с покупателем
отражаются текущим документом, аванс оплаты ремонта отражается на закладке
«предоплата», документы оплаты можно ввести на основании текущего
документа или на закладке Предоплата: поступление в кассу, на счет, или оплату
картой.
Состояние оплаты ремонта покупателем отражается в списке отметкой:
Без оплаты, Оплачен частично, Оплачен полностью.
- в нашей мастерской
Используется для магазинов или мастерских, которые принимают изделия
и самостоятельно выполняют мелкий ремонт, не отражая операцию ремонта в
программе внутренними документами. После выполнения ремонта, отмечается
дата выполнения (готовности), изделие выдаётся покупателю.
Взаиморасчеты с покупателем отражаются текущим документом, аванс оплаты
ремонта отражается на закладке «предоплата». Документы оплаты можно ввести
на основании текущего документа или на закладке Предоплата: поступление в
кассу, на счет, или оплату картой.
Состояние оплаты ремонта покупателем отражается в списке отметкой:
Без оплаты, Оплачен частично, Оплачен полностью
- в нашей мастерской (Заказ-наряд / Расходная накладная, Акт)
69
Используется для мастерских, которые принимают изделия и
самостоятельно выполняют ремонт, в т.ч. числе многоэтапный, отражая
операцию ремонта в программе внутренними документами: Заказ-наряд, Акт
выполненных работ, Расходная накладная. После выполнения ремонта
отмечается дата выполнения (готовности), изделие выдаётся покупателю.
Взаиморасчёты с покупателем отражаются внутренними документами ремонта,
которые вводятся на основании текущего приёма в ремонт (Заказ-наряд,
Расходная накладная, Акт выполненных работ). Для оплаты работ по ремонту
следует указывать платёжные документы во внутренних документах ремонта.
Состояние оплаты ремонта покупателем отражается в списке отметкой:
Без оплаты, Оплачен полностью. Оплата отмечается галочкой «Ремонт
полностью оплачен» на форме.
На закладке «Приём в ремонт» нужно заполнить Номенклатуру и её
реквизиты, серийный номер (если ведётся учет по серийным номерам),
комплектацию изделия, которое передаётся в ремонт, описание неисправности,
описание механических повреждений, плановую дату окончания ремонта.
На закладке «Выполнение ремонта» необходимо выбрать один из
вариантов ремонта, затем по мере выполнения, отмечать этапы ремонта,
включая выдачу покупателю. Можно указать гарантию, число месяцев, на
выполненный ремонт, которая будет указана в печатной форме. В случае выдачи
покупателю нужно указать описание проделанного ремонта, которое будет
указано в печатной форме. Если после ремонта изделие переводится в учёт
компании, нужно выбрать заранее заполненный документ оприходования
товаров или приходную накладную.
В документе доступны печатные формы: Талон приемки в ремонт,
Возврат из ремонта, Товарный чек.
На основании Приема и передачи в ремонт могут быть введены
документы: Заказ-наряд, Акт выполненных работ, Расходная накладная,
Оприходование запасов, Приходная накладная (возврат), Поступление на счёт,
Поступление в кассу, Операция по платёжным картам, Счёт-фактура.
Документ «Заказ покупателя» предназначен для оформления намерений
покупателя приобрести товары, работы, услуги.
70
В зависимости от установленного вида операции с помощью данного
документа может быть оформлен заказ на продажу или заказ на переработку.
Необходимо заполнить следующие реквизиты:
- Организация. В данном реквизите указывается собственная
организация, от имени которой оформляется документ. Выбирается из
справочника «Организации». Реквизит отображается на форме, если в
настройках параметров учёта включено ведение учёта по нескольким
организациям.
- Вид операции. Указывается вид операции документа.
- Контрагент. Информация о контрагенте-заказчике. Выбирается из
справочника «Контрагенты».
- Договор. Указывается договор контрагента, в рамках которого
оформляется документ. Выбирается из справочника «Договоры
контрагентов».
- Проект. Указывается проект, в рамках которого оформляется заказ.
- Склад (резерв). В данном реквизите указывается склад, на котором будет
зарезервированы запасы при проведении заказа покупателя.
На форме документа расположена гиперссылка «Редактировать цены и
валюту», по которой вызывается диалог редактирования видов цен, скидок
и валюты данного документа. В подвале формы можно указать ручную скидку
на документ, процентом или суммой.
В командной панели табличной части «Запасы» расположена кнопка
«Остатки и резервы» (в виде глаза). Данная кнопка активирует расширенный
режим, позволяющий видеть остатки, резервы и обеспечение по заказу.
Запасы. Данная табличная часть может быть заполнена с помощью
подбора (кнопка «Подбор» командной панели табличной части) сканированием
штрихкода либо методом ручного ввода. Реквизиты табличной части:
- Номенклатура – позиция номенклатуры, на которую оформляется заказ.
- Характеристика – при необходимости в данном поле указывается
характеристика номенклатуры. Выбирается из справочника
«Характеристики номенклатуры». Реквизит отображается на форме, если
71
в настройках параметров учёта включено ведение учёта по
характеристикам номенклатуры.
- Количество – количество номенклатурной позиции.
- В резерв – количество резервируемых запасов на складе, указанном в поле
«Склад (резерв)».
- Ед. единица измерения номенклатурной позиции. Выбирается из
справочника «Классификатор единиц измерения» или «Единицы
измерения».
- Отгружено – отгруженная номенклатура в рамках заказа.
- Не отгружено – осталось отгрузить номенклатуры в рамках заказа.
- Зарезервировано (всего) – зарезервировано номенклатуры в рамках заказа
на всех складах.
- Размещено – размещено (заказано) номенклатуры в документах «Заказ на
производство» и «Заказ поставщику» по данному заказу.
- Не обеспечено не зарезервировано и не заказано номенклатуры по
заказу.
- Свободно (всего) – количество свободной номенклатуры на всех складах.
- Склад (резерв) – Склад на котором будет произведен резерв при вводе
значения в колонку «В резерв». Отображается при переключении
расположения склада в документах отгрузки с шапки на табличную часть.
- Свободно для резерва – свободное количество номенклатуры на складе из
колонки «Склад (резерв)».
- К поступлению – ожидаемое количество поступления свободной (не
привязанной к заказам) номенклатуры.
- Цена – цена отгрузки номенклатурной позиции.
- % Скидки – процент ручной скидки (наценки).
- % Авт. – процент автоматической скидки (наценки). Процент
автоматической скидки редактируется в справочнике «Виды
автоматических скидок и наценок». Расчёт автоматических скидок в
документе осуществляется при записи документа и при нажатии кнопки
«% Авт.» над табличной частью.
- Сумма – стоимость заказываемой номенклатуры по данной строке.
72
- Ставка НДС – ставка налога на добавленную стоимость. Выбирается из
справочника «Ставки НДС».
- Сумма НДС – сумма налога на добавленную стоимость по данной строке.
- Всего – поле, автоматически заполняемое суммарной
стоимостью запасов согласно настройкам цен и валют. Настройки
устанавливаются в диалоге, вызываемом по гиперссылке «Редактировать
цены и валюту».
- Спецификация. Определяет вариант изготовления заказываемой
продукции.
- Содержание – представление запаса в печатной форме. Чтобы реквизит
стал видимым, необходимо выполнить «Все действия» «Изменить
форму и установить флаг напротив реквизита.
73
2.3.4. Описание программных модулей
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ОбработчикиСобытий
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
// Серийные номера
Если РаботаССерийнымиНомерами.ИспользоватьСерийныеНомераОстатки() = Истина
И ЭтотОбъект.Номенклатура.ИспользоватьСерийныеНомера Тогда
ПроверяемыеРеквизиты.Добавить("СерийныйНомер");
КонецЕсли;
Если НЕ
Константы.ФункциональнаяОпцияУчетПоНесколькимНаправлениямДеятельности.Получить()
Тогда
Если РемонтВыполнен Тогда
ПроверяемыеРеквизиты.Добавить("НаправлениеДеятельности");
КонецЕсли;
КонецЕсли;
Если ПередачаВСервисныйЦентр И ВариантРемонта =
Перечисления.ВариантыРемонта.СервисЦентр Тогда
ПроверяемыеРеквизиты.Добавить("СервисЦентр");
КонецЕсли;
Если ВыдачаИзРемонта И (НЕ РемонтВыполнен) Тогда
Если ВариантРемонта = Перечисления.ВариантыРемонта.СервисЦентр Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Не
установлен ""Принят из сервисного центра""!'"));
Иначе
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru =
'Не установлен ""Ремонт выполнен""!'"));
КонецЕсли;
Отказ = Истина;
КонецЕсли;
Если РемонтВыполнен И ВариантРемонта =
Перечисления.ВариантыРемонта.СервисЦентр И (НЕ ПередачаВСервисныйЦентр) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Не
установлен ""Передан в сервисный центр""!'"));
Отказ = Истина;
КонецЕсли;
Если ПередачаВСервисныйЦентр И РемонтВыполнен И ДатаПередачаВСервисныйЦентр
> ДатаРемонтВыполнен Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Дата
передачи в сервисный центр не может быть больше даты приема из сервисного
центра!'"));
Отказ = Истина;
КонецЕсли;
Если РемонтВыполнен И ВыдачаИзРемонта И ДатаРемонтВыполнен >
ДатаВыдачаИзРемонта Тогда
74
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Дата
выпонения ремонта не может быть больше даты выдачи из ремонта!'"));
Отказ = Истина;
КонецЕсли;
Если ПередачаВСервисныйЦентр И Дата > ДатаПередачаВСервисныйЦентр Тогда
Если НЕ ЗначениеЗаполнено(Ссылка) Тогда
//Если пользователь установил ДатаПередачаВСервисныйЦентр в
новом документе до записи, она будет меньше даты и времени записи документа
Дата = ДатаПередачаВСервисныйЦентр;
Иначе
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru =
'Дата передачи в сервисный центр не может быть меньше даты приема в ремонт (даты
документа)!'"));
Отказ = Истина;
КонецЕсли;
КонецЕсли;
Если ЗначениеЗаполнено(Номенклатура) и
Номенклатура.ПроверятьЗаполнениеХарактеристики и Не
ЗначениеЗаполнено(Характеристика)
Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Для
данной номенклатуры, заполнение поля характеристики является обезательным!'"));
Отказ = Истина;
КонецЕсли;
РасчетыРаботаСФормамиВызовСервера.ПроверитьЗаполнениеДокументаПредоплаты(Кон
трагент, ПроверяемыеРеквизиты);
КонецПроцедуры
// Процедура - обработчик события ОбработкаПроведения объекта.
//
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
// Инициализация дополнительных свойств для проведения документа
УправлениеНебольшойФирмойСервер.ИнициализироватьДополнительныеСвойстваДляПро
ведения(Ссылка, ДополнительныеСвойства);
// Инициализация данных документа
Документы.ПриемИПередачаВРемонт.ИнициализироватьДанныеДокумента(Ссылка,
ДополнительныеСвойства);
// Подготовка наборов записей
УправлениеНебольшойФирмойСервер.ПодготовитьНаборыЗаписейКРегистрацииДвижений
(ЭтотОбъект);
// Отражение в разделах учета.
УправлениеНебольшойФирмойСервер.ОтразитьТоварыВРемонте(ДополнительныеСвойств
а, Движения, Отказ);
// СерийныеНомера
УправлениеНебольшойФирмойСервер.ОтразитьСерийныеНомераГарантии(Дополнительны
еСвойства, Движения, Отказ);
Если (ДополнительныеСвойства.ВариантРемонта =
Перечисления.ВариантыРемонта.НашаМастерскаяПростойРемонт
ИЛИ ДополнительныеСвойства.ВариантРемонта =
Перечисления.ВариантыРемонта.СервисЦентр) Тогда
Если ДополнительныеСвойства.РемонтВыполнен Тогда
75
УправлениеНебольшойФирмойСервер.ОтразитьТоварыВРемонте(ДополнительныеСвойств
а, Движения, Отказ);
// СерийныеНомера
УправлениеНебольшойФирмойСервер.ОтразитьСерийныеНомераГарантии(Дополнительны
еСвойства, Движения, Отказ);
УправлениеНебольшойФирмойСервер.ОтразитьРасчетыСПокупателями(ДополнительныеС
войства, Движения, Отказ);
УправлениеНебольшойФирмойСервер.ОтразитьДоходыИРасходы(ДополнительныеСвойств
а, Движения, Отказ);
УправлениеНебольшойФирмойСервер.ОтразитьДоходыИРасходыОтложенные(Дополнитель
ныеСвойства, Движения, Отказ);
УправлениеНебольшойФирмойСервер.ОтразитьУправленческий(ДополнительныеСвойств
а, Движения, Отказ);
КонецЕсли;
УправлениеНебольшойФирмойСервер.ОтразитьОплатаСчетовИЗаказов(ДополнительныеС
войства, Движения, Отказ);
КонецЕсли;
Если ДополнительныеСвойства.ВариантРемонта =
Перечисления.ВариантыРемонта.СервисЦентр Тогда
УправлениеНебольшойФирмойСервер.ОтразитьТоварыПереданныеВРемонте(Дополнитель
ныеСвойства, Движения, Отказ);
КонецЕсли;
// Запись наборов записей
УправлениеНебольшойФирмойСервер.ЗаписатьНаборыЗаписей(ЭтотОбъект);
// Контроль
Документы.ПриемИПередачаВРемонт.ВыполнитьКонтроль(Ссылка,
ДополнительныеСвойства, Отказ, Истина);
ДополнительныеСвойства.ДляПроведения.СтруктураВременныеТаблицы.МенеджерВреме
нныхТаблиц.Закрыть();
КонецПроцедуры
// Процедура - обработчик события ОбработкаУдаленияПроведения объекта.
//
Процедура ОбработкаУдаленияПроведения(Отказ)
// Инициализация дополнительных свойств для проведения документа
УправлениеНебольшойФирмойСервер.ИнициализироватьДополнительныеСвойстваДляПро
ведения(Ссылка, ДополнительныеСвойства);
// Подготовка наборов записей
76
УправлениеНебольшойФирмойСервер.ПодготовитьНаборыЗаписейКРегистрацииДвижений
(ЭтотОбъект);
// Запись наборов записей
УправлениеНебольшойФирмойСервер.ЗаписатьНаборыЗаписей(ЭтотОбъект);
// Контроль
Документы.ПриемИПередачаВРемонт.ВыполнитьКонтроль(Ссылка,
ДополнительныеСвойства, Отказ, Истина);
КонецПроцедуры // ОбработкаУдаленияПроведения()
// Обработчик заполнения документа по структуре
//
// Параметры:
//
Процедура ЗаполнитьПоСтруктуре(ДанныеЗаполнения) Экспорт
ЗаполнитьЗначенияСвойств(ЭтотОбъект, ДанныеЗаполнения);
КонецПроцедуры
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
СтратегияЗаполнения = Новый Соответствие;
СтратегияЗаполнения[Тип("Структура")] = "ЗаполнитьПоСтруктуре";
ЗаполнениеОбъектовУНФ.ЗаполнитьДокумент(ЭтотОбъект, ДанныеЗаполнения,
СтратегияЗаполнения);
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
УправлениеНебольшойФирмойСервер.ПриЗаписиДокументаОснованияСчетаФактуры(Ссыл
ка, ДополнительныеСвойства, Ложь);
Если РежимЗаписи = РежимЗаписиДокумента.Проведение ИЛИ РежимЗаписи =
РежимЗаписиДокумента.ОтменаПроведения Тогда
ДополнительныеСвойства.Вставить("ВариантРемонта", ВариантРемонта);
ДополнительныеСвойства.Вставить("ПередачаВСервисныйЦентр",
ПередачаВСервисныйЦентр);
ДополнительныеСвойства.Вставить("ДатаПередачаВСервисныйЦентр",
ДатаПередачаВСервисныйЦентр);
ДополнительныеСвойства.Вставить("РемонтВыполнен", РемонтВыполнен);
ДополнительныеСвойства.Вставить("ДатаРемонтВыполнен",
ДатаРемонтВыполнен);
ДополнительныеСвойства.Вставить("ВыдачаИзРемонта", ВыдачаИзРемонта);
ДополнительныеСвойства.Вставить("ДатаВыдачаИзРемонта",
ДатаВыдачаИзРемонта);
ДополнительныеСвойства.Вставить("СуммаДокумента", СуммаДокумента);
КонецЕсли;
ДополнительныеСвойства.Вставить("РежимЗаписи", РежимЗаписи);
Если ЭтоНовый() И НЕ ЗначениеЗаполнено(Номер) Тогда
УстановитьНовыйНомер();
КонецЕсли;

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)