create or alter procedure OTRAN_BERENCANA ( GNOTRAN NOTRAN, GUSERID USERID) as declare variable VREKTAB nompyd; declare variable VTGLBYR TGL; declare variable VCREBRC NOMINAL; declare variable VDEBBRC NOMINAL; declare variable VKETERA KET; declare variable VKDTELR KDTELR; declare variable VLEDBRC LEDGER; declare variable VLEDTLR LEDGER; declare variable VNOREFS NOTRAN; begin select rektab, tglbyr, crebrc, debbrc, trim(ketera) ketera, kdtelr, (select ledsld from pap_tabu group by ledsld) ledbrc, (select noacct from gl_teler where kdtelr=a.kdtelr) ledtlr, norefs from tran_simberencana a where a.flotor='T' and a.notran=:gnotran into vrektab, vtglbyr, vcrebrc, vdebbrc, vketera, vkdtelr, vledbrc, vledtlr, vnorefs; if (vcrebrc>0) then begin insert into tab_htrn (notran, rektab, tglbyr, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vrektab, :vtglbyr, '401', :vcrebrc *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledbrc, :vnorefs, :vcrebrc *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_tlhtrn (notran, kdtelr, tglbyr, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vkdtelr, :vtglbyr,'401', :vcrebrc, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledtlr, :vnorefs, :vcrebrc, :vketera, :vtglbyr, :guserid); end --------- if (vdebbrc>0) then begin insert into tab_htrn (notran, rektab, tglbyr, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vrektab, :vtglbyr, '401', :vdebbrc, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledbrc, :vnorefs, :vdebbrc, :vketera, :vtglbyr, :guserid); ----- insert into gl_tlhtrn (notran, kdtelr, tglbyr, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vkdtelr, :vtglbyr,'401', :vdebbrc *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledtlr, :vnorefs, :vdebbrc *-1, :vketera, :vtglbyr, :guserid); end update tran_simberencana set flotor='Y',tglotr=(select tglsek from pas_hprs),idotor=:guserid where notran=:gnotran; end