Разработка регламента выполнения процесса «Складской учет» (Выбор средства для моделирования бизнес-процессов)
Содержание:
Введение
Любое предприятие, фирма, магазин имеет собственное складское помещение для хранения товара. Организация учета товара на складе является важным аспектом в работе любой торговой фирмы. Очевидно, что автоматизированный компьютерный учет позволит вести более точный учет товара, сократить количество случаев умышленной и неумышленной потери товара, вести оперативный учет. Это подчеркивает актуальность выбранной темы курсовой работы.
Как правило, склады небольших фирм и магазинов организованы на самом примитивном уровне. В большинстве таких организаций ведение складского учета осуществляется вручную. Следовательно, точность такого учета оставляет желать лучшего. Ведение учета вручную, в действительности, обходится владельцу организации дороже, чем проведение автоматизации складского учета. При ручном методе сбора и ввода данных та информация, которая необходима, часто оказывается недостоверной. А увеличение стоимости обслуживания товара ведет к увеличению стоимости самого товара.
В действительности – автоматизация работы склада представляет собой не сложную технологию, внедрение которой не потребует грандиозных денежных вливаний, приобретения дорогостоящего оборудования или программного обеспечения. Таким образом, автоматизация если не напрямую сказывается на увеличении прибыли и объемов продаж, то текущие расходы предприятия снижает точно.
Таким образом, исключается повторное внесение одинаковой информации на разные носители. Автоматический поиск информации производится в специально разработанных формах, которые пользователь указывает в параметрах запроса.
При условии постоянного расширения ассортимента продукции у торгового предприятия возникает необходимость автоматизировать работу складов. Это необходимо для упрощения операций подсчета, которые проводят сотрудники склада. Таким образом, они могут быстро справляться со своими должностными обязанностями. Хорошо известно, что ассортимент товаров постоянно меняется и растет. Если склад продает канцелярскую продукцию, количество наименований может достигать нескольких тысяч. В этом случае без автоматизации не обойтись.
Целью курсовой работы является разработка регламента выполнения процесса «Складской учет».
Для достижения поставленной цели необходимо решить ряд задач:
1 Описание предметной области. Постановка задачи.
2 Выбор средства для моделирования бизнес-процессов.
3 Моделирование бизнес-процессов «как есть».
4 Предлагаемые мероприятия по улучшению бизнес-процессов.
5 Моделирование бизнес-процессов «как должно быть».
Курсовая работа состоит из введения, двух взаимосвязанных глав, заключения, списка литературы и приложения.
1. Аналитическая часть
1.1 Описание предметной области. Постановка задачи.
Поставленная задача определяет характеристики объекта, его состав и структуру. В рассматриваемой предметной области экономическим объектом становится фирма, сфера деятельности которой связана с реализацией необходимых потребителю ресурсов. Она выполняет конкретные функции по оптовой и розничной продаже продукции покупателям, относящимся к конкретным целевым рынкам. Рассматриваемый субъект хозяйствования имеет достаточно развитую инфраструктуру и ресурсную базу, благодаря чему фирма может рассматриваться как крупное предприятие, в роли которого в рамках настоящего исследования выступает ЗАО «Мир школьника».
Рассматриваемое акционерное общество осуществляет деятельность в области реализации продукции магазинам с целью обеспечения последующего сбыта конечным покупателям. Коммерческая история данного предприятия небольшая – оно создано относительно недавно. Однако за время своей работы на рынке фирма «Мир школьника» сумела завоевать существенную его долю, в настоящее время продолжает наращивание объемов продаж, укрепляя и расширяя свое положение на целевом сегменте. В условиях расширяющихся объемов сбыта, увеличения численности покупателей возникает потребность в совершенствовании системы управления хранением и перемещением продукции путем внедрения автоматизированного учета товарных запасов, находящихся на складах.
ЗАО «Мир школьника» уделяет внимание не только работе с покупателями, предлагая продукцию, наиболее востребованную рынком. Фирма реализует мероприятия, направленные на противодействие конкуренции со стороны своих основных конкурентов, предлагающих аналогичные группы товаров. Одним из важнейших направлений в этой сфере является разработка и внедрение современных технологических средств и систем автоматизации.
Внедренные базы данных не остаются «замороженными» после своего внедрения, они постоянно адаптируются под происходящие изменения на рынке, учитывают развитие самого предприятия. Также компьютерные технологии, применяемые предприятием, совершенствуются в соответствии с появлением новых и развитием действующих способов решения экономических, финансовых, учетных и иных задач. Наиболее показательным примером данных процессов является современная разработка – база данных «Склад». Она обеспечивает полный учет и контроль за поступлением, хранением, внутренним и внешним перемещением запасов готовой продукции с отображением всей учетной информации в виде, наиболее удобном для реализации управленческих функций. В базе данных накапливается вся важная информация о наименовании, количестве, времени поступления и отпуска продукции.
Совокупность операционных, погрузочно-разгрузочных, транспортных и производственных операций составляет технологический процесс складской переработки товаров. От его организации зависит общая продолжительность товародвижения от поставщика к потребителю.
Работа склада делится на три основных этапа:
-приемка товара;
-хранение;
-отпуск товара.
Основными этапами приемки товара являются:
-разгрузка товара;
-проверка товара по количеству;
-оформление приемо-сдаточных документов;
-регистрация принятых товаров.
В ЗАО «Мир школьника» приемка производится следующим образом: товар приходит на склад с сопроводительными документами. Начальник склада или кладовщик обязан присутствовать при разгрузке и провести идентификацию фактически поступившего на склад и указанного в сопроводительных документах товара. Распаковка не производится, но упаковка проверяется на целостность и деформацию. Если имеются повреждения, то составляется акт, согласно которому этот товар передается в сервисно - техническую службу, где проверяется его качество. Не соответствующий стандартным требованиям и параметрам товар должен быть возвращен поставщику.
Для контроля и учета товарных потоков используют самые разнообразные формы документов. Главное назначение этих документов состоит в том, чтобы обеспечить тщательный учет всех товаров, поступающих на склад. После разгрузки оформляются приемо-сдаточные документы: делается приходный ордер, в товарно-транспортных накладных экспедитор расписывается в том, что он сдал, а приемщик - в том, что он принял товар, ставится печать. После этого делаются копии документов, три экземпляра остаются на складе (один оригинал и 2 копии) и второй оригинал возвращаются поставщику [6].
После оформления этих документов производится регистрация товара: приходному ордеру присваивается определенный №, в регистрационной карточке отражается приход (на каждый вид товара - отдельная карточка) по количеству. Следующий этап - оригинал накладной вместе с приходным ордером поступает в бухгалтерию, где включается в дальнейший документооборот; одна копия накладной и приходного ордера поступает в тот отдел, чей товар был получен; одна копия накладной и приходного ордера остается на складе. Такая процедура практически исключает ошибки в учете и согласует работу этих подразделений.
Количество находящегося на складе товара зависит от потребностей товарополучателей и складских возможностей.
Хранение товаров включает выполнение следующих операций:
-организация складского пространства;
-размещение, движение, перемещение товаров;
-создание необходимых условий хранения и надежной охраны товаров;
-организация учета товаров;
-обеспечение возможности применения подъемно-транспортного оборудования;
-прочие операции.
Устройство склада во многом зависит от ассортимента товаров. Задача складского планирования состоит в обеспечении хранения таким образом, чтобы сделать их максимально доступными потребителю.
Планировка складского помещения должна отвечать следующим требованиям [20]:
-обеспечивать применение наиболее рациональных способов размещения и укладки товаров;
-исключать отрицательное влияние одних товаров на другие при хранении;
-обеспечивать возможность применения подъемно-транспортного оборудования;
-соблюдение правил пожарной безопасности при размещении товара на складе.
Отпуск товара со склада производится различными способами, однако должны выполняться при этом определенные требования, без соблюдения которых нельзя производить отгрузку, т.е. все сопроводительные документы должны быть соответственно оформлены: товарно-транспортная накладная должна быть подписана менеджером, чей товар отпускается; генеральным директором, разрешающим отпуск, или лицом, его заменяющим: скреплена печатью. Накладная также может иметь пометку об оплате товара (указывается № счета и дата поступления денег на р/с продавца). В некоторых случаях при налаженных связях с товарополучателем отпуск товара может производиться при предъявлении платежного поручения с исполнением. Если получателем является юридическое лицо, то к накладной прикладывается доверенность на получение товара. После этого лицо, получающее товар, расписывается в том, что он получил товар. Копия накладной остается на складе, один оригинал отправляется в бухгалтерию (после отражения этой операции в складском учете), второй оригинал остается у получателя товара [12].
1.2.Выбор средства для моделирования бизнес-процессов.
Складской учет - это сложная программная система, затрагивающая все аспекты, связанные с движением товара на склад и со склада. Для хранения продукции служит реальный склад, однако именно программа является его интерфейсной оболочкой, без которой он потеряет свою функцию эффективного центра распределения.
При разработке такой системы заказчикам необходимо частично переосмыслить весь бизнес-процесс и учесть уже имеющиеся программы, чтобы не потерять вложенные средства. И хотя некоторое улучшение производительности ведения дел в компании может быть достигнуто просто за счет автоматизации уже существующей системы учета товаров «вручную», радикального улучшения можно добиться только при кардинальном пересмотре ведения бизнеса. Однако, так же как архитектура системы определяет ее реализацию, общее видение бизнеса определяет всю систему. Исходя из данной предпосылки, начинать следует с рассмотрения общего плана ведения складского учета. По результатам системного анализа можно выделить семь основных функций системы [7]:
1. Учет заказов
Прием заказов от клиентов и ответы на запросы клиентов о состоянии заказов.
2. Ведение счетов
Направление счетов клиентам и отслеживание платежей. Прием счетов от поставщиков и отслеживание платежей поставщикам.
3. Отгрузка со склада
Составление спецификаций на комплектацию товаров, отправляемых со склада клиентам.
4. Складской учет
Постановка прибывающих товаров на учет и снятие товаров с учета при отправке заказов.
5. Закупки
Заказ товаров поставщикам и отслеживание поставок.
6. Получение
Принятие на склад товаров от поставщиков.
7. Планирование
Выпуск отчетов, в том числе отражающих тенденции спроса на отдельные виды товаров и активность поставщиков.
Кроме автоматизации стандартных складских операций, система также должна предоставлять богатые возможности по генерации различных форм отчетности, в том числе отражающих тенденции развития рынка, списков наиболее надежных и ненадежных поставщиков и клиентов [17].
В прошлом бизнес-приложения имели обычный текстовый интерфейс, и это считалось нормальным. Однако общее снижение цен на компьютеры и широкое распространение графических интерфейсов пользователя обуславливают необходимость внедрения графических приложений. Надо помнить, что для системы складского учета интерфейс пользователя является всего лишь небольшой (хотя и важной) частью. Ядром системы является база данных; пользовательский интерфейс можно рассматривать как оболочку вокруг этого ядра. Для данной системы можно (и даже желательно) создать несколько интерфейсов. Простой, базирующийся на меню, - для клиентов, заполняющих заявки на товар. Современный, типа Windows, - для решения бухгалтерских задач, а также планирования и закупок. Отчеты могут печататься в пакетном режиме, однако некоторым менеджерам могут понадобиться средства для просмотра графиков на экране.
СУБД Access относится к числу одних их самых гибких, мощных, простых в применении СУБД, ориентирована она на пользователей Microsoft Office, включая также и пользователей малознакомых с программированием.
MS Access является реляционной СУБД, в которой сбалансированы разные возможности и средства, обычные для современных СУБД. Реляционная база дает возможность вести всесторонний анализ содержащихся в ней данных, упрощает поддержку, поиск и защиту данных, потому что индексы, таблицы, правила ссылочной целостности, список пользователей, бизнес-правила, а также отчеты и формы находятся на хранении в одном отдельном файле [2].
В составе Access входят:
- средства манипуляции информацией Access, данными, которые доступны в ODBC (последние могут быть «присоединены» к базе данных Access);
- средства создания отчетов, форм, приложений; в то же время отчеты имеют возможность экспортироваться в формат Microsoft Excel или Microsoft Word;
- средства разработки приложений клиентов для Microsoft SQL Server;
- средства создания интерактивных Web-приложений для работы с данными (Data Access Pages);
- средства публикации отчетов в Internet;
- средства доступа к информации серверных СУБД посредством OLE DB;
- средства администрирования Microsoft SQL Server.
СУБД Access для работы с информацией ипользует процессор БД Microsoft Jet 3.0, объекты доступа к информации, средства оперативного формирования интерфейса - это Конструктор форм. Для распечаток используются конструкторы отчетов. Для автоматизации рутинных операций разработчиками предусмотрены макрокоманды. В случаях, когда функциональность визуальных средств является недостаточной, разработчиками пользователям предоставлена возможность создавать собственные функции и процедуры. А в макрокоманды могут быть включены вызовы функций. Аналогичным образом макрокоманды могут быть вызваны из функций и процедур [13].
Несмотря на ориентированность, непосредственно на конечного пользователя в СУБД Access предусмотрено использование языка программирования Visual Basic for Application, который предоставляет пользователю возможность создвать собственные типы данных, массивы, вызывать DLL-функции, при помощи OLE Automation осуществлят контроль работы приложений, которые могут функционировать в качестве OLE -серверов. Кроме того можно полностью создавать базы данных посредством кодирования, когда в этом есть такая необходимость [4].
MS Access из всех существующих средств разработки имеет наиболее богатый набор визуальных средств. И, тем не менее, кодировать приходится именно в Access. Ведь ни одно существующее приложение, которое не предназначено исключительно для себя, создать хотя бы без одной строки кода не представляется возможным. Для активного коммерческого распространения приложений, созданных на Access, существует пакет Access Developer Toolkit, вместе с которым также поставляются и дополнительные объекты ActiveX.
Одним из главных качеств Access, привлекающее к нему разных пользователей является интеграция с Microsoft Office. Например, проведя процедуру копирования в буфер графического образа таблицы, открыв лист Microsoft Word, применив специальную вставку из буфера обмеа, сразу будет получена готовая таблицу с показателями из БД в документе [9].
СУБД Microsoft Access в полной мере соответствует всем требованиям понятности, надежности для пользователя, безопасности данных, а также масштабируемости и модифицируемости, минимизации затрат на поддержку и сопровождение, а также эргономичности.
Специфическая особенность СУБД Ассеss состоит в том, что все информационные сведения, относящиеся к одной БД, хранятся в общем файле. Данный файл имеет расширение вида *.mdb. Указанное решение чаще всего оказывается удобным для непрофессиональных пользователей, т.к. обеспечивает простоту в ходе переноса данных с одного рабочего места на другое. Что же касается внутренней организации данных в пределах mbd-формата, то она изменялась от одной версии к другой, но компания Microsoft поддерживала их совместимость снизу вверх, иначе говоря, БД из файлов в формате ранних версий Access могут конвертироваться в формат, который используется в более поздних версиях [5].
При помощи средств Access можно реализовать меню ориентированный интерфейс с компонентами объектно-событийного управления, когда исполнение определенных функций напрямую связано с определенными событиями (щелчок мыши, нажатие клавиши и пр.).
Microsoft Access более всего удобен не только для программистов, но также и для обычных пользователей, что обусловлено наличием русифицированного интерфейса. Было принято решение в качестве СУБД воспользоваться MS ACCESS.
1.3. Моделирование бизнес-процессов «как есть».
Контекстная диаграмма, представленная на рисунке 4, реализована с применением методологии IDEF0. Главная компонента в ней – это диаграмма (т.е. активность) под названием «Ведение складского учета».
Организация взаимодействия базовых компонентов системы (т.е. «механизмы») осуществляется на основе установленных прав доступа какого-либо компонента (т.е. «Управление»). Взаимодействие данных компонент системы осуществляется в заданном режиме согласно определенным правам.
На входе у этого процесса определены заявки на продукцию, которые поступают от разнообразных клиентов, а также заявки поставщикам на требуемое количество недостающих товаров.
Рисунок 3 - Контекстная диаграмма
Кроме того, на деятельность системы во многом влияют данные о внешней среде, а также планировка деятельности, которая может быть выражена в форме нормативной документации и регламентов, актов законодательного типа, решений маркетингового характера и пр. [3].
Деятельность системы осуществляется обслуживающим трудовым персоналом, к числу которого относятся менеджеры по обслуживанию клиентов, менеджеры по вопросам снабжения, а также непосредственные руководители фирмы.
Выходной информацией у этой системы является:
а) продукция, которая отгружается клиентам;
б) разнообразные отчеты (о номенклатуре продукции, о фактическом и плановом остатках продукции, всевозможные накладные).
Функциональная декомпозиция системы, представленная на рисунке 1, производится на базе методологии типа IDEF0. При детализации этого процесса было выявлено четыре подпроцесса. На данном этапе выполнению подлежат такие функции как:
1) обработка заявки на товарную продукцию;
2) формирование заявки на закупку товарной продукции;
3) формирование необходимых отчетов;
4) координирование деятельности.
Рисунок 1 - Диаграмма декомпозиции
Далее следует рассмотреть каждый подпроцесс более подробно.
1. «Обработать заявку на продукцию»
На входе рассматриваемого подпроцесса расположены заявки от клиентов на различную товарную продукцию. На выходе находится уже обработанная информация об этих заявках. Все заявки регистрируются и обрабатываются менеджерами по продажам.
Процесс обработки заявок на продукцию производится следующим образом: Менеджер по продажам регистрирует заявки, которые поступают от клиентов, группирует их по датам, а также по срокам выполнения. Далее производится анализ наличия требуемого количества товаров на складе. В случае, если такое количество товарных единиц имеется, продукция отгружается клиенту, если нет, данные о необходимом количестве товаров отправляют в отдел снабжения [11].
Дальнейшая декомпозиция проводилась с использованием методологии DFD (рисунок 2) На диаграмме наглядно представлены движения потоков данных.
Рисунок 2 - Диаграмма декомпозиции процесса «Обработать заявку на продукцию»
2. «Сформировать заявку на закупку продукции»
На входе подпроцесса расположена заявка поставщикам на предмет недостающего вида товаров. На выходе размещены данные о заявке поставщикам. При условии того, что продукция уже поставлена – на выходе стоит продукция для клиентов. Данная деятельность осуществляется менеджерами по вопросам снабжения [15].
Обработка заявок поставщикам производится в следующем порядке: Менеджер по вопросам снабжения определяет виды и общее количество товаров, необходимых исходя из оформленных заявок. Далее производится непосредственно сама заявка. После этого регистрируется и соответственным образом оформляется приход какой-либо продукции.
Декомпозиция данного процесса проводилась с использованием методологии DFD (рисунок 3)
Рисунок 3 - Диаграмма декомпозиции процесса «Обработать заявку на продукцию»
3. «Сформировать отчет»
На входе данного подпроцесса находятся обработанные заявки на товар клиентов, а также данные по поводу заявок поставщикам. На выходе расположены отчеты, которые представлены в достаточно комфортном для пользователя представлении. Указанная деятельность производится менеджерами по продаже и снабжению, а также непосредственным руководством предприятия.
4. «Координировать деятельность»
На входе этого подпроцесса находятся обработанные заявки на товары клиентов, а также данные по поводу заявок поставщикам. Управляющее воздействие в данном случае оказывается планированием деятельности и информацией о внешней среде. Эта деятельность реализуется только руководящими лицами компании.
2. Проектная часть
2.1. Предлагаемые мероприятия по улучшению бизнес-процессов.
Входной информацией определены заявки на продукцию, которые поступают от разнообразных клиентов, а также заявки поставщикам на требуемое количество недостающих товаров.
Кроме того, на деятельность системы во многом влияют данные о внешней среде, а также планировка деятельности, которая может быть выражена в форме нормативной документации и регламентов, актов законодательного типа, решений маркетингового характера и пр. [10].
Выходной информацией у этой системы является:
а) продукция, которая отгружается клиентам;
б) разнообразные отчеты (о номенклатуре продукции, о фактическом и плановом остатках продукции, всевозможные накладные).
2.2. Моделирование бизнес-процессов «как должно быть».
Меню приложения представляет собой иерархическую древовидную структуру.
Пользовательское меню представлено 4 категориями:
- Файл
- Выход – при выборе пользователем данного пункта происходит завершение работы с программой.
2) Справочники – обеспечивает работу со всеми справочниками системы
- Категории – справочник категорий продукции
- Ед. измерения – справочник единиц измерения
- Виды упаковки – справочник видов упаковки
- Виды товаров – справочник видов товаров
- Производители – справочник производителей продукции
- Ед. измерения – справочник товаров. Обеспечивает работу с товарной номенклатурой.
- Клиенты – справочник клиентов предприятия
- Поставщики – справочник поставщиков продукции предприятия
- Снабженцы – справочник менеджеров по снабжению
3) Операции – основное меню. Отвечает за выполнения операций прихода, расхода и списания продукции.
- Расход продукции – обеспечивает работу с интерфейсом, обеспечивающим произведение менеджерами по продажам расходных операций (отгрузка продукции клиентам предприятия).
- Списание продукции – обеспечивает переход к форме, на которой происходит списание продукции, с указанием причины и количества списываемой продукции.
- Приход продукции – обеспечивает работу с интерфейсом, обеспечивающим произведение менеджерами по снабжению приходных операций (оприходование продукции, поступающей от поставщиков предприятия).
4) Отчеты - обеспечивает взаимодействие с модулем, отвечающим за построение отчетов
- Товарный ассортимент – выводит отчет о товарной номенклатуре продукции
- Необходимые поставки – выводит отчет о необходимом количестве каждой номенклатурной единицы, исходя из имеющихся договоров на заказанную продукцию [14].
Структура пользовательского меню приведена на рисунке 4.
Рисунок 5 - Структура пользовательского меню
В соответствии анализом предметной области было принято решение разработать систему складского учета, выполняющую следующие функции:
На рисунке 9 приведена диаграмма вариантов использования системы «Складской учет», которая демонстрирует взаимодействие пользователей с данной системой.
Рисунок 6 – Диаграмма вариантов использования системы «Складской учет»
Вариант использования «Сформировать отчеты» предназначен для формирования отчетов менеджерами по снабжению и менеджерами по продажам. В рамках данной системы реализованы следующие отчеты:
- Отчет о товарном ассортименте продукции
- Отчет о необходимых поставках каждой номенклатурной единицы, исходя из данных по заключенным договорам.
Вариант использования «Работать со справочниками» предназначен для добавления, редактирования и удаления справочных данных о продукции (вид, упаковка, ед. измерения, поставщик и др.), а также о товарах, непосредственно имеющихся на складе.
Вариант использования «Оформить приход» используется для занесения данных о поступлении продукции на склад. С данным вариантом использования взаимодействует менеджер по продажам. Также данный вариант использует вариант «Работать со справочниками».
Вариант использования «Оформить расход» используется для занесения данных об отгрузке продукции по договорам покупателям. С данным вариантом использования взаимодействует менеджер по снабжению. Также данный вариант использует вариант «Работать со справочниками». Этот вариант использования расширяется вариантом «Оформить списание», в котором происходит списание выбранной продукции [16].
При запуске программы на экране появляется форма «Складской учет: Главное меню». Данная форма является связующей со всеми остальными. На ней присутствует элемент меню, которое представлено следующими категориями: «Файл», «Справочники», «Операции» и «Отчеты». В каждой из категории располагаются элементы меню, обеспечивающие переход к той или иной форме. К тому же расположение управляющих элементов категорий «Справочники», «Операции» для удобства сделано в виде объединенных групп кнопок непосредственно на форме меню (см. рисунок 6).
Работа со справочниками, за исключением справочника товаров, происходит следующим образом: выбирается необходимый справочник, после этого в таблице данных предоставляется возможность добавления, удаления и редактирования. Для перехода по записям предусмотрены навигационные кнопки, при нажатии на которые указатель текущей записи переходит либо на предыдущую запись, либо на следующую (см рисунки 7-17).
Рисунок 7 – Главное окно программы
Рисунок 8 - Категории
Рисунок 9 - Справочник единиц измерения
Рисунок 10 - Виды товаров
Рисунок 11 - Справочник производителей
Рисунок 12 - Клиенты
Рисунок 13 - Поставщики
Рисунок 14 - Снабженцы
При выборе справочника товаров на экране отображается форма «Товары» представленная на рисунке 18. По каждому наименованию продукции заполняется номенклатурный номер и само наименование, а в группе свойств в правой части формы из выпадающих списков выбираются категория, вид, единица измерения, упаковка, производитель. Поля цена и количество обновляются при каждом приходе продукции, а количество при каждом расходе или списании.
Рисунок 15 - Товары
При выборе пункта «Расход продукции» на экране отображается форма «Заявки» (см. рисунок 19), на которой отображаются данные о заявках на продукцию, а также ниже расположена подчиненная таблица содержащая перечень наименований продукции с указанием количества по каждой позиции. Для добавления/редактирования данных о содержании заявки необходимо нажать кнопку добавить/Изменить. При этом на экране появится форма «Редактирование содержания заявки» изображенная на рисунке 20. На этой форме происходит выбор наименования продукции из справочника товаров, а также указывается количество заказываемого товара.
Рисунок 16 - Заявки
Рисунок 17 - Редактирование содержания заявки
Для окончательной обработки заявки необходимо нажать кнопку «отпуск товара по заявке». При этом если необходимое количество продукции имеется в наличии на складе, то данная заявка закрывается для редактирования. Если же необходимого количества на складе нет, то пользователю выдается соответствующее сообщение. При этом заявка остается доступной для дальнейшего редактирования.
При нажатии на кнопку «Печать заявки» пользователю для просмотра представляется заявка, готовая для печати (см. Рисунок 18).
Рисунок 18 - Расходный документ
Кнопка «Обновить данные» предназначена для осуществления повторного запроса для получения обновленной информации о заявках и их содержании.
При нажатии на кнопку «Списание продукции» на экране отображается одноименная форма (см. рисунок 22). На данной форме по выбранной продукции отображается история списаний. Для добавления информации по списанию необходимо заполнить поля «Дата», «Количество» и «Причина» и нажать кнопку «Добавить». Для удаления данных о списании продукции необходимо выбрать нужную запись и нажать кнопку «Удалить».
Рисунок 20 - Списание продукции
При нажатии на кнопку «Печать истории» пользователю для просмотра предоставляется история списаний по выбранной продукции, готовая для печати.
При выборе пункта «Приход продукции» на экране отображается одноименная форма, в которой в верхней части отображается номер, дата приходного документа и менеджер обслуживающий заявку. В нижней части экрана отображается содержание каждого из приходных документов. Для добавления записи в эту таблицу необходимо нажать кнопку «Добавить», затем выбрать наименование продукции, ввести количество и цену.
Кнопка «Обновить данные» предназначена для осуществления повторного запроса для получения обновленной информации о заявках и их содержании.
При нажатии на кнопку «Печать документа» пользователю для просмотра представляется заявка, готовая для печати (см. Рисунок 21).
Рисунок 21 - Приходный документ
При выборе пункта меню «Отчеты» -> «Товарный ассортимент» на экране отображается ассортимент имеющейся продукции, который можно вывести на печать.
При выборе пункта меню «Отчеты» -> «Товарный ассортимент» на экране отображается ассортимент имеющейся продукции, который можно вывести на печать (см. Рисунок 22).
Рисунок 22 - Ассортимент продукции
При выборе пункта меню «Отчеты» -> «Необходимые поставки» на экране отображается ассортимент имеющейся продукции, цена, запас, количество необходимое по заявкам, а также остатки после исполнения заявок (см. Рисунок 25).
Рисунок 23 - Отчет о необходимых поставках
Заключение
В ходе выполнения курсового проекта была изучена работа предприятия ЗАО «Мир школьника».
В результате была разработана автоматизированная система складского учета, предназначенная для ведения учёта прихода и расхода товаров.
Автоматизированная система поддерживает все операции, связанные с учетом, обработкой и предоставлением необходимых данных:
1. Учет заказов
Прием заказов от клиентов и ответы на запросы клиентов о состоянии заказов.
2. Ведение счетов
Направление счетов клиентам и отслеживание платежей. Прием счетов от поставщиков и отслеживание платежей поставщикам.
3. Отгрузка со склада
Составление спецификаций на комплектацию товаров, отправляемых со склада клиентам.
4. Складской учет
Постановка прибывающих товаров на учет и снятие товаров с учета при отправке заказов.
5. Закупки
Заказ товаров поставщикам и отслеживание поставок.
6. Получение
Принятие на склад товаров от поставщиков.
7. Планирование
Данная система поддерживает формирования итоговых ведомостей по данным из этой базы и обеспечивает ввод, удаление, хранение и редактирование информации, которая содержится в таблицах данных.
Так же была рассмотрена существующая на предприятии нормативно-справочная и результатная информация, разработана информационно-логическая модель данных, обеспечивающая оперативный и количественно-суммовой учет товаров.
Реализация системы проводилась с использованием инструментальных средств MS Visual Basic в сочетании с СУБД MS ACCESS. При написании программы основное внимание было уделено удобству работы пользователя и построению дружественного интерфейса.
Список литературы
- Афонин В.Л., Моделирование систем: учебно-практическое пособие [Текст] / В.Л. Афонин - М.: Интернет-Университет Информационных Технологий (ИНТУИТ), 2016. – 232 с.
- Баженова И.Ю., Основы проектирования приложений баз данных [Текст] / И.Ю. Баженова - М.: Интернет-Университет Информационных Технологий (ИНТУИТ), 2016. – 261 с.
- Базовые средства программирования на Visual Basic в среде VisualStudio Net. Практикум: Учебное пособие. Гриф МО РФ [Текст] - М.: Инфра-М Форум, 2017. – 288 с.
- Голицына О.Л., Основы проектирования баз данных. [Текст]: Учебное пособие / О.Л. Голицына - М.: Форум, 2016. – 416 с.
- Дадян Э.Г., Методы, модели, средства хранения и обработки данных [Текст] / Э.Г. Дадян - М.: Инфра-М, 2017. – 268 с.
- Даниленко А.В., Безопасность систем электронного документооборота. Технология защиты электронных документов [Текст] / А.В. Даниленко - М.: URSS, 2015. – 232 с.
- Джесси Р., Проектирование баз данных [Текст] / Р. Джесси - М.: VSD, 2013.
- Долганова О.В., Моделирование бизнес-процессов. Учебник и практикум для академического бакалавриата [Текст] / О.В. Долганова - М.: Издательство: Юрайт, 2016. – 289 с.
- Иванова Г.С., Объектно-ориентированное программирование [Текст] / Г.С. Иванова - М.: Московский Государственный Технический Университет (МГТУ) имени Н.Э. Баумана, 2014. – 456 с.
- Кагаловский, М.Р. Технология баз данных на персональных ЭВМ [Текст] / М.Р. Кагаловский − М.: Финансы и статистика, 2014. – 224 с.
- Казанский А.П., Объектно-ориентированный анализ и программирование на visual basic 2013. Учебник для прикладного бакалавриата [Текст] / А.П. Казанский - М.: Юрайт, 2016. – 290 с.
- Казиев В.М., Введение в анализ, синтез и моделирование систем. Учебное пособие [Текст] / В.М. Казиев - М.: Интернет-Университет Информационных Технологий (ИНТУИТ), 2014. – 244 с.
- Кириллов В.В., Введение в реляционные базы данных. Учебник (+ CD-ROM) [Текст] / В.В. Кириллов - М.: БХВ-Петербург, 2017. – 464 с.
- Козлов В., Системный анализ, оптимизация и принятие решений. Учебное пособие [Текст] / В. Козлов - М.: Проспект, 2016. – 76 с.
- Культин Н.Б., Visual Basic. Освой на примерах (+ CD-ROM) [Текст] / Н.Б. Культин - М.: БХВ-Петербург, 2012. – 288 с.
- Кумскова И.А., Базы данных. Учебник. Гриф МО РФ [Текст] / И.А. Кумскова - М.: КноРус, 2016. – 400 с.
- Лукин С.Н., Visual Basic: самоучитель для начинающих [Текст] / С.Н. Лукин - М.: Диалог-МИФИ, 2012. – 480 с.
- Малкин Г.Е., Учимся моделировать в среде Visual Basic [Текст] / Г.Е. Малкин - М.: Нобель Пресс, 2012. – 210 с.
- Мартишин С.А., Проектирование и реализация баз данных в СУБД MySQL с использованием MySQL Workbench. Учебное пособие. Методы и средства проектирования информационных систем и технологий. Инструментальные средства информационных сетей. Гриф УМО вузов России [Текст] / С.А. Мартишин - М.: Форум, 2017. – 160 с.
- Назаров С.В., Архитектура и проектирование программных систем [Текст] / С.В. Назаров - М.: Инфра-М, 2016. – 376 с.
Приложение А
Фрагмент программного кода
Private Sub Form_Load()
'MsgBox ""
DE.rsComPrihod.Filter = 0
Set DataGrid1.DataSource = DE
Set DataGrid2.DataSource = DE
DataGrid1.Columns("Suppl_Z_Date").Visible = False
DataGrid1.Columns("Suppl_Z_Note").Visible = False
DataGrid2.Columns("ID документа").Visible = False
DataGrid2.Columns("Tovar_name").Visible = False
End Sub
Private Sub Command1_Click()
If DE.rsComSnabj.BOF Then
MsgBox "Вы уже находитесь в первой записи."
Else
DE.rsComSnabj.MovePrevious
End If
End Sub
Private Sub Command2_Click()
If DE.rsComSnabj.EOF Then
MsgBox "Вы уже находитесь в последней записи."
Else
DE.rsComSnabj.MoveNext
End If
End Sub
Private Sub UpdateData()
DE.rsComSpis.Close
DE.rsComSpis.Open
End Sub
Private Sub UpdateElems()
Set DataGrid1.DataSource = DE
Set DataGrid2.DataSource = DE
Set TextDate.DataSource = DE
Set TextQuan.DataSource = DE
Set TextReason.DataSource = DE
End Sub
Private Sub Command1_Click()
TextDate.Enabled = True
TextQuan.Enabled = True
TextReason.Enabled = True
'TextDate.Enabled = True
DE.rsComSpis.AddNew
Command1.Enabled = False
Command3.Enabled = False
Command2.Enabled = True
Call UpdateElems
End Sub
Private Sub Command2_Click()
'Проверка что в поле число
If Command1.Enabled = False Then
If IsNumeric(TextQuan.Text) Then
If DE.rsComTov!Tovar_quan - TextQuan.Text < 0 Then
MsgBox "Требуемое для списания количество товара отсутствует"
Exit Sub
End If
Else
MsgBox "Введенное количество не является числом"
Exit Sub
End If
If TextDate.Text = "" Or _
TextQuan.Text = "" Or _
TextReason.Text = "" Then
MsgBox "Не все данные введены"
Exit Sub
End If
DE.rsComSpis!spis_tovar = DE.rsComTov!idTovar
DE.rsComSpis.Update
DE.rsComTov!Tovar_quan = DE.rsComTov!Tovar_quan - TextQuan.Text
Command1.Enabled = True
Command3.Enabled = True
UpdateData
UpdateElems
End If
TextDate.Enabled = False
TextQuan.Enabled = False
TextReason.Enabled = False
End Sub
Private Sub Command3_Click()
DE.rsComTov!Tovar_quan = DE.rsComTov!Tovar_quan + DE.rsComSpis!Spis_quan
DE.rsComSpis.Delete
UpdateData
UpdateElems
End Sub
Private Sub Command4_Click()
DE.rsComSpis.CancelUpdate
Command2.Enabled = False
Command1.Enabled = True
Command3.Enabled = True
End Sub
Private Sub Command5_Click()
DE.rsComTov.Filter = "idTovar = " & DE.rsComTov!idTovar
RepSpis.Show
End Sub
Private Sub Command1_Click()
If DE.rsComTov.BOF Then
MsgBox "Вы уже находитесь в первой записи."
Else
DE.rsComTov.MovePrevious
End If
End Sub
Private Sub Command2_Click()
If DE.rsComTov.BOF Then
MsgBox "Вы уже находитесь в первой записи."
Else
DE.rsComTov.MovePrevious
End If
End Sub
Private Sub Form_Load()
DataGrid1.Columns("Tovar_price").Visible = False
DataGrid1.Columns("Количество продукции").Visible = False
DataGrid1.Columns("Tovar_cat").Visible = False
DataGrid1.Columns("Tovar_inch").Visible = False
DataGrid1.Columns("Tovar_manuf").Visible = False
DataGrid1.Columns("Tovar_pack").Visible = False
DataGrid1.Columns("Tovar_vid").Visible = False
'DataGrid1.Columns("Код").Visible = False
End Sub
Private Sub MSHFlexGrid1_Click()
'DE.ComT
End Sub
Private Sub Label1_Click()
End Sub
Private Sub Command1_Click()
If DE.rsComVid1.BOF Then
MsgBox "Вы уже находитесь в первой записи."
Else
DE.rsComVid1.MovePrevious
End If
End Sub
Private Sub Command2_Click()
If DE.rsComVid1.EOF Then
MsgBox "Вы уже находитесь в последней записи."
Else
DE.rsComVid1.MoveNext
End If
End Sub
Private cn As ADODB.Connection
Private rs As ADODB.Recordset
Private rsTovar As ADODB.Recordset
Private Sub Command1_Click()
DE.rsComPZ.Close
DE.rsComPZ.Open
Set TextFlag.DataSource = DE
Set DataGrid1.DataSource = DE
Set DataGrid2.DataSource = DE
DataGrid2.Refresh
End Sub
Private Sub Command2_Click()
DE.rsComPZ.Filter = "idCl_Z = " & DE.rsComPZ!idCl_Z
DataReportZ.Show
End Sub
Private Sub Command3_Click()
DataGrid1.Col = 13
If DataGrid1.Text = "да" Then
MsgBox "Данная заявка уже исполнена. Изменять ее нельзя"
Exit Sub
End If
idRaschod = 0
DataGrid1.Col = 0
If DataGrid1.Text <> "" Then
idCl_Z = DataGrid1.Text
Else
idCl_Z = 0
End If
FmZCont.Show
End Sub
Private Sub Command4_Click()
DataGrid1.Col = 13
If DataGrid1.Text = "да" Then
MsgBox "Данная заявка уже исполнена. Изменять ее нельзя"
Exit Sub
End If
DataGrid1.Col = 0
If DataGrid1.Text <> "" Then
idCl_Z = DataGrid1.Text
Else
idCl_Z = 0
End If
cmd = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = " & App.Path & "\sclad.mdb;Persist Security Info=False"
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
DataGrid2.Col = 0
If DataGrid2.ApproxCount = 0 Then
num = -1
Else
num = DataGrid2.Text
End If
idRaschod = num
SQL = "SELECT * FROM Raschod WHERE idRaschod = " & num
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
If idRaschod = -1 Then num = 0 Else num = rs("Raschod_Tovar")
SQL = "SELECT * FROM Tovar WHERE idTovar = " & num
Set rsTovar = New ADODB.Recordset
With rsTovar
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
If num <> 0 Then
FmZCont.CBTovar.BoundText = rsTovar("idTovar")
DataGrid2.Col = 3
FmZCont.TextQuan.Text = DataGrid2.Text
DataGrid2.Col = 5
FmZCont.TextCost.Text = DataGrid2.Text
End If
rs.Close
rsTovar.Close
Set rs = Nothing
Set rsTovar = Nothing
cn.Close
Set cn = Nothing
If DataGrid2.ApproxCount <> 0 Then FmZCont.Show
End Sub
Private Sub Command6_Click() 'Отпуск товара по заявке
'DataGrid2.Col = 1
'if DE.rsComPZ.Fields
'If DataGrid2.Text = "" Then
' Exit Sub
'End If
DataGrid1.Col = 0
If DataGrid1.Text <> "" Then
idCl_Z = DataGrid1.Text
Else
idCl_Z = 0
End If
cmd = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = " & App.Path & "\sclad.mdb;Persist Security Info=False"
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
DataGrid1.Col = 13
If idCl_Z <> 0 And (DataGrid1.Text <> "да") Then 'Если имеется необработанная заявка
SQL = "SELECT * FROM Raschod WHERE idCl_Z = " & idCl_Z
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
If rs.BOF Or rs.EOF Then
Exit Sub
End If
rs.MoveFirst
Do While Not rs.EOF 'В цикле проверяем наличие товара на складе
num = rs("Raschod_Tovar") 'Получаем ID Товара
SQL = "SELECT * FROM Tovar WHERE idTovar = " & num
Set rsTovar = New ADODB.Recordset
With rsTovar
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
If rs("Raschod_quan") > rsTovar("Tovar_quan") Then
MsgBox "Невозможно выполнить заявку. на складе отсутствует требуемое количество товара"
Exit Sub
End If
rsTovar.Close
Set rsTovar = Nothing
rs.MoveNext
Loop
'Если цикл пройден, то значит товар есть
rs.MoveFirst
Do While Not rs.EOF 'В цикле проверяем наличие товара на складе
num = rs("Raschod_Tovar") 'Получаем ID Товара
SQL = "UPDATE Tovar SET Tovar_quan = Tovar_quan - " & rs("Raschod_quan") & " WHERE idTovar = " & num
Set rsTovar = New ADODB.Recordset
With rsTovar
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
Set rsTovar = Nothing
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
SQL = "UPDATE cl_z set cl_Z_flag = 'да' WHERE idCl_Z = " & idCl_Z
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
Set rs = Nothing
cn.Close
Set cn = Nothing
MsgBox "Расход произведен"
End If
End Sub
Private Sub Command5_Click()
DataGrid1.Col = 13
If DataGrid1.Text = "да" Then
MsgBox "Данная заявка уже исполнена. Изменять ее нельзя"
Exit Sub
End If
cmd = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = " & App.Path & "\sclad.mdb;Persist Security Info=False"
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
DataGrid2.Col = 0
If DataGrid2.ApproxCount = 0 Then
num = -1
Else
num = DataGrid2.Text
End If
idRaschod = num
SQL = "Delete * FROM raschod WHERE idRaschod = " & idRaschod
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenDynamic, adLockOptimistic
End With
Set rs = Nothing
cn.Close
Set cn = Nothing
DE.rsComPZ.Close
DE.rsComPZ.Open
DE.rsComPZ.Fields(13).Value.Close
Set DataGrid1.DataSource = DE
Set DataGrid2.DataSource = DE
DataGrid2.Refresh
End Sub
Private Sub Form_Activate()
Set FmZ.DataGrid1.DataSource = DE
Set FmZ.DataGrid2.DataSource = DE
FmZ.DataGrid2.Refresh
End Sub
Private Sub Form_Load()
DataGrid1.Columns("Cl_Z_Men").Visible = False
DataGrid1.Columns("Cl_Z_Client").Visible = False
DataGrid1.Columns("Cl_Z_Tovar").Visible = False
DataGrid1.Columns("Cl_Z_Znum").Visible = False
DataGrid2.Columns("Tovar_name").Visible = False
End Sub
Private cn As ADODB.Connection
Private rs As ADODB.Recordset
Private rsTovar As ADODB.Recordset
Private Sub CBTovar_Click(Area As Integer)
If CBTovar.Text <> "" Then
cmd = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = " & App.Path & "\sclad.mdb;Persist Security Info=False"
'MsgBox cmd
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
SQL = "SELECT * FROM Tovar WHERE idTovar = " & CBTovar.BoundText
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
TextCost.Text = rs("Tovar_price")
End If
End Sub
Private Sub RefreshData()
DE.rsComPZ.Close
DE.rsComPZ.Open
DE.rsComPZ.Fields(13).Value.Close
Set FmZ.DataGrid1.DataSource = DE
Set FmZ.DataGrid2.DataSource = DE
FmZ.DataGrid2.Refresh
End Sub
Private Sub Command1_Click()
'MsgBox idRaschod
If idRaschod = 0 Then ' Добавлние записи
If TextCost.Text = "0" Then
MsgBox "Вы не выбрали товар или цена товара равна нулю"
Exit Sub
End If
If TextQuan.Text = "" Or TextQuan.Text = "0" Then
MsgBox "Количетсво товара не может быть пустым или нулевым значением"
Exit Sub
End If
cmd = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = " & App.Path & "\sclad.mdb;Persist Security Info=False"
'MsgBox cmd
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
'Запрос на вставку данных
SQL = "Insert INTO Raschod (idCl_Z, Raschod_Tovar, Raschod_Price, Raschod_quan) VALUES (" & idCl_Z & ", " & CBTovar.BoundText & "," & TextCost.Text & "," & TextQuan.Text & ")"
'MsgBox SQL
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
' rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End If
If idRaschod <> 0 Then 'Редактирование записи
If TextCost.Text = "0" Then
MsgBox "Вы не выбрали товар или цена товара равна нулю"
Exit Sub
End If
If TextQuan.Text = "" Or TextQuan.Text = "0" Then
MsgBox "Количетсво товара не может быть пустым или нулевым значением"
Exit Sub
End If
cmd = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = " & App.Path & "\sclad.mdb;Persist Security Info=False"
'MsgBox cmd
Set cn = New ADODB.Connection
With cn
.ConnectionString = cmd
.Open
End With
'Запрос на обновление данных
SQL = "UPDATE Raschod SET idCl_Z = " & idCl_Z & ", Raschod_Tovar = " & CBTovar.BoundText & ", Raschod_Price = " & TextCost.Text & ", Raschod_quan = " & TextQuan.Text & " WHERE idRaschod = " & idRaschod
'MsgBox SQL
'MsgBox SQL
Set rs = New ADODB.Recordset
With rs
.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
End With
' rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End If
DE.rsComPZ.Close
DE.rsComPZ.Open
Set FmZ.DataGrid1.DataSource = DE
Set FmZ.DataGrid2.DataSource = DE
FmZ.DataGrid2.Refresh
FmZCont.Hide
Call RefreshData
End Sub
Private Sub Command2_Click()
FmZCont.Hide
End Sub
- Организационная культура как источник конкурентных преимуществ
- Порядок проведения приватизации
- Понятие наследства и наследования. Видовые основания наследования
- Менеджмент как организационно-целевое управление (Понятие, функции и цель менеджмента)
- Особенности политики психологической поддержки персонала организаций бюджетной сферы (Практические аспекты психологической поддержки персонала)
- Эффективный лидер и его команда (Рекомендации по развитию лидерских качеств)
- Добросовестная и недобросовестная ценовая конкуренция (Противодействие недобросовестной конкуренции)
- Учет наличных денежных средств в кассе предприятия (ООО «МельСервис»)
- Оборотные средства предприятия
- Оборотные активы торгового предприятия ЗАО «Ассорти»
- Особенности обеспечения безопасности ОС Windows 7 (Технология защиты Windows 7 )
- "Операции, производимые с данными"