- •Виведення на екран і обробка головного меню
- •Головне меню
- •Вибір позиції меню
- •Ввід оперативних даних
- •Коригування оперативної інформації
- •Розв’язання задачі
- •Друк машинограми
- •1 Етап. Присвоїмо коди масивам, вхідним і вихідним документам, програмним модулям та програмам, які реалізують роботу модулів.
- •Кодові позначення масивів, документів, програмних модулів та програм
- •2 Етап.
- •Оборотно-сальдова відомість
- •Виведення на екран і обробка головного меню
- •Головне меню
- •Вибір позиції меню
- •Коригування довідника цін на матеріали
- •Формування
- •Проміжного файлу мп1
- •Друк машинограми
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