Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Разработка конфигурации «Складской учет» в среде 1С:Предприятие 8.3 (Описание разработанных форм отчетов, необходимых для отражения результатов решения задач)

Содержание:

ВВЕДЕНИЕ

Представители современного бизнеса должны учитывать новые технологии и использовать их в своей работе. Это касается крупных организаций, средних и небольших компаний. Внедрение 1С является одним из важных мероприятий, необходимых для повышения эффективности бизнеса.

Ведение бухгалтерского учета в бумажном виде – это отголоски прошлого. Современные специалисты используют в своей работе информационный комплекс «1С:Предпритие». Его внедрение в процесс бухгалтерской и финансовой деятельности позволяет сдавать отчетность в электронном виде и эффективно выполнять другие процессы. Это экономит время и средства. Все данные передаются за секунды по телекоммуникационным каналам связи.

Из выше сказанного следует и основная цель курсовой работы, а именно показать актуальность использования среды «1С:Предприятие» на примере конфигурации «Складской учёт». Своевременность и актуальность рассматриваемой темы заключается в том, что без автоматизированного учета работники склада большую часть времени занимает оформление документов и составление отчетов. Так же целью данной работы является исследование различных аспектов в автоматизации учета товаров на складе на предприятии, а так показать, что внедрение системы 1С в организации обеспечивает повышение эффективности ведения бухгалтерского учета. Система обладает отличным функционалом. Повышается не только скорость выполнения работы специалистами организации, но и качество результатов.

Итак Цель курсовой работы – это разработка конфигурации «Складской учёт» в среде «1С:Предприятие 8.3».

Помимо цели курсовой работы есть и задачи, которые необходимо решить по мере выполнения курсовой работы.

Задачи, которые необходимо решить для достижения поставленной цели:

- попытаться автоматизировать процедуру учета товара;

- документальное оформление движение товаров на складе;

- разработать формы документов для приема товара на склады и отпуска товара контрагентам, а также сформировать печатные формы данных документов.

1.  АНАЛИТИЧЕСКАЯ ЧАСТЬ

1.1 Выбор комплекса задач автоматизации

Основная задача курсовой работы – разработка конфигурации «Складской учёт» в среде «1С:Предприятие 8.3», которая позволить:

- автоматизировать процедуру учёта товара;

- вводить данные о поступлении товара, выводить данные о отпущенном товаре, формировать отчеты по остаткам товара;

- формировать и выводить на печать документы для поступления товара, отпуска товара.

1.2. Характеристика документооборота, возникающего при решении задач

Для решения, поставленной задачи необходимо провести формализацию задачи, как необходимый этап разработки задачи, который заключается в построении структуры справочников, схемы взаимосвязей документов со справочниками и описания алгоритмов обработки.

Так же необходимо рассмотреть схему документооборота для каждого документа.

Примерная схема документооборота «Поступление товара» представлено на Схеме 1. Схема документооборота «Поступление товара».

Примерная схема документооборота «Продажа товаров» представлено на Схеме 2. Схема документооборота «Продажа товаров».

Исполнитель

Действие

Пользователь

Контрагент

Сотрудник

Архив

Заполнение документа «Поступление товара»

Документ «Поступление товара»

Документ «Поступление товара»

Документ «Поступление товара»

Проверка правильности заполнения

«Поступление товара»

Документ «Поступление товара»

Документ «Поступление товара»

Документ «Поступление товара»

Получение копии

«Поступление товара»

Документ «Поступление товара»

Документ «Поступление товара»

Исполнитель

Действие

Пользователь

Контрагент

Сотрудник

Архив

Заполнение документа «Продажа товаров»

Документ «Продажа товаров»

Документ «Продажа товаров»

Документ «Продажа товаров»

Проверка правильности заполнения

«Продажа товаров»

Документ «Продажа товаров»

Документ «Продажа товаров»

Документ «Продажа товаров»

Документ «Продажа товаров»

Получение копии

«Продажа товаров»

Документ «Продажа товаров»

Документ «Продажа товаров»

Схеме 1. Схема документооборота «Поступление товара»

Схеме 2. Схема документооборота «Продажа товаров»

1.3 Обоснование проектных решений по информационному обеспечению

Автоматизация предприятий. Программа 1С позволяет быстро обрабатывать все первичные документы, поступающие от поставщиков и покупателей, рассчитывать зарплату сотрудникам, организовать систему платежей в соответствии с графиком платежей на предприятии, вести учет основных средств и нематериальных активов. Вся первичная информация быстро структурируется и затем может быть использована в разных отчетах. Каждая новая версия программы 1С сводит к минимуму ручной труд и дает возможность автоматизированной работы всей бухгалтерии.

Каждое предприятие имеет обязательства по налогам перед государством. Поэтому правильность расчета и уплаты налогов, а также своевременность сдачи деклараций в налоговую инспекцию напрямую влияют на успешность бизнеса. Не выплаченные или не вовремя выплаченные налоги – это неприятная перспектива пени и штрафов. При правильно введенных данных расчет налогов и заполнение деклараций для главного бухгалтера не составит большого труда.

Оперативное получение любой информации о работе предприятия не только для бухгалтерской службы, но и для руководителей разных уровней. Любую цифру — будь то поступление средств, сумма продаж или расходы на зарплату и налоги – все это можно узнать быстро и без особых усилий. Каждый руководитель, желающий контролировать свой бизнес и быть в курсе всех процессов, происходящих на предприятии, может воспользоваться продуктами фирмы 1С.

Из всего вышесказанного можно сделать вывод, что хорошо организованная и автоматизированная работа бухгалтерской службы напрямую связана с успешной и прибыльной работой предприятия. И это та часть ведения бизнеса, которую точно не стоит недооценивать и тем более пренебрегать ею.

Основные преимущества установки 1С:

Это внедрение программы 1С на предприятиях, где автоматизированный учет совсем не велся. Или установка новых версий программ на предприятиях, давно работающих с 1С.

 Многопрофильность. Возможность работы с предприятиями разных профилей и сфер деятельности – от крупных промышленных и строительных до мелких пищевых производств и торговых фирм.

Индивидуальные решения. Каждое предприятие имеет свои тонкости и специфику ведения учета, где какие-то функции стандартных версий программ не нужны, а какие-то функции отсутствуют. Например, если компания имеет большое количество филиалов, или работает с акцизами, или еще какие-либо нюансы, требующие дополнительных функций программы.

Решения для руководителей. Многие современные руководители, идущие в ногу со временем, принимают активное участие в учете своего предприятия и хотят ежедневно владеть всей информацией относительно денежных потоков и прочих финансовых операций. Сегодня программа 1С дает большие возможности для таких руководителей. Огромное количество отчетов, формируемых в разных разрезах и показателях, позволяют собственникам быть всегда в курсе всех дел.

На сегодняшний день у существующей практике управления и обработки экономической информации имеется ряд недостатков, а именно: невозможность расчета показателей, необходимых для управления объектом из-за сложности вычислении или большого объема информации; низкая оперативность, снижающая качество управления объектом; высока трудоемкость; невысокая достоверность результатов решения задачи из-за дублирования потоков информации; несовершенство организации сбора и регистрации исходной информации; несовершенство процессов сбора, передачи, обработки, хранения, защиты целостности и секретности информации и процессов выдачи результатов расчетов конечному пользователю.

В проекте предполагается устранить все вышеуказанные недостатки.

Ввиду того, что «1C: Предприятие 8» является универсальной системой для автоматизации ведения учета, она может поддерживать различные системы учета, различные методологии учета, использоваться на предприятиях различных типов деятельности, предназначена для решения широкого спектра задач автоматизации учета и управления, стоящих перед динамично развивающимся предприятиями поэтому нами и была выбрана данная система.

«1С: Предприятие» является гибкой настраиваемой системой, с помощью которой можно решать широкий круг задач в сфере автоматизации деятельности предприятий. Специфические алгоритмы конфигурации описываются в системе «1С:Предприятие» при помощи программной компоненты Конфигуратор в программных модулях, содержащих тексты на встроенном языке системы.

Встроенный язык системы «1С: Предприятие» предназначен для описания (на стадии разработки конфигурации) алгоритмов. Результатом конфигурирования является Конфигурация, которая представляет собой модель предметной области.

Конфигурацией в системе «1С: Предприятие» называется совокупность трех взаимосвязанных составных частей:

- структуры метаданных,

- набора пользовательских интерфейсов,

- набора прав.

Метаданными в системе «1С: Предприятие» называется совокупность объектов метаданных, настроенных на хранение и обработку информации о хозяйственной деятельность конкретного предприятия.

Под объектами метаданных понимается формальное описание группы понятий предметной области со сходными характеристиками и одинаковым предназначением.

В системе «1С: Предприятие» реализована Файловая СУБД - одна из систем управления базами данных, которую поддерживает платформа. Файловая СУБД разработана фирмой "1С" и является частью платформы.

Файловая СУБД хранит все данные в одном файле - файловой базе данных. Этот формат хранения данных разработан фирмой "1С" специально для прикладных решений 1С:Предприятия 8.

Файловая СУБД является частью платформы, поэтому при работе системы в файловом варианте толстый и тонкий клиенты самостоятельно осуществляют всю работу с данными.

В случае веб-клиента подключение к файловой базе данных выполняется через веб-сервер, и непосредственную работу с данными выполняет не клиентское приложение, а модуль расширения веб-сервера, который также содержит в себе файловую СУБД.

Взаимодействие элементов системы с файловой базой данных осуществляется по собственному протоколу обмена данными, разработанному фирмой "1С".

2. Проектная часть

2.1. Характеристика разработанных справочников в среде 1С:Предприятие

В Таблице 1 представлен перечень и описание нормативно-справочной информации, которая обрабатывается в информационной системе.

Таблица 1. Перечень нормативно-справочной информации

Название справочника

Ответственный за ведение

Средний объем справочника в записях

Средняя частота актуализации

Средний объем актуализации в записях

Единицы измерения

Отдел закупок

Отдел продаж

10

2 раза в год

5

Подразделения

Администратор

10

2 раза в год

5

Номенклатура

Администратор

Отдел закупок

Отдел продаж

100

1 раз в месяц

50

Серия номенклатуры

Администратор

Отдел закупок

100

1 раз в месяц

50

Склады

Администратор

20

1 раз в год

20

Контрагенты

Отдел закупок

Отдел продаж

100

1 раз в месяц

100

Контактные лица

Отдел закупок

Отдел продаж

100

1 раз в месяц

50

Должности

Администратор

10

1 раз в год

10

Валюты

Отдел закупок

Отдел продаж

Администратор

10

1 раз в день

10

Ставка НДС

Администратор

2

1 раз в год

2

Наценка

Отдел закупок

Отдел продаж

Администратор

3

1 раз в месяц

3

Договоры контрагентов

Отдел закупок

Отдел продаж

100

1 раз в год

100

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

В таблице 2 представлено описание структура записей справочника «Номенклатура»

Таблица 2. Описание структуры справочника «Номенклатура»

Наименование поля

Тип поля

Длина поля

Прочее

Код

Строка

9

Наименование

Строка

100

Основная единица измерения

СправочникСсылка.

ЕдиницыИзмерения

25

Цена Покупки

Число

15

Цена Продажи

Число

15

Виды Номенклатуры

ПеречислениеСсылка.ВидыНоменклатуры

30

В таблице 3 представлено описание структура записей справочника «Контрагенты»

Таблица 3. Описание структуры справочника «Контрагент»

Наименование поля

Тип поля

Длина поля

Прочее

Код

Строка

9

Наименование

Строка

25

ИНН

Число

12

Наименование Полное

Строка

300

Адрес

Строка

Неогр.

Телефон

Строка

35

Контактное Лицо

СправочникСсылка.КонтактныеЛица

В таблице 4 представлено описание структура записей справочника «Контактные лица»

Таблица 4. Описание структуры справочника «Контактные лица»

Наименование поля

Тип поля

Длина поля

Прочее

Код

Строка

9

Наименование

Строка

25

ФИО

Телефон

Строка

15

В таблице 5 представлено описание структура записей справочника «Ставка НДС»

Таблица 5. Описание структуры справочника «Ставка НДС»

Наименование поля

Тип поля

Длина поля

Прочее

Код

Строка

3

Наименование

Строка

5

Ставка

Число

2

В таблице 6 представлено описание структура записей справочника «Наценка»

Таблица 5. Описание структуры справочника «Наценка»

Наименование поля

Тип поля

Длина поля

Прочее

Код

Строка

5

Наименование

Строка

4

Ставка

Число

2

2.2. Характеристика разработанных экранных форм документов в среде 1С:Предприятие

Входным документом в нашем проекте будет документ «Поступление товара».

На рисунке 1 показана форма (макет) документа в конфигураторе среды 1С:Предприятие.

Рисунок 1. Форма (макет) документа «Поступление товара»

Документ «Поступление товара» включает в себя следующие реквизиты: Номер, Дата, Контрагент, Договор, Контактное Лицо, Склад, Сотрудник.

Периодичность нумерации документа установлена в течении года, следовательно с нового года будет новая нумерация.

На рисунке 2 представлена форма документа «Поступление товара» на этапе ввода в систему 1С:Предприятие.

Рисунок 2. Форма документа «Поступление товара» экранная форма

Реквизиты Контрагент, Договор, Контактное Лицо, Склад, Сотрудник имеют возможность выбора значении из соответствующих справочников.

Значения реквизитов табличной формы: Номенклатура, Количество, Цена, Сумма, Ставка НДС, Сумма НДС, Всего, Наценка, Цена продажи за единицу товара.

Значение реквизита табличной формы Номенклатура ссылается на справочник «Номенклатура».

На рисунке 3 представлена форма (макет) документа «Продажа товаров, Товары».

Рисунок 3. Форма (макет) документа «Продажа товаров, Товары»

Документ «Продажа товаров» включает в себя следующие реквизиты: Номер, Дата, Контрагент, Контактное Лицо, Склад, Сотрудник, Комментарий.

Так же видно, что данный документ имеет вторую страницу, которая называется «Услуги» рассмотрим и ее форму (макет) на рисунке 4.

Рисунок 4. Форма (макет) документа «Продажа товаров, Услуги»

Шапка вкладки Услуги аналогична шапке вкладки Товары.

Рассмотрим вид данного документа в на этапе ввода в систему1С:Предприятие.

На рисунке 5 представлена форма документа «Продажа Товаров, вкладка Товары» на этапе ввода в систему 1С:Предприятие.

Рисунок 5. Форма документа «Продажа товаров, Товары» экранная форма

Реквизиты Контрагент, Контактное Лицо, Склад, Сотрудник имеют возможность выбора значении из соответствующих справочников.

Значения реквизитов табличной формы: Номенклатура, Количество, Цена, Сумма.

Значения реквизитов табличной формы Номенклатура, Цена ссылаются на справочник «Номенклатура».

2.3 Описание документов, необходимых для получения исходной информации (разработка документов и регистров)

Рассмотрим более подробно описание документов необходимых для получения исходной информации, а так же регистры.

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

Значение поле «Цена» подставляется из справочника «Номенклатура» при помощи процедуры:

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

ТекущиеДанные = Элементы.Товары.ТекущиеДанные;

ТекущиеДанные.Цена =ПолучитьЦенуПокупкиНоменклатуры (ТекущиеДанные.Номенклатура);

РассчитатьСуммуТабличнойЧастиТовары();

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

&НаСервереБезКонтекста

Функция ПолучитьЦенуПокупкиНоменклатуры(Номенклатура)

Возврат Номенклатура.ЦенаПродажи;

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

При изменении количества изменяется сумма на это число, для этого в модуле документа прописана процедура:

&НаКлиенте

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

РассчитатьСуммуТабличнойЧастиТовары();

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

Ставка НДС запрашивается из соответствующего справочника «Ставки НДС»

Сумма за товар и сумма НДС рассчитываются автоматически так же благодаря процедуре:

&НаКлиенте

Процедура РассчитатьСуммуТабличнойЧастиТовары()

ТекущиеДанные = Элементы.Товары.ТекущиеДанные;

ТекущиеДанные.Сумма = ТекущиеДанные.Цена * ТекущиеДанные.Количество;

ТекущиеДанные.СуммаНДС=ТекущиеДанные.Сумма*ПолучитьСтавкуНДСЧислом(ТекущиеДанные.СтавкаНДС) / 100;

ТекущиеДанные.Всего= ТекущиеДанные.Сумма + ТекущиеДанные.СуммаНДС;

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

При этом необходимо Ставку НДС из процентного выражения представить числом для этого подходит только процедура &НаСервереБезКонтекста

Функция ПолучитьСтавкуНДСЧислом(СтавкаНДС)

Возврат СтавкаНДС.Ставка;

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

Для нас очень важно сразу получить наценку на товар для расчета Цены продажи. Как известно на сегодняшний день наценка за частую составляет от 20% до 30% от цены покупки. Для расчета наценки нами применяется процедура &НаСервереБезКонтекста

Функция ПолучитьЦенуПокупкиНоменклатуры(Номенклатура)

Возврат Номенклатура.ЦенаПродажи;

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

В дальнейшем наша Наценка отобразится в расчете Цены продажи за единицу товара в процедуре:

&НаКлиенте Процедура РассчитатьЦенаПродажиТабличнойЧастиТовары()

ТекущиеДанные = Элементы.Товары.ТекущиеДанные;

ТекущиеДанные.ЦенаПродажи= ТекущиеДанные.Цена*ПолучитьСтавкуНДСЧислом(ТекущиеДанные.СтавкаНДС)/100+ТекущиеДанные.Цена+ТекущиеДанные.Цена*ПолучитьНаценкуЧислом(ТекущиеДанные.Наценка)/100;

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

Так же при оформлении документа «Поступление товара» для простоты сотрудника при вводе данных имеется привязка Контактного лица к Контрагенту при помощи процедуры:

&НаКлиенте

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

Объект.Контрагент=ПолучитьКонтрагентаПоКонтактномуЛицу(Объект.КонтактноеЛицо);

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

&НаСервереБезКонтекста

Функция ПолучитьКонтрагентаПоКонтактномуЛицу(КонтактноеЛицо)

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| КонтактныеЛица.Владелец КАК Владелец

|ИЗ

| Справочник.КонтактныеЛица КАК КонтактныеЛица

|ГДЕ

| КонтактныеЛица.Ссылка = &Ссылка";

Запрос.УстановитьПараметр("Ссылка", КонтактноеЛицо);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Если ВыборкаДетальныеЗаписи.Следующий() Тогда

Возврат ВыборкаДетальныеЗаписи.Владелец;

КонецЕсли;

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

Для документа «Поступление товара» реализована команда вывод на печать при

На рисунке 6 представлена печатная форма документа «Поступление товара» в табличном виде.

Рисунок 6. Печатная форма документа «Поступление товара»

На основе данного документа созданы так же регистры накоплении «Закупки», «Остатки номенклатуры», «Остатки». Рассмотрим каждый из них.

Регистр «Закупки» - вид регистра «Обороты». Использует следующие данные: измерения - номенклатура, контрагент; ресурсы – количество, сумма. На рисунке 7 представлен вид регистра в среде 1С.

Рисунок 7. Регистр «Закупки»

Регистр «Остатки Номенклатуры» - вид регистра «Остатки».

Использует следующие данные: измерения - номенклатура, склад, серия номенклатуры; ресурсы – количество. На рисунке 8 представлен вид регистра в среде 1С.

Рисунок 8. Регистр «Остатки Номенклатуры»

Регистр «Остаток» - вид регистра «Остатки».

Использует следующие данные: измерения - номенклатура, склад; ресурсы – количество. На рисунке 9 представлен вид регистра в среде 1С.

Рисунок 9. Регистр «Остатки»

Помимо регистров накоплении по документу «Поступление товара» создан регистр сведений «Цены поставщиков». Со следующими данными: измерения – контрагент, номенклатура; ресурсы – цена.

Все операции по регистрам прописаны в модуле объекта документа «Поступление товара»:

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

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

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

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

// регистр ЦеныПоставщиков

Движения.ЦеныПоставщиков.Записывать = Истина;

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

Движение = Движения.ЦеныПоставщиков.Добавить();

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

Движение.Контрагент = Контрагент;

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

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

КонецЦикла;

// регистр ОстаткиНоменклатуры Приход

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

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

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

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

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

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

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

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

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

КонецЦикла;

// регистр Закупки

Движения.Закупки.Записывать = Истина;

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

Движение = Движения.Закупки.Добавить();

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

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

Движение.Контрагент = Контрагент;

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

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

КонецЦикла;

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

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

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

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

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

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

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

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

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

КонецЦикла;

// регистр Продажа1 Расход

Движения.Продажа1.Записывать = Истина;

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

Движение = Движения.Продажа1.Добавить();

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

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

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

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

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

КонецЦикла;

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

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

Процедура печати документа «Поступление товара» и печатную форму документа рассмотрим в приложении 1.

Далее нам необходимо рассмотреть документ «Продажа товаров».

Реквизит табличной формы Цена берется из справочника «Номенклатура» при помощи процедуры:

&НаКлиенте

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

ТекущиеДанные = Элементы.Товары.ТекущиеДанные;

ТекущиеДанные.Цена=ПолучитьЦенуПродажиНоменклатуры(ТекущиеДанные.Номенклатура);

РассчитатьСуммуТабличнойЧастиТовары();

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

&НаСервереБезКонтекста

Функция ПолучитьЦенуПродажиНоменклатуры(Номенклатура)

Возврат Номенклатура.ЦенаПродажи;

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

Сумма в данном документе также рассчитывается автоматически при помощи процедуры:

&НаКлиенте

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

РассчитатьСуммуТабличнойЧастиТовары();

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

&НаКлиенте

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

РассчитатьСуммуТабличнойЧастиТовары();

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

&НаКлиенте

Процедура РассчитатьСуммуТабличнойЧастиТовары()

ТекущиеДанные = Элементы.Товары.ТекущиеДанные;

ТекущиеДанные.Сумма = ТекущиеДанные.Цена * ТекущиеДанные.Количество;

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

Как и в документе «Поступление товара» в документе «Продажа товаров» реализован метод выбора контрагента по контактному лицу при помощи процедуры:

&НаКлиенте

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

Объект.Контрагент = ПолучитьКонтрагентаПоКонтактномуЛицу(Объект.КонтактноеЛицо);

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

&НаСервереБезКонтекста

Функция ПолучитьКонтрагентаПоКонтактномуЛицу(КонтактноеЛицо)

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| КонтактныеЛица.Владелец КАК Владелец

|ИЗ

| Справочник.КонтактныеЛица КАК КонтактныеЛица

|ГДЕ

| КонтактныеЛица.Ссылка = &Ссылка";

Запрос.УстановитьПараметр("Ссылка", КонтактноеЛицо);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Если ВыборкаДетальныеЗаписи.Следующий() Тогда

Возврат ВыборкаДетальныеЗаписи.Владелец;

КонецЕсли;

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

Документ «Продажа товаров» используется для создания следующих регистров: «Продажи», «Продажи 1».

Регистр «Продажи» использует следующие данные: измерения - номенклатура, контрагент; ресурсы – количество, сумма. На рисунке 10 представлен вид регистра в среде 1С.

Рисунок 10. Регистр «Продажи»

Регистр «Продажи 1» использует следующие данные: измерения - номенклатура, склад; ресурсы – количество. На рисунке 11 представлен вид регистра в среде 1С.

Рисунок 11. Регистр «Продажи 1»

Все операции по регистрам прописаны в модуле объекта документа «Продажа товаров»:

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)

СуммаДокумента = Товары.Итог("Сумма") + Услуги.Итог("Сумма");

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

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

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

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

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

// регистр ОстаткиНоменклатуры Расход

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

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

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

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

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

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

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

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

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

КонецЦикла;

// регистр Продажи

Движения.Продажи.Записывать = Истина;

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

Движение = Движения.Продажи.Добавить();

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

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

Движение.Контрагент = Контрагент;

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

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

КонецЦикла;

// регистр Продажа1 Расход

Движения.Продажа1.Записывать = Истина;

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

Движение = Движения.Продажа1.Добавить();

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

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

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

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

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

КонецЦикла;

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

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

Процедура печати документа «Поступление товара» и печатную форму документа рассмотрим в приложении 2.

    1. Описание разработанных форм отчетов, необходимых для отражения результатов решения задач.

Для отражения результатов решения задач разработаны следующие отчеты: «Закупки», «Продажи», «Остатки».

Рассмотрим каждый из них.

Отчет Закупки. Оформлен на при помощи конструктора запроса. На рисунке 12 изображен данный конструктор.

Рисунок 12. Конструктор запроса отчета Закупки

На рисунке 13 представлен вид отчета Закупки среде 1С: Предприятие.

Рисунок 13. Отчет «Закупки»

Из отчета видно, что выстраивается табличная форма по номенклатуре товара, поставщикам и итогу поступления товара, и итоговой сумме.

Рассмотри отчет «Продажи».

На рисунке 14 представлен Конструктор запроса для отчета «Продажи».

Рисунок 14. Конструктор запроса отчета Продажи

На рисунке 15 представлен вид отчета Продажи среде 1С: Предприятия.

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

Рисунок 15. Отчет продажи

Отчет «Остатки» сформирован так же при помощи конструктора запроса. Вид конструктора запроса отчета «Остатки» представлен на Рисунке 16.

Рисунок 16. Конструктор запроса отчета «Остатки»

На рисунке 17 представлен вид отчета Остатки среде 1С: Предприятия.

Рисунок 17. Отчет Остатки

Как видно из отчета он служит для формирования остатка товара на складах. Он показывает количество поступившего товара, количество проданного товара и количество конечный остаток. Он может быть сформировать за определенный период.

Помимо отчетов в нашем проекте созданы обработки. Формы обработок и их модули представлены в приложении 3 данного проекта.

В проекте созданы Журнал документов «Складские». Форма котрого изображена на рисунке 18.

Рисунок 18. Журнал «Складские»

2.4 Описание разработанных подсистем в среде 1С:Предприятие.

В конфигураторе разработаны следующие подсистемы: Закупки, Продажи, Прочее, Бизнес Процесс. Каждая из которых так же из подсистем. На рисунке 19 представлено конфигурирование подсистем. В таблице 6 представлены функции модулей.

Рисунок 19 Конфигурирование подсистем

Таблица 6 Функции модулей

№ п/п

Наименование подсистемы

Функции подсистемы

1.

Закупки

Содержит подсистемы.

1.1

Справочники

Содержит предопределенные процедуры формы справочников.

1.2

Документы

Содержит предопределенные процедуры формы документов.

1.3.

Регистры

Содержит предопределенные процедуры регистров.

1.4

Отчеты

Содержит предопределенные формы отчетов

2.

Продажи

Содержит подсистемы.

2.1

Справочники

Содержит предопределенные процедуры формы справочников.

2.2

Документы

Содержит предопределенные процедуры формы документов.

2.3.

Регистры

Содержит предопределенные процедуры регистров.

2.4

Отчеты

Содержит предопределенные формы отчетов

3.

Прочие

Содержит подсистемы.

3.1

Справочники

Содержит предопределенные процедуры формы справочников.

3.2

Документы

Содержит предопределенные процедуры формы документов.

3.3.

Регистры

Содержит предопределенные процедуры регистров.

3.4

Отчеты

Содержит предопределенные формы отчетов

3.5

Обработки

Содержит предопределенные формы обработок

3.6

Общие формы

Содержит предопределенные общие формы

3.7

Константы

Содержит предопределённые константы

3.8

Критерии отбора

Содержит предопределённые критерии отбора

3.8

Планы видов характеристик

Содержит предопределенные виды характеристик

3.9

Журналы документов

Содержит предопределенные журналы документов

4.

Бизнес Процесс

Содержит глобальные процедуры и функции, предопределенные процедуры и функции.

2.6 Контрольный пример реализации проекта в среде 1С: Предприятие и его описание

Контрольный пример реализации проекта в среде 1С: Предприятие начинается со входа в систему для отображения окна существования ролей, что показано на рисунке 20.

Рисунок 20 Вход в систему

Далее следует отображение начальной страницы на рисунке 21.

Рисунок 21 Начальная страница

Заполняем форму констант. Показана на рисунке 22.

Рисунок 22 Форма констант

Далее заходим в справочник Номенклатура добавляем 8 товаров. Занесенная форма представлена на рисунке 23.

Рисунок 22 Номенклатура

Создаем 3 контрагентов и 3 контактных лиц для них, и 3 договора. Все отображаем на рисунке 23 и рисунке 24, рисунке 25.

Рисунок 23 Контрагенты

Рисунок 24 Договора контрагентов

Рисунок 25 Контактные лица контрагентов

Теперь создадим 4 документа на поступление товаров и четыре документа на продажу товара и покажем это на рисунке 26 и рисунке 27.

Рисунок 26 Поступление товаров

Рисунок 27 Продажа товара

Проверим формирование отчетов. Отчет Остатки на рисунок 28, отчет Закупки на рисунок 29, отчет продажи на рисунок 30.

Рисунок 28 Отчет Остатки

Рисунок 29 Отчет Закупки

Рисунок 30 Отчет Продажи

ЗАКЛЮЧЕНИЕ

Система 1С: Предприятие - универсальная система, вместе с конфигурацией представляет готовое к использованию программное обеспечение для автоматизации деятельности предприятия.

Своей курсовой работой мы выполнили основную цель, а именно показать актуальность использования среды «1С: Предприятие» на примере конфигурации «Складской учёт». Показали своевременность и актуальность рассматриваемой, показали, что без автоматизированного учета работники склада большую часть времени занимает оформление документов и составление отчетов.

Итак, цель курсовой работы – это разработка конфигурации «Складской учёт» в среде «1С: Предприятие 8.3» выполнена.

Помимо цели курсовой работы мы ставили еще и задачи, которые необходимо решить по мере выполнения курсовой работы.

На наш взгляд выполнены следующие задачи, которые необходимо было решить для достижения поставленной цели:

- автоматизировали процедуру учета товара;

- документальное оформление движение товаров на складе;

- разработали формы документов для приема товара на склады и отпуска товара контрагентам, а также сформировали печатные формы данных документов.

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

  1. Радченко М.Г., Хрусталева Е.Ю. 1С:Предприятие 8.2. Практическое пособие разработчика. Примеры и типовые приемы - М.: ООО «1С-Паблишинг», 2013-964 с.
  2. Ажеронок В.А., Островерх А.В., Радченко М.Г., Хрусталева Е.Ю. Разработка управляемого интерфейса - М.: ООО «1С-Паблишинг»,2012 –728 с.
  3. Кашаев С.М. Программирование в 1С:Предприятие 8.3 - СПб.: Питер, 2014. - 304 с.
  4. Отенко И.А, Азбука программирования в 1С Предприятие 8.3 / И.А. Отенко, Г.И Добин - СанктПетербург: BHV, 2015-288с .
  5. Ситосенко Е. Управление заказами в системе программ 1С: Предприятие 8.0 / Е.Ситосенко. –М.: 1С-Паблишинг, 2013. -219с.
  6. Фирма 1С [Электронный ресурс]/ Режим доступа : http://www.1c.ru/ свободный -Загл. с экрана (дата обращения: 28.02.2019).

ПРИЛОЖЕНИЯ

Приложение 1 Печатные формы документов

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

Рисунок 2 Печатная форма документа «Поступление товара»

Запись в модуле менеджера в документе «Поступление товара»

Процедура Печать(ТабДок, Ссылка) Экспорт

//{{_КОНСТРУКТОР_ПЕЧАТИ(Печать)

Макет = Документы.ПоступлениеТовара.ПолучитьМакет("Печать");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

|ПоступлениеТовара.Дата,

|ПоступлениеТовара.Договор,

|ПоступлениеТовара.Коментарий,

|ПоступлениеТовара.КонтактноеЛицо,

|ПоступлениеТовара.Контрагент,

|ПоступлениеТовара.Номер,

|ПоступлениеТовара.Склад,

|ПоступлениеТовара.Сотрудник,

|ПоступлениеТовара.СуммаДокумента,

|ПоступлениеТовара.Товары.(

|НомерСтроки,

|Номенклатура,

|СерияНоменклатуры,

|Цена,

|Количество,

|Сумма,

|СтавкаНДС,

|СуммаНДС,

|Всего,

|Наценка,

|ЦенаПродажи

|)

|ИЗ

|Документ.ПоступлениеТовара КАК ПоступлениеТовара

|ГДЕ

|ПоступлениеТовара.Ссылка В (&Ссылка)";

Запрос.Параметры.Вставить("Ссылка", Ссылка);

Выборка = Запрос.Выполнить().Выбрать();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

Шапка = Макет.ПолучитьОбласть("Шапка");

ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка");

ОбластьТовары = Макет.ПолучитьОбласть("Товары");

ТабДок.Очистить();

ВставлятьРазделительСтраниц = Ложь;

Пока Выборка.Следующий() Цикл Если ВставлятьРазделительСтраниц Тогда

ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);

ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьТоварыШапка);

ВыборкаТовары = Выборка.Товары.Выбрать();

Пока ВыборкаТовары.Следующий() Цикл ОбластьТовары.Параметры.Заполнить(ВыборкаТовары);

ТабДок.Вывести(ОбластьТовары, ВыборкаТовары.Уровень()); КонецЦикла;

ВставлятьРазделительСтраниц = Истина;КонецЦикла;//}}

// вывод области "Сумма"

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

Рисунок 3 Макет печати документа «Продажа товаров»

Рисунок 4 Печатная форма документа «Продажа товаров»

Запись в модуле менеджера в документе «Поступление товара»

Процедура Печать(ТабДок, Ссылка) Экспорт

//{{_КОНСТРУКТОР_ПЕЧАТИ(Печать)

Макет = Документы.ПродажаТоваров.ПолучитьМакет("Печать");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

|ПродажаТоваров.Дата,

|ПродажаТоваров.Коментарий,

|ПродажаТоваров.КонтактноеЛицо,

|ПродажаТоваров.Контрагент,

|ПродажаТоваров.Номер,

|ПродажаТоваров.Склад,

|ПродажаТоваров.Сотрудник,

|ПродажаТоваров.СуммаДокумента,

|ПродажаТоваров.Товары.(

|НомерСтроки,

|Номенклатура,

|СерияНоменклатуры,

|Цена,

|Количество,

|Сумма

|)

|ИЗ

|Документ.ПродажаТоваров КАК ПродажаТоваров

|ГДЕ

|ПродажаТоваров.Ссылка В (&Ссылка)"; Запрос.Параметры.Вставить("Ссылка", Ссылка); Выборка = Запрос.Выполнить().Выбрать(); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); Шапка = Макет.ПолучитьОбласть("Шапка"); ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка"); ОбластьТовары = Макет.ПолучитьОбласть("Товары"); ТабДок.Очистить(); ВставлятьРазделительСтраниц = Ложь; Пока Выборка.Следующий() Цикл

Если ВставлятьРазделительСтраниц Тогда ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка); ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьТоварыШапка); ВыборкаТовары = Выборка.Товары.Выбрать(); Пока ВыборкаТовары.Следующий() Цикл

ОбластьТовары.Параметры.Заполнить(ВыборкаТовары); ТабДок.Вывести(ОбластьТовары, ВыборкаТовары.Уровень());

КонецЦикла;

ВставлятьРазделительСтраниц = Истина; КонецЦикла;//}}

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

Приложение 2 Обработчик Заполнения Вида номенклатуры

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

&НаКлиенте

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

Количество = ЗаполнитьНаСервере(ГруппаНоменклатуры, ВидНоменклатуры);

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

&НаСервереБезКонтекста

Функция ЗаполнитьНаСервере(ГруппаНоменклатуры, ВидНоменклатуры)

Выборка=Справочники.Номенклатура.ВыбратьИерархически(ГруппаНоменклатуры); Количество = 0;

Пока Выборка.Следующий() Цикл Если Выборка.ЭтоГруппа Тогда

Продолжить; КонецЕсли;

// СправочникОбъект.Номенклатура

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

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

СправочникОбъект.Записать(); Количество = Количество + 1;

КонецЦикла; Возврат Количество;

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

Обработчик Запросы.

Рисунок 6 Форма обработчика Запросы

&НаКлиенте

Процедура ВыполнитьЗапрос(Команда)

ВыполнитьЗапросНаСервере(Склад);

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

&НаСервереБезКонтекста

Процедура ВыполнитьЗапросНаСервере(Склад)

Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ

|ПоступлениеТовара.Ссылка КАК Ссылка,

|ПоступлениеТовара.Склад КАК Склад

|ИЗ

|Документ.ПоступлениеТовара КАК ПоступлениеТовара

|ГДЕ

|ПоступлениеТовара.Склад = &Склад

|И ПоступлениеТовара.Проведен";

Запрос.УстановитьПараметр("Склад", Склад);

РезультатЗапроса = Запрос.Выполнить();

// 1. Создание выборки.

Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл

// Вставить обработку выборки ВыборкаЗаписи

КонецЦикла;

// 2. Выгрузка в таблицу значений.

Таблица = РезультатЗапроса.Выгрузить();

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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

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

Рисунок 7 Форма обработчика Изменения документов поступления

&НаКлиенте

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

ИзменитьНаСервере();

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

&НаСервереБезКонтекста

Процедура ИзменитьНаСервере()

Выборка = Документы.ПоступлениеТовара.Выбрать();

Пока Выборка.Следующий() Цикл

ДокументОбъект = Выборка.ПолучитьОбъект();ДокументОбъект.Коментарий = "Изменено обработкой"; ДокументОбъект.Записать();

КонецЦикла;

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

&НаКлиенте

Процедура ИзменитьПоНоменклатуре(Команда)

ИзменитьПоНоменклатуреНаСервере(Номенклатура);

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

&НаСервереБезКонтекста

Процедура ИзменитьПоНоменклатуреНаСервере(Номенклатура)

//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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

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

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ РАЗЛИЧНЫЕ

|ПоступлениеТовараТовары.Ссылка КАК Ссылка

|ИЗ

|Документ.ПоступлениеТовара.Товары КАК ПоступлениеТовараТовары

|ГДЕ

|ПоступлениеТовараТовары.Номенклатура = &Номенклатура";

Запрос.УстановитьПараметр("Номенклатура", Номенклатура);

РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

Пока Выборка.Следующий() Цикл ДокументОбъект = Выборка.Ссылка.ПолучитьОбъект();

ДокументОбъект.Коментарий = "Измененно обработкой с отбором по номенклатуре";

ДокументОбъект.Записать(); КонецЦикла;

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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

Обработчик Курсы Валют

Рисунок 8 Форма обработчика Курсы Валют

&НаКлиенте

Процедура ПолучитьКурс(Команда)

ПолучитьКурсНаСервере();

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

&НаСервере

Процедура ПолучитьКурсНаСервере()

Отбор = Новый Структура;

Отбор.Вставить("Валюта", Валюта);

Данные = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Период, Отбор);

Курс = Данные.Курс;

Кратность = Данные.Кратность;

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

&НаКлиенте

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

ЗаписатьКурсНаСервере();

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

&НаСервере

Процедура ЗаписатьКурсНаСервере()

НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();

Запись = НаборЗаписей.Добавить();

Запись.Период = Период;

Запись.Валюта = Валюта;

Запись.Курс = Курс;

Запись.Кратность = Кратность;

НаборЗаписей.Записать(Ложь);

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

&НаКлиенте

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

ПолучитьКурсЗапросомНаСервере();

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

&НаСервере

Процедура ПолучитьКурсЗапросомНаСервере()

//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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

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

Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ

|КурсыВалютСрезПоследних.Курс КАК Курс,

|КурсыВалютСрезПоследних.Кратность КАК Кратность

|ИЗ

|РегистрСведений.КурсыВалют.СрезПоследних(&Период, Валюта = &Валюта) КАК КурсыВалютСрезПоследних";

Запрос.УстановитьПараметр("Валюта", Валюта);

Запрос.УстановитьПараметр("Период", Период);

РезультатЗапроса = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

Если ВыборкаДетальныеЗаписи.Следующий() Тогда

Курс = ВыборкаДетальныеЗаписи.Курс;

Кратность = ВыборкаДетальныеЗаписи.Кратность;

Иначе курс = 0; кратность = 0;

КонецЕсли;

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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