CREATE OR REPLACE PACKAGE pool_pkg AS VOLYM NUMBER; PRIS NUMBER; v_vattenkostnad NUMBER; FUNCTION rund_pool(HÖJD IN NUMBER, RADIE in number)RETURN NUMBER; FUNCTION rektangulär_pool(HÖJD IN NUMBER, LÄNGD IN NUMBER, BREDD IN NUMBER)RETURN NUMBER; FUNCTION vatten_pris(VOLYM IN NUMBER , PRIS IN NUMBER, LÄN VARCHAR2)RETURN NUMBER; END pool_pkg; / CREATE OR REPLACE PACKAGE BODY pool_pkg AS FUNCTION rund_pool(HÖJD in number, RADIE in number) RETURN NUMBER; BEGIN VOLYM := (3.14*radie*radie*höjd); poolpris := poolpris_func(volym); RETURN poolpris; END rund_pool; FUNCTION rektangulär_pool(HÖJD IN NUMBER, LÄNGD IN NUMBER BREDD IN NUMBER) RETURN NUMBER; BEGIN volym := (längd*bredd*höjd); poolpris := poolpris_func(volym); RETURN poolpris; END rektangulär_pool; FUNCTION vatten_pris(VOLYM IN NUMBER, PRIS IN NUMBER, LÄN IN VARCHAR2) BEGIN CASE WHEN 'Blekinge län' THEN v_vattenkostnad := 1.31; WHEN 'Dalarnas län' THEN v_vattenkostnad := 1.14; WHEN 'Gotlands län' THEN v_vattenkostnad := 1.53; WHEN 'Gävleborgs län' THEN v_vattenkostnad := 1.22; WHEN 'Hallands län' THEN v_vattenkostnad := 1.12; WHEN 'Jämtlands län' THEN v_vattenkostnad := 1.53; WHEN 'Jönköpings län' THEN v_vattenkostnad := 1.17; WHEN 'Kalmar län' THEN v_vattenkostnad := 1.13; WHEN 'Kronobergs län' THEN v_vattenkostnad := 1.13; WHEN 'Norrbottens län' THEN v_vattenkostnad := 1.29; WHEN 'Skåne län' THEN v_vattenkostnad := 1.58; WHEN 'Stockholms län' THEN v_vattenkostnad := 1.25; WHEN 'Södermanlands län' THEN v_vattenkostnad := 1.11; WHEN 'Uppsala län' THEN v_vattenkostnad := 1.01; WHEN 'Värmlands län' THEN v_vattenkostnad := 1.04; WHEN 'Västerbottens län' THEN v_vattenkostnad := 1.2; WHEN 'Västernorrlands län' THEN v_vattenkostnad := 1.11; WHEN 'Västmanlands län' THEN v_vattenkostnad := 1.44; WHEN 'Västra Götalands län' THEN v_vattenkostnad := 1.11; WHEN 'Örebro län' THEN v_vattenkostnad := 1.41; WHEN 'Östergötlands län' THEN v_vattenkostnad := 1.52; ELSE DBMS_OUTPUT.PUT_LINE('Skriv in ett län t ex. Jämtlands län'); END CASE; PRIS := VOLYM*V_VATTENKOSTNAD; RETURN PRIS; END vatten_pris; FUNCTION poolpris_func(volym IN NUMBER, poolpris IN NUMBER)RETURN NUMBER; BEGIN poolPris := volym * 118.16666666666; RETURN poolpris; END poolpris_func; END pool_pkg; /