Реферат: ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ (на прикладі ПП Біомед)
Название: ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ (на прикладі ПП Біомед) Раздел: Рефераты по менеджменту Тип: реферат | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Міністерство освіти і науки України Тернопільська академія народного господарства Інститут комп’ютерних інформаційних технологій Кафедра моделювання та оптимізації економічних систем і процесів ІНФОРМАЦІЙНА СИСТЕМА ОБЛІКУ І АНАЛІЗУ РОЗРАХУНКІВ З ПОСТАЧАЛЬНИКАМИ І ПІДРЯДНИКАМИ (на прикладі ПП «Біомед») Дипломний проект Спеціальність 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. Вступ......................................................................................... 6 1. Аналіз потреб ПП “Біомед” в створенні КІС обліку і аналізу розрахунків з постачальниками і підрядниками............................................ 7 1.1. Характеристика ПП “Біомед” і опис діючої системи обліку розрахунків з постачальниками і підрядниками............................................ 7 1.2 Існуючі шляхи розв’язку задачі обліку розрахунків з постачальниками і підрядниками......................................................................... 13 1.3 Постановка задачі на проектування............................. 14 2. Розробка загальносистемних рішень............................... 16 2.1 Загальна структура розроблюваної системи............... 16 2.2 Математично-алгоритмічне забезпечення.................... 20 2.3 Інформаційне забезпечення........................................... 26 3. Програмно-технічна реалізація системи........................... 42 3.1. Структура програмного забезпечення........................ 42 3.2. Розробка програмних модулів.................................... 53 3.3 Практична реалізація системи...................................... 55 Висновки................................................................................. 63 Література.............................................................................. 65 Додаток 1................................................................................ 67 Додаток 2................................................................................ 68 Додаток 3................................................................................ 69 Додаток 4................................................................................ 70 Додаток 5................................................................................ 71 Додаток 6................................................................................ 72 Додаток 7................................................................................ 73 Додаток 8................................................................................ 76 Додаток 9................................................................................ 77 Додаток 10.............................................................................. 78 Додаток 11.............................................................................. 79 Додаток 12.............................................................................. 80 Додаток 13.............................................................................. 81 Додаток 14.............................................................................. 82 Додаток 15.............................................................................. 83 Додаток 16.............................................................................. 84 Додаток 17.............................................................................. 85 Додаток 18.............................................................................. 86 Додаток 19.............................................................................. 87 Додаток 20.............................................................................. 88 Додаток 21.............................................................................. 90 Додаток 22.............................................................................. 91 Додаток 23.............................................................................. 95 Додаток 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). Таблиця 1. Реквізити-основи
Таблиця 2. Реквізити-ознаки
Граф взаємозв’язку показників зображений в додатку 8. Розглянемо кожен з використовуваних в системі показників і наведемо формули, за якими вони обчислюються: 1) , (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 і дебету рахунка r d по партнеру 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. Таблиця 3. Опис класифікаторів та систем кодування
Вхідними документами для даної задачі будуть: - розхідна накладна; - платіжне доручення. Документ “Розхідна накладна” містить інформацію про поставку товару (дата, найменування товару, ціна товару, кількість товару, загальна сума, назва та реквізити постачальника, назва та реквізити одержувача). Цей документ заповнюється постачальником і є основним документом, що засвідчує факт поставки товару. Реквізити з нього заносяться в базу даних, де міститься інформація про всі поставки товарів. Форма документа наведена в додатку 9 . Табличний опис документа представлений в таблиці 4. Таблиця 4. Табличний опис документа "Розхідна накладна"
Документ “Платіжне доручення” містить інформацію про оплату поставленого товару (дата оплати, сума, назва і реквізити одержувача, призначення платежу). Цей документ заповнюється платником, а після того, як здійснено оплату і банком проставлено на ньому печатки і підпис, одна його копія потрапляє до одержувача, а інша повертається до платника. Документ є засвідченням факту оплати. Реквізити з нього заносяться в базу даних, де міститься інформація про всі проведені оплати. Форма документа наведена в додатку 10. Табличний опис документа представлений в таблиці 5. Таблиця 5. Табличний опис документа "Платіжне доручення"
Всі необхідні дані з вхідних документів заносяться у бази даних. На основі інформації з вхідних документів формуються результатні документи. Вихідними документами для даної задачі будуть: - обороти по дебету; - обороти по кредиту; - загальний оборот по дебету; - загальний оборот по кредиту; - сальдо на початок місяця; - сальдо на кінець місяця; - узагальнена сальдова відомість; - журнал-ордер; - акт звірки. Документ “Обороти по дебету” формується при необхідності і містить дані про обороти по дебету рахунка №60 і кредиту будь-якого з рахунків (вказується). Форма документа наведена в додатку 11. Табличний опис документа представлений в таблиці 6. Таблиця 6. Табличний опис документа "Обороти по дебету"
Документ “Обороти по кредиту” формується при необхідності і містить дані про обороти по кредиту рахунка №60 і дебету будь-якого з рахунків (вказується). Форма документа наведена в додатку 12. Табличний опис документа представлений в таблиці 7. Таблиця 7. Табличний опис документа "Обороти по кредиту"
Документ “Загальний оборот по дебету” формується в кінці місяця і містить дані про оборот по дебету рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 13. Табличний опис документа представлений в таблиці 8. Таблиця 8. Табличний опис документа "Загальний оборот по дебету"
Документ “Загальний оборот по кредиту” формується в кінці місяця і містить дані про оборот по кредиту рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 14. Табличний опис документа представлений в таблиці 9. Таблиця 9. Табличний опис документа "Загальний оборот по кредиту"
Документ “Сальдо на початок місяця” формується на початку місяця і містить дані про залишок на дебеті чи кредиті рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 15. Табличний опис документа представлений в таблиці 10. Таблиця 10. Табличний опис документа “Сальдо на початок місяця”
Документ “Сальдо на кінець місяця” формується в кінці місяця і містить дані про залишок на дебеті чи кредиті рахунка №60 в розрізі постачальників. Форма документа наведена в додатку 16. Табличний опис документа представлений в таблиці 11. Таблиця 11. Табличний опис документа “Сальдо на кінець місяця”
Документ “Узагальнена сальдова відомість” формується в кінці місяця і містить дані про залишок на дебеті чи кредиті рахунка №60. Форма документа наведена в додатку 17. Табличний опис документа представлений в таблиці 12. Таблиця 12. Табличний опис документа “ Узагальнена сальдова відомість ”
Документ “Журнал-ордер” формується при необхідності і містить загальні суми операцій в розрізі рахунків. Форма документа наведена в додатку 18. Табличний опис документа представлений в таблиці 13. Таблиця 13. Табличний опис документа “Журнал-ордер”
Документ “Акт звірки” формується при необхідності і містить дані про операції, проведені у вказану дату. Форма документа наведена в додатку 19. Табличний опис документа представлений в таблиці 14. Таблиця 14. Табличний опис документа “Акт звірки”
Внутрішньомашинна інформаційна база є частиною інформаційного забезпечення підсистеми та складається з інформаційних масивів (файлів). Всі файли внутрішньомашинної інформаційної бази поділяються на вхідні та результуючі. Вхідні файли в свою чергу поділяються на оперативні та умовно-постійні (нормативні, розціночні, довідникові). Результуючі файли є кінцеві та проміжні. Оскільки наведено табличні описи результатних документів, немає необхідності у розгляді результатних інформаційних масивів. Розробимо структуру ідентифікатора інформаційних масивів: Х ХХХХХ назва вид масиву Вид масиву задається ідентифікатором: V - вхідний-оперативний D - довідковий Класифікацію інформаційних масивів наведемо у формі таблиці (таблиця 15): Таблиця 15. Класифікація інформаційних масивів
Взаємозв’язок файлів показаний на даталогічній моделі (додаток 24). Структури інформаційних масивів наведені у таблицях: Таблиця 16. Структура файлу vOperations
Таблиця 17. Структура файлу vDocuments
Таблиця 18. Структура файлу vGoods
Таблиця 19. Структура файлу dPartners
Таблиця 20. Структура файлу dCities
Таблиця 21. Структура файлу dBanks
Таблиця 22. Структура файлу dGoods
Таблиця 23. Структура файлу dMeasure
Таблиця 24. Структура файлу dAccounts
Таблиця 25. Структура файлу dPhones
Таблиця 26. Структура файлу dAddresses
Таблиця 27. Структура файлу dConnTypes
Таблиця 28. Структура файлу dCountries
Таблиця 29. Структура файлу dRegions
Таблиця 30. Структура файлу dAreas
3 ПРОГРАМНО-ТЕХНІЧНА РЕАЛІЗАЦІЯ СИСТЕМИ 3.1 Структура програмного забезпечення Програмне забезпечення системи є взаємопов’язаним комплексом модулів, об’єднаних графічним інтерфейсом користувача, який реалізує діалоговий режим розв’язку задачі. При цьому користувачу надана можливість в діалоговому режимі управляти роботою програми. Граф діалогу приведено в додатку 21. Табличний опис діалогу представлений в таблиці 31. Таблиця 31. Табличний опис діалогу
Програмне забезпечення - це сукупність програм для реалізації розробленої системи на базі використання засобів обчислювальної техніки. Однією з складових частин програмного забезпечення є операційна система, яка призначена для розширення функціональних можливостей обчислювального обладнання, контролю і управління процесами обробки даних, автоматизації роботи програмістів. Так, зокрема, 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. Таблиця 32. Розширення імен файлів об’єктів Visual FoxPro
Загальна структура програмного забезпечення наведена в додатку 2 2. Його можна умовно поділити на наступні модулі: - інтерфейс; - блок обчислень; - СУБД; - блок формування звітів. До інтерфейсу входять меню, форми (для вводу, відображення та редагування інформації) та модуль допомоги. За допомогою саме цих модулів відбувається обмін інформацією між системою і користувачем. Блок обчислень складається з програм і процедур, за допомогою яких над даними виконуються необхідні дії, проводяться розрахунки. Система управління базою даних (СУБД) складається з власне СУБД (спеціальні бібліотеки та інші засоби 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. Волков С.М., Романов А.М. Организация машинной обработки экономической информции.- М.: Финансы и статистика, 1988. 1. Дипломное и курсовое проектирование по машинной обработке информации.- М.: Финансы и статистика, 1985. 2. Жеребин В.М. Автоматизация проектирования экономических информационных систем.- М.: Финансы и статистика, 1988. 3. Когаловский М.Р. Технология баз данных на персональных ЭВМ.- М.: Финансы и статистика, 1992. 4. Королев М.А. и др. Теория экономических информационных систем.- М.: Финансы и статистика, 1984. 5. Коутс Р., Влейминк И. Интерфейс «Человек компьютер»: Пер. с англ.- М.:Мир, 1990. 6. Лавінський Г.В. та ін. Автоматизовані системи обробки економічної інформації.-К.: Вища школа, 1995 р. 7. Методические указания к дипломному проектированию для студентов спец. 0715 - экономическая информатика и АСУ/ Б.Е.Одинцов. - Львов: Вища школа, ЛГУ, 1990. - 67 с. 8. Одинцов Б.Е. Экономическая информатика.- Хмельницкий, 1996. 9. Омельченко Л.Н. Самоучитель Visual FoxPro 6.0. – Санкт-Петербург: BHV, 1999. – 500 с. 10. Твердохлiб М.Г. Система обробки облікової інформації на персональних ЕОМ.-К.:Техніка, 1993. 11. Твердохлеб Н.Г. Безбумажная технология в управлении производством.-К.:Техника,1991. 12. Бухгалтерський облік. – Тернопіль: Центр Європи, 1994. – 176с. 13. Економічний аналіз діяльності промислових підприємств та об’єднань. – Тернопіль: ТАНГ, 1995. – 300с. 14. З.В. Задорожний, Я. Д. Крупка, Р. О. Мельник. Бухгалтерський облік. – Київ: ІЗМН МОУ, 1996. – 414с. 15. Сопко В.С. Бухгалтерський облік в промисловості та інших галузях народного господарства. – Київ: Вища школа, 1992. – 463с. 16. Сопко В.С. Бухгалтерський облік у підприємництві. Київ: Техніка, 1995. – 259 с.
Додаток 9 Постачальник: _________________________ Адреса: _______________________________ тел. ____________ факс _________________ Банк: _________________________________ р/р № _____________________ МФО ___________ Код: _______________ Розхідна накладна № _______________ від _______________Отримувач: ____________________________ Адреса: _______________________________ тел. ____________ факс _________________ Банк: _________________________________ р/р № _____________________ МФО ___________ Код: _______________ доручення: ___________________ від ___________________ Договір /контракт/ № _____________________ Дата сплати: ______________ Умови відпуску ________________________
(сума прописом) в тому числі ПДВ/без ПДВ: ______________ Документ склав: _________________________________________________ (П.І.Б.) Товар відпустив: _________________________________________________ Товар отримав: _____________________________________ (П.І.Б.) (П.І.Б.) Платіжне доручення № _________від «___» ______________ 200__ р. Одержано банком«___» ___________ 200__ р. Платник _________________________ Код за ЄДРПОУ код банку ДЕБЕТ СУМА Банк платника рах. №
Одержувач _______________________ Код за КРЕДИТ ЄДРПОУ код банку рах. № Банк одержувача рах. № Сума (словами) ____________________________________________________________________________ Призначення платежу _________________________________________________________
Підписи платника підпис банку Обороти по дебету(дебет 60 кредит __)
Додаток 12 Обороти по кредиту(кредит 60 дебет __)
Оборот по дебету( загальні суми) Включно по _______________________
Додаток 14 Оборот по кредиту( загальні суми) Включно по _______________________
Додаток 15 Сальдо на початок місяця(на _____________________)
Додаток 16 Сальдо на кінець місяця(на _____________________)
Узагальнена сальдова відомість
Додаток 18 Журнал-ордер
Додаток 19 Акт звірки«___» _________________ 200__р. Партнер: _____________________________________
Додаток 20 (продовження) 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 * 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 |