На головну    

 Проектування процесу дослідження для модуля корпоративних інформаційних систем з обліку витрат на виробництві - Економіко-математичне моделювання

МІНІСТЕРСТВО АГРАРНОЇ ПОЛІТИКИ УКРАЇНИ

ЛУГАНСЬКИЙ НАЦІОНАЛЬНИЙ АГРАРНИЙ УНІВЕРСИТЕТ

Курсова робота

з дисципліни «Корпоративні інформаційні системи»

на тему: «Проектування процесу дослідження для модуля корпоративних інформаційних систем з обліку витрат на виробництві».

Виконав: студент 1251 групи

Перевірив:

Луганськ - 2006

Зміст

Введение...3

1. Витрати на виробництві ... ..4

2.Проектірованіе бази даних з обліку витрат ... ..6

3. Проектування бази даних з обліку витрат в Delphi ... ... 12

Висновок ... ... 25

Введення

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

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

1. Витрати на виробництві

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

Таблиця 1 Класифікація витрат за видами діяльності

 Види діяльності

 Витрати

 Звичайна діяльність

 Операційна діяльність

 Основна діяльність

 Собівартість реалізації Собівартість реалізованих фінансових інвестицій, необоротних активів, витрати від неопераційної курсової різниці і т.д.

 Адміністративні витрати корпоративні витрати, витрати на утримання адміністративно-управлінського персоналу та ін.

 Витрати на збут Витрати на упаковку, ремонт тари, оплату праці та комісії продавцям, витрати на рекламу і т.д.

 Інша операційна діяльність

 Інші операційні витрати витрати на дослідження і розробку, собівартість реалізованої валюти, нараховані штрафи та пені, безнадійні борги і т.д.

 Фінансова діяльність Збитки від участі в капіталі збитки, отримані в слідстві інвестування в асоційовані або спільні підприємства, які обліковуються методом участі в капіталі та ін.

 Фінансові витрати Витрати на відсотки (за кредитами отриманими, випущеними облігаціями, фінансовою орендою) та ін.

 Інша діяльність Інші витрати собівартість реалізованих фінансових інвестицій, необоротних активів, витрати від неопераційних курсових різниць і т. Д.

 Надзвичайна діяльність

 Надзвичайна діяльність Надзвичайні витрати Збиток від стихійних лих, пожеж і т. Д.

2.Проектірованіе бази даних з обліку витрат.

При створення бази даних для обліку витрат ми використовуємо метод SADT.

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

Функціональна модель SADT відображає функціональну структуру об'єкта, т. Е. Вироблені їм дії і зв'язки між цими діями. Основні елементи цього методу ґрунтуються на наступних концепціях:

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

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

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

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

Результатом застосування методу SADT є модель, яка складається з діаграм, фрагментів текстів і глосарію, мають посилання один на одного. Діаграми - головні компоненти моделі, всі функції організації та інтерфейси на них представлені як блоки і дуги відповідно. Місце з'єднання дуги з блоком визначає тип інтерфейсу. Керуюча інформація блокується згори, в той час як вхідна інформація, яка піддається обробці, показана з лівого боку блоку і дуги відповідно, а результати (вихід) показані з правого боку. Механізм, який здійснює операцію, представляється дугою, що входить в блок знизу.

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

Розглянемо малюнок 1. На ньому блок А1 являє собою блок в який вносяться дані і звідти надходить в базу даних. Також одночасно надходить команда на збереження даних. А2 являє собою батьківський блок, який складається з бази даних. Блоки А3 і А4 являють собою системи виведення інформації, які є звітами. База даних надходження є таблицею, що складається з наступних полів: номер надходження; назва; кількість; ціна одиниці; сума; дата.

Рис.1 Модель SADT бази даних з обліку надходжень витрат.

Рис.2 Модель SADT бази даних з обліку використання витрат.

На малюнку 2 зображено SADT модель використання витрат. Тут батьківським блоком є ??блок Б2, який складається з бази даних, а блок Б1 - є блоком для внесення даних і збереження внесених даних. Блоки Б3 і Б4 є блоками результатірующій інформації. База даних міститься в блоці Б2 і складається з наступних полів: номер використання витрат, назви, виду витрат, кількості, ціни одиниці, суми, і дати.

Кожне поле бази даних має свій тип даних, які використовуються при створенні SQL-скрипта. Таким чином поля блоку А1 мають наступні типи даних - номер (числове значення з цілими числами); назва (текстове поле); кількість (числове значення); ціна одиниці (числове значення); сума (числове значення); дата (дата).

Для генерації SQL-скрипта використовується програма Power Designer, яка дозволяє візуально сконструювати базу даних. Power Designer також дозволяє пов'язувати таблиці бази даних між собою (рис3).

Рис3. Візуальне проектування бази даних в Power Designer.

Далі Power Designer генерує SQL-скрипт. База даних по обліку витрат має наступний вигляд:

create database "c: \ Zatrat.gdb"

user "1"

password "1";

/ * ================================================ ============== * /

/ * Table: Postuplenie * /

/ * ================================================ ============== * /

create table Postuplenie (

PNom NUMERIC (1,1) not null,

PNazvanie VARCHAR (30) not null,

PEdIzmer VARCHAR (5),

PKolvo INTEGER not null,

PCenaEd INTEGER not null,

PData DATE,

constraint PK_POSTUPLENIE primary key (PNazvanie)

);

/ * ================================================ ============== * /

/ * Table: Rashod * /

/ * ================================================ ============== * /

create table Rashod (

RNom NUMERIC (1,1) not null,

RNazvanie VARCHAR (30) not null,

RVidZatrat VARCHAR (30) not null,

REdIzmer VARCHAR (5),

RKolvo INTEGER not null,

RCenaEd INTEGER not null,

RData DATE not null,

constraint PK_RASHOD primary key (RNazvanie, RVidZatrat)

);

Наступним кроком при створенні курсової є генерація бази даних. Для цього використовується Interbase.

3. Проектування бази даних з обліку витрат в Delphi.

Для підключення бази даних в Delphi використовується компоненти IBDatabase, IBTransaction, IBUpdateSQL, IBQuery, DataSource.

.

Для активації компонента IBDatabase і змінюються його властивості як показано в таблиці 1.

Таблиця 1.

Активація компонента IBDatabase, IBTransaction, IBQuery, DataSource.

 Назва компонента Назва властивостей

 IBDatabase DatabaseName Connected Defaul Transaction

 C: \ ZATRAT.GDB Вказати шлях з вікна огляду. True вказати ім'я та пароль користувача, які вказувалися при реєстрації. IBTransaction1

 IBTransaction DefaultDataBase Active

 IBDatabase True

 IBQuery Database Transaction UpdateObject Active

 IBDatabase IBTransaction IBUpdate True

 DataSource1 DataSet

 IBQuery

Для активації компонента IBQuery необхідно також ввести SQL запит до нього, а для компонента IBUpdateSQL згенерувати SQL запит. Так як база даних складається з декількох таблиць, то використовується кілька компонентів IBUpdateSQL, IBQuery, DataSource, які налаштовуються окремо на кожну таблицю. Вони служать для зв'язку з окремою таблицею бази даних.

Для відображення даних використовується компонент DBGrid. Він також використовується окремо для кожної таблиці бази даних.

Головною формою для бази даних є форма 1 (рис.4).

Малюнок 4. Зовнішній вигляд форми 1.

На цій формі розташовуються компоненти BitBtn, які служать для навігації по таблиці, компонент MainMenu, який використовується для перемикання між іншими формами і компоненти Button - використовуються для управління базою даних (додавання, редагування, видалення, збереження даних). Компонент PageControl використовується для перемикання між таблицею надходження і таблицею використання. Також при натисканні кнопки «Додати» відбувається відкриття форми 3 (рис. 5), яка служить для внесення даних в базу даних надходження. На формою 3 для внесення даних служать компоненти DBEdit.

Малюнок 5. Зовнішній форми 3 «Надходження».

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

При натисканні на формі 1 у рядку меню пункту «Фільтр» відкривається список, де можна вибрати «Фільтр надходження» і «Фільтр використання». При натисканні на один з цих пунктів відкривається відповідна форма 5 або 6.

При натисканні на підпункт «Фільтр надходження» обробляється наступна процедура:

Form5.Show;

Form1.Hide;

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.Active:=true;

Де перший рядок говорить про відкритті форми 5 «Фільтр надходження», при цьому форма один не закривається, а ховається. Це прописано в другому рядку. У третій і четвертій рядку активність компонента IBQueryFPostuplenie спочатку вимикається, а потім включається - це служить для поновлення даних, які були нещодавно внесені в базу даних.

Форма 5 служить для фільтрації даних з бази даних. Зовнішній вигляд форми 5 зображений на малюнку 6.

Малюнок 6. Приклад форми 5.

На цій формі для вибору критеріїв фільтрації даних використовуються компоненти CheckBox, тобто перемикачі, які розташовані на компоненті GroupBox1. При активації CheckBox1 (напис «За датою») обробляється наступна процедура:

procedure TForm5.CheckBox1Click (Sender: TObject);

begin

If Form5.CheckBox1.Checked = true then

begin

Form5.GroupBox2.Visible: = true;

Form5.Button1.Visible: = true;

end;

If Form5.CheckBox1.Checked = false then

begin

Form5.GroupBox2.Visible: = false;

if Form5.CheckBox2.Checked = false then

begin

Form5.Button1.Visible: = false;

end;

end;

У цій процедурі відбувається зміна властивості Visible компонентів GroupBox2 і Button1 з False на True, тобто відкривається вікно для введення критеріїв фільтрації. Також при деактивизации цього компонента відбувається зворотна процедура.

Аналогічна процедура відбувається і при активізації та деактивизации компонента CheckBox2:

If Form5.CheckBox2.Checked = true then

begin

Form5.GroupBox3.Visible: = true;

Form5.Button1.Visible: = true;

end;

If Form5.CheckBox2.Checked = false then

begin

Form5.GroupBox3.Visible: = false;

If Form5.CheckBox1.Checked = false then

begin

Form5.Button1.Visible: = false;

end;

end;

При натисканні на кнопку Button1 («Фільтрувати») обробляється наступна процедура:

If Form5.CheckBox1.Checked = true Then

begin

If Form5.CheckBox2.Checked = false then

begin

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.SQL.Clear;

DataModule2.IBQueryFPostuplenie.SQL.add ('select PNOM, PNAZVANIE, PSUMA, PDATA from POSNUPLENIE where PDATA> =' '' + Form5.Edit1.Text + '' 'and PDATA <=' '' + Form5.Edit2.Text + '' '');

DataModule2.IBQueryFPostuplenie.Active:=true;

end;

end;

If Form5.CheckBox1.Checked = true then

begin

If Form5.CheckBox2.Checked = true then

begin

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.SQL.Clear;

DataModule2.IBQueryFPostuplenie.SQL.add ('select PNOM, PNAZVANIE, PSUMA, PDATA from POSNUPLENIE where PDATA> =' '' + Form5.Edit1.Text + '' 'and PDATA <=' '' + Form5.Edit2.Text + '' 'and PNAZVANIE =' '' + Form5.Edit3.Text + '' '');

DataModule2.IBQueryFPostuplenie.Active:=true;

end;

end;

If Form5.CheckBox1.Checked = false then

begin

If form5.CheckBox2.Checked = true then

begin

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.SQL.Clear;

DataModule2.IBQueryFPostuplenie.SQL.add ('select PNOM, PNAZVANIE, PSUMA, PDATA from POSNUPLENIE where PNAZVANIE =' '' + Form5.Edit3.Text + '' '');

DataModule2.IBQueryFPostuplenie.Active:=true;

end;

end;

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

При натисканні в рядку меню пункту «Звіт» відбувається відкриття списку, де вибирається вид звіту: простий звіт або HTML звіт. Для створення простого звіту використовуються компоненти RvProject і RvDataSetConnection. Компонент RvProject використовується для зв'язку з бланком звіту, а компонент RvDataSetConnection для зв'язку з базою даних. При натисканні на підпункт «Звіт» відбувається формування простого звіту, який можна переглянути, роздрукувати або зберегти файл. Для формування HTML звіту використовуються компоненти PageProducer, DataSetPageProducer, DataSetTableProducer.

Аналогічний вигляд має форма 6 «Використання витрат». На ній додані тільки критерії фільтрації по виду витрат. Тому при натисканні на кнопку «Фільтрувати» обробляється більш складна процедура:

If Form6.CheckBox1.Checked = true then

begin

If Form6.CheckBox2.Checked = false then

begin

if Form6.CheckBox3.Checked = false then

Begin

DataModule2.IBQueryFRashod.Active:=false;

DataModule2.IBQueryFRashod.SQL.Clear;

DataModule2.IBQueryFRashod.SQL.Add ('select RNOM, RNAZVANIE, RVIDZATRAT, RSUMA, RDATA from RASHOD where RDATA> =' '' + Form6.Edit1.Text + '' 'and RDATA <=' '' + Form6.Edit2.Text + '' '');

DataModule2.IBQueryFRashod.Active:=True;

end;

end;

end;

If Form6.CheckBox1.Checked = true then

begin

If Form6.CheckBox2.Checked = true then

begin

if Form6.CheckBox3.Checked = false then

Begin

DataModule2.IBQueryFRashod.Active:=false;

DataModule2.IBQueryFRashod.SQL.Clear;

DataModule2.IBQueryFRashod.SQL.Add ('select RNOM, RNAZVANIE, RVIDZATRAT, RSUMA, RDATA from RASHOD where RDATA> =' '' + Form6.Edit1.Text + '' 'and RDATA <=' '' + Form6.Edit2.Text + '' 'and RNAZVANIE =' '' + Form6.Edit3.Text + '' '');

DataModule2.IBQueryFRashod.Active:=True;

end;

end;

end;

If Form6.CheckBox1.Checked = true then

begin

If Form6.CheckBox2.Checked = true then

begin

if Form6.CheckBox3.Checked = true then

Begin

DataModule2.IBQueryFRashod.Active:=false;

DataModule2.IBQueryFRashod.SQL.Clear;

DataModule2.IBQueryFRashod.SQL.Add ('select RNOM, RNAZVANIE, RVIDZATRAT, RSUMA, RDATA from RASHOD where RDATA> =' '' + Form6.Edit1.Text + '' 'and RDATA <=' '' + Form6.Edit2.Text + '' 'and RNAZVANIE =' '' + Form6.Edit3.Text + '' 'and RVIDZATRAT =' '' + Form6.Edit4.Text + '' '');

DataModule2.IBQueryFRashod.Active:=True;

end;

end;

end;

If Form6.CheckBox1.Checked = false then

begin

If Form6.CheckBox2.Checked = true then

begin

if Form6.CheckBox3.Checked = false then

Begin

DataModule2.IBQueryFRashod.Active:=false;

DataModule2.IBQueryFRashod.SQL.Clear;

DataModule2.IBQueryFRashod.SQL.Add ('select RNOM, RNAZVANIE, RVIDZATRAT, RSUMA, RDATA from RASHOD where RNAZVANIE =' '' + Form6.Edit3.Text + '' '');

DataModule2.IBQueryFRashod.Active:=True;

end;

end;

end;

If Form6.CheckBox1.Checked = false then

begin

If Form6.CheckBox2.Checked = true then

begin

if Form6.CheckBox3.Checked = true then

Begin

DataModule2.IBQueryFRashod.Active:=false;

DataModule2.IBQueryFRashod.SQL.Clear;

DataModule2.IBQueryFRashod.SQL.Add ('select RNOM, RNAZVANIE, RVIDZATRAT, RSUMA, RDATA from RASHOD where RNAZVANIE =' '' + Form6.Edit3.Text + '' 'and RVIDZATRAT =' '' + Form6.Edit4.Text + '' '');

DataModule2.IBQueryFRashod.Active:=True;

end;

end;

end;

If Form6.CheckBox1.Checked = false then

begin

If Form6.CheckBox2.Checked = false then

begin

if Form6.CheckBox3.Checked = true then

Begin

DataModule2.IBQueryFRashod.Active:=false;

DataModule2.IBQueryFRashod.SQL.Clear;

DataModule2.IBQueryFRashod.SQL.Add ('select RNOM, RNAZVANIE, RVIDZATRAT, RSUMA, RDATA from RASHOD where RVIDZATRAT =' '' + Form6.Edit4.Text + '' '');

DataModule2.IBQueryFRashod.Active:=True;

end;

end;

end;

Форма 7 і форма 8 мають подібний інтерфейс з формою 5 і формою 6 відповідно. Різниця полягає в тому, що при виборі даних відбувається підсумовування сум та однакові записи не повторюються. При натисканні на кнопку «Фільтрувати» відбувається вибір даних. У формі 7 критерії вибору даних відбуваються також як і у формі 5, різниця полягає лише в структурі SQL запиту до бази даних:

If Form5.CheckBox1.Checked = true Then

begin

If Form5.CheckBox2.Checked = false then

begin

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.SQL.Clear;

DataModule2.IBQueryFPostuplenie.SQL.add ('select PNOM, PNAZVANIE, PSUMA, PDATA from POSNUPLENIE where PDATA> =' '' + Form5.Edit1.Text + '' 'and PDATA <=' '' + Form5.Edit2.Text + '' '');

DataModule2.IBQueryFPostuplenie.Active:=true;

end;

end;

If Form5.CheckBox1.Checked = true then

begin

If Form5.CheckBox2.Checked = true then

begin

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.SQL.Clear;

DataModule2.IBQueryFPostuplenie.SQL.add ('select PNOM, PNAZVANIE, PSUMA, PDATA from POSNUPLENIE where PDATA> =' '' + Form5.Edit1.Text + '' 'and PDATA <=' '' + Form5.Edit2.Text + '' 'and PNAZVANIE =' '' + Form5.Edit3.Text + '' '');

DataModule2.IBQueryFPostuplenie.Active:=true;

end;

end;

If Form5.CheckBox1.Checked = false then

begin

If form5.CheckBox2.Checked = true then

begin

DataModule2.IBQueryFPostuplenie.Active:=false;

DataModule2.IBQueryFPostuplenie.SQL.Clear;

DataModule2.IBQueryFPostuplenie.SQL.add ('select PNOM, PNAZVANIE, PSUMA, PDATA from POSNUPLENIE where PNAZVANIE =' '' + Form5.Edit3.Text + '' '');

DataModule2.IBQueryFPostuplenie.Active:=true;

end;

end;

Висновок

У цій роботі створена база даних, яка дозволяє враховувати витрати в процесі виробництва.

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

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

© 8ref.com - українські реферати