daily pastebin goal
55%
SHARE
TWEET

Untitled

a guest Aug 12th, 2017 51 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --csomag fej
  2. create or replace package kezel as
  3.  
  4. procedure beszur(p_osszeg konyveles.osszeg%type,p_leiras konyveles.leiras%type,p_bevetel_kiadas konyveles.bevetel_kiadas%type);
  5. function torol1(p_azon konyveles.azonosito%type)return konyveles.osszeg%type;
  6. function torol2(p_ossz konyveles.osszeg%type,beki konyveles.bevetel_kiadas%type)return number;
  7. procedure kiir;
  8. function egyenleg return number;
  9. function leker return number;
  10.  
  11. end kezel;
  12.  
  13. --csomag törzs
  14. create or replace package body kezel as
  15.  
  16. n number;
  17.  
  18. --procedure beszur
  19.  
  20. procedure beszur(p_osszeg konyveles.osszeg%type,p_leiras konyveles.leiras%type,p_bevetel_kiadas konyveles.bevetel_kiadas%type) is
  21. azon konyveles.azonosito%type default 0;
  22. begin
  23.  
  24. select max(azonosito)
  25. into azon
  26. from konyveles;
  27.  
  28. if azon=0 then azon:=1;
  29. else azon:=azon+1;
  30. end if;
  31.  
  32. insert into konyveles(azonosito,osszeg,leiras,bevetel_kiadas)
  33. values(azon,p_osszeg,p_leiras,p_bevetel_kiadas);
  34. n:=n+1;
  35.  
  36. commit;
  37.  
  38. end beszur;
  39.  
  40. --function torol1
  41.  
  42. function torol1(p_azon konyveles.azonosito%type)return konyveles.osszeg%type is
  43. ossz konyveles.osszeg%type;
  44.  
  45. begin
  46.  
  47. select osszeg
  48. into ossz
  49. from konyveles
  50. where p_azon=azonosito;
  51.  
  52. delete from konyveles
  53. where azonosito=p_azon;
  54.  
  55. return ossz;
  56. n:=n+1;
  57.  
  58. commit;
  59.  
  60. end torol1;
  61.  
  62. --function torol2
  63.  
  64. function torol2(p_ossz konyveles.osszeg%type,bevkiad konyveles.bevetel_kiadas%type)return number is
  65. szum number;
  66.  
  67. begin
  68.  
  69. select sum(osszeg)
  70. into szum
  71. from konyveles
  72. where osszeg<p_ossz and bevetel_kiadas=bevkiad;
  73.  
  74. delete from konyveles
  75. where osszeg<p_ossz and bevetel_kiadas=bevkiad;
  76.  
  77. return szum;
  78. n:=n+1;
  79.  
  80. commit;
  81.  
  82. end torol2;
  83.  
  84. --procedure kiir
  85.  
  86. procedure kiir is
  87.  
  88. cursor c1 is
  89. select *
  90. from konyveles;
  91.  
  92. begin
  93.  
  94. for i in c1
  95. loop
  96. dbms_output.put_line(i.azonosito||' '||i.osszeg||' '||i.leiras||' '||i.bevetel_kiadas);
  97. end loop;
  98.  
  99. n:=n+1;
  100. end kiir;
  101.  
  102. --function egyenleg
  103.  
  104. function egyenleg return number is
  105. bevetel number;
  106. kiadas number;
  107.  
  108. begin
  109.  
  110. select sum(osszeg)
  111. into bevetel
  112. from konyveles
  113. where bevetel_kiadas='bevétel';
  114.  
  115. select sum(osszeg)
  116. into kiadas
  117. from konyveles
  118. where bevetel_kiadas='kiadás';
  119.  
  120. return  bevetel-kiadas;
  121. n:=n+1;
  122. end egyenleg;
  123.  
  124.  
  125. function leker return number is
  126. begin
  127. return n;
  128. end leker;
  129.  
  130. begin
  131.  
  132. delete from konyveles;
  133.  
  134. end kezel;
RAW Paste Data
Top