Розробка програмного засобу для вирішення задачі автоматизації платіжного доручення на малому підприємстві

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    1,08 Мб
  • Опубликовано:
    2013-10-12
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Розробка програмного засобу для вирішення задачі автоматизації платіжного доручення на малому підприємстві
















Розробка програмного засобу для вирішення задачі автоматизації платіжного доручення на малому підприємстві

1. Аналіз літератури та вимог технічного завдання

1.1 Загальна характеристика системи, що розроблюється та аналіз вимог до програмного забезпечення


Платіжна вимога-доручення являє собою вимогу постачальника до покупця оплатити вартість поставленої за договором продукції (виконаних робіт, наданих послуг) на підставі спрямованих в обслуговуючий банк платника розрахункових і відвантажувальних документів. Платіжні вимоги-доручення виписуються постачальником і разом з документами направляються в трьох примірниках в банк покупця, який передає вимога-доручення платнику, а відвантажувальні документи залишає в картотеці документів, які очікують рішення покупця.

Платнику надається три дні для того, щоб вирішити питання про оплату отриманого документа: акцептувати платіжну вимогу-доручення або відмовитися від акцепту повністю або частково і повідомити про це обслуговуючий його банк. При відмові повністю або частково оплатити платіжну вимогу-доручення застосовується негативна форма акцепту, яка передбачає повідомлення у письмовому вигляді про відмову від акцепту. Згода не вимагає письмового підтвердження. При позитивній же формі акцепту і про згоду, і про відмову слід повідомити банку письмово

При згоді оплатити платіжну вимогу-доручення повністю або частково платник оформляє його підписами осіб, уповноважених розпоряджатися рахунком, і відбитком печатки на всіх примірниках і здає в обслуговуючий банк, який переводить гроші постачальнику. При цьому один примірник вимоги-доручення передається платнику разом з документами про відвантаження продукції, виконання робіт або надання послуг. У разі повної відмови від акцепту вимога-доручення разом з товарними документами повертається постачальнику (підрядчику).

Враховуючи специфіку використання, до розробляємої системи мають бути висунуті наступні вимоги:

-    ПО повинно забезпечувати роботу в режимі реального часу і допускати проведення в великій кількості операцій вводу / виводу, читання, запису та виводу на друк;

-    керування системою має бути простим, а робота системи повинна знижувати час та кількість помилок неавтоматизованого обліку;

-    апаратна реалізація система повинна буди достатньо простою та помірною за вартістю.

1.2 Аналіз аналогічних програмних продуктів

 

Як приклад схожих програмних продуктів розглянемо програму компанії ООО НПЦ «Бюджет-21» «Платежное поручение 21».

Автоматизована система призначена для автоматизованого оформлення і друку платіжних доручень, ведення їх реєстру і підготовки експортних текстових файлів.

Основні можливості програми:

-  Можливість локальної та мережевої установки.

-       Друк ПП в FASTREPORT, WORD і EXCEL з можливістю модифікації шаблону друку.

-       Детальне налаштування параметрів друку ПД із збереженням налаштувань у вигляді шаблонів.

-       Автоматичне формування полів призначення платежу, платник і одержувач залежності від обраного шаблону друку. Практично немає необхідності набирати вручну текст поля «Призначення платежу». Також є довідник часто використовуваних формулювань для «Назначений платежу»

-       Створення ПД за шаблону. Копіювання ПД. Тобто створення нового ПД на основі старого. (Створенні одного ПД за шаблоном або копіюванням займає 2 секунди).

-       Готовий експорт ПД в три формати, можливість створення власноруч шаблону експорту. Можливість підключення зовнішнього Pluginа для експорту ПП.

-       Вибір стовпців для перегляду реєстру ПД.

-       Сортування реєстру по будь-якому стовпцю.

-       Вибір групи ПД по подвійному кліку на будь-якому стовпці з підрахунком підсумкової суми.

-       Використання при створенні ПД економічної і бюджетної класифікації.

-       Зручні фільтри для пошуку потрібного ПД і запам'ятовування останніх використаних фільтрів.

-       Вибір стовпців для друку реєстру ПД і налаштування зовнішнього вигляду всього реєстру і кожного стовпця окремо.

-       Друк реєстру ПД за шаблону. Необмежена кількість шаблонів.

-       Друк реєстру ПД в FASTREPORT, EXCEL і WORD з можливістю подальшого коректування. Друк в EXCEL і WORD по специфічних швидким алгоритмам.

-       Три алгоритму автоматичної нумерації ПД. Кожен з алгоритмів має свою специфіку для локальної та мережевої роботи.

-       Зв'язок ПД з оплачуваним документом (договір або рахунок). Ведення історії оплати договору або рахунку.

-       Друк реєстру договорів.

-       АС «Платіжне доручення» поставляється в комплекті з довідковою системою і документацією у форматі DOC і PDF.

-       АС «Платіжне доручення» - частина великої бухгалтерського комплексу «Бухгалтерія 107н». Швидкий перехід з АС «Платіжне доручення» на ПК «Бухгалтерія 107н» без втрати даних.

-       Завжди можливо отримувати консультацію за телефонами «Гарячої лінії».

-       Будь-які зміни зовнішнього вигляду ПД або правил його заповнення своєчасно будуть відбиті в нашій програмі.

1.3 Формулювання задач, що підлягають розв’язку в проекті


В проекті необхідно вирішити наступні задачі:

) розробка структури бази даних, що дозволить реалізувати різноманітні операції для створення платіжного доручення: назва банку, підприємства, розрахунковий рахунок.

) розробка самого програмного продукту.

) розробка зручного інтерфейсу користувача.

2. Розробка об’єктної моделі, алгоритмів та структури бази даних


2.1 Розробка об’єктної моделі


Об'єктна модель описує структуру об'єктів, що становлять систему, їх атрибути, операції, взаємозв'язок з іншими об'єктами. У об'єктній моделі повинні бути відображені ті поняття і об'єкти реального світу, які важливі для розроблюваної системи.

Мета розробки об'єктної моделі - описати об'єкти, що складають у сукупності проектовану систему, а також виявити і вказати різні залежності між об'єктами.

В процесі аналізу були виявлені що необхідно розробити інформаційну модель та проаналізувати вхідну і вихідну інформацію.

Інформаційна модель вирішення завдання автоматизації платіжного доручення на малому підприємстві включає:

-  вхідна інформація (довідники підприємств, довідник рахунків);

-       блок рішення задачі (формування платіжного доручення);

-       вихідна інформація (сформоване платіжне доручення).

Вхідна інформація, що використовується для формування платіжного доручення являє собою файли з інформацією про підприємство, файл стану рахунку.

Для вирішення задачі, використовуються такі інформаційні файли:

Довідник підприємств (PIDPRUEMSTVA), що містить інформацію про всі підприємства, що зареєстровані у системі. Структура даного довідника представлена у таблиці 2.1.

Довідник розрахункових рахунків (RAXYNOK) містить дані про зареєстровані у системі рахунки. Структура цього довідника наведена у таблиці 2.2.

Таблиця 2.1 - Структура довідника підприємств (PIDPRUEMSTVA)

Колонка

Тип

id

integer

name_pidpr

text

adress_gorod

text

adress_street

text

adress_dom

text

adress_kvartira

integer

kod_klienta

text

direktor

text

tel

text

kontakt_lizo

text

integer


Таблиця 2.2 - Структура довідника розрахункових рахунків (RAXYNOK)

Колонка

Тип

id_raxynok

integer

namber_rax

text

date_create

date

bank

text


2.2 Розробка алгоритмів


Алгоритм роботи програми для управління персоналом підприємства представлений на рисунку 2.1.

На початку роботи програми проводиться підключення до бази даних. Якщо підключення не виконано, то на екрані з’явиться оповіщення про помилку. Якщо все добре і підключення виконано, то виконується ініціалізація головного вікна програми до якого додаються меню-бар, панель на якій розміщуються елементи, кнопки управління та таблиця для відображення рахунків.

Далі система слідкує за натиском кнопки. Якщо натиснута кнопка додання платіжного доручення, то з’явиться нова панель додання на якій будуть відображені поля для введення даних. Якщо натиснена кнопка редагування, то з’явиться панель додання підприємства з заповненими полями. Якщо натиснена кнопка виділення, то виконується видалення підприємства з бази. Після натиснення на кнопку «OK» або «Cancel» при активній панель додання то зміни збережуться і з’явиться знову головна панель.

При натиску на кнопку «Закрити» виконується вихід з програми та завершення всіх процесів.

Для забезпечення можливості формування платіжного доручення необхідно сформувати базу даних.- об'єктно-реляційна система управління базами даних (СКБД). Є альтернативою як комерційним СКБД (Oracle Database, Microsoft SQL Server, IBM DB2, Informix і СУБД виробництва Sybase) разом з іншими вільними СУБД (такими як MySQL і Firebird).

Існує в реалізаціях для наступних платформ: Linux, Solaris / OpenSolaris, Win32, Mac OS X, FreeBSD, QNX 4.25, QNX 6.

БД складається з 2 таблиць, що пов’язані між собою за допомогою полів - ідентифікаторів. Створена у графічній оболонці для PostgreSQL сервера - Pgadmin 3.

У таблицях використовуються наступні поля даних:

-  text - поле для текстових даних;

-       integer - числове поле для цілих чисел;

-       date/time - поля для дати та часу.

Структура бази даних приведена на рисунку 2.2. та сисунці 2.3.

Рисунок 2.1 - Алгоритм роботи програми

2.3 Розробка структури бази даних

Рисунок 2.2 - Структура бази даних PIDPRUEMSTVO

Рисунок 2.3 - Структура бази даних RAXUNOK

3. Розробка програмного забезпечення


3.1 Вибір засобу автоматизації розробки програмного забезпечення


Для розробки програмного забезпечення будемо використовувати засіб автоматизації MonoDevelop.

MonoDevelop IDE - вільна мультиплатформена середовище розробки, призначена для створення додатків на мовах C #, C, C + +, Java, Visual Basic.NET, CIL, Nemerle, Boo. На даний момент середовище є частиною проекту Mono і є однією з найкращих IDE для розробки проектів на базі Mono.володіє всіма основними можливостями, необхідними для сучасної інтегрованої середовища розробки:

настроюється підсвічування синтаксису;

автоматичне доповнення коду;

виділення блоків коду з можливістю їх згортання / розгортання;

інтелектуальна робота з відступами в коді;

можливості рефакторинга (перейменування класів і методів, автоматична реалізація інтерфейсів в похідних класах);

зручна навігація за кодом (навігація по класах, методам, властивостями);

візуальний редактор форм для проектів на Gtk #;

створення декількох розкладок інтерфейсу і перемикання між ними;

безліч стандартних шаблонів проектів;

можливість автоматичного створення бінарних пакетів та архівів після компіляції вихідного коду;

робота з базами даних;

створення додатків з GUI, що підтримує кілька мов;

інтеграція з Subversion для управління вихідним кодом;

підтримка NUnit для створення Unit-тестів;

автоматичне створення документації;

розширення можливостей за рахунок доповнень і зовнішніх інструментів;

можливість інтеграції з Microsoft Visual Studio і. NET Framework (в середовищі Microsoft Windows).+ (скорочення від GIMP Toolkit) - кроссплатформенна бібліотека елементів інтерфейсу. Поряд з Qt є однією з двох найбільш популярних на сьогоднішній день бібліотек для X Window System.

Будучи спочатку частиною графічного редактора GIMP, вона розвинулась в окремий проект і придбала помітну популярність. GTK + - вільне ПЗ, яке розповсюджується на умовах GNU LGPL, що дозволяє створювати як вільне, так і пропрієтарне програмне забезпечення з використанням бібліотеки. GTK + є офіційною бібліотекою для створення графічного інтерфейсу проекту GNU.+ написана на мові С, але є об'єктно-орієнтованої. GTK + можна писати на мовах програмування таких як C# і інші мови програмування платформи. NET, де GTK + називається GTK# та інших.

Власне GTK + складається з двох компонентів: GTK і GDK. Перший містить набір елементів інтерфейсу, або «віджетів» (таких, як кнопка, список, поле для введення тексту і т. п.) для різних завдань. GDK відповідає за виведення на екран і може використовувати для цього X Window System, Linux Framebuffer, WinAPI або функції Mac OS X. Починаючи з версії 2.8, GDK багато в чому (але не повністю) замінена на систему відтворення векторної графіки Cairo.

Крім Cairo, GTK + залежить від трьох бібліотек - GLib, Pango і ATK, - які розробляються разом з GTK +, але можуть використовуватися і окремо.

3.2 Розробка інтерфейсу користувача


Для доступу до програми необхідна ідентифікація користувача.

Зовнішній вигляд вікна «Регистрация», у якому потрібно ввести логін та пароль користувача, наведено на рис. 3.1. У разі правильно введених даних, користувач має можливість запустити програму натиснувши кнопку «ОК».

Рисунок 3.1 - Вікно «Регистрация»

Вікно створення платіжного доручення має вигляд який представлено на сисунці 3.2. Вікно створення платіжного доручення містить номер платіжного доручення, банк та р/с даного підприємства, суму, яка вводиться прописними буквами, підприємство-отримувач, яке ми можемо обрати з довідника «Підприємство», банк та р/с отримувача також можливо обрати з довідника «Рахунок», також є кнопка обрання: з НДС та без НДС, призначення платежу, де можна написати додаткову інформацію про ПД, сума всього та дата створення, також маються кнопки «Ок» та «Cencel» за допомогою яких можливо підтвердити ПД або війти з нього. Зверху відображається назва організації в якої створено ПД.

Рисунок 3.2 - Вікно «Платежное паручение»

Рисунок 3.3 - Вікно довідника «Предприятие»

Вигляд довідника «Рахунок» показано на рисунці 3.4. Довідник містить колонки з такими назвами: номер р/с, дата создания, банк.

Рисунок 3.4 - Вікно довідника «Рахунок»

При створенні усіх вікон використовувалися наступні контейнери та віджети:

-       VBOX (контейнер, що розбиває головну область вікна на горизонтальні ділянки);

-       НBOX (контейнер, що розбиває головну область вікна на вертикальні ділянки);

-       Menubar (головне меню);

-       Toolbar (меню функцій);

-       Treeview (відмет, що дозволяє візуально відображати таблиці);

-       Button (кнопка);

-       Lable (відображення тексту);

-       Entry (поле для вводу/відображення тексу);

3.3 Розробка SQL запитів


Для того щоб отримувати дані з БД нам необхідно сформувати SQL запити. Для відображення інформації з бази даних на екрані (у вікні програми) у прийнятному та зрозумілому користувачеві вигляді використовуються SQL-запити.

Формування SQL-запитів на основі вже сформованої бази даних можливе за допомогою графічного модулю PostgreSQL - Pgadmin.

Перелік SQL запитів приведений нижче:

.)       SQL-запит для зчитування із бази інформації необхідних для входу користувача до системи має вигляд:

«SELECT * FROM public.user WHERE login='{0}';», де

{0} - це логін користувача, який підключається до системи.

.) SQL-запит для зчитування із бази інформації необхідних для формування таблиці даних студентів має наступний вигляд:

«SELECT * FROM public.user WHERE id_user='{0}';», де

{0} - це номер користувача в базі даних, який увійшов до системи.

.) SQL-запит для повертання значення всіх полів таблиці; SELECT id, Predpriyatie, gorod, yliza, dom, kvartira, kod klienta, director, tel, kontaktnoe_lizo FROM user

.) SQL-запит для занесення в базу даних нового користувача має наступний вигляд:

«INSERT INTO public. {0} (login, password,) VALUES ('{1}', '{2}'), де

{0} - назва бази даних;

{1} - логін;

{2} - пароль.

4. Розробка засобів інтеграції в підприємство


Дана програма не є комерційним продуктом і розроблена за допомогою безкоштовних програмних засобів на операційній системі Linux OC. Серверною СRБД є PostgreSQL 8.4.3. Розробка SQL запитів виконувалася за допомогою програми pgAdminIII, написанні коду, компіляція та тестування виконувалися у програмі MonoDevelop.

Тому для інтеграції розробленого ПЗ є дуже простим, у підприємстві на робочому місці працівника бухгалтерії необхідною на операційній системі є Linux OC, а яку необхідно інсталювати СКБД pgAdminIII. За допомогою цієї програми створити базу даних. За допомогою інструментів pgAdminIII заповнити таблицю даними про підприємства та рахунки. Скопіювати розроблене ПЗ      та у файлі setting.properties вказати шлях до БД, ім’я користувача та пароль. Ці дані необхідні для виконання підключення до БД.

Після проведення дій описаних вище розроблений програмний продукт має запрацювати.

Перелік посилань

1.     http://bibliotekar.ru/bank-14/32.htm

2.       Шилдт Г. «C++: базовый курс» - Вильмс, 2009 - 620 с.

.        Дейт, К., Дж. Введение в системы баз данных, 7-е издание - Вильямс, 2011-1072 с.

.        http://msdn.microsoft.com/ru-ru/vcsharp/aa336809.aspx - Онлайн підручник мови С#.

Додаток А

 

Лістинг програми

Модуль авторизации

using System;Gtk;System. Data;System.IO;Npgsql;CCR_final

{partial class login: Gtk. Dialog

{login()

{. Build();

}virtual void OnEntryPasswordTextInserted (object o, Gtk. TextInsertedArgs args)

{dbconnection = new NpgsqlConnection (MainClass.connect_string);dbcommand = dbconnection. CreateCommand();reader;login_user = entry_login. Text;password_user = entry_password. Text;password_base = «»;kod_user = «»;sql = string. Format («SELECT * from users where login='{0}'», login_user);. Open();. CommandText=sql;= dbcommand. ExecuteReader();(reader. Read())

{_base=reader. GetString (reader. GetOrdinal («password»));_user = reader. GetString (reader. GetOrdinal («kode_user»));

}.working_user = kod_user;(password_user == password_base)

{. Show();. GrabFocus();. Close();. Dispose();. Close();

}

}

Модуль Платежное паручение

using System;Gtk;System. Data;System.IO;Npgsql;PD

{partial class reg_schet: Gtk. Window

{

// Действие по нажатию кнопки «Отмена»virtual void OnButtonCancelClicked (object sender, System. EventArgs e)

{. Hide();

}void insert_values ()

{dbconnection = new NpgsqlConnection (MainClass.connect_string);dbcommand = dbconnection. CreateCommand();reader;sql = string. Format («SELECT * FROM PD WHERE kod_klienta='{0}';», MainClass.vibranii_klient);. Open();. CommandText=sql;= dbcommand. ExecuteReader();(reader. Read())

{_kod_klient. Text=reader. GetString (reader. GetOrdinal («nomer_kl»));_fio_klient. Text=reader. GetString (reader. GetOrdinal («predpr»));

}. Close();. Dispose();. Close();

}reg_schet():(Gtk. WindowType. Toplevel)

{. Build();dbconnection = new NpgsqlConnection (MainClass.connect_string);dbcommand = dbconnection. CreateCommand();reader;

// Заполнение р/с_val. Clear();cr = new CellRendererText();_val. PackStart (cr, false);_val. AddAttribute (cr, «text», 0);= new CellRendererText();_val. PackStart (cr, false);_val. AddAttribute (cr, «text», 1);ls = new ListStore (typeof(string), typeof(string));_val. Model = ls;. Open();combo_query = «SELECT * from schet;»;. CommandText=combo_query;= dbcommand. ExecuteReader();(reader. Read())

{kod = reader. GetString (reader. GetOrdinal («kod_schet»));name = reader. GetString (reader. GetOrdinal («name_bank»));. AppendValues (kod, name);

}_val. Active = 0;. Close();. Dispose();. Close();

// Событие по нажатию кнопки выбрать предприятияvirtual void OnButtonSelectKlientClicked (object sender, System. EventArgs e)

{_final.vibar_klientov viborklientawindow = new PD_final.vibar_klientov();.vibranii_klient=»»;. Modal=true;. Show();. Hide();(MainClass.vibranii_klient!= «»)

{_values();

}

}

//  запись в базу= string. Format («INSERT INTO accounts (nomer_scheta, kov_valuta, open_date, last_mod_date, kod_ispolnitelya, name_scheta, limit_scheta, proz_stavka, balans, kod_klienta) VALUES ('{0}', '{1}', '{2}', '{3}', '{4}', '{5}', {6}, {7}, {8}, '{9}');», nomer_scheta, combobox_val. ActiveText, date, date, MainClass.working_user, name_scheta, limit, proz_stavka, 0, MainClass.vibranii_klient);. Open();. CommandText=sql;. ExecuteNonQuery();. Close();. Dispose();

}

програмний платіжний доручення автоматизація

Похожие работы на - Розробка програмного засобу для вирішення задачі автоматизації платіжного доручення на малому підприємстві

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!