Курсовая работа: Разработка физической модели базы данных Учёт затрат на медицинские услуги
CREATE TABLE Diagnos
(IDDiagnos INT IDENTITY PRIMARY KEY,
NameDiagnos varchar(50),
ShifrDiagnos varchar(20),
Norma INT )
Документ Прейскурант цен на медицинские услуги нашел свое выражение в отношениях Type (Специальность врача) и Otdel (Отделение), в которые в качестве атрибутов вошли тарифы по определённой специальности и отделению.
CREATE TABLE Otdel
(IDOtdel INT IDENTITY PRIMARY KEY,
Name varchar(30),
IDLPU INT,
TarifOtdel MONEY,
CONSTRAINT OtdelLPUforeign FOREIGN KEY(IDLPU) REFERENCES OtdelLPU)
Выходной документ Платежное поручение формируется с помощью хранимой процедуры на основании определённого приказа об оплате. Входными параметрами для процедуры являются NameLPU (Наименование ЛПУ) и Date (Дата приказа об оплате).
CREATE PROC Poruchenie
@NameLPU varchar(50),
@Date DateTime
AS
SELECT NameLPU,MestoLPU,Date,BeginPer,EndPer,Summa
FROM Prikas
INNER JOIN LPU
ON Prikas.IDLPU=LPU.IDLPU
WHERE LPU.NameLPU=@NameLPU AND Prikas.Date=@Date
Еще одним выходным документов автоматизируемого процесса является Заявка на финансирование , в которую входят суммы для финансирования отдельных ЛПУ за период. Входными параметрами для процедуры являются даты начала и конца периода. Сама же процедура реализована следующим образом: считаются суммы отдельно для стационара (в подзапросе) и для поликлиники, затем две полученные суммы складываются и дают таким образом окончательный результат. Для формирования заявки был написан следующий сценарий, создающий хранимую процедуру:
CREATE PROC GetZayavka
@Begin DateTime,
@End DateTime
AS
SELECT LPU.NameLPU,LPU.MestoLPU,SUM(TarifType)+Stacionar.Summa[Summa]
FROM Talon