Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Приклад 1.docx
Скачиваний:
16
Добавлен:
21.11.2019
Размер:
46.93 Кб
Скачать

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

Коди документів, масивів і програмних модулів побудуємо за десятковою системою кодування. Структура коду документів наступна:

Д Х Х

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

Вид документа (1 – вхідний оперативний; 2 –

вихідний або результатний; 3 – коректура)

Мнемонічна ознака (Д-документ)

Структура коду масивів така:

М Х Х

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

Вид масиву ( О-оперативний; Д – довідковий,

розцінковий і ін.; Р – результатний; П – проміжний)

Мнемонічна ознака (М – масив)

Структура коду програмного модуля наступна:

МОД Х

Порядковий номер програмного модуля

Мнемонічна ознака ( МОД – модуль)

Код програми, яка реалізує роботу модуля, має таку структуру:

ПР Х

Порядковий номер програми

Мнемонічна ознака ( ПР – програма)

Виходячи з наведеної структури кодів, присвоїмо кодові позначення номенклатурі для нашої задачі (табл. 7.29):

Таблиця 7. 29

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

Назва кодованої номенклатури

Код номенклатури

Примітки

Документ-коректура для внесення змін в довідковий масив цін на матеріали

Д31

Результатний документ “Оборотно-сальдова відомість”

Д21

Масив сальдо

МР1

Масив надходження матеріалів за поточний місяць

МО1

Масив вибуття матеріалів за поточний місяць

МО2

Довідковий масив цін на матеріали

МД1

2 Етап.

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

Д21

Оборотно-сальдова відомість

Номенкла-

турний номер матеріалу

Назва

матері-

алу

Код

одиниці

вимірювання

Наз-

ва

о.в.

Ці-

на

Залишок на початок

Надходжен-ня

Вибуття

Залишок на кінець

К-ть

Су-ма

К-сть

Су-ма

К-сть

Су-ма

К-сть

Сума

Р1

Р2

Р3

Р4

Р5

Р6

Р7

Р8

Р9

Р10

Р11

Р12

Р13

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

1 крок – відкоригуємо довідник цін на матеріали документом на коригування, тобто:

Д31 і МД1 МД1 відкоригований

2крок – будемо обробляти масив залишків матеріалів на початок періоду та масив надходження матеріалів за поточний місяць, формуючи при цьому проміжний масив МП1 з накопиченими даними, тобто:

МР1 і МО1 МП1 (Р6, Р7, Р8, Р9)

3 крок – одержаний на попередньому кроці проміжний масив МП1 будемо обробляти разом з масивом вибуття матеріалів, формуючи проміжний масив МП2, тобто:

МП1 і МО2 МП2 (з реквізитами-Р6, Р7, Р8, Р9, Р10, Р11, Р12, Р13)

4 крок - проміжний масив МП2 при сумісній обробці з довідником цін на матеріали МД1 дає змогу надрукувати оборотно-сальдову відомість, тобто:

МП2 і МД1 Д21 (Р1 –­: Р13).

3 етап.

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

Опишимо наведену на рис. 7.16 модульну схему.

Модуль МД1. Початок роботи системи.

Модулі МД2, МД3. На основі інструкційної карти (інструкції) запускається система і на екран виводиться головне меню з такими позиціями:

  • Коригування довідника цін на матеріали.

  • Формування проміжного файлу МП1.

  • Формування проміжного файлу МП2.

  • Друк машинограми.

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

перший номер (02 або 03 на схемі) – номер листа, на який здійснюється перехід;

другий номер (04, 05, 06, 07 на схемі) – номер модуля, на який здійснюється перехід.

Модуль МД4. Функція модуля - внесення змін в масив довідника цін на матеріали. Роботу модуля здійснює програма ПР2. Суть роботи програми. На екран виводиться перший запис масиву MДІ. Форма документа на внесення змін може мати такі графи:

  • вид змін ( 1-замінити старе значення реквізиту на нове, 2- вилучити запис, 3-дописати запис);

  • ключовий реквізит запису;

  • старе значення реквізиту;

  • нове значення реквізиту.

Якщо в документі у графі “вид змін” проставлено код 1-замінити, то за ключем (для даної задачі це номенклатурний номер матеріалу) проставленим у коректурі Д31 відшуковують на екрані запис масиву MДІ; в цьому записі знаходять відповідний реквізит (старе значення реквізиту в документі Д31) і замінюють його на нове значення реквізиту з документа на внесення змін Д31.

Якщо в коректурі Д31 проставлений у графі “вид змін” код 2 – вилучити запис ( в документі на внесення змін будуть відсутні в цьому випадку записи в графах старе і нове значення реквізиту), то за ключем з коректури Д31 знаходять запис в масиві MДІ, але знайдений запис не записується (вилучається) у результатний файл MДІ*.

У випадку , якщо вид змін 3 - дописати запис - в коректурі Д31 проставлені лише нові значення реквізитів, які формують новий запис в масиві MДІ* .

Модуль МД5. Роботу модуля реалізує програма ПР3. На вході модуля – результатний файл МР1 (масив сальдо на початок місяця) і масив оперативної інформації MО1 з даними про надходження матеріалів за місяць. На виході - сформований проміжний масив МП1, який містить накопичені суми – до залишків на початок місяця додались кількісні і сумові реквізити по надходженню матеріалів за місяць.

Модуль МД6. Роботу модуля реалізує програма ПР4. На вході модуля – проміжний масив інформації МП1 та оперативний масив вибуття матеріалів за місяць МО2. Алгоритм роботи програми ПР4 заключається в пошуку по номенклатурному номеру матеріалу запису в проміжному масиві МП1 і віднімання відпуску матеріалу по цьому номенклатурному номеру з масиву МО2. При цьому формується проміжний масив МП2 із залишками на кінець місяця. Це фактично є результатним масивом залишків матеріалів на кінець місяця, який буде виступати як масив вхідного сальдо на початок наступного місяця. Тому на виході модуля МД6 записано проміжний масив МП2 а в дужках вказано МР1 (результатний масив кінцевого сальдо).

Лист 1

Початок

МОД1

МОД2

ПР 1