Файл: Разработка конфигурации «Складской учет» в среде 1С:Предприятие 8.3 (Организационная структура предприятия).pdf
Добавлен: 23.04.2023
Просмотров: 414
Скачиваний: 4
СОДЕРЖАНИЕ
1 АНАЛИЗ СУЩЕСТВУЮЩЕГО СОСТОЯНИЯ ПРЕДМЕТНОЙ ОБЛАСТИ
1.1 Организационная структура предприятия
1.2 Особенности организации складского учета
1.3 Обоснование необходимости использования вычислительной техники для решения задачи
2 РАЗРАБОТКА КОНФИГУРАЦИИ СКЛАДСКОГО УЧЁТА НА БАЗЕ СИСТЕМЫ ПРОГРАММ 1С:ПPЕДПPИЯТИE
2.1 Проектирование структуры приложения
2.3 Разработка управляемого приложения
2.4 Реализация бизнес-процесса «Продажа товара»
2.5 Анализ данных в системе 1С 8.3
Приходная накладная является основным документом, на основании которого производится приходование товаров в системе. Структура документа представлена в таблице 2.17.
Таблица а2.17 а– Документ «ПриходнаяНакладная»
|
Шапка |
||
|
Реквизит |
Тип |
Описание |
|
Дата |
Дата |
Дата поставки товара |
|
Поставщик |
Справочник. Поставщики |
Содержит ссылку на список поставщиков |
|
Склад |
СправочникСсылка.Склад (Места хранения) |
Список мест хранения товаров организации |
|
Сотрудник |
Справочник. Сотрудники |
Содержит ссылку на список сотрудников |
|
Табличная часть |
||
|
Наименование |
СправочникСсылка. Товары |
Содержит наименование товара |
|
Количество |
Число, 15, 0 |
Содержит количество поставленного товара |
|
Цена |
Число, 15, 2 |
Отражает цену на товар |
|
Сумма |
Число, 15, 2 |
Отражает общую сумму |
Расходная накладная – это документ, имеющий юридическую силу, на основании которого производится отпуск любых материальных ценностей в качестве товаров, применяется для учета расхода материальных ценностей. Структура документа представлена в таблице 2.18.
Как и в других документах в документе «РасходнаяНакладная» поле Наименование имеет кнопку выбора для выбора товара из справочника, поле Количество имеет кнопку выбора для вызова калькулятора. Значение поля Цена подставляется из справочника. Сумма в строке рассчитывается автоматически. Под табличной частью выводится итоговая сумма по всем строкам.
Таблица а2.18 а– Документ а«РасходнаяНакладная»
|
Шапка |
||
|
Реквизит |
Тип |
Описание |
|
МОЛ1 |
СправочникСсылка. Сотрудники |
Информация о материальноответственном лице |
|
Склад |
СправочникСсылка.Склад (Места хранения) |
Список мест хранения товаров организации |
|
МОЛ2 |
СправочникСсылка. Сотрудники |
Информация о материально ответственном лице |
|
Табличная часть |
||
|
Наименование |
СправочникСсылка. Товары |
Содержит наименование товара |
|
Количество |
Число, 15, 0 |
Содержит количество поставленного товара |
|
Цена |
Число, 15, 2 |
Отражает цену на товар |
|
Сумма |
Число, 15, 2 |
Отражает общую сумму |
Документ «ПрайсЛист» содержит систематизированный перечень материалов, изделий, оборудования, производственных операций, услуг с указанием цена. Структура документа представлена в таблице 2.19.
Таблица а2.19 а– Документ а«ПрайсЛист»
|
Шапка |
||
|
Реквизит |
Тип |
Описание |
|
НаименованиеПоставщика |
СправочникСсылка. Поставщики |
Информация о контрагенте |
|
Табличная часть |
||
|
НаименованиеТовара |
СправочникСсылка. Товары |
Содержит наименование товара |
|
Количество |
Число, 15, 0 |
Содержит количество поставленного товара |
|
Цена |
Число, 10, 3, неотрицательное |
Отражает цену на товар |
Одним из важных функциональных механизмов системы является механизм проведения документов. Он предлагает разработчику стандартную модель организации связи между информацией о событиях, происходящих на предприятии, и различными учетными механизмами (рис. 2.14). Любая вводимая пользователем в виде документов информация может отражаться в любых учетных механизмах (планировании, управленческом учете, бухгалтерском учете и т.д.).
Все необходимые действия по проведению и отмене проведения система будет выполнять автоматически.
Значение поля Цена подставляется из справочника, и в модуле документа прописываем процедуру:
Процедура ТоварыНаименованиеПриИзменении (Элемент)
Строка=ЭлементыФормы. Товары. ТекущиеДанные;
Строка. Цена=Строка. Наименование. ЦенаПокупки;
КонецПроцедуры.
При изменении количества изменяется сумма на это число, прописываем эту процедуру в модуле документа:
Процедура ТоварыКолВоПриИзменении (Элемент)
Строка=ЭлементыФормы. Товары. ТекущиеДанные;
Строка. Сумма=Строка. КолВо*Строка. Цена;
СуммаДок=Товары. Итог ("Сумма");
КонецПроцедуры.
Формируется печатная форма документа в виде приходной накладной:
Формируем печатную форму документа в виде расходной накладной. В печатных формах всех документов рассчитывается и указывается сумма НДС, общее количество наименований товара и сумма прописью. Документы должны иметь возможность записи без проведения и с проведением.
Текст процедур прописываем в модуле документа:
Процедура ТоварыНаименованиеПриИзменении (Элемент)
Строка=ЭлементыФормы. Товары. ТекущиеДанные;
Строка. Цена=Строка. Наименование. ЦенаПокупки;
КонецПроцедуры.
Процедура ТоварыКолВоПриИзменении (Элемент)
Строка=ЭлементыФормы. Товары. ТекущиеДанные;
Строка. Сумма=Строка. КолВо*Строка. Цена;
СуммаДок=Товары. Итог ("Сумма");
КонецПроцедуры
Процедура ПриОткрытии ()
Фирма=Константы. НаименованиеФирмы. Получить ();
КонецПроцедуры
Процедура Печать (Элемент)
ТабДок = Новый ТабличныйДокумент;
Макет = Документы. ПродажаТовара. ПолучитьМакет ("Печать");
// Заголовок
Область = Макет. ПолучитьОбласть ("Заголовок");
Область. Параметры. Заполнить (ЭтотОбъект);
ТабДок. Вывести (Область);
// Шапка
Шапка = Макет. ПолучитьОбласть ("Шапка");
Шапка. Параметры. Заполнить (ЭтотОбъект);
ТабДок. Вывести (Шапка);
// Товары
Область = Макет. ПолучитьОбласть ("ТоварыШапка");
ТабДок. Вывести (Область);
КолВо = 0;
ОбластьТовары = Макет. ПолучитьОбласть ("Товары");
Для Каждого ТекСтрокаТовары Из Товары Цикл
ОбластьТовары. Параметры. Заполнить (ТекСтрокаТовары);
КолВо = КолВо + 1;
ТабДок. Вывести (ОбластьТовары);
КонецЦикла;
// вывод области "Всего"
Область = Макет. ПолучитьОбласть ("Всего");
Область. Параметры. ИтогСумма = Товары. Итог ("Сумма");
СуммаДок = Область. Параметры. ИтогСумма;
СуммаНДС = СуммаДок - (СуммаДок/1.18);
Область. Параметры. СуммаНДС = СуммаНДС;
Область. Параметры. Заполнить (ЭтотОбъект);
ТабДок. Вывести (Область);
// вывод области "Сумма"
Область = Макет. ПолучитьОбласть ("Сумма");
Область. Параметры. СуммаДокумента = ЧислоПрописью (СуммаДок,, "Рубль, рубля, рублей, м, копейка, копейки, копеек, ж");
Область. Параметры. КолВо = КолВо;
Область. Параметры. Заполнить (ЭтотОбъект);
ТабДок. Вывести (Область);
ТабДок. ОтображатьСетку = Ложь;
ТабДок. Защита = Ложь;
ТабДок. ТолькоПросмотр = Ложь;
ТабДок. ОтображатьЗаголовки = Ложь;
ТабДок. Показать ();
КонецПроцедуры
В системе 1С:Предприятие журналы являются средством для работы с документами. Работая с журналом, пользователь может вводить документы, просматривать их, редактировать и удалять. Журналы позволяют группировать документы для просмотра и быстрого доступа к ним.
Создаем два журнала документов: ДокументыПоЗакупкам и ДокументыПоПродажам. Журналы включают дополнительные реквизиты: Контрагент и Сумма по документу.
2.2.6 Отчеты
По накопленным в информационной базе данным можно получить отчеты для анализа деятельности организации.
Отчет – это прикладной объект конфигурации, предназначенный для обработки накопленной информации и получения сводных данных в удобном для просмотра и анализа виде. Платформа 8.3 поддерживает формирование различных разновидностей отчетов, достаточных для удовлетворения потребностей пользователей в достоверной и своевременной выходной информации. Отчет (рис. 2.19) в платформе версии 8.3 может формироваться тремя различными способами [13].
1. С нуля. В Конфигураторе создается новый пустой отчет, и разработчик самостоятельно создает макет, самостоятельно пишет процедуры заполнения и запросы к информационной базе. Это иногда имеет смысл в том случае, если, к примеру, результаты отчета необходимо распечатывать по регламентированной форме или состав данных очень специфический, или в случае создания внешнего отчета.
2. На базе Универсального Отчета. Универсальный Отчет – это такой объект, который может быть использован как самостоятельно, так и в качестве основы для других отчетов (он должен быть указан как реквизит). При этом также следует самостоятельно составлять текст запроса, но при этом в модуле нового отчета уже присутствуют стандартные процедуры настройки, снабженные комментариями, которые разработчик легко может подогнать под конкретные задачи.
3. С помощью системы компоновки данных (далее – СКД). СКД впервые появилась в версии платформы 8.0 в целях упрощения составления отчетов, поскольку для формирования нового отчета с ее помощью нет необходимости снимать с поддержки конфигурацию – она может быть запущена и в стандартном режиме, без использования Конфигуратора. Кроме того, один и тот же отчет может быть создан в нескольких вариантах, а его структура может свободно настраиваться [9].
В 1С также поддерживаются регламентированные отчеты, форма заполнения которых определяются законодательно Министерством Финансов Российской Федерации.
Для анализа накопленной в системе информации был разработан ряд отчетов:
- Отчет «Остатки товаров на складе» имеет возможность детализации по отдельным товарам (рис. 2.20);
- Отчет «Отчет по закупкам» формируются за период с детализацией по контрагентам (рис. 2.21);
- Отчет «Отчет по продажам» формируются за период с детализацией по контрагентам (рис. 2.22);
- Отчет «Прайс-лист» имеет возможность детализации по отдельным товарам и их ценам (рис. 2.23);
- Отчет «Ведомость по взаиморасчетам с контрагентами».
Для формирования отчета «Отчет по закупкам» необходимо указать начало и конец интересующего периода и нажать кнопку «Сформировать». На экране появится сформированный отчет по каждой бухте, который отражает все ее движения. То же самое нужно проделать и для формирования отчета «Отчет по продажам». Он отражает наименование товара и остаток его остаток на конкретную дату.
Отчет Остатки товаров на складе создали с помощью запроса, процедуру прописываем в модуле формы отчета.
Процедура КнопкаСформироватьНажатие (Кнопка)
ТабДок = Новый ТабличныйДокумент;
Макет = ЭтотОбъект. ПолучитьМакет ("Макет");
ОбластьМакета = Макет. ПолучитьОбласть ("Шапка");
ОбластьМакета. Параметры. ТекущаяДата = ТекущаяДата ();
ТабДок. Вывести (ОбластьМакета);
Запрос = Новый Запрос;
Если Товары. Наименование <> "" Тогда
Запрос. Текст = "
|Выбрать
| ОстаткиТовараОстатки. Товары,
| ОстаткиТовараОстатки. Товары. Наименование КАК Наименование,
| ОстаткиТовараОстатки. КолВоОстаток КАК Количество
| Из
| РегистрНакопления. ОстаткиТовара. Остатки КАК ОстаткиТовараОстатки
| Где
| ОстаткиТовараОстатки. Товары В (&Товары)
|";
Иначе
Запрос. Текст = "
|ВЫБРАТЬ
| ОстаткиТовараОстатки. Товары,
| ОстаткиТовараОстатки. Товары. Наименование КАК Наименование,
|ОстаткиТовараОстатки. КолВоОстаток КАК Количество
| Из
| РегистрНакопления. ОстаткиТовара. Остатки КАК ОстаткиТовараОстатки
|";
КонецЕсли;
Запрос. УстановитьПараметр ("Товары", Товары);
Результат = Запрос. Выполнить ();
Выборка = Результат. Выбрать ();
Пока Выборка. Следующий () Цикл
ОбластьМакета = Макет. ПолучитьОбласть ("Товар");
ОбластьМакета. Параметры. Товар = Выборка. Наименование;
ОбластьМакета. Параметры. Количество = Выборка. Количество;
ТабДок. Вывести (ОбластьМакета);
КонецЦикла;
ТабДок. Показать ();
КонецПроцедуры
С помощью данного отчета можно получить график поступления и отгрузки товаров со склада с любой периодичностью, например, за каждый день в течение определенного периода времени. Для этого в группировках отчета необходимо установить соответствующий порядок группировки: По дням, По неделям и т.д.
В отчете можно произвести отбор данных по различным параметрам: по группе товаров, по произвольному списку товаров, по складу и т.д.