ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Алгоритмізація і програмування процесів обробки даних у середовищі СУБД типу Fox
         

     

    Інформатика, програмування
    1.Вступ
    Реляційні системи управління базами даних (СУБД), такі як FoxBase,
    FoxBaseplus, FoxPro, Visual FoxPro відносяться до нового покоління СУБД
    реляційного тіпаіз сімейства dBase - подібних СУБД. Пакети цього сімейства
    одержали широке поширення, і багато хто з них билірусіфіціровани.
    СУБД типу Fox зберігає спадкоємність по відношенню до більш ранніх
    представникам dBase - подібних СУБД, в отношенііструктури баз даних, команд
    створення та обробки даних, основних типів даних. У той же час кожна
    подальша СУБД володіє великими можливостями посравненію з попередніми. Так,
    наприклад, VisualFoxPro в порівнянні з FoxPro володіє значними
    ізобразітельнимівозможностямі.
    Дана робота використовує мову команд СУБД сімейства Fox. Використовувані команди,
    а передусім, застосовні в усіх СУБД цього типу, але налагодження велася на
    русифікованою СУБД FoxPro для Windows версії 2.5b.


    2.Заданіе на курсовий проект
    Структура ЗАПИСИ вихідного ДОКУМЕНТА:
          Код предпріятіяВід продукцііОб'ем випускаЦена одиниці продукції

    Необхідно:
    1. Визначити сумарну вартість продукції заданого виду і її середній випуск
    одним підприємством.
    2. Для кожного з п'яти видів продукції визначити сумарну вартість і
    сумарний випуск.
    3. Видати на друк у порядку зростання сумарної вартості продукцію п'яти
    видів.
    3.Аналіз і постановка задачі
    Вихідні дані завдання є записи заданої структури, які
    повинні вводитися з клавіатури, а затемвиводіться в файл даних на магнітний
    диск. Отже, однією з підзадач повинна бути задача створення файлу даних
    на магнітному диску.
    Створений файл даних необхідно переглянути на екрані або вивести на друк в
    вигляді таблиці з печаткою заголовкаі шапки цієї таблиці. Для цього наступного
    підзадачі повинна бути завдання переглянути файл даних. Також повинна бути
    можливість додавання записів всозданний файл даних.
    Потім необхідні ще три підзадачі, вирішення яких дозволяє виконати три
    пункту курсової роботи:
    1. Видача відомостей про сумарної вартості продукції заданого виду по кожному
    підприємству і про среднемвипуске цієї продукції одним підприємством.
    2. Видача відомостей про сумарної вартості і сумарному випуску кожної продукції.
    3. Видача на друк продукції п'яти видів у порядку зростання її сумарної
    вартості.
    Крім того, для діалогу користувача з системою необхідно створити так
    зване, «Меню».



    6.Программи
    6.1. Створення дворівневого світлового меню
    * Командний файл ієрархічного меню MainMenu
    set Talk off
    set Color to n/W * & & Вибір кольору екрана
    Clear
    * Опис масивів даних меню
    Declare GenMenu (3,2), menuFile (3), menuZad (3), menuExit (2)
    * Завдання значень елементів масивів
    GenMenu (1,1) = "Файл даних"
    GenMenu (1,2) = "Робота з файлом даних"
    GenMenu (2,1) = "Завдання"
    GenMenu (2,2) = "Завдання на курсовий проект"
    GenMenu (3,1) = "Вихід"
    GenMenu (3,2) = "Вихід з програми"
    menuFile (1) = "Створення"
    menuFile (2) = "Читання"
    menuFile (3) = "Додавання"
    menuZad (1) = "Завдання № 1"
    menuZad (2) = "Завдання № 2"
    menuZad (3) = "Завдання № 3"
    menuExit (1) = "Вихід в Fox"
    menuExit (2) = "Вихід з Fox"
    * Форміровніе головного меню
    Do While. T.
    set Color to gr +/g, gr +/b & & Установка кольору меню
      Menu Bar GenMenu, 3
      Read Menu Bar to L1, L2 & & Висновок головного меню на екран
      Do While L1> 0 & & відкрити підменю, коли обрано
                            & & Будь-який пункт головного меню
      * Формування підменю
         set Color to gr +/g, gr +/b & & Установка кольору підменю
         Menu 1, menuFile, 3,3
         Menu 2, menuZad, 3,3
         Menu 3, menuExit, 2,2
        Read Menu Bar to L1, L2 & & Висновок меню на екран
         set Color to n/W * & & Повернення до кольору екрана
         
    * Обробка вибраного пункту меню
        Do Case
        Case L1 = 0
              Exit & & Вихід до панелі головного меню
           Case L1 = 1
              Do Case
                Case L2 = 1 & & Обрано дію 'Створення нового ФД'
                  Do CreateFd
                Case L2 = 2 & & Обрано дію 'Читання даних'
                  Do ReadFd
                Case L2 = 3 & & Обрано дію 'Додавання нових даних'
                  Do AddFd
              EndCase
           Case L1 = 2
              Do Case
                Case L2 = 1 & & Обрано завдання № 1 з курсового проекту
                  Do Zad1
                Case L2 = 2 & & Обрано завдання № 2 з курсового проекту
                  Do Zad2
                Case L2 = 3 & & Обрано завдання № 3 з курсового проекту
                  Do Zad3
              EndCase
           Case L1 = 3
              Do Case
               Case L2 = 1 & & Обрано пункт 'Вихід в Fox'
                  Return
                Case L2 = 2 & & Обрано пункт 'Вихід з Fox'
                  Quit
              EndCase
         EndCase
      EndDo
    EndDo


    6.2. Створення файлу даних
    * Командний файл CreateFd - створення нового файлу даних
    set Talk off
    set Status off
    set Escape off
    Clear
    Zag = 'Процес створення нового файлу даних'
    @ 4,22 to 4,58 Color u/w *
    @ 3,22 Say Zag Color u/w *
    @ 12,0
    Accept 'Вкажіть ім'я створюваного файла даних:' to NameFd
    If Len (NameFd)> 0 & & Якщо ім'я файлу не ввели, то робити нічого
      
    * Зміна заголовка
      Zag = Zag + ':' + NameFd + '. Dbf'
      LenZag = Int (Len (Zag))
      @ 4, Int ((80-lenZag)/2) to 4, Int ((80-lenZag)/2) + LenZag Color u/w *
      @ 3, Int ((80-LenZag)/2) Say Zag Color u/w *
      @ 14,0
    Text
     Хочете автоматично створити порожню структуру
     з вказаним ім'ям, за завданням курсового проекту (Д/Н)?
    EndText
      * Відповідь на поставлене питання
      Do While. T.
         @ 16,57
         Wait''to ABC & & Очікування натискання клавіші
         If ABC = 'н' Or ABC = 'д'
           ABC = Chr (Asc (ABC) -32) & & Зміна регістра
         EndIf
         If ABC = 'Н' Or ABC = 'Д'
           Exit
         EndIf
      EndDo
      * Створення ФД
      If ABC = 'Д' & & Автоматичне створення ФД
           Create Table & NameFd;
                (KodOrg N (3,0), VidProd C (20), Volum N (4,0), Price N (6,2))
           @ 8,0
           set Talk on
           Display Structure & & Висновок створеної структури
           set Talk off
         Else & & Створення ФД з можливістю заповнення полів
           Create & NameFd
      EndIf
    EndIf
    * Кінець роботи
    @ 24,0
    Wait 'Для повернення в меню натисніть будь-яку клавішу ...'< br /> @ 24,0 Clear
    Return


    6.3.Чтеніе файлу даних
    * Командний файл ReadFd - читання файлу даних
    set Talk off
    set Status off
    set Escape off
    Clear
    @ 4,27 to 4,54 Color u/w *
    @ 3,27 Say 'Процес читання файлу даних' Color u/w *
    @ 12,0
    Accept 'Введіть ім'я зчитує файла даних:' to NameFd
    If Len (NameFd)> 0 & & Якщо ім'я файлу не ввели, то робити нічого
    * Зміна заголовка
      @ 3,0 Clear to 5,79
      Zag = 'Вміст файлу даних:' + NameFd + '. Dbf'
      LenZag = Int (Len (Zag))
      @ 4, Int ((80-lenZag)/2) to 4, Int ((80-lenZag)/2) + LenZag Color u/w *
      @ 3, Int ((80-LenZag)/2) Say Zag Color u/w *
      
    * Висновок вмісту файлу
      Use & NameFd
      Do While. Not.EOF () & & Цикл виведення порцій записів ФД
                            & & У певну область екрану
         @ 7,0
         Display Next 15
         If EOF () =. F. & & В останньому циклі не потрібно переводити
                       & & Покажчик і тримати паузу
           Skip & & Переклад покажчика, щоб новий екран не починався
                  & & З останнього запису попереднього екрану
           @ 24,0
    Wait 'Натисніть будь-яку клавішу для перегляду наступних 15 записів ...'< br />      EndIf
      EndDo
      Close DataBases & & Закриття ФД
    EndIf
    * Кінець роботи
    @ 24,0
    Wait 'Для повернення в меню натисніть будь-яку клавішу ...'< br /> @ 24,0 Clear
    Return


    6.4.Добавленіе даних у файлданних
    * Командний файл AddFd - додавання файлу даних
    set Talk off
    set Status off
    set Escape off
    Clear
    @ 4,25 to 4,56 Color u/w *
    @ 3,25 Say 'Процес додати файл даних' Color u/w *
    @ 12,0
    Accept 'Введіть ім'я файлу даних для додавання даних:' to NameFd
    If Len (NameFd)> 0 & & Якщо ім'я файлу не ввели, то робити нічого
      * Зміна заголовка
      @ 3,0 Clear
      Zag = 'Додавання даних у файл даних:' + NameFd + '. Dbf'
      LenZag = Int (Len (Zag))
      @ 4, Int ((80-lenZag)/2) to 4, Int ((80-lenZag)/2) + LenZag Color u/w *
      @ 3, Int ((80-LenZag)/2) Say Zag Color u/w *
      * Додавання даних у ФД
      Use & NameFd
      Append
      Close DataBases & & Закриття ФД
    EndIf
    * Кінець роботи
    @ 24,0
    Wait 'Для повернення в меню натисніть будь-яку клавішу ...'< br /> @ 24,0 Clear
    Return


    6.5.Печать відомостей осуммарной вартості продукції заданого виду по кожному
    підприємству і про среднемвипуске цієї продукції одним підприємством.
    * Командний файл Zad1 - друк відомостей про заданої продукції
    set Talk off
    set Status off
    set Escape off
    Clear
    @ 4,18 to 4,62 Color u/w *
    @ 3,18 Say 'Процес друку відомостей про заданої продукції' Color u/w *
    @ 12,0
    Accept 'Введіть ім'я файлу даних:' to NameFd
    @ 12,0 Clear
    @ 12,0
    Accept 'Введіть вид продукції:' to TypeProd
    If Len (NameFd)> 0 And Len (TypeProd)> 0 & & Якщо ім'я файлу або
                                               & & Вид продукції не ввели,
                                               & & То робити нічого
      * Зміна заголовка
      @ 3,0 Clear
      Zag = 'Відомості про продукцію:' + TypeProd
      LenZag = Int (Len (Zag))
      @ 4, Int ((80-lenZag)/2) to 4, Int ((80-lenZag)/2) + LenZag Color u/w *
      @ 3, Int ((80-LenZag)/2) Say Zag Color u/w *
      Use & NameFd
      * Формування шапки
      L ='+-----------------+---------------+--------+--- --------+'< br />   @ 7,12 Say L
      @ 8,12 Say 'Код підприємства Обсяг випуску Ціна Вартість'
      @ 9,12 Say L
      Row = 10 & & Поточний номер рядка для виводу даних
      Do While. Not.EOF ()
         If VidProd = TypeProd
    * Формування рядків
           @ Row, 12 Say''
           @ Row, 20 Say KodOrg
           @ Row, 30 Say''
           @ Row, 36 Say Volum Picture '# ###'< br />        @ Row, 46 Say''
           @ Row, 48 Say Price Picture'###.##'< br />        @ Row, 55 Say''
           @ Row, 57 Say Volum * Price Picture '# # ###.##'< br />        @ Row, 67 Say''
           Row = Row 1
         EndIf
         Skip
      EndDo
      * Формування підсумковій частині таблиці
      @ Row, 12 Say L
      Row = Row 1
      * Розрахунок сумарної вартості
      Sum Volum * Price For VidProd = TypeProd to AllPrice
      * Розрахунок середнього випуску
      Average Volum For VidProd = TypeProd to AvVol
      @ Row, 29 Say 'Загальна сумарна вартість:'
      @ Row, 56 Say AllPrice Picture '# # # ###.##'< br />   @ Row +1,21 Say 'Середній випуск одним підприємством:'
      @ Row +1,58 Say AvVol Picture '# ###'< br />   Close DataBases & & Закриття ФД
    EndIf
    * Кінець роботи
    @ 24,0
    Wait 'Для повернення в меню натисніть будь-яку клавішу ...'< br /> @ 24,0 Clear
    Return


    6.6. Друк відомостей про сумарної вартості і сумарному випускекаждой продукції.
    * Командний файл Zad2 - друк відомостей про обсяги та вартість продукції
    set Talk off
    set Status off
    set Escape off
    Clear
    @ 4,15 to 4,64 Color u/w *
    @ 3,15 Say 'Процес друку відомостей про обсяги всієї продукції' Color u/w *
    @ 12,0
    Accept 'Введіть ім'я файлу даних:' to NameFd
    @ 12,0 Clear
    If Len (NameFd)> 0 & & Якщо ім'я файлу не ввели, то друкувати нічого
      Use & NameFd
      
    * Формування шапки таблиці
      L ='+---------------------+---------------+-------- -------------+'< br />   @ 7,10 Say L
      @ 8,10 Say 'Вид продукції Загальний обсяг Сумарна вартість'
      @ 9,10 Say L
      * Сортування даних за видом продукції
      Index On VidProd to & NameFd & & Створення індексного файлу
      Use & NameFd Index & NameFd
      * Формування рядків таблиці
      Row = 10 & & Поточний номер рядка для виводу даних
      Do While. Not.EOF ()
         VP = VidProd
         RNom = RecNo () & & Запам'ятати номер поточного запису
         Sum Volum For VidProd = VP to AllVol & & Загальний обсяг
         Sum Volum * Price For VidProd = VP to AllPrice & & Сумарна вартість
         GoTo RNom & & Повернутися на поточний запис
         @ Row, 10 Say''
         @ Row, 12 Say VidProd
         @ Row, 32 Say''
         @ Row, 37 Say AllVol Picture '# # # ###'< br />      @ Row, 48 Say''
         @ Row, 55 Say AllPrice Picture '# # # ###.##'< br />      @ Row, 70 Say''
         * Пропуск записів з відпрацьованим видом продукції
         Do While VidProd = VP And. Not.EOF ()
           Skip
         EndDo
         Row = Row 1
      EndDo
      * Формування підсумковій частині таблиці
      @ Row, 10 Say L
      Close DataBases & & Закриття ФД
      Delete File NameFd + '. Idx' & & Видалення індексного файлу
    EndIf
    * Кінець роботи
    @ 24,0
    Wait 'Для повернення в меню натисніть будь-яку клавішу ...'< br /> @ 24,0 Clear
    Return


    6.7. Друк упорядкованого за сумарною вартістю спіскапродукціі п'яти видів
    * Командний файл Zad3 - друк упорядкованих відомостей про вартість продукції
    set Talk off
    set Status off
    set Escape off
    Clear
    @ 4,9 to 4,71 Color u/w *
    @ 3,9 Say 'Друк відомостей про сумарної вартості продукції за зростанням'
    Coloru/w *
    @ 12,0
    Accept 'Введіть ім'я файлу даних:' to NameFd
    @ 12,0 Clear
    If Len (NameFd)> 0 & & Якщо ім'я файлу не ввели, то друкувати нічого
      Use & NameFd
      
    * Формування шапки таблиці
      L ='+---------------------+---------------------+'< br />   @ 7,17 Say L
      @ 8,17 Say 'Вид продукції Сумарна вартість'
      @ 9,17 Say L
      * Пошук продукції з найменшим значенням вартості
      Store 0 to MinAP, LastAP
      For I = 1 to 5 & & Цикл для п'яти видів продукції
         Do While. Not.EOF () & & Цикл пошуку нового мінімуму
           VP = VidProd & & Поточний вид продукції
           RNom = RecNo () & & Поточний запис
           Sum Volum * Price For VidProd = VP to AllPrice
           If AllPrice> LastAP
              If AllPrice
                MinAP = AllPrice
                MinVP = VP
              EndIf
           EndIf
           If RNom
              GoTo RNom 1 & & Перехід на наступну запис
           EndIf
         EndDo
         
    * Формування рядки таблиці
         @ 9 + I, 17 Say''
         @ 9 + I, 19 Say MinVP
         @ 9 + I, 39 Say''
         @ 9 + I, 46 Say MinAP Picture '# # # ###.##'< br />      @ 9 + I, 61 Say''
         LastAP = MinAP & & Попереднє мінімальне значення
                         & & (Нижня межа мінімальних значень)
         MinAP = 0
         GoTo Top & & Відновити перегляд з перших рядків
      Next
      * Формування підсумковій частині таблиці
      @ 15,17 Say L
      Close DataBases & & Закриття ФД
    EndIf
    * Кінець роботи
    @ 24,0
    Wait 'Для повернення в меню натисніть будь-яку клавішу ...'< br /> @ 24,0 Clear
    Return


    7.Результати рішень
    Вибір створення файлу даних


          1Ручка 1000 2,00
          1Карандаш 500 1,50
          1Фломастер 1000 4,70
          1Черніла 500 3,00
          2Ручка 1200 1,85
          2Фломастер 750 5,00
          2Ластік 5000 1,20
          2Карандаш 1500 1,35
          3Черніла 400 3,20
          3Ручка 800 1,90
          3Карандаш 1200 1,40
          3Фломастер 2000 4,50
          4Ручка 900 1,85
          4Ластік 200 2,00
          4Фломастер 1400 4,70
          4Черніла 500 3,05
          5Карандаш 700 1,45
          5Черніла 1100 2,60
          5Ластік 1400 1,65
          5Фломастер 500 5,3
          6Ластік 600 1,55
          6Черніла 800 3,10
          6Карандаш 1000 1,55

    8.Заключеніе
    Реляційні СУБД, такі як FoxPro дійсно є потужним засобом
    управління великим обсягом данних.СУБД цього типу дозволяють виробляти швидку
    сортування великого масиву даних, здійснювати швидкий перехід за записами в
    довільному порядку, проізводітьбиструю вибірку великої кількості даних з
    всього масиву даних по заданим критеріям. У таких реляційних СУБД кожен файл
    даних розглядається какдвумерная таблиця, стовпці якої відповідають полям
    записів, а рядки відповідають окремим записам файла і звернення до даних
    йде через указаніеномера запису імені поля. При цьому робота з окремим полем
    таблиці даних нагадує роботу зі змінними - звернення до даних максимально
    спрощено, іпользователю не потрібно знати всю ієрархічну структуру даних.
    Мова команд СУБД сімейства Fox містить широкий набір команд, що виконують
    действіясложних конструкцій, наприклад, сортування записів файлу зводиться тільки
    до двом командам. Крім цього в СУБД передбачені команди створення світлового
    меню дляорганізаціі прямого діалогу з користувачем. Все це максимально
    спрощують написання програм і підтверджує, що реляційні СУБД сімейства Fox
    дійсно є потужним інструментом длясозданія і обробки баз даних
    великого обсягу.
    Список літератури
    1. Лемашко Е.В., Романчук В.Г. Програмування в системі команд СУБД
    сімейства Fox: учебное пособие/ГАУ, М., 1998.
    2. Комп'ютерний практикум. Програмування в середовищі Турбо-Паскаль та СУБД типу
    Fox. Методичні вказівки до виконання курсовогопроекта./Сост.: О. Н. Леонова,
    І. А. Несмеянов; ГАУ, М., 1998.



         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status