create or replace procedure opiskelija_crf (otunnus in number) is -- muodostetaan opiskelijan ylläpitolomake cursor op is select onumero, nimi, paa_aine, kaupunki, aloitusvuosi from info1.opiskelija where onumero=otunnus; t varchar2(80); o opiskelija%rowtype; jatkuu boolean; begin iht.header('Opiskelijan tiedot -esimerkkilomake INFO k97','ohje',NULL); open op; fetch op into o; if op%notfound then htp.p('

Virheellinen tunnus

'); else iht.formFieldsOpen('info1.opiskelija_upd','post'); iht.formField('Tunnus: ','otunnus',6,6,o.onumero); iht.formField('Nimi: ','onimi',40,40,o.nimi); iht.formField('Pääaine: ','opaa',12,12,o.paa_aine); iht.formField('Kaupunki: ','okaupunki',30,30, o.kaupunki); iht.formField('Aloitusvuosi: ','oaloitus',4,4, to_char(o.aloitusvuosi)); iht.formFieldsClose; htp.hr; iht.formStandardButtons4; htp.formClose; end if; iht.footer(to_char(sysdate,'DD.MM.YY'), 'Esimerkki 3'); end; / grant execute on opiskelija_crf to www_user; show errors; exit;