Информационная система (ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ)

Міністерство освіти і науки України

Тернопільська академія народного господарства

Інститут комп’ютерних інформаційних технологій

Кафедра моделювання та оптимізації економічних систем і процесів

ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ

(на прикладі ПП «Біомед»)

Дипломний проект

Спеціальність 7.050207  "Інформаційні системи в менеджменті"

студент групи ІСМ-51 ________ Г. Конєв

Керівник к.т.н.,

доцент                        ________ І. Білоусов

Зав. кафедри МОЕСП

К.е.н., доцент             ________ Г. Гладій

2000

АНОТАЦІЯ

дипломного проекту Конєва Григорія Борисовича

"Інформаційна система обліку і аналізу розрахунків з постачальниками і підрядниками"

(на прикладі ПП “Біомед”)

ТАНГ, IКIТ, кафедра ІІТ, група IСМ- 51, 2000 рік.

          Обсяг дипломного проекту 104 сторiнки.

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

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

ANNOTATION

degree project of Konev Gregory Borysovych

"The information system of account and analysis of accounts with the suppliers"

(on an example of the private enterprise “Biomed”)

TANE, ICIТ, Department IIT, group ISM- 51, 2000.

Volume of degree project 104 of pages.

In the given degree project the research of methods of account and analysis of accounts with the suppliers. The model of system model and it's detail description is given, mathematical and dataware have been designed and used. Programmed realization system was designed.

Results of given degree project can be aplied as at the enterprises occupied medical preparations, and at the enterprises of other structure.

Змн.        

Лист

№ Докум.

Підпис

Дата

Арк.

4

ІКІТ.95712.105.ДП

 Розроб.

Конєв Г.Б.

 Перевір.

Білоусов І.А.

 Реценз.

 Н. Контр.

Васильків Н.М

 Затверд.

Маслияк Б.О.

ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ

Літ.

Аркушів

105

ТАНГ, ІКІТ, ІСМ-51
Зміст TOC \o "1-3"

Вступ......................................................................................... \h

1. Аналіз потреб ПП “Біомед” в створенні КІС обліку і аналізу розрахунків з постачальниками і підрядниками............................................ \h

1.1. Характеристика ПП “Біомед” і опис діючої системи обліку розрахунків з постачальниками і підрядниками............................................ \h

1.2 Існуючі шляхи розв’язку задачі обліку розрахунків з постачальниками і підрядниками......................................................................... \h

1.3 Постановка задачі на проектування............................. \h

2.  Розробка загальносистемних рішень............................... \h

2.1 Загальна структура розроблюваної системи............... \h

2.2 Математично-алгоритмічне забезпечення................... \h

2.3 Інформаційне забезпечення.......................................... \h

3. Програмно-технічна реалізація системи........................... \h

3.1. Структура програмного забезпечення....................... \h

3.2. Розробка програмних модулів.................................... \h

3.3 Практична реалізація системи...................................... \h

Висновки................................................................................. \h

Література.............................................................................. \h

Додаток 1................................................................................ \h

Додаток 2................................................................................ \h

Додаток 3................................................................................ \h

Додаток 4................................................................................ \h

Додаток 5................................................................................ \h

Додаток 6................................................................................ \h

Додаток 7................................................................................ \h

Додаток 8................................................................................ \h

Додаток 9................................................................................ \h

Додаток 10.............................................................................. \h

Додаток 11.............................................................................. \h

Додаток 12.............................................................................. \h

Додаток 13.............................................................................. \h

Додаток 14.............................................................................. \h

Змн.

Арк.

№ докум.

Підпис

Дата

Арк.

5

ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ

.............................................................................. \h

Додаток 16.............................................................................. \h

Додаток 17.............................................................................. \h

Додаток 18.............................................................................. \h

Додаток 19.............................................................................. \h

Додаток 20.............................................................................. \h

Додаток 21.............................................................................. \h

Додаток 22.............................................................................. \h

Додаток 23.............................................................................. \h

                Додаток 24……………………………………………………….99

          Додаток 25……………………………………………………….100

          Додаток 26……………………………………………………….101

          Додаток 27……………………………………………………….102

          Додаток 28……………………………………………………….103

          Додаток 29……………………………………………………….104

          Додаток 30……………………………………………………….105

ВСТУП

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

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

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

1 АНАЛІЗ ПОТРЕБ ПП “БІОМЕД” В СТВОРЕННІ КІС ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ

1.1 Характеристика ПП “Біомед” і опис діючої системи обліку розрахунків з постачальниками і підрядниками

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

В своїй діяльності підприємство керується Законами України “Про підприємництво”, “Про підприємства України”, та іншими актами та нормативами з врахуванням особливостей, що передбачені в статуті підприємства.

Предметом діяльності підприємства є:

-        

-        

-        

-        

-        

-        

-        

-        

-        

-        

-        

-        

-        

-        

-        

Структуру підприємства зображено в додатку 1.

На даний момент основним видом діяльності підприємства є роздрібна торгівля медикаментами. Це передбачає, зокрема, ведення бухгалтерського обліку.

На підприємстві вже автоматизовано задачі бухгалтерського обліку “Склад” та “Реалізація товару”. Це здійснено засобами СУБД Microsoft Visual FoxPro 5.0. Для цього на підприємстві є такі технічні засоби:

-         комп’ютер на базі процесора Pentium з тактовою частотою 133 мегагерца, оперативною памяттю в 32 мегабайта, жорстким диском об’ємом 3,2 гігабайта, монітором 14” SVGA з роздільною здатністю 800х600 пікселів;

-         принтер Hewlett Packard DeskJet 400.

Задача “Облік розрахунків з постачальниками і підрядниками” вирішується на підприємстві у торговому відділі і не є автомвтизована. Призначення задачі – видача фінансової інформації про діяльність підприємства і формування звітних документів.

Порядок обліку товарообороту на підприємствах роздрібної торгівлі наступний. Товари від місця виробництва до роздрібної торговельної організації доставляє оптова торгівля. Роздрібна організація реалізуює товари безпосередньо споживачам. Товари поступають до магазинів (або роздрібних торговельних організацій) у порядку децентралізованих закупок самого магазину. Деякі товари надходять з місць виробництва безпосередньо у роздрібну торговельну мережу, обминаючи оптову ланку. Через оптові ланки проходять товари, що потребують комплектування їх у широкий торговельний асортимент, необхідний для безперебійного і рівномірного постачання роздрібних торговельних підприємств. Облік розрахунків з постачальниками ведеться на рахунку № 60 “Розрахунки з постачальниками і підрядниками”. Оприбуткування товарів від постачальників оформляється записом в дебеті рахунка № 41 “Товари” (субрахунок 01 чи 02) та в кредиті рахунка № 60 “Розрахунки з постачальниками і підрядниками”. При оплаті рахунка робиться запис в дебеті рахунка № 60 “Розрахунки з постачальниками і підрядниками” та в кредиті рахунка № 52 “Валютний рахунок”, або № 51 “Розрахунковий рахунок”, або № 66 “Векселі видані”. Оприбуткування товарів оформляється по цінах реалізації [].

Окрім вищенаведених бухгалтерських проводок, які є найчисленішими у підприємстві роздрібної торгівлі, можливі і наступні варіанти: кредит рахунка № 60 – дебет рахунка № 03, 05, 06, 07, 08, 12, 42, 43, 44, 45, 46, 47, 50, 55, 61, 62, 63, 78, 79, 84, 87, 93, 96, дебет рахунка № 60 – кредит рахунка № 42, 46, 49, 50, 52, 55, 61, 62, 66, 68, 76, 78, 90, 93, 96.

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

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

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

Технологічна схема процесу вирішення задачі обліку з постачальниками наведена в додатку 2.

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

Тому доцільно реалізувати задачу обліку розрахунків з постачальниками і підрядниками на ЕОМ, щоб спростити та прискорити її розв’язання.

1.2 Існуючі шляхи розв’язку задачі обліку розрахунків з постачальниками і підрядниками

Оскільки методика бухгалтерського обліку єдина і стандартизована, вибір шляху розв’язку даної задачі зводиться до вибору програмного середовища, в якому доцільніше її розв’язувати. Тут можливі два альтернативні напрямки – встановлення готової спеціалізованої бухгалтерської системи і розробка власної. З спеціалізованих систем можна виділити російський “1С” та вітчизняний “X-Door” Запорізької фірми “SoftTaxi”. Ці обидва пакети є досить потужними і гнучкими (особливо “1С”). Зокрема, одним із шляхів вирішення проблеми міг би бути вибір компонента “1С” – “1С: Бухгалтерія”, який можна додатково налаштувати на виконання деяких функцій оперативного обліку. Але на сьогодні всі спеціалізовані системи, які варті уваги, мають один суттєвий недолік – відносно високу вартість (в першу чергу це стосується дрібних підприємств). Очевидно, що якщо підприємство має на меті одержання прибутку, то так чи інакше всі управлінські рішення повинні бути економічно обгрунтованими. А для обгрунтування такого рішення, як вибір системи комп’ютеризованого обліку повинні враховуватись такі фактори, як економічна ефективність та ціна системи, і на основі аналізу цих факторів вже повинен робитись висновок про доцільність тієї чи іншої системи [].

1.3 Постановка задачі на проектування

З огляду на те, що приватне підприємство “Біомед” не є великим підприємством, займається одним видом діяльності і має порівняно просту структуру, (поки що), зараз воно не має потреби у великій і дорогій системі. Адже, наприклад, лише один компонент системи “1С” “1С: Бухгалтерія” (на момент написання проекту) коштує 1309 грн. (245 у.о.), а мережева версія – 5200 грн. (972 у.о.). Очевидно, що придбання фірмою такого пакету не є оптимальним шляхом.

Як ще один спосіб вирішення проблеми може бути вибір нелегальних копій програмного забезпечення, які значно дешевші за оригінал. Це є на даний час досить поширеним, але цьому способу притаманні свої недоліки. Один з них полягає в слідуючому. Метою впровадження на підприємстві автоматизованого бухгалтерського обліку є поступовий перехід на повністю комп’ютеризовану систему і заміна нею існуючої паперової системи. Це дасть змогу оперативно одержувати різноманітні звіти про діяльність фірми, як в розрізах, зручних для аналізу, так і документів, що являються необхідними звітними документами, навіть баланс всього підприємства. А як відомо, для того, щоб така система працювала на підприємстві, вона повинна бути ліцензована. Звісно, ліцензування нелегальних копій програмних продуктів (наприклад, “1С”) неможливе. Отже, окрім інших аспектів, використання нелегального програмного забезпечення для автоматизації бухгалтерського обліку не є прийнятним ще й тому, що це не дасть можливості для розвитку системи в майбутньому [].

Вагомим аргументом на користь створення власної системи (наприклад, засобами Visual FoxPro) також є те, що в такій системі можна передбачити всі тонкощі і особливості, які пов’язані з торгівлею медикаментами, для здійснення оперативного обліку і елементів аналізу.

 Щодо вибору конкретного інструментарію для створення системи, він цілком виправдано падає на Microsoft Visual FoxPro, оскільки на підприємстві на даний момент вже працюють дві системи обліку (“Склад” та “Реалізація товару”), які створені на основі цієї СУБД. Це створить можливості для інтеграції всіх компонентів в єдину систему,  модернізації існуючих та створення нових компонентів по мірі розвитку підприємства.

2 РОЗРОБКА ЗАГАЛЬНОСИСТЕМНИХ РІШЕНЬ

2.1 Загальна структура розроблюваної системи

Для розгляду структури розроблюваної системи обліку і аналізу розрахунків з постачальниками та взаємозв’язку із зовнішніми об’єктами зручно представити систему у вигляді DFD-діаграм. В додатку 3 подано контекст-діаграму розроблюваної системи, яка відображає зв’язки з зовнішніми об’єктами і визначає вхідні та вихідні потоки інформації []. Для даної системи можна умовно виділити три зовнішні об’єкти: постачальники, банк і бухгалтерія підприємства. На вхід системи від постачальників надходять розхідні накладні, а з банку – проплачені платіжні доручення. В процесі роботи системи формуються наступні результатні документи:

-         оборотні відомості;

-         узагальнені оборотні відомості;

-         сальдові відомості;

-         узагальнені сальдові відомості;

-         журнал-ордер;

-         акт звірки.

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

За допомогою діаграми 1-го рівня, яку подано в додатку 4, проведено декомпозицію системи на окремі процеси. В результаті можна виділити наступні процеси:

-         ведення журналу операцій (процес 1);

-         формування результатних документів (процес 2);

-         друк і передача результатних документів (процес 3).

Для процесу 1 “Ведення журналу операцій” вхідними є дані, отримані з розхідних накладних, що надходять від постачальника і дані, отримані з проплачених платіжних доручень, які надходять з банку. В результаті ведення журналу операцій утворюються дані про операції, які є вхідними для процесу 2 “Формуванння результатних документів”. Цей процес також використовує вхідні дані для процесу 1 для звірки і виявлення помилок. На виході процесу 2 формуються в електронному вигляді ті ж самі документи, які будуть вихідними документами для всієї системи. За допомогою процесу 3 ці документи роздруковуються і передаються в бухгалтерію підприємства.

Розглянемо детальніше процес 1 “Ведення журналу операцій” за допомогою діаграми другого рівня, що наведена в додатку 5. Даний процес складається з наступних дрібніших процесів:

-         ввід і контроль інформації (процес 1.1);

-         запис на магнітний носій (процес 1.2);

-         звірка і корекція БД (процес 1.3).

Інформація з розхідних накладних і платіжних доручень є вхідною для процесів 1.1 “Ввід і контроль інформації” та 1.3 “Звірка і корекція БД”. Після процесу 1.1 введена інформація про операції записується на магнітний носій (вінчестер) в файл операцій. Записана інформація використовується в процесі 1.3 при звірці і корекції БД. На виході процесу 1.3 (і всього процесу 1) – дані про операції.

Деталізація процесу 2 “Формування результатних документів” за допомогою діаграми другого рівня наведена в додатку 6. В результаті декомпозиції даного процесу одержуємо наступні дрібніші процеси:

-         формування оборотних відомостей (процес 2.1);

-         формування узагальнених оборотних відомостей (процес 2.2);

-         формування сальдових відомостей (процес 2.3);

-         формування узагальнених сальдових відомостей (процес 2.4);

-         формування журнала-ордера (процес 2.5);

-         формування акту звірки (процес 2.6).

Дані про операції є вхідними для процесів 2.1, 2.3, 2.5 та 2.6, на виході яких формуються відповідно оборотні відомості, сальдові відомості, журнал-ордер та акт звірки. Оборотні і сальдові відомості є вхідними даними відповідно для процесів 2.2 та 2.4, в яких формуються узагальнені відомості.

Процес 3 “Друк і передача результатних документів” не вимагає деталізації.

Для висвітлення технології рішення даної задачі у системі, що проектується і для порівняння її з існуючою технологією, систему зручно представити у вигляді техпроцесу, який зображено в додатку 7. При оприбуткуванні товару дані з накладних вводяться в пам’ять ЕОМ. В процесі введення даних ідбувається їх перевірка на правильність, повідомлення про помилки (якщо вони виявлені) виводяться на екран монітора, і процедура вводу повторюється. Після того, як дані введені і перевірені, вони записуються на жорсткий диск ЕОМ в наступні файли: “Журнал операцій”, “Партнер” та “Товар”.

Аналогічно здійснюється ввід даних з платіжних доручень і корекція помилок при оплаті рахунку. В цьому випадку дані записуються на жорсткий диск ЕОМ у файли “Журнал операцій” і “Платіжні доручення”.

В результаті наступних етапів формуються результатні документи, для чого використовується інформація з файлу “Журнал операцій”. Це етапи: “Формування журнала-ордера”, “Формування оборотно-сальдових відомостей” і “Аналіз оплати і оприбуткування”.

2.2 Математично-алгоритмічне забезпечення

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

Таблиця  SEQ Таблиця \* ARABIC 1. Реквізити-основи

Показник

Назва реквізиту

Позначення у файлі

R1

Сальдо дебетове на початок місяця

SDP

R2

Сальдо дебетове на кінець місяця

SDK

R3

Сальдо кредитове на початок місяця

SKP

R4

Сальдо кредитове на кінець місяця

SKK

R5

Дебетовий оборот

OD

R6

Кредитовий оборот

OK

R7

Загальний дебетовий оборот

ZOD

R8

Загальний кредитовий оборот

ZOK

R9

Сума операції

O

R10

Сума операцій

SO

R11

Сума операцій по дебету

SOD

R12

Сума операцій по кредиту

SOK

W1

Сума

S

W2

Загальна сума

SS

V1

Кількість

K

V2

Ціна

P

V3

Проплачена сума

PS

Таблиця  SEQ Таблиця \* ARABIC 2. Реквізити-ознаки

Показник

Назва реквізиту

Позначення у файлі

P1

Товар

I

P2

Постачальник

J

P3

Дата

D

P4

Номер накладної

N

P5

Дебетовий рахунок

RD

P6

Кредитовий рахунок

RK

P7

Дебет рахунка № 60

RRD

P8

Кредит рахунка № 60

RRK

P9

Місяць

M

P10

Дата початку місяця

DP

P11

Дата кінця місяця

DK

P12

Дата оплати

Z

Граф взаємозв’язку показників зображений в додатку 8.

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

1)     – сума товару i, поставленого постачальником j на дату d за накладною n.

                                                                        (1)

де:  – кількість товару i, поставленого постачальником j на дату d за накладною n;

 – ціна товару i, поставленого постачальником j на дату d за накладною n.

2)     – загальна сума товару, поставленого постачальником j на дату d за накладною n.

.                                                                            (2)

3)     – сума операції по дебету рахунка rd і по кредиту рахунка rk по накладній n постачальника j на дату d.

;                                                                            (3)

,                                                                           (4)

де – сума, проплачена постачальнику j на дату z згідно накладної n за дату d.

4)     – оборот по дебету рахунка №60 і кредиту рахунка rk по партнеру j на дату d. Показник формується шляхом вибірки без арифметичних обчислень.

5)     – оборот по кредиту рахунка №60 і дебету рахунка rd по партнеру j на дату d. Формується шляхом вибірки.

6)     – загальний оборот по дебету рахунка №60 по партнеру j за місяць m.

                                                                   (5)

7)     – загальний оборот по кредиту рахунка №60 по партнеру j за місяць m.

                                                         (6)

8)     – сальдо на кінець місяця m по дебету рахунка №60 по партнеру j.

                                                     (7)

9)     – сальдо на кінець місяця m по кредиту рахунка №60 по партнеру j.

                                                     (8)

10)             – сальдо на початок місяця m по дебету рахунка №60 по партнеру j.

                                                                    (9)

11)             – сальдо на початок місяця m по кредиту рахунка №60 по партнеру j.

                                                                     (10)

12)             – сальдо на кінець місяця m по дебету рахунка №60.

                                                                (11)

13)             – сальдо на кінець місяця m по кредиту рахунка №60.

                                                                 (12)

14)             – сальдо на початок місяця m по дебету рахунка №60.

                                                                  (13)

15)             – сальдо на початок місяця m по кредиту рахунка №60.

                                                                   (14)

16)             – сума операцій по дебету рахунка №60 і по кредиту рахунка rk.

                                                      (15)

17)             – сума операцій по кредиту рахунка №60 і по дебету рахунка rk.

                                                      (16)

18)             – сума операцій по дебету рахунка №60.

                                                                  (17)

19)             – сума операцій по кредиту рахунка №60.

                                                                  (18)

2.3 Інформаційне забезпечення

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

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

Для  машинної обробки інформації необхідно провести класифікацію та кодування всіх реквізитів-ознак. Закодовані реквізити представимо у таблиці 3.

Таблиця  SEQ Таблиця \* ARABIC 3. Опис класифікаторів та систем кодування

Назва кодованої множини

Система кодування

Структура коду

Розшифрування розрядів

Товар

Порядкова

ХХХХ

Порядковий номер товару

Постачальник

Порядкова

ХХХ

Порядковий номер постачальника

Дата

Позиційна

ХХ.ХХ.ХХХХ

Число, місяць, рік

Номер накладної

Порядкова

ХХХ

Номер накладної

Дебетовий рахунок

Позиційна

ХХ.ХХ

Номер рахунка, номер субрахунка

Кредитовий рахунок

Позиційна

ХХ.ХХ

Номер рахунка, номер субрахунка

Місяць

Позиційна

ХХ.ХХХХ

Місяць, рік

Дата початку місяця

Позиційна

ХХ.ХХ.ХХХХ

Число, місяць, рік

Дата кінця місяця

Позиційна

ХХ.ХХ.ХХХХ

Число, місяць, рік

Дата оплати

Позиційна

ХХ.ХХ.ХХХХ

Число, місяць, рік

Вхідними документами для даної задачі будуть:

-         розхідна накладна;

-         платіжне доручення.

Документ “Розхідна накладна” містить інформацію про поставку товару (дата, найменування товару, ціна товару, кількість товару, загальна сума, назва та реквізити постачальника, назва та реквізити одержувача). Цей документ заповнюється постачальником і є основним документом, що засвідчує факт поставки товару. Реквізити з нього заносяться в базу даних, де міститься інформація про всі поставки товарів. Форма документа наведена в додатку 9. Табличний опис документа представлений в таблиці 4.

Таблиця  SEQ Таблиця \* ARABIC 4. Табличний опис документа "Розхідна накладна"

Назва реквізиту

Тип та значність

Діапазон змін

Назва постачальника

C(40)

Назва населеного пункту

C(15)

Адреса

C(30)

Номер телефону

C(10)

Факс

C(10)

Назва банку

C(45)

Номер розрахункового рахунка

C(15)

МФО

C(10)

Індивідуальний податковий номер

C(10)

ЗКПО

C(15)

Номер накладної

C(5)

Дата

D(8)

Назва товару

C(30)

Одиниця виміру

C(5)

Кількість

N(8.3)

0..9999.999

Вартість

N(8.4)

0..9999.9999

Сума

N(6.2)

0..9999.99

Загальна сума

N(7.2)

0..99999.99

Документ “Платіжне доручення” містить інформацію про оплату поставленого товару (дата оплати, сума, назва і реквізити одержувача, призначення платежу). Цей документ заповнюється платником, а після того, як здійснено оплату і банком проставлено на ньому печатки і підпис, одна його копія потрапляє до одержувача, а інша повертається до платника. Документ є засвідченням факту оплати. Реквізити з нього заносяться в базу даних, де міститься інформація про всі проведені оплати. Форма документа наведена в додатку 10. Табличний опис документа представлений в таблиці 5.

Таблиця  SEQ Таблиця \* ARABIC 5. Табличний опис документа "Платіжне доручення"

Назва реквізиту

Тип та значність

Діапазон змін

Номер платіжного доручення

C(5)

Дата оплати

D(8)

Сума

N(6.2)

0..9999.99

Назва одержувача

C(40)

Код одержувача за ЄДРПОУ

C(9)

Назва банку одержувача

C(45)

Особистий код банку

C(7)

Номер рахунку

C(15)

Номер накладної

C(5)

Дата

D(8)

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

Вихідними документами для даної задачі будуть:

-            обороти по дебету;

-            обороти по кредиту;

-            загальний оборот по дебету;

-            загальний оборот по кредиту;

-            сальдо на початок місяця;

-            сальдо на кінець місяця;

-            узагальнена сальдова відомість;

-            журнал-ордер;

-            акт звірки.

Документ “Обороти по дебету” формується при необхідності і містить дані про обороти по дебету рахунка №60 і кредиту будь-якого з рахунків (вказується). Форма документа наведена в додатку 11. Табличний опис документа представлений в таблиці 6.

Таблиця  SEQ Таблиця \* ARABIC 6. Табличний опис документа "Обороти по дебету"

Назва реквізиту

Тип та значність

Діапазон змін

Дата

D(8)

Сума

N(6.2)

0..9999.99

Назва постачальника

C(40)

Номер накладної

C(5)

Номер кредитового рахунка

C(4)

Документ “Обороти по кредиту” формується при необхідності і містить дані про обороти по кредиту рахунка №60 і дебету будь-якого з рахунків (вказується). Форма документа наведена в додатку 12. Табличний опис документа представлений в таблиці 7.

Таблиця  SEQ Таблиця \* ARABIC 7. Табличний опис документа "Обороти по кредиту"

Назва реквізиту

Тип та значність

Діапазон змін

Дата

D(8)

Сума

N(6.2)

0..9999.99

Назва постачальника

C(40)

Номер накладної

C(5)

Номер дебетового рахунка

C(4)

Документ “Загальний оборот по дебету” формується в кінці місяця і містить дані про оборот по дебету рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 13. Табличний опис документа представлений в таблиці 8.

Таблиця  SEQ Таблиця \* ARABIC 8. Табличний опис документа "Загальний оборот по дебету"

Назва реквізиту

Тип та значність

Діапазон змін

Сума

N(7.2)

0..99999.99

Назва постачальника

C(40)

Звітний місяць

D(6)

Документ “Загальний оборот по кредиту” формується в кінці місяця і містить дані про оборот по кредиту рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 14. Табличний опис документа представлений в таблиці 9.

Таблиця  SEQ Таблиця \* ARABIC 9. Табличний опис документа "Загальний оборот по кредиту"

Назва реквізиту

Тип та значність

Діапазон змін

Сума

N(7.2)

0..99999.99

Назва постачальника

C(40)

Звітний місяць

D(6)

Документ “Сальдо на початок місяця” формується на початку місяця і містить дані про залишок на дебеті чи кредиті рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 15. Табличний опис документа представлений в таблиці 10.

Таблиця  SEQ Таблиця \* ARABIC 10. Табличний опис документа “Сальдо на початок місяця”

Назва реквізиту

Тип та значність

Діапазон змін

Дебетове сальдо

N(7.2)

0..99999.99

Кредитове сальдо

N(7.2)

0..99999.99

Назва постачальника

C(40)

Звітний місяць

D(6)

Документ “Сальдо на кінець місяця” формується в кінці місяця і містить дані про залишок на дебеті чи кредиті рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 16. Табличний опис документа представлений в таблиці 11.

Таблиця  SEQ Таблиця \* ARABIC 11. Табличний опис документа “Сальдо на кінець місяця”

Назва реквізиту

Тип та значність

Діапазон змін

Дебетове сальдо

N(7.2)

0..99999.99

Кредитове сальдо

N(7.2)

0..99999.99

Назва постачальника

C(40)

Звітний місяць

D(6)

Документ “Узагальнена сальдова відомість” формується в кінці місяця і містить дані про залишок на дебеті чи кредиті рахунка №60. Форма документа наведена в додатку 17. Табличний опис документа представлений в таблиці 12.

Таблиця  SEQ Таблиця \* ARABIC 12. Табличний опис документа “ Узагальнена сальдова відомість ”

Назва реквізиту

Тип та значність

Діапазон змін

Дебетове сальдо на початок місяця

N(7.2)

0..99999.99

Кредитове сальдо на початок місяця

N(7.2)

0..99999.99

Згорнуте сальдо на початок місяця

N(7.2)

0..99999.99

Дебетове сальдо на кінець місяця

N(7.2)

0..99999.99

Кредитове сальдо на кінець місяця

N(7.2)

0..99999.99

Згорнуте сальдо на кінець місяця

N(7.2)

0..99999.99

Звітний місяць

D(6)

Документ “Журнал-ордер” формується при необхідності і містить загальні суми операцій в розрізі рахунків. Форма документа наведена в додатку 18. Табличний опис документа представлений в таблиці 13.

Таблиця  SEQ Таблиця \* ARABIC 13. Табличний опис документа “Журнал-ордер”

Назва реквізиту

Тип та значність

Діапазон змін

Сума

N(7.2)

0..99999.99

Загальна сума по дебету

N(7.2)

0..99999.99

Загальна сума по кредиту

N(7.2)

0..99999.99

Номер дебетового рахунка

C(4)

Номер кредитового рахунка

C(4)

Документ “Акт звірки” формується при необхідності і містить дані про операції, проведені у вказану дату. Форма документа наведена в додатку 19. Табличний опис документа представлений в таблиці 14.

Таблиця  SEQ Таблиця \* ARABIC 14. Табличний опис документа “Акт звірки”

Назва реквізиту

Тип та значність

Діапазон змін

Сума

N(7.2)

0..99999.99

Дата

D(8)

Номер накладної

C(3)

Назва постачальника

C(40)

Номер дебетового рахунка

C(4)

Номер кредитового рахунка

C(4)

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

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

Розробимо структуру ідентифікатора інформаційних масивів:

                     Х   ХХХХХ

                                      

                                                назва

                                                вид масиву

Вид масиву задається ідентифікатором:

V - вхідний-оперативний

D - довідковий

Класифікацію інформаційних масивів наведемо у формі таблиці (таблиця 15):

Таблиця  SEQ Таблиця \* ARABIC 15. Класифікація інформаційних масивів

Оперативні

vOperations

vDocuments

vGoods

Умовно-постійні (довідкові)

dPartners

dAccounts

dPhones

dAddresses

dBanks

dCities

dCountries

dRegions

dAreas

dTypes

dMeasures

dGoods

Взаємозв’язок файлів показаний на даталогічній моделі (додаток 24).

Структури інформаційних масивів наведені у таблицях:

Таблиця  SEQ Таблиця \* ARABIC 16. Структура файлу vOperations

Реквізит

Позначення у файлі

Тип і розрядність

Сума

nSum

N(6.2)

Номер кредитового рахунка

cKNumber

C(4)

Номер дебетового рахунка

cDNumber

C(4)

Код накладної

icdDocument

C(4)

Таблиця  SEQ Таблиця \* ARABIC 17. Структура файлу vDocuments

Реквізит

Позначення у файлі

Тип і розрядність

Код накладної

icdDocument

C(4)

Дата

dDate

D(8)

Номер накладної

cDocNumber

C(5)

Код партнера

icdPartner

C(4)

Таблиця  SEQ Таблиця \* ARABIC 18. Структура файлу vGoods

Реквізит

Позначення у файлі

Тип і розрядність

Кількість товару

nGoodsAmnt

N(8.3)

Ціна товару

nGoodsPrice

N(8.4)

Код одиниці виміру

icdMeasure

C(2)

Код товару

icdGoods

C(4)

Код накладної

icdDocument

C(4)

Таблиця  SEQ Таблиця \* ARABIC 19. Структура файлу dPartners

Реквізит

Позначення у файлі

Тип і розрядність

Код партнера

icdPartner

C(4)

Назва партнера

cPartner

C(40)

ЗКПО

cZKPO

C(13)

С. р. ПДВ

cSrPDV

C(13)

Інд. податк. номер

cIndPN

C(10)

Керівник

cManager

C(40)

Головний бухгалтер

cMainAcnt

C(40)

Нотатка

mNote

Memo

Дата останньої модифікації

dLastMod

D(8)

Таблиця  SEQ Таблиця \* ARABIC 20. Структура файлу dCities

Реквізит

Позначення у файлі

Тип і розрядність

Код населеного пункту

icdCity

C(3)

Назва населеного пункту

cCity

C(22)

Таблиця  SEQ Таблиця \* ARABIC 21. Структура файлу dBanks

Реквізит

Позначення у файлі

Тип і розрядність

Код банку

icdBank

C(3)

Назва банку

cBank

C(45)

Таблиця  SEQ Таблиця \* ARABIC 22. Структура файлу dGoods

Реквізит

Позначення у файлі

Тип і розрядність

Код товару

icdGoods

C(4)

Назва товару

cGoods

C(40)

Таблиця  SEQ Таблиця \* ARABIC 23. Структура файлу dMeasure

Реквізит

Позначення у файлі

Тип і розрядність

Код одиниці виміру

icdMeasure

C(2)

Назва одиниці виміру

cMeasure

C(7)

Таблиця  SEQ Таблиця \* ARABIC 24. Структура файлу dAccounts

Реквізит

Позначення у файлі

Тип і розрядність

Код партнера

icdPartner

C(4)

Номер розрахункового рахунку

cAccount

C(15)

МФО

cMFO

C(10)

Код банку

icdBank

C(3)

Код населеного пункту

icdCity

C(3)

Таблиця  SEQ Таблиця \* ARABIC 25. Структура файлу dPhones

Реквізит

Позначення у файлі

Тип і розрядність

Код партнера

icdPartner

C(4)

Код типу зв’язку

icdConnType

C(1)

Код (міста)

cCode

C(6)

Номер телефону

cNumber

C(7)

Таблиця  SEQ Таблиця \* ARABIC 26. Структура файлу dAddresses

Реквізит

Позначення у файлі

Тип і розрядність

Код партнера

icdPartner

C(4)

Код населеного пункту

icdCity

C(3)

Код області

icdRegion

C(3)

Код району

icdArea

C(4)

Код країни

icdCountry

C(2)

Номер абонентської скриньки

cPOBox

C(5)

Поштовий індекс

cPostInd

C(6)

Адреса

cAddress

C(30)

Таблиця  SEQ Таблиця \* ARABIC 27. Структура файлу dConnTypes

Реквізит

Позначення у файлі

Тип і розрядність

Код типу зв’язку

icdConnType

C(1)

Тип зв’язку

cConnType

C(7)

Таблиця  SEQ Таблиця \* ARABIC 28. Структура файлу dCountries

Реквізит

Позначення у файлі

Тип і розрядність

Код країни

icdCountry

C(2)

Назва країни

cCountry

C(15)

Таблиця  SEQ Таблиця \* ARABIC 29. Структура файлу dRegions

Реквізит

Позначення у файлі

Тип і розрядність

Код області

icdRegion

C(3)

Назва області

cRegion

C(20)

Таблиця  SEQ Таблиця \* ARABIC 30. Структура файлу dAreas

Реквізит

Позначення у файлі

Тип і розрядність

Код району

icdArea

C(4)

Назва району

cArea

C(20)

3 ПРОГРАМНО-ТЕХНІЧНА РЕАЛІЗАЦІЯ СИСТЕМИ

3.1 Структура програмного забезпечення

Програмне забезпечення системи є взаємопов’язаним комплексом модулів, об’єднаних графічним інтерфейсом користувача, який реалізує діалоговий режим розв’язку задачі. При цьому користувачу надана можливість в діалоговому режимі управляти роботою програми. Граф діалогу приведено в додатку 21. Табличний опис діалогу представлений в таблиці 31.

Таблиця  SEQ Таблиця \* ARABIC 31. Табличний опис діалогу

Позначення в графі

Об’єкт

Дія

Т1

Кнопка

Виклик форми-списку партнерів

Т2

Кнопка

Сортування

Т3

Кнопка

Перехід до першого запису

Т4

Кнопка

Перехід до останнього запису

Т5

Кнопка

Знищення партнера

Т6

Кнопка

Пошук партнера

Т7

Список

Вибір партнера

Т8

Кнопка

Активізація фільтра

Т9

Список

Вибір категорії партнерів

Т10

Кнопка

Добавлення нового партнера

Т11

Кнопка

Відкриття журналу операцій по партнерові

Т12

Кнопка

Параметри

Т13

Кнопка

Перегляд картки партнера

Т14

Кнопка

Вихід

Т15

Вкладка

Перехід до вводу даних про р/р

Т16

Поле редагування

Ввід назви партнера

Т17

Поле редагування

Ввід ЗКПО

Т18

Вкладка

Перехід до вводу даних про телефони

Т19

Поле редагування

Ввід с. р. ПДВ

Т20

Поле редагування

Ввід інд. под. номера

Т21

Вкладка

Перехід до вводу даних про адреси

Т22

Поле редагування

Ввід керівника

Т23

Поле редагування

Ввід головного бухгалтера

Т24

Вкладка

Перехід до вводу нотатки

Т25

Кнопка

Знищення запису

Т26

Кнопка

Перехід до першого запису

Т27

Кнопка

Перехід до останнього запису

Т28

Кнопка

Добавлення запису

Т29

Кнопка

Редагування запису

Т30

Перемикач

Вибір типу рахунка (осн./дод.)

Т31

Поле редагування

Ввід розрахункового рахунка

Т32

Поле редагування

Ввід МФО

Т33

Поле редагування

Ввід назви банку

Т34

Поле редагування

Ввід населеного пункту

Т35

Кнопка

Збереження

Т36

Кнопка

Відмова

Т37

Кнопка

Добавлення запису

Т38

Кнопка

Редагування запису

Т39

Поле редагування

Ввід номера телефона

Т40

Список

Вибір типу зв’язку

Т41

Кнопка

Збереження

Т42

Кнопка

Відмова

Т43

Кнопка

Добавлення запису

Т44

Кнопка

Редагування запису

Т45

Поле редагування

Ввід назви країни

Т46

Поле редагування

Ввід поштового індекса

Т47

Поле редагування

Ввід назви населеного пункту

Т48

Поле редагування

Ввід назви області

Т49

Поле редагування

Ввід назви району

Т50

Поле редагування

Ввід назви вулиці

Т51

Поле редагування

Ввід абонентської скриньки

Т52

Поле редагування

Ввід коментаря

Т53

Кнопка

Збереження

Т54

Кнопка

Відмова

Т55

Поле редагування

Ввід нотатки

Т56

Кнопка

Вихід

Т57

Кнопка

Друк документів

Т58

Поле редагування

Ввід початкової дати

Т59

Поле редагування

Ввід кінцевої дати

Т60

Кнопка

Продовження друку

Т61

Кнопка

Відмова

Т62

Кнопка

Друк акту звірки

Т63

Кнопка

Друк проведень

Т64

Кнопка

Поновлення

Т65

Кнопка

Перегляд

Т66

Кнопка

Друк

Т67

Кнопка

Вихід

Т68

Поле редагування

Ввід періоду

Т69

Поле редагування

Вихід

Т70

Кнопка

Друк сторінки

Т71

Кнопка

Друк всього

Т72

Прапорець

Проставлення сторінок

Т73

Кнопка

Пропуск

Т74

Поле редагування

Лист

Т75

Перемикач

Вибір типу шрифта

Т76

Кнопка

Вихід

Т77

Поле редагування

Ввід початкової дати

Т78

Поле редагування

Ввід кінцевої дати

Т79

Кнопка

Продовження друку

Т80

Кнопка

Відмова

Т81

Поле редагування

Ввід початкового сальдо по Д-ту

Т82

Поле редагування

Ввід початкового сальдо по К-ту

Т83

Кнопка

Перегляд картки партнера

Т84

Кнопка

Вихід

Т85

Кнопка

Перехід на початок списку

Т86

Кнопка

Перехід на кінець списку

Т87

Кнопка

Добавлення складної проводки

Т88

Кнопка

Пошук

Т89

Кнопка

Добавлення проводки

Т90

Кнопка

Сортування

Т91

Кнопка

Відмова

Т92

Кнопка

Вихід

Т93

Поле редагування

Ввід номера документа

Т94

Поле редагування

Ввід дати

Т95

Поле редагування

Ввід номера рахунка

Т96

Поле редагування

Ввід суми

Т97

Поле редагування

Ввід суми для пошуку

Т98

Кнопка

Пошук

Т99

Кнопка

Відмова

Т100

Поле редагування

Ввід номера документа

Т101

Поле редагування

Ввід номера рахунка

Т102

Поле редагування

Ввід суми

Т103

Поле редагування

Ввід дати

Т104

Кнопка

Вихід

Т105

Кнопка

Відмова

Т106

Кнопка

Сортування по даті

Т107

Кнопка

Сортування по сумі

Т108

Кнопка

Сортування по рахункам

Т109

Кнопка

Відмова

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

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

Так, зокрема, Windows 98,  яка використовувалась при розробці  та тестуванні комп’ютерної системи обліку і аналізу розрахунків з постачальниками і підрядниками являє собою високопродуктивну, багатозадачну і багатопотокову 32-розрядну операційну систему з зручним графічним інтерфейсом і розширеними мережевими можливостями. Операціійна система розроблена фірмою Microsoft (США). Важливою її особливістю є 32-розрядна архітектура, яка забезпечує більш високу продуктивність системи, знімає багато обмежень на системні ресурси.

Захищений режим, що застосовується в Windows 9x/NT, підтримує роботу системи у випадках збою прикладної програми, що є досить вагомою перевагою над іншими ОС, захищає  прикладну програму від випадкового втручання одного процесу в інший, забезпечує певну стійкість до вірусів.

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

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

Visual FoxPro – це об’єктно-орієнтована, візуально-програмована мова, що управляється по подіям, і яка в повній мірі відповідає новим вимогам, що ставляться перед сучасними засобами проектування.

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

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

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

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

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

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

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

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

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

Запити є засобом вибірки даних з однієї чи декількох таблиць. В Visual FoxPro для створення запиту можна використовувати як конструктор запитів, так і спеціалізовану мову Structured Query Language (SQL). Результати виконання запита можуть відображатись в формі, виводитись у вигляді звітів і діаграм чи зберігатись у вказаній таблиці.

Програми, написані на мові Visual FoxPro, є об’єктно-орієнтованими. З допомогою них обробляються події в формі, створюються об’єкти, виконуються обчислення, здійснюється управління базою даних. Для зручності роботи є можливість об’єднати програми в бібліотеки.

Щоб створити форму в Visual FoxPro, можна використовувати не тільки базові класи, але й створювати власні. Класи, створені в Visual FoxPro, зберігаються в бібліотеках класів.

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

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

Кожен компонент зберігається в окремому файлі, причому імена файлів, що містять основні компоненти, задаються користувачем, а найменування файлів, що містять об’єкти, пов’язані з таблицею, зпівпадають з ім’ям таблиці. В залежності від типу об’єкта, що міститься у файлі, Visual FoxPro автоматично присвоює кожному файлу розширення, яке допомогає в ідентифікації об’єкта. Перелік розширень файлів наведений в таблиці 32.

Таблиця  SEQ Таблиця \* ARABIC 32. Розширення імен файлів об’єктів Visual FoxPro

Назва об’єкта

Розширення

Проект

PRJ, FPC, CAT, PJX, PJT

База даних

DBC

Таблиця Visual FoxPro

DBF

Складений індексний файл

CDX

Memo-поле і поле типу General

FRT

Форма

SCX

Запит

QPR

Звіт

FRX, FRM

Поштова наклейка

LBX, LBL

Меню

MNX

Бібліотека класу

VCX

Програма, бібліотека програм, текст меню, текст запита

PRG, FXP, MPR, QPR

Малюнок

BMP, JPG, GIF, ICO, DIB, CUR, ANI

Звукозапис

WAV

Загальна структура програмного забезпечення наведена в додатку 22. Його можна умовно поділити на наступні модулі:

-        

-        

-        

-        

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

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

Система управління базою даних (СУБД) складається з власне СУБД (спеціальні бібліотеки та інші засоби Visual FoxPro) та бази даних, яка, в свою чергу, включає в себе набір таблиць і файл бази даних. В файл бази даних входить інформація про зв’язок таблиць, процедури, представлення даних, тригери та інша додаткова інформація.

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

3.2 Розробка програмних модулів

Під час роботи система використовує наступні модулі:

-         Startprog;

-         Formob;

-         Rozsal;

-         Rozsalp;

-         Formaz;

-         Formjo;

-         Formov;

-         Formop.

Модуль Startprog є головною програмою, яка керує роботою системи і в ході роботи викликає необхідні компоненти. Лістинг програми наведено в додатку 22.

Модуль Formob формує оборотну звітність за вказане число.

Модуль Rozsal розраховує сальдо на поточний період на вказане число. Лістинг програми наведено в додатку 23.

Модуль Rozsalp розраховує сальдо на початок періоду.

Модуль Formaz формує акт звірки.

Модуль Formjo формує журнал-ордер по вказаному рахунку.

Модуль Formov формує оборотну відомість.

Модуль Formop формує список операцій по партнеру.

3.3 Практична реалізація системи

Розроблена в даному дипломному проекті комп’ютерна система є автоматизованою системою обліку і аналізу розрахунків з постачальниками і підрядниками. Практична реалізація системи обліку і аналізу була здійснена за допомогою СУБД Microsoft Visual FoxPro.

Враховуючи сучасні напрямки та перспективи розвитку комп’ютерних технологій, можливість організації зручного діалогу користувача з комп’ютером, застосування для реалізації спроектованої системи Microsoft Visual FoxPro доцільно встановити вимогу щодо роботи програми під сучасними операційними системами типу Windows 95, Windows 98, Windows NT. Дані системи мають надзвичайно широке поширення і вже зараз використовуються на більшості комп’ютерів, які застосовуються для автоматизації управлінської діяльності.

Операційна система Windows 95 призначена для інсталяції на персональних комп’ютерах, які мають процесор типу Intel 80386DX, 80486 або Pentium. Об’єм оперативної пам’яті повинен бути не менше 4 Мбайт. Але для підвищення швидкодії роботи системи необхідно мати 486-й процесор з частотою 66 МГц і вище або Pentium. Для одночасної роботи з кількома програмами доцільно мати від 16 Мбайт оперативної пам'яті.

ОС Windows 95 займає приблизно 50 Мбайт дискового простору, при мінімальній інсталяції - приблизно 30 Мбайт. Крім того, від 10 до 30 Мбайт необхідно для організації віртуальної пам'яті.

Створена система також вимагає наявності на комп’ютері СУБД Visual FoxPro, адже виконувальний файл R60.exe при роботі використовує ресурси з бібліотеки Visual FoxPro для організації роботи з базами даних.

Узагальнюючи вимоги для розробленої системи і додавши вимоги для MS Visual FoxPro можна зробити висновок, що робоча станція, за якою працюватиме користувач з системою обліку і аналізу розрахунків з постачальниками і підрядниками повинна містити операційну систему  Windows 9х/NT і мати наступну конфігурацію:

-         80486 чи більш потужний (мінімум процесор 80486 з тактовою частотою 66МГц)

-         мінімум 16 Мбайт оперативної пам'яті (рекомендується 16 Мбайт і більше)

-         300 Мбайт вільного місця на вінчестері

-         VGA або SVGA

-        

Стосовно професійної кваліфікації обслуговуючого персоналу, дана програма не вимагає глибоких знань в комп’ютерній галузі. Робота з системою обліку і аналізу розрахунків з постачальниками вимагає лише наявності базових навиків в роботі з ОС Microsoft Windows 95 (Microsoft Windows 98 чи Microsoft Windows NT). Оператору повинні бути знайомі наступні поняття і навики:

-         використання меню “Пуск” (“Start”)  для виклику програм;

-         прийоми роботи з вікнами;

-         робота з меню;

-         використання керуючих елементів діалогу;

-         стандартні діалоги;

-         налаштування операційної системи Microsoft Windows 95 (Microsoft Windows 98, Microsoft Windows NT)  з допомогою панелі управління.

Розглянемо дії користувача при роботі з системою. Оператор системи обліку і аналізу розрахунків з постачальниками (бухгалтер) запускає програму на виконання (виконувальний файл R60.exe), або з командної стрічки, або за допомогою ярлика, який викликає цей файл. На екрані з’являється головне вікно програми, яке представлено в додатку 25. В головному меню знаходяться два основних пункти, які також продубльовані на стандартній панелі інструментів у вигляді кнопок:

-         “Партнери”;

-         “Друк”.

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

При натискуванні на кнопку “Партнери” з’являється форма з списком партнерів, яка наведена у додатку 26, і панель інструментів для роботи з нею. В даній формі містяться наступні елементи:

-         список партнерів для вибору;

-         фільтр партнерів по категоріям (фізичні або юридичні особи);

-         кнопка активації фільтра;

-         поле для виводу загальної інформації про партнера.

Панель інструментів складається з кнопок:

-         “Добавлення нового партнера”;

-         “Відкриття журналу операцій по партнерові”;

-         “Картка партнера”;

-         “Знищення партнера”;

-         “Пошук”;

-         “Перехід в початок списку”;

-         “Перехід в кінець списку”;

-         “Сортування записів”.

Для добавлення нового партнера натискається кнопка “Добавлення нового партнера”, яка викликає форму “Картка партнера” для вводу даних про партнера, представлену в додатку 27. Дана форма викликається також і при натисненні кнопки “Картка партнера” при необхідності перегляду або редагування даних про партнера. При цьому партнер, реквізити якого необхідно переглянути чи редагувати, повинен бути попередньо вибраний зі списку партнерів в формі “Партнери”.

Отже, при добавленні нового партнера у формі “Картка партнера” користувач поступово вводить всі реквізити партнера. Для цього форма містить наступні вкладки:

-         “Дані” (містить поля для вводу загальних реквізитів, які можуть бути лише одні для кожного партнера);

-         “Р/р” (містить список розрахункових рахунків партнера з реквізитами, кнопки управління записами, якими, зокрема, викликається форма для вводу реквізитів рахунку);

-         “Телефони” (містить список телефонів партнера з вказанням типу зв’язку. Працює аналогічно вкладці “Р/р”);

-         “Адреси” (містить список адрес партнера. Працює аналогічно вкладці “Р/р”);

-         Нотатки (містить поле для вводу нотатки).

Форма “Картка партнера” також містить поле, в якому виводиться інформація про дату останньої модифікації даної картки.

Після завершення вводу, перегляду чи редагування даних натисненням кнопки “ОК” користувач повертається до форми “Партнери”.

При натисненні на кнопку “Відкриття журналу операцій по партнерові” на панелі інструментів, з’являється форма “Обороти по рахунку 60”, яка представленя в додатку 28. В ній містяться наступні об’єкти:

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

-         поля для вводу початкового сальдо по дебету і кредиту рахунка №60;

-         поля для відображення обороту і кінцевого сальдо по дебету і кредиту рахунка №60;

-         таблиці для перегляду інформації про здійснені операції по дебету і кредиту рахунка №60, які використовуються також для вибору операції для її редагування або знищення;

-         набори кнопок для добавлення простої чи складної проводки, редагування, знищення, сортування і пошук операцій, переходу до першої або останньої операції;

-         кнопки “Акт звірки”, “Проводки”, “Документи” для формування, перегляду і друку звітів;

-         кнопку “Вихід” для закриття журналу операцій і повернення в форму “Партнери”.

Для добавлення операції по партнеру, який вибрано з списку партнерів в формі “Партнери” необхідно, знаходячись в формі “Обороти по рахунку 60” натиснути кнопку “Добавлення операції”. При цьому викликається форма для вводу даних про операцію, яка представлена в додатку 29. Дана форма викликається також при натисненні кнопки “Редагування операції”, коли необхідно редагувати операцію. Форма містить наступні елементи:

-         поле для вводу номера рахунка, по якому проводиться операція;

-         поле для вводу суми операції;

-         поле для вводу дати проведення операції;

-         поле для вводу номера документа, на основі якого здійснюється операція;

-         кнопки “Записати” та “Відмова” для закриття форми із збереженням та без збереження змін відповідно.

Після добавлення чи редагування операції користувач повертається до форми “Обороти по рахунку 60”.

Для друкування звітів на стандартній панелі інструментів знаходиться кнопка “Друк”, натискання на яку приводить до появи форми “Друк звітів”, яка приведена в додатку 30. Форма містить список звітів і кнопки “Друк” та “Вихід”. Друк звіту здійснюється шляхом вибору необхідного звіту зі списку звітів і натиснення кнопки “Друк”. При цьому можуть з’явитись вікна для вводу додаткових параметрів і вікна налаштування друку, в яких користувач може задати параметри друку.

Висновки

В дипломному проекті спроектовано систему обліку і аналізу розрахунків з постачальниками і підрядниками.

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

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

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

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

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

Література

1. 

1.

2.

3.

4. ых систем.- М.: Финансы и статистика, 1984.

5. Коутс Р., Влейминк И. Интерфейс «Человек компьютер»: Пер. с англ.- М.:Мир, 1990.

6.

7. экономическая информатика и АСУ/ Б.Е.Одинцов. - Львов: Вища школа, ЛГУ, 1990. - 67 с.

8.

9. Visual FoxPro 6.0. – Санкт-Петербург: BHV, 1999. – 500 с.

10.                     

11.                     

12.                     

13.                     

14.                     

15.                     

16.                     

Відділ маркетингу

Юрист

Заступник директора

Бухгалтерія

Склад

Відділ реалізації

Директор

Власник

Додаток 1

Оприбуткування товарів

Кінець

Початок

Журнал-ордер

Журнал операцій

Журнал операцій

Журнал операцій

Журнал операцій

Платіжні доручення

Розхідні накладні

Облік

оплати

Оборотно-

сальдова

відомість

Формування журнала-

ордера

Формування оборотно-сальдової відомості

Додаток 2

Оборотні відомості

Узагальнені сальдові відомості

Сальдові відомості

Журнал-ордер

Акт звірки

 Узагальнені оборотні відомості

Проплачене платіжне доручення

Розхідна накладна

Бухгалтерія

Банк

Постачальники

Система обліку і аналізу розрахунків з постачальниками і підрядниками

Додаток 3

Контекст-діаграма системи обліку і аналізу розрахунків з постачальниками і підрядниками

Діаграма 1-го рівня системи обліку і аналізу розрахунків з постачальниками і підрядниками

Акт звірки

Узагальнені сальдові відомості

Сальдові відомості

Журнал-ордер

Оборотні відомості

 Узагальнені оборотні відомості

Платіжне доручення

Розхідна накладна

 Дані, що зберігаються

3

Друк і передача результатних документів

2

Формування результатних документів

Бухгалтерія

1

Ввід даних

Банк

Постачальники

Додаток 4

Документи в електронному вигляді

Дані про операції

Діаграма 2-го рівня для процесу 1 “Ввід даних”

Записана інформація про операції

Файл операцій

Інформація про операції, що записується

Введена інформація про операції

Платіжне доручення

Розхідна накладна

1.3

Звірка і корекція БД

1.2

Запис на магнітний носій

1.1

Ввід даних про постачальника

Додаток 5

Діаграма 2-го рівня для процесу 2 “Формування результатних документів”

Додаток 6

Журнал-ордер

Акт звірки

Узагальнені сальдові відомості

Узагальнені оборотні відомості

Сальдові відомості

Оборотні відомості

Дані про операції

2.1

Формування оборотних відомостей

2.6

Формування акту звірки

2.5

Формування журналу-ордеру

2.4

Формування узагальнених сальдових відомостей

2.3

Формування сальдових відомостей

2.2

Формування  узагальнених оборотних відомостей

Граф взаємозв’язку показників

Pnijd

Knijd

Snijd

SSnjd

PSnjzd

Ordrkjnd

SODrrdrk

OKrdrrkjnd

ODrrdrkjnd

SOKrdrrk

SOKrrk

ZOKrrkjm

ZODrrdjm

SODrrd

SKKrrkjm

SDKrrdjm

SKPrrkjm

SDPrrdjm

SKKrrkm

SDKrrdm

SKPrrkm

SDPrrdm

Додаток 8

Додаток 9

Постачальник: _________________________

Адреса: _______________________________

тел. ____________  факс _________________

Банк: _________________________________

р/р № _____________________  МФО ___________  Код: _______________ 

Розхідна накладна № _______________    від _______________

Отримувач: ____________________________

Адреса: _______________________________

тел. ____________  факс _________________

Банк: _________________________________

р/р № _____________________  МФО ___________  Код: _______________

Через

доручення: ___________________  від ___________________

Договір /контракт/ № _____________________

Дата сплати: ______________            Умови відпуску ________________________

№ пп

Серія

Найменування

Од. вим.

Кількість

Вартість           митна (імп.)              завода-вироб. (укр.)

Націнка  %

Ціна відпускна   в ГРН.

Сума відпускна в ГРН

Сума ПДВ

Сума         до оплати    з урах. ПДВ

Всього

(сума прописом)

в тому числі ПДВ/без ПДВ: ______________

Документ склав: _________________________________________________

(П.І.Б.)

Товар відпустив: _________________________________________________                         Товар отримав: _____________________________________

(П.І.Б.)                                                                                                                                                                                                           (П.І.Б.)

Додаток 10

Платіжне доручення № _________

від «___» ______________  200__ р.

Одержано банком

«___» ___________ 200__ р.

Платник _________________________

Код за

ЄДРПОУ   

                                                                                            код банку                                            ДЕБЕТ                            СУМА

Банк платника                                                                                                                               

                                                                                                                     рах. №

Одержувач _______________________

Код за                                                                                                                                            КРЕДИТ

ЄДРПОУ                                                                                                                                     

                                                                                            код банку        рах. №

Банк одержувача

                                                                                                                     рах. №

Сума (словами)

____________________________________________________________________________

Призначення платежу _________________________________________________________

Проведено банком

М.П.

«___» ___________ 200__ р.

Підписи платника

                                                                                                                                      підпис банку

Додаток 11

Обороти по дебету

(дебет 60 кредит __)

Дата

Сума

Партнер

Коментар

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Додаток 12

Обороти по кредиту

(кредит 60 дебет __)

Дата

Сума

Партнер

Коментар

Додаток 13

Оборот по дебету

(загальні суми)

                   Включно по _______________________

Назва (партнер)

Загальна сума

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Додаток 14

Оборот по кредиту

(загальні суми)

                   Включно по _______________________

Назва (партнер)

Загальна сума

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Додаток 15

Сальдо на початок місяця
 

(на _____________________)

Назва

(партнер)

Дебет

Кредит

Всього

Згорнуте

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Додаток 16

Сальдо на кінець місяця
 

(на _____________________)

Назва

(партнер)

Дебет

Кредит

Всього

Згорнуте

Додаток 17

Узагальнена сальдова відомість

Сальдо на початок місяця (на ______________________________)

Дебет

Кредит

Згорнуте

Сальдо на кінець місяця (на ______________________________)

Дебет

Кредит

Згорнуте

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Додаток 18

    

    Журнал-ордер

Дебет

Кредит

Сума

60

Всього по дебету

60

Всього по кредиту

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Додаток 19

Акт звірки

«___» _________________ 200__р.

       Партнер: _____________________________________

Дебет

Кредит

Сума           по дебету

Сума           по кредиту

Дата

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

«    » ________________ 200__ р.

Головний бухгалтер _____________________

                                                                                (підпис)

Т54

Т53

Т52

Т45

Т51

Т50

Т49

Т48

Т47

Т46

Т43

Т44

Т39

Т42

Т41

Т40

Т37

Т38

Т30

Т36

Т35

Т34

Т33

Т32

Т31

Т27

Т28

Т26

Т25

Т29

Т55

Т56

Т24

Т23

Т22

Т21

Т18

Т16

Т15

Т14

Т20

Т19

Т17

Т6

Т12

Т13

Т11

Т4

Т10

Т8

Т5

Т2

Т9

Т7

Т3

Т1

Додаток 20

Додаток 20 (продовження)

Т57

Т11

Т61

Т58

Т60

Т59

Т62

Т63

Т65

Т64

Т66

Т67

Т69

Т68

Т76

Т70

Т71

Т72

Т74

Т75

Т73

Т77

Т78

Т79

Т80

Т11

Т81

Т82

Т83

Т84

Т85

Т86

Т87

Т88

Т89

Т90

Т91

Т92

Т93

Т94

Т95

Т96

Т99

Т98

Т97

Т100

Т101

Т102

Т103

Т105

Т104

Т106

Т107

Т108

Т109

СУБД

БД

(Database, tables)

Блок формування звітів

(Queries, reports, views)

Блок обчислень

(Procedures, programs)

Інтерфейс

(Menu, forms, help)

Додаток 21

Додаток 22

Parameters _rah

if parameters() = 0

   howrah = 0

else

   if type("_RAH") = "C"

          howrah = _rah

   else

          howrah = alltrim(str(_rah))

   endif

endif

*HOWRAH = '62'

_screen.caption = 'Рахунок'

******** SetSet

_screen.windowstate = 2

_SCREEN.CLS

clear wind all

CLOSE ALL

set dele on

set excl off

set multi on

set confirm on

set point to ','

set separator to [']

set reprocess to 5

PUSH MENU _msysmenu

hide menu _msysmenu

set dele on

SET TALK OFF

SET SAFETY OFF

SET DATE GERMAN

set escape off

set century on

************* Означення глобальних змінних

public gnpdv, znak, kurs, _YY_, _MM_, _yyarh_, _arh_, ACTIWIND, activind2, archiv, findstr, _minprcnad,

 apname, findstr

public basesrahs, beforemm, beforeyear, _srtable_, _sttable_, _typeprn_

store ' ' to _sttable_, _srtable_, _tmpdt_, _tmpkt_, _typeprn_

********* Визначення базової директорії

ff = sys(16)

if 'FXP' $ FF OR 'PRG' $ FF

   tt = rat('\',ff)

   ff = left(ff,tt-1)

   tt = rat('\',ff)

   ff = left(ff,tt-1)

else

   tt = rat('\',ff)

   ff = left(ff,tt-1)

ENDIF

set defa to &ff

  

*-- Save and configure environment.

fpath = sys(5)+sys(2003)

g2 = fpath+'\sysapps;'

g3 = fpath+'\temp;'

g4 = fpath+'\datsets;'

g5 = fpath+'\reports;'

gpath = fpath+';'+ g2 +g3+g4+g5

set path to &gpath

if empty(howrah)

   howrah = '60'

endif

_pathrah1 = alltrim(howrah)

hh = alltrim(howrah)

if len(hh) =2

   *** добавляємо 00

   _srtable_ = 'sr'+hh+'00'

else

   _srtable_ = 'sr'+hh

endif

Додаток 22 (продовження)

_sttable_ ='set'+hh+'r'

g1 = fpath+'\R'+_pathrah1+';'

gpath = gpath+g1

SET PATH TO &gpath

if !file(_srtable_+'.dbf')

*  create table &_srtable_ (pathfind m(4), archfind c(150), othefind c(150), basepath c(50))

*  append blank

*  use

*  do form finddata to yy

*  if empty(yy)

          = messagebox("не знайдено файлу конфігурації")

          close all

          quit

*  endif

endif

select 0

use &_srtable_

serverpath = pathFIND

_typeprn_ = typeprn

use

gpath = gpath+serverpath

SET PATH TO &gpath

SET CLASSLIB TO RAHS, diagram ADDITIVE

lcOnShutdown="ShutDown()"

ON SHUTDOWN &lcOnShutdown

ON ERROR ErrorHandler(ERROR(),PROGRAM(),LINENO())

*ON ERROR

_shell="DO Cleanup IN startprg"

apname = space(30)

findstr = space(20)

actiwind2 = .f.

public row_dos

row_dos = 63

_minprcnad = 40

findstr = space(50)

archiv = .f.

*SET PROC TO

SET PROCEDURE TO LIBRARY ADDITIVE

*ll = sysacces("0000003")

*if ll = -1

*  close table all

*  close data all

*  ON ERROR

*  ON SHUTDOWN

*  retu

*endif

*-- Instantiate application object.

if !directory('temp')

   md temp

endif

do setsetup

*do formclie

RELEASE goApp

PUBLIC goApp

goApp=CREATEOBJECT("cApplication")

goapp.appsoft = 0

*goapp.level = ll

*-- Configure application object.

otlb=createobject("tlbs")

*Otlb.Dock(0)

Додаток 22 (продовження)

Otlb.Show()

goApp.SetCaption('Рахунок '+alltrim(basesrahs))

goApp.cStartupMenu="MENUMENU.mpr"

do form f0000000

beforemm = _mm_

beforeyy = _yy_

*-- Show application.

goApp.Show

*-- Release application.

RELEASE goApp, otlb

*-- Restore default menu.

POP MENU _msysmenu

*-- Restore environment.

close table all

close data all

ON ERROR

ON SHUTDOWN

RETURN

*******************************************

FUNCTION ErrorHandler(nError,cMethod,nLine)

LOCAL lcErrorMsg,lcCodeLineMsg

WAIT CLEAR

lcErrorMsg=MESSAGE()+CHR(13)+CHR(13)

lcErrorMsg=lcErrorMsg+"Method:    "+cMethod

lcCodeLineMsg=MESSAGE(1)

IF BETWEEN(nLine,1,10000) AND NOT lcCodeLineMsg="..."

   lcErrorMsg=lcErrorMsg+CHR(13)+"Line:         "+ALLTRIM(STR(nLine))

   IF NOT EMPTY(lcCodeLineMsg)

          lcErrorMsg=lcErrorMsg+CHR(13)+lcCodeLineMsg+chr(13)+chr(13)+'Припинити роботу?..'

   ENDIF

ENDIF

IF MESSAGEBOX(lcErrorMsg,20,_screen.Caption)#6

   RETURN .F.

else

   QUIT

ENDIF

ENDFUNC

****************************************************

FUNCTION ShutDown

IF TYPE("goApp")=="O" AND NOT ISNULL(goApp)

   RETURN goApp.OnShutDown()

ENDIF

Cleanup()

QUIT

ENDFUNC

FUNCTION Cleanup

IF CNTBAR("_msysmenu")=7

   RETURN

ENDIF

ON ERROR

ON SHUTDOWN

SET CLASSLIB TO

*SET PATH TO

Додаток 22 (закінчення)

*CLEAR ALL

CLOSE ALL

close table all

close data all

POP MENU _msysmenu

RETURN

Додаток 23

* p0000004

* Сальдо на поточний період на вказане число

local _nameorg, _ends

public fdata

lday = cdm(_mm_,_yy_)

fdata = ctod(str(lday,2)+'/'+str(_mm_,2)+'/'+str(_yy_,4))

do form getdata3 to ll

if empty(ll)

   rele fdata

   retu

endif

set textmerge on

set textmerge to t100004.txt noshow

set console off

public _br, ld, lk

_br = basesrahs

clrecv = ifused("recv")

clbases = ifused("bases")

clsaldos = ifused("saldos")

clclients = ifused(_clunions_)

_nameorg = recv.name

if clrecv

   use in recv

endif

************************************************************************************

* Відбір даних по Д-ту вказаного рахунку

* та формування масиву відповідних рахунків

select * from bases ;

   into table tdt1;

   where dt = _br and month = _mm_ and year = _yy_ ;

   order by codep

select * from tdt1 ;

   into table tdt;

   where daten <= fdata;

   order by codep

public dime rds(1)

select distinct kt from tdt into array rds

ld = alen(rds)

if ld = 1 and empty(rds(1))

   rds(1) = ' '

endif

dime sds(ld), zds(ld)

store 0 to sds, zds

************************************************************************************

* Відбір даних по K-ту вказаного рахунку

* та формування масиву відповідних рахунків

select * from bases ;

   into table tkt1;

   where kt = _br and month = _mm_ and year = _yy_;

   order by codep

select * from tkt1 ;

   into table tkt;

   where daten <= fdata;

   order by codep

public dime rks(1)

select distinct dt from tkt into array rks

lk = alen(rks)

if lk = 1 and empty(rks(1))

   rks(1) = ' '

endif

dime sks(lk), zks(lk)

store 0 to sks, zks

*****************************************************

* Загальні суми

Додаток 23 (продовження)

store 0 to z_spd, z_spk, z_skd, z_skk, z_sod, z_sok

* по одному клієнту

*  _spd - сальдо початкове по Д-ту

*  _spk - сальдо початкове по К-ту

*  _skd - сальдо кінцеве по К-ту

*  _skk - сальдо кінцеве по Д-ту

*   _sod - обороти по Д-ту

*  _sok - обороти по К-ту

select (_clunions_)

do dgr_box with recc(), 'Побудова кінцевого сальдо','Pax.'+alltrim(_br)

\  <<_nameorg>>

\         Сальдо на кінець місяця по <<alltrim(_br)>> рах.  Період: <<mstn(_mm_)>> <<_yy_>>p.

stor = 2

do sh00004

stor = stor +5

*set order to tag namep

npp = 0

scan

   STORE 0 TO SKS, SDS

   do dgr_mov

   cd = codep

   store 0 to _spd, _spk, _skd, _skk, _sod, _sok

   select saldos

   locate for codep = cd and month = _mm_ and year = _yy_ and dt = _br

   if found()

          _spd = sumdt

          _spk = sumkt

   endif

   select tdt

   scan for codep = cd and month = _mm_ and year = _yy_

          for i = 1 to ld

                 if kt = rds(i)

                       sds(i) = sds(i) + sum      &&накопичення по колонках

                       _sod = _sod +sum           &&накопичення по рядку по Д-ту

                 endif

          endfor

   endscan

   select tkt

   scan for codep = cd and month = _mm_ and year = _yy_

          for i = 1 to lk

                 if dt = rks(i)

                       sks(i) = sks(i) + sum      &&накопичення по колонках

                       _sok = _sok +sum           &&накопичення по рядку по K-ту

                 endif

          endfor

   endscan

   _ends =  _spd + _sod -(_spk + _sok)

   do case

          case _ends > 0

                 _skd = _ends

                 _skk = 0

          case _ends < 0

                 _skk = (-1)*_ends

                 _skd = 0

   endcase

*********************************************************************************

* Перевірка чи вносити рядок в TXT-файл

   if empty(_sKd) and empty(_sKk) &&and empty(_sod) and empty(_sok)

          * недрукуємо

   else

          *друкуємо

          sele (_clunions_)

          npp = npp+1

          \<<str(npp,5)>>|<<left(namep,40)>>|

          *** сальдо кінцеве

          \\<<iif(empty(_skd),space(10), str(_skd,10,2))>>|

          \\<<iif(empty(_skk),space(10), str(_skk,10,2))>>

         

          **** підрахунок загальний сум

          * поч.сальдо

          z_spd = z_spd + _spd

Додаток 23 (продовження)

          z_spk = z_spk + _spk

          * Д-т

          z_sod = z_sod + _sod

          for i = 1 to ld

                 zds(i) = zds(i) + sds(i)

          endfor

         

          *К-т

          z_sok = z_sok + _sok

          for i = 1 to lk

                 zks(i) = zks(i) + sks(i)

          endfor

          * кін.сальдо

          z_skd = z_skd + _skd

          z_skk = z_skk + _skk

          *******************************************

          * Сторінка

          stor = stor +1

          if stor >=59

                 \<<chr(12)>>

                 stor = 7

                 do sh00004

          endif

   endif

   select (_clunions_)

endscan

************

* Вивід загальних сум

do l00004

stor = stor +1

if stor >=59

   \<<chr(12)>>

   stor = 7

   do sh00004

endif

\<<space(5)>>|<<padc('*** Всього ***',40,' ')>>|

*** сальдо кінцеве

\\<<iif(empty(z_skd),space(10), str(z_skd,10,2))>>|

\\<<iif(empty(z_skk),space(10), str(z_skk,10,2))>>

\                                     Згорнуте     <<str(z_skd-z_skk,10,2))>>

\<<space(20)>>

do dgr_end

if clclients

   sele (_clunions_)

   use

endif

if clbases

   use in bases

endif

if clsaldos

   use in saldos

endif

if used("tdt")

   use in tdt

endif

if used("tkt")

   use in tkt

endif

if file("tdt.dbf")

   erase tdt.dbf

endif

if file("tk.dbf")

   erase tkt.dbf

endif

if used("tdt1")

   use in tdt1

endif

if used("tkt1")

   use in tkt1

endif

if file("tdt1.dbf")

   erase tdt1.dbf

Додаток 23 (закінчення)

endif

if file("tkt1.dbf")

   erase tkt1.dbf

endif

set textmerge to

set textmerge off

set console on

rele _nameorg, lk, ld, _br, _spd, _spk, _skd, _skk, _sod, _sok

rele z_spd, z_spk, z_skd, z_skk, z_sod, z_sok, sks, zks, sds, zds, rks, rds, fdata

**************************************

*

**************************************

PROCEDURE sh00004

* 1.

\-----+----------------------------------------+---------------------

* 2.***<<padc('П О С Т А Ч А Л Ь Н И К И

\     |<<space(40)>>|<<padc(' Сальдо на кін.місяця',21,' ')>>

* 3.

\  №  +<<padc('П О С Т А Ч А Л Ь Н И К И',40,' ')>>+----------+----------

* 4.

\     |<<SPACE(40)>>+<<padc('Дебет',10,' ')>>+<<padc('Кредит',10,' ')>>

* 5.

\-----+----------------------------------------+----------+----------

RETU

**************************************

*

**************************************

PROCEDURE l00004

   \-----+----------------------------------------+----------+----------

RETU

Додаток 2

4
 Додаток 25

Додаток 26

Додаток 27

Додаток 28

Додаток 29

Додаток 30