Данных для системы электронного


Download 207.4 Kb.
bet2/2
Sana15.06.2023
Hajmi207.4 Kb.
#1484997
1   2
Bog'liq
Концепция базы данных для системы электронного документооборота в Oracle Database

CURSOR max_punkt IS
select max (COD_PUNKTA_MARCHR) as ma from PUNKT_MARCHRUTA where COD_TIPA_DOCUMENTA=cod_tip_doc;
c_max_punkt max_punkt%rowtype;
Определение последней даты работы с документом путем сортировки документов по дате получения:
CURSOR histor_date IS
select max(DATA_VREMYA_OTPRAV) as maxy from HISTORY WHERE COD_DOCUMENTA=cod_doc
order by DATA_VREMYA_OTPRAV desc, DATE_VREMYA_POLUCH desc; c_histor_date histor_date%rowtype;
Определение маршрута документа в соответствии с его типом:
cod_dolg:=c_punkt.COD_DOLZGNOST; for c_sotr in sotr loop cod_sotr:=c_sotr.COD_SOTRUDNIKA; Выбор наименее загруженного сотрудника:
for c_histor in histor loop if(kolich_doc >= c_histor.kolich) then
sotr_dlya_otpr:=c_sotr.COD_SOTRUDNIKA; kolich_doc:=c_histor.kolich;
Формирование записи в истории:
if(((c_punkt.VREMYA_NA_VIPOLN)+data1) <= SYSDATE)

Рис. 3. Результат работы процедуры




insert into HISTORY (COD_HISTORY, COD_PUNKTA_MARCHR, DATE_VREMYA_POLUCH, COD_SOTRUDNIKA, COD_DOCUMENTA, DATA_VREMYA_OTPRAV)
VALUES (k, c_punkt.COD_PUNKTA_MARCHR, data1, sotr_dlya_otpr, c_docum.COD_DOCUMENTA, (data1+c_ punkt.VREMYA_NA_VIPOLN));
data1:=data1+c_punkt.VREMYA_NA_VIPOLN; k:=k+1;
kolich_doc:=1000; max_punkt_save:=c_punkt.COD_PUNKTA_MARCHR; else
bool:=true; kolich_doc:=1000;
insert into HISTORY (COD_HISTORY, COD_PUNKTA_MARCHR, DATE_VREMYA_POLUCH, COD_SOTRUDNIKA, COD_DOCUMENTA)
VALUES (k, c_punkt.COD_PUNKTA_MARCHR, data1, sotr_dlya_otpr, c_docum.COD_DOCUMENTA); k:=k+1;
Процедура распределения документов проводит следующие действия с документом. После появления документа в системе прокладывается ветка маршрута для этого документа, начиная с первого этапа, программа анализирует со- трудников, которые нужны на данном этапе, и тот, у кого на руках меньше всего документов получает этот документ. По истечении времени выполнения этапа, программа формирует следующую ветку маршрута, и так до конца маршрута. По окончании маршрута, меняет статус документа на «Завершен». В результат работы процедуры, формируется таблица, которая отражает основные пункты маршрутов и документы, поступающие или выбывающие из этих маршрутов, ре- зультат работы процедуры представлен (рис. 3).

Литература:





  1. Алапати Сэм Р. Oracle Database 11g. Руководство администратора баз данных — М: Apress, 2010.— 1440 с.

  2. Прижляковский В. В. Введение в Oracle SQL — М.: Интуит, 2016.— 358 с.

Download 207.4 Kb.

Do'stlaringiz bilan baham:
1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling