create or alter procedure OTRAN_SIMPANAN ( GNOTRAN NOTRAN, GUSERID USERID) as declare variable VIDANGGOTA IDANGG; declare variable VTGLBYR TGL; declare variable VCRESKR NOMINAL; declare variable VCREMGO NOMINAL; declare variable VCRE4PR NOMINAL; declare variable VCREPKK NOMINAL; declare variable VDEBSKR NOMINAL; declare variable VDEBMGO NOMINAL; declare variable VDEB4PR NOMINAL; declare variable VDEBPKK NOMINAL; declare variable VTOTDEB NOMINAL; declare variable VTOTCRE NOMINAL; declare variable VKETERA KET; declare variable VKDTELR KDTELR; declare variable VLEDPKK LEDGER; declare variable VLEDMGO LEDGER; declare variable VLED4PR LEDGER; declare variable VLEDSKR LEDGER; declare variable VLEDTLR LEDGER; declare variable VNOREFS NOTRAN; begin select idanggota, tglbyr, creskr, cremgo, cre4pr, crepkk, (creskr+cremgo+cre4pr+crepkk) totcre, debskr, debmgo, deb4pr, debpkk, (debskr+debmgo+deb4pr+debpkk) totdeb, trim(ketera) ketera, kdtelr, (select ledpkk from pas_kant) ledpkk, (select ledmgo from pas_kant) ledmgo, (select led4pr from pas_kant) led4pr, (select ledskr from pas_kant) ledskr, (select noacct from gl_teler where kdtelr=a.kdtelr) ledtlr, norefs from tran_simperorangan a where a.flotor='T' and a.notran=:gnotran into vidanggota, vtglbyr, vcreskr, vcremgo, vcre4pr, vcrepkk, Vtotcre, vdebskr, vdebmgo, vdeb4pr, vdebpkk, vtotdeb, vketera, vkdtelr, vledpkk, vledmgo, vled4pr, vledskr, vledtlr, vnorefs; if (vcreskr>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '4', '401', :vcreskr *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledskr, :vnorefs, :vcreskr *-1, :vketera, :vtglbyr, :guserid); end if (vcre4pr>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '3', '401', :vcre4pr *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vled4pr, :vnorefs, :vcre4pr *-1, :vketera, :vtglbyr, :guserid); end if (vcremgo>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '2', '401', :vcremgo *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledmgo, :vnorefs, :vcremgo *-1, :vketera, :vtglbyr, :guserid); end if (vcrepkk>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '1', '401', :vcrepkk *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledpkk, :vnorefs, :vcrepkk *-1, :vketera, :vtglbyr, :guserid); end if(vtotcre>0) then begin insert into gl_tlhtrn (notran, kdtelr, tglbyr, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vkdtelr, :vtglbyr,'401', :vtotcre, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledtlr, :vnorefs, :vtotcre, :vketera, :vtglbyr, :guserid); end --------- if (vdebskr>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '4', '401', :vdebskr, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledskr, :vnorefs, :vdebskr, :vketera, :vtglbyr, :guserid); end if (vdeb4pr>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '3', '401', :vdeb4pr, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vled4pr, :vnorefs, :vdeb4pr, :vketera, :vtglbyr, :guserid); end if (vdebmgo>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '2', '401', :vdebmgo, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledmgo, :vnorefs, :vdebmgo, :vketera, :vtglbyr, :guserid); end if (vdebpkk>0) then begin insert into anggota_htrn (notran, idanggota, tglbyr, jnapli, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vidanggota, :vtglbyr, '1', '401', :vdebpkk, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledpkk, :vnorefs, :vdebpkk, :vketera, :vtglbyr, :guserid); end if(vtotdeb>0) then begin insert into gl_tlhtrn (notran, kdtelr, tglbyr, kdtran, jumtra, ketera, tglinp, idinpt) values (:gnotran, :vkdtelr, :vtglbyr,'401', :vtotdeb *-1, :vketera, :vtglbyr, :guserid); ----- insert into gl_hstrn (notran, kdtran, tglbyr, noacct, norefs, jumtra, ketera, tglinp, idinpt) values (:gnotran, '401', :vtglbyr, :vledtlr, :vnorefs, :vtotdeb *-1, :vketera, :vtglbyr, :guserid); end update tran_simperorangan set flotor='Y',tglotr=(select tglsek from pas_hprs),idotor=:guserid where notran=:gnotran; end