wiki:UseCase2

Преглед и одобрување на набавка

Ова е фунјкција уникатна за корисници од тип 'надзор' и им овозможува преглед и одобрување на набавки побарани од подизведувачи за објектот кој тие го надгледуваат.

При пристап до системот за преглед на набавки, базата на податоци ќе ги извши следните квериња:

  1. Ќе ги најде сите набавки наменети за објектот кој тие го надгледуваат:
  1. За секоја набавка ќе ги излиста следните информации: датумот, цената, предметот, количината, добавувачот кој ја нарачал, и тоа дали е одобрена или не.

2.1 Проверката за тоа дали е одобрена или не една нарачка ќе се прави со тоа што ќе се провери дали нарачката постои во 'Одобрува' табелата.

Кверито како складирана процедура би изгледало вака:

CREATE PROCEDURE `Display_Nabavki_For_Nadzor` (IN N_Ime VARCHAR(50))
BEGIN
    WITH select_objekt_nabavki AS (
        SELECT 
            o.Objekt_ID AS son_OID, 
            nb.Nabavka_ID AS son_NID, 
            nb.Datum AS son_D, 
            nb.Predmet AS son_P, 
            nb.Kolicina AS son_K, 
            nb.Cena AS son_C 
        FROM Objekt o
        JOIN Nadgleduva n ON o.Objekt_ID = n.Objekt_ID
        JOIN Nameneta_Za nz ON nz.Objekt_ID = o.Objekt_ID
        JOIN Nabavka nb ON nb.Nabavka_ID = nz.Nabavka_ID
        WHERE n.Nadzor_Ime = N_Ime
    )

    SELECT son_OID, son_NID, son_D, son_P, son_K, son_C
    FROM select_objekt_nabavki son
    LEFT JOIN Odobruva o ON son.son_NID = o.Nabavka_ID
    WHERE o.Nabavka_ID IS NULL;
    
    SELECT son_OID, son_NID, son_D, son_P, son_K, son_C
    FROM select_objekt_nabavki son
    LEFT JOIN Odobruva o ON son.son_NID = o.Nabavka_ID
    WHERE o.Nabavka_ID IS NOT NULL;
END;

Потоа ќе има опција надзотор да одобри набавка, то ќе се изведе со нејзино додавање во табелата 'одобрува':

CREATE PROCEDURE `approve_nabavka` (IN nab_id INT, IN nad_ime VARCHAR(50))
BEGIN
	INSERT INTO Odobruva (Nabavka_ID, Nadzor_Ime) VALUES
	(nab_id, nad_ime);
END
Last modified 10 days ago Last modified on 01/21/25 01:55:45
Note: See TracWiki for help on using the wiki.