Разработка подсистемы учета товара
Подсистема учета товара позволяет построить отчеты по трем основным задачам:
· Внутреннее перемещение товара;
· Списание товаров;
· Отслеживание остатков на складах.
Входные данные:
Множество товаров: Tovar ={ tovari ,}, i = 0,…, L ,
где tovari – i - ый товар;
i - порядковый номер товара;
L – количество товаров.
tovari =< tovar Num, tovar Name, tovarPrice , isUsable >,
где
tovar Num – номер товара;
tovar Name – название товара;
tovarPrice – цена товара;
isUsable – признак, является ли товар списанным.
Множество складов: Sklad={ skladj }, j =0,…, N ,
где skladj – j - ый склад;
i - порядковый номер склада;
N – количество складов.
skladj =< sklad Num , skladAddress , skladSotrudnik >,
где
sklad Num – номер склада;
skladAddress – адрес склада;
skladSotrudnik – сотрудник скада.
Множество товаров на складе на учетную дату: TovarSklad=< tovar Num, sklad Num , count , date >,
где tovar Num – номер товара;
sklad Num - номер склада;
dount – количество товара;
cate – дата учета.
Action – событие; Action Î {Внутреннее перемещение товаров, Списание товаров, Отслеживание остатков на складах}.
Выходные данные:
Отчеты по внутреннему перемещению товара, списанию товара, отслеживанию остатков на складах.
Алгоритм:
На основании входных данных формируется список товаров с определенными для каждого случая параметрами.
Если Action
· = Внутреннее перемещение товаров, то входными данными являются множество товаров на складе на учетную дату TovarSklad=< tovar Num, sklad Num , Count , Date >. Оно используется для формирования отчета о внутреннем перемещении товаров между складами, получаемого из множества.
|
|
Составление отчета по перемещению товаров осуществляется с помощью функции PeremeshenieTovatov ( TovarSklad , currentDate ), которая в качестве сходных данных использует информацию о множестве товаров на складе на учетную дату и текущую дату формирования отчета.
· = Списание товаров, то входными данными являются множество товаров, у которых параметр isUsable =0. Этот параметр определяет, что товар не является доступным к использованию, что он был списан.
Action = Списание товаров & isUsablei =0 & tovari Î Tovar ® SpisanieTovatov ( tovari ), где SpisanieTovatov ( tovari ) – функция составления отчета по списанным товарам, которая в качестве сходных данных использует информацию о множестве списанных товаров.
· = Отслеживание остатков на складах, то входными данными являются множество товаров на складе на учетную дату TovarSklad=< tovar Num, sklad Num , Count , Date >, где количество товаров больше 0. Оно используется для формирования отчета об остатках на складах.
Action=Отслеживание остатков на складах & Counti >0 ® OstatokTovatov ( TovarSkladi ), где OstatokTovatov ( TovarSkladi ) – функция составления отчета по остаткам на складе, которая в качестве сходных данных использует информацию о множестве товаров, количество которых больше 0.
|
|
Разработка подсистемы сбыта
Входные данные
Множество товаров на складе на учетную дату: TovarSklad=< tovar Num, sklad Num , count , date >,
где tovar Num – номер товара;
sklad Num - номер склада;
count – количество товара;
date – дата учета.
Выходные данные
Множество товаров на складе на текущую дату: TovarSklad=< tovar Num, sklad Num , count , currentDate >,
где currentDate – текущая дата.
Алгоритм
Учет сбыта товаров осуществляется с помощью функции Sbit ( TovarSklad ), которая учитывает продажи товаров и изменяет остатки на складах.
counti< countj & tovar Numi= tovar Numj & sklad Numi= sklad Numj & datei< currentDate ® Sbit(TovarSkladi)
Разработка подсистемы снабжения
Подсистема снабжения решает три основных задачи:
· Учет заказов поставщикам;
· Учет договоров.
Входные данные
Множество поставщиков: Postavshik ={ postavshiki ,}, i = 0,…, K ,
где postavshiki – i - ый поставщик;
i - порядковый номер товара;
K – количество товаров.
postavshiki =< postavshik Num, postavshik Name, postavshikAddress >,
где
postavshik Num – номер поставщика;
postavshik Name – название поставщика;
postavshikAddress – адрес поставщика.
Множество заказов: Zakaz ={ zakazj }, j = 0,…, P ,
где zakazj – j - ый заказ;
j - порядковый номер заказа;
|
|
P – количество заказов.
zakazj =< zakaz Num, postavshik Num, tovarNum , count, date , docNum >,
где
zakaz Num – номер заказа;
postavshik Num – номер поставщика;
tovarNum – номер товара;
count – количество заказываемого товара;
date – дата заказа;
docNum – номер договора.
Action – событие; Action Î {Учет заказов поставщикам, Учет договоров}.
Выходные данные
Отчеты по учету заказов поставщикам и учету договоров.
Алгоритм
На основании входных данных формируется список договоров с определенными для каждого случая параметрами.
Если Action
· = Учет заказов поставщикам, то входными данными является множество заказов на учетную дату zakaz =< zakaz Num, postavshik Num, tovarNum , count, date , docNum > . Оно используется для формирования отчета по учету заказов поставщикам.
Составление отчета по учету заказов поставщикам осуществляется с помощью функции UchetZakazov ( zakaz , currentDate ), которая в качестве сходных данных использует информацию о множестве заказов на учетную дату и текущую дату формирования отчета.
· = Учет договоров, то входными данными является множество заказов на учетную дату zakaz =< zakaz Num, postavshik Num, tovarNum , count, date , docNum > . Параметр docNum определяет номер договора и однозначно определяет, какой товар был заказан через какого поставщика, его количество и дату заказа.
|
|
Action = Учет договоров & docNumi = docNumj & tovari ¹ tovarj
® UchetDogovorov ( zakaz ),
где UchetDogovorov ( zakaz ) – функция составления отчета по учету договоров, которая в качестве сходных данных использует информацию о множестве заказов.
Дата добавления: 2019-07-17; просмотров: 115; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!