Lamp Iran

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 48

1.

PROSEDUR INSERT PENERIMAAN KAS REALISASI ANGGARAN


PROCEDURE SP_INSERT_REA @NO_BUKTI VARCHAR(20), @TANGGAL VARCHAR(15), @KODE VARCHAR(15), @JUMLAH MONEY AS DECLARE @SN VARCHAR(15), @LEVEL NUMERIC, @ID_MIN VARCHAR(15), @ID_MAX VARCHAR(15), @ID_BK_BESAR NUMERIC, @DEBET MONEY, @KREDIT MONEY, @SALDO_D MONEY, @SALDO_K MONEY, @ID_BB VARCHAR(15), @KODE_AWAL VARCHAR(15), @KODE_LIMA VARCHAR(15), @KAS VARCHAR(15), @KOROLARI_D VARCHAR(15), @KOROLARI_K VARCHAR(15) BEGIN --SALDO NORMAL = KREDIT SELECT @LEVEL = LEVEL FROM MST_AKUN WHERE KODE_REKENING = @KODE SET @KODE_AWAL = @KODE SET @KAS = '11101' --INSERT KODE_REKENING WHILE @LEVEL IN (6,5) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL)) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KODE BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D , @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_MIN = @ID_BK_BESAR BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE

BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = @SALDO_D - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = 0 , SALDO_D = NULL WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END

END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR , @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --YANG KODE ADA DI TAHUN DAN BULAN YANG SAMA ELSE BEGIN SELECT @SALDO_D = SALDO_D , @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR = (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE) IF @SALDO_K IS NOT NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_K) VALUES (@KODE,@TANGGAL , 'JR', @JUMLAH, @SALDO_K + @JUMLAH) END ELSE BEGIN IF @SALDO_D IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_K) VALUES (@KODE, @TANGGAL, 'JR', @JUMLAH, @JUMLAH) END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_D) VALUES (@KODE, @TANGGAL , 'JR', @JUMLAH, @SALDO_D - @JUMLAH) END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_D, SALDO_K) VALUES (@KODE,@TANGGAL, 'JR', @JUMLAH, NULL, 0) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_D, SALDO_K) VALUES (@KODE,@TANGGAL , 'JR', @JUMLAH, NULL, @JUMLAH - @SALDO_D) END END END END END --KODE HANYA ADA DI BUKU BESAR END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_K) VALUES (@KODE, @TANGGAL , 'JR', @JUMLAH, @JUMLAH) END --KODE BELUM ADA SAMA SEKALI IF @LEVEL = 6 BEGIN SET @KODE = LEFT(@KODE,7) SET @KODE_LIMA = @KODE

END ELSE BEGIN SET @KODE = LEFT(@KODE,5) END SET @LEVEL = @LEVEL - 1

END --AKHIR WHILE --INSERT KAS DI KAS DAERAH IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KAS BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_D = @SALDO_D + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_D = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN

UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = NULL, SALDO_D = @JUMLAH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END --AKHIR ID_BK_BESAR = @ID_MIN ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @JUMLAH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END --AKHIR ID_BK_BESAR <> @ID_MIN FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --AKHIR KAS ADA DI BULAN DAN DI TAHUN YANG SAMA ELSE BEGIN SELECT @SALDO_D = SALDO_D , @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR = (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS) IF @SALDO_D IS NOT NULL BEGIN

INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, DEBET, SALDO_D, ID_ASAL) VALUES (@KAS, @TANGGAL, 'JR', @JUMLAH, @SALDO_D + @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, DEBET,SALDO_D, ID_ASAL) VALUES (@KAS, @TANGGAL, 'JR', @JUMLAH, @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, DEBET, SALDO_K, ID_ASAL) VALUES (@KAS, @TANGGAL, 'JR', @JUMLAH, @SALDO_K - @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, DEBET, SALDO_K, SALDO_D , ID_ASAL) VALUES (@KAS, @TANGGAL, 'JR',@JUMLAH, NULL, 0, @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, DEBET, SALDO_K, SALDO_D , ID_ASAL) VALUES (@KAS, @TANGGAL, 'JR',@JUMLAH, NULL, @JUMLAH - @SALDO_K, @KODE) END END END END END --AKHIR KAS TIDAK ADA DI BULAN DAN DI TAHUN YANG SAMA END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, DEBET, SALDO_D, ID_ASAL) VALUES (@KAS, @TANGGAL, 'JR', @JUMLAH, @JUMLAH, @KODE) END --AKHIR KAS BELUM ADA DI BUKU BESAR --UNTUK KODE LEVEL = 5 IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL)) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KODE BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D , @SALDO_K

WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_MIN = @ID_BK_BESAR BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = @SALDO_D - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN

UPDATE TRANS_BUKU_BESAR SET SALDO_K = 0 , SALDO_D = NULL WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR , @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --YANG KODE ADA DI TAHUN DAN BULAN YANG SAMA ELSE BEGIN SELECT @SALDO_D = SALDO_D , @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR = (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE) IF @SALDO_K IS NOT NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_K) VALUES (@KODE,@TANGGAL , 'JR', @JUMLAH, @SALDO_K + @JUMLAH) END ELSE BEGIN IF @SALDO_D IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_K) VALUES (@KODE, @TANGGAL, 'JR', @JUMLAH, @JUMLAH) END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_D) VALUES (@KODE, @TANGGAL , 'JR', @JUMLAH, @SALDO_D - @JUMLAH) END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_D, SALDO_K) VALUES (@KODE,@TANGGAL, 'JR', @JUMLAH, NULL, 0) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_D, SALDO_K) VALUES (@KODE,@TANGGAL , 'JR', @JUMLAH, NULL, @JUMLAH - @SALDO_D) END END END END END --KODE HANYA ADA DI BUKU BESAR END ELSE

BEGIN INSERT INTO TRANS_BUKU_BESAR (KODE_REKENING, TANGGAL, REF, KREDIT, SALDO_K) VALUES (@KODE, @TANGGAL , 'JR', @JUMLAH, @JUMLAH) END --KODE BELUM ADA SAMA SEKALI --INSERT KE TRANS_DETAIL_BUKU_BESAR SELECT @ID_BB = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE_AWAL AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND MONTH(TANGGAL) = MONTH(@TANGGAL) INSERT INTO TRANS_DETAIL_BUKU_BESAR (TANGGAL,NO_BUKTI, KODE_REKENING, KREDIT,ID_BB) VALUES (@TANGGAL,@NO_BUKTI, @KODE_AWAL, @JUMLAH, @ID_BB) --INSERT KOROLARI SELECT @KOROLARI_D = KOROLARI_D , @KOROLARI_K = KOROLARI_K FROM MST_AKUN WHERE KODE_REKENING = @KODE_LIMA IF @KOROLARI_D IS NULL BEGIN SELECT @KOROLARI_D = KOROLARI_D , @KOROLARI_K = KOROLARI_K FROM MST_AKUN WHERE KODE_REKENING = @KODE END IF @KOROLARI_D IS NOT NULL BEGIN SELECT @SN = SALDO_NORMAL FROM MST_AKUN WHERE KODE_REKENING = @KOROLARI_D IF @SN = 'D' BEGIN --INSERT KOROLARI_D IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND ID_ASAL = @KODE) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_D BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_D = @SALDO_D + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K IS NULL BEGIN

UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_D = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = NULL, SALDO_D = @JUMLAH @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR

END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @JUMLAH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --AKHIR KOROLARI_D ADA DI BULAN DAN DI TAHUN YG SAMA ELSE BEGIN SELECT @SALDO_D = SALDO_D , @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR = (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D) IF @SALDO_D IS NOT NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @SALDO_D + @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @SALDO_K - @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_K , SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, NULL, 0, @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_K , SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, NULL, @JUMLAH - @SALDO_K, @KODE) END END END END END

--AKHIR KOROLARI_D NGAK ADA DI BULAN DAN DI TAHUN YG SAMA END --AKHIR KOROLARI_D ADA DI TBB ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @JUMLAH, @KODE) END --AKHIR KOROLARI_D BELUM ADA DI TBB --INSERT KOROLARI_K IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_K BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = @SALDO_D - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = 0

FROM

WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = @JUMLAH @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR

END --AKHIR CURSOR END --AKHIR KODE ADA DI BULAN DA TAHUN YG SAMA ELSE BEGIN SELECT @SALDO_D = SALDO_D , @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) IF @SALDO_K IS NOT NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K,'JK', @JUMLAH, @SALDO_K + @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_D IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_D > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @SALDO_D - @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_D, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK',@JUMLAH, NULL, 0, @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_D, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK',@JUMLAH, NULL, @JUMLAH - @SALDO_K, @KODE) END END END END END --AKHIR KODE NGAK ADA DI BULAN DAN TAHUN YG SAMA END --AKHIR KODE ADA DI TRANS_BUKU_BESAR ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @JUMLAH, @KODE) END --AKHIR KODE NGAK ADA DI TBB END --AKHIR SALDO_NORMAL KOROLARI_D = D ELSE BEGIN --INSERT KOROLARI_D IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D

AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_D BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_K = NULL, SALDO_D = @JUMLAH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_D = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @JUMLAH, SALDO_D = @SALDO_D + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @JUMLAH

BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @JUMLAH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN IF @SALDO_D IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --AKHIR KODE ADA DI TAHUN DAN DIBULAN YG SAMA ELSE BEGIN SELECT @SALDO_D = SALDO_D, @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR = (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D) IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @SALDO_K - @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_K = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_K, ID_ASAL)

VALUES (@TANGGAL, @KOROLARI_D, 'JK',@JUMLAH, 0 , @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET, SALDO_K, SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, NULL, @JUMLAH - @SALDO_K, @KODE) END END END ELSE BEGIN IF @SALDO_D IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET,SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @JUMLAH, @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET,SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @JUMLAH + @SALDO_D, @KODE) END END END --AKHIR KODE NGAK ADA DI TAHUN DAN DIBULAN YG SAMA END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, DEBET,SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_D, 'JK', @JUMLAH, @JUMLAH, @KODE) END --AKHIR KODE NGAK ADA DI TBB --INSERT KOROLARI_K IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K) BEGIN IF EXISTS(SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE) BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_K BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @JUMLAH

BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = @SALDO_D - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN IF @SALDO_K IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @JUMLAH, SALDO_K = @SALDO_K + @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @JUMLAH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @JUMLAH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN IF @SALDO_K IS NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @JUMLAH

WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @JUMLAH + @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --AKHIR KODE DI TBB SAMA TAHUN AND BULAN ELSE BEGIN SELECT @SALDO_D = SALDO_D, @SALDO_K = SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR = (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K) IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @SALDO_D - @JUMLAH, @KODE) END ELSE BEGIN IF @SALDO_D = @JUMLAH BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT , SALDO_D, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, 0, @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_D, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, NULL, @JUMLAH - @SALDO_D, @KODE) END END END ELSE BEGIN IF @SALDO_K IS NULL BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @JUMLAH, @KODE) END ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @JUMLAH + @SALDO_K , @KODE) END END END --AKHIR KODE DI TBB NGAK SAMA TAHUN AND BULAN

END --AKHIR KODE ADA DI TBB ELSE BEGIN INSERT INTO TRANS_BUKU_BESAR (TANGGAL, KODE_REKENING, REF, KREDIT, SALDO_K, ID_ASAL) VALUES (@TANGGAL, @KOROLARI_K, 'JK', @JUMLAH, @JUMLAH, @KODE) END --AKHIR KODE NGAK ADA DI TBB END --AKHIR SALDO_NORMAL KOROLARI_D = K END END --AKHIR PROGRAM

2.

PROSEDUR UPDATE JUMLAH PENERIMAAN KAS REALISASI ANGGARAN


PROCEDURE SP_UP_REA_JUMLAH @ID_DETAIL NUMERIC, @TANGGAL DATETIME, @KODE VARCHAR(15), @JUMLAH MONEY, @ID_BB NUMERIC AS DECLARE @SN VARCHAR(15), @JUMLAH_AWAL MONEY, @KODE_ASAL VARCHAR(15), @LEVEL NUMERIC, @SELISIH MONEY, @ID_MIN NUMERIC, @ID_MAX NUMERIC, @ID_BK_BESAR NUMERIC, @DEBET MONEY, @KREDIT MONEY, @SALDO_D MONEY, @SALDO_K MONEY, @KODE_LIMA VARCHAR(15), @KAS VARCHAR(15), @KOROLARI_D VARCHAR(15), @KOROLARI_K VARCHAR(15) BEGIN SELECT @JUMLAH_AWAL = KREDIT FROM TRANS_DETAIL_BUKU_BESAR WHERE ID_DETAIL = @ID_DETAIL SELECT @LEVEL = LEVEL FROM MST_AKUN WHERE KODE_REKENING = @KODE SET @KODE_ASAL = @KODE SET @KAS = '11101' IF @JUMLAH_AWAL > @JUMLAH BEGIN SET @SELISIH = @JUMLAH_AWAL - @JUMLAH END ELSE BEGIN SET @SELISIH = @JUMLAH - @JUMLAH_AWAL END --UPDATE JUMLAH DI TRANS_DETAIL_BUKU_BESAR UPDATE TRANS_DETAIL_BUKU_BESAR SET KREDIT = @JUMLAH WHERE ID_DETAIL = @ID_DETAIL --UPDATE JUMLAH WHILE @LEVEL IN (4,5,6) BEGIN IF @KODE_ASAL = @KODE BEGIN SET @ID_MIN = @ID_BB END ELSE

BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) END SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KODE DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KODE BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH

BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_K = 0, SALDO_D = NULL WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_K = @SELISIH - @SALDO_D, SALDO_D = NULL WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = 0

WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR SET @LEVEL = @LEVEL - 1 IF @LEVEL = 5 BEGIN SET @KODE = LEFT(@KODE,7) SET @KODE_LIMA = @KODE END ELSE BEGIN SET @KODE = LEFT(@KODE,5) END END --AKHIR WHILE @LEVEL --UPDATE KAS DI KAS DAERAH SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KAS DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR , DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KAS BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = 0

WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET @SELISIH, SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH , SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN

UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --UPDATE KOROLARI SELECT @KOROLARI_D = KOROLARI_D, @KOROLARI_K = KOROLARI_K FROM MST_AKUN WHERE KODE_REKENING = @KODE_LIMA IF @KOROLARI_D IS NULL BEGIN SELECT @KOROLARI_D = KOROLARI_D , @KOROLARI_K = KOROLARI_K FROM MST_AKUN WHERE KODE_REKENING = @KODE END IF @KOROLARI_D IS NOT NULL BEGIN SELECT @SN = SALDO_NORMAL FROM MST_AKUN WHERE KODE_REKENING = @KOROLARI_D IF @SN = 'D' BEGIN SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR

WHERE KODE_REKENING = @KOROLARI_D AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_D BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_MIN = @ID_BK_BESAR BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH , SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN

IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN

UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR --UPDATE KOROLARI_K (SALDO NORMAL = K) SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_K BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_MIN = @ID_BK_BESAR BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K

WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END ELSE BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR

END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END END FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR , @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --AKHIR SALDO NORMAL = D UNTUK KOROLARI_D ELSE BEGIN --UPDATE KOROLARI D SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_D DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR, DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_D

BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN IF @ID_BK_BESAR = @ID_MIN BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET - @SELISIH, SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH , SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN

UPDATE TRANS_BUKU_BESAR SET DEBET = @DEBET + @SELISIH, SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END --AKHIR ID_BK_BESAR = @ID_MIN ELSE BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_K IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END ELSE BEGIN IF @SALDO_K IS NOT NULL BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN

UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END --AKHIR ID_BK_BESAR <> @ID_MIN FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR --UPDATE KOROLARI_K SELECT @ID_MIN = ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K AND MONTH(TANGGAL) = MONTH(@TANGGAL) AND YEAR(TANGGAL) = YEAR(@TANGGAL) AND ID_ASAL = @KODE SELECT @ID_MAX = MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = @KOROLARI_K DECLARE BB_CURSOR CURSOR FOR SELECT ID_BK_BESAR , DEBET, KREDIT, SALDO_D, SALDO_K FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR BETWEEN @ID_MIN AND @ID_MAX AND KODE_REKENING = @KOROLARI_K BEGIN OPEN BB_CURSOR FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K WHILE @@FETCH_STATUS = 0 BEGIN PRINT 'MASUK' IF @ID_BK_BESAR = @ID_MIN BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @SELISIH BEGIN PRINT 'MASUK2' UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT - @SELISIH, SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K

WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_K WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET KREDIT = @KREDIT + @SELISIH, SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END --AKHIR ID_BK_BESAR = @ID_MIN ELSE BEGIN IF @JUMLAH_AWAL > @JUMLAH BEGIN IF @SALDO_D IS NOT NULL BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_K = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = NULL, SALDO_D = @SELISIH - @SALDO_K

WHERE ID_BK_BESAR = @ID_BK_BESAR END END END END ELSE BEGIN IF @SALDO_D IS NOT NULL BEGIN IF @SALDO_D > @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = @SALDO_D - @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN IF @SALDO_D = @SELISIH BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = 0 WHERE ID_BK_BESAR = @ID_BK_BESAR END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_D = NULL, SALDO_K = @SELISIH - @SALDO_D WHERE ID_BK_BESAR = @ID_BK_BESAR END END END ELSE BEGIN UPDATE TRANS_BUKU_BESAR SET SALDO_K = @SALDO_K + @SELISIH WHERE ID_BK_BESAR = @ID_BK_BESAR END END END --AKHIR ID_BK_BESAR <> @ID_MIN FETCH NEXT FROM BB_CURSOR INTO @ID_BK_BESAR, @DEBET, @KREDIT, @SALDO_D, @SALDO_K END CLOSE BB_CURSOR DEALLOCATE BB_CURSOR END --AKHIR CURSOR END --AKHIR SALDO NORMAL = K UNTUK KOROLARI_D END --AKHIR KOROLARI

END --AKHIR PROGRAM

3.

FORM INSERT PENERIMAAN KAS REALISASI ANGGARAN (FrmReaPenerimaan.frm)


Private vEdit As Boolean Public strTrans As String Private vnobukti As String Private vkode As String Private vtanggal As String Private vjumlah As Currency

Private Sub cmdCancel_Click() clear txtNoBukti.SetFocus End Sub Private Sub cmdclose_Click() Unload Me frmUtama.Show End Sub Private Sub cmdEdit_Click() vkode = txtKodeAkun.Text vtanggal = txtTanggal.Text vjumlah = txtJumlah.Value vnobukti = txtNoBukti.Text unlocktext txtTanggal.SetFocus vEdit = True cmdCancel.Enabled = True cmdSaveAdd.Caption = "Save" End Sub Private Sub cmdFindAkun_Click() frmFindAkun.run "frmReaPenerimaan" End Sub Private Sub cmdFirst_Click() lvReaPen.ListItems(1).Selected = True lvReaPen_Click End Sub Private Sub cmdLast_Click() lvReaPen.ListItems(lvReaPen.ListItems.Count).Selected = True lvReaPen_Click End Sub Private Sub cmdNext_Click() If lvReaPen.SelectedItem.Index = lvReaPen.ListItems.Count Then MsgBox "Data Terakhir ", vbInformation, "Akpem" Else lvReaPen.ListItems(lvReaPen.SelectedItem.Index + 1).Selected = True End If lvReaPen_Click End Sub Private Sub cmdPrev_Click() If lvReaPen.SelectedItem.Index = 1 Then MsgBox "Data Pertama", vbInformation, "Akpem" Else lvReaPen.ListItems(lvReaPen.SelectedItem.Index - 1).Selected = True End If lvReaPen_Click End Sub

Private Sub cmdSaveAdd_Click() Dim vType As String If cmdSaveAdd.Caption = "Add" Then clear cmdSaveAdd.Caption = "Save" unlocktext cmdCancel.Enabled = True Else If txtNoBukti.Text = "" Then MsgBox "No Bukti Transaksi harus diisi", vbInformation, "Akpem" txtNoBukti.SetFocus Exit Sub ElseIf txtTanggal.Text = "" Then MsgBox "Tanggal Transaksi harus diisi", vbInformation, "Akpem" txtTanggal.SetFocus Exit Sub Else If txtKodeAkun.Text = "" Then MsgBox "Kode Akun harus Diisi", vbInformation, "Akpem" txtKodeAkun.SetFocus Exit Sub Else vType = txtKodeAkun.Text vType = findTypeAccount(vType) If vType = "General" Then MsgBox "Kode Akun Harus Diisi dengan Type Detail", vbInformation, "Akpem" txtKodeAkun.Text = "" txtNmAkun.Text = "" txtKodeAkun.SetFocus Exit Sub End If If txtJumlah.Value = 0 Then MsgBox "Jumlah Transaksi Harus Diisi", vbInformation, "Akpem" txtJumlah.SetFocus Exit Sub End If End If End If

If vEdit = True Then If vnobukti <> txtNoBukti.Text Then conn.Execute "update trans_detail_buku_besar set no_bukti = '" & txtNoBukti.Text & "' where id_detail = " & findIdDetail(lvReaPen.SelectedItem.Text) End If If vjumlah <> txtJumlah.Value And vkode = txtKodeAkun.Text And vtanggal = txtTanggal.Text Then conn.Execute "exec sp_up_rea_jumlah_debet " & findIdDetail(lvReaPen.SelectedItem.Text) & ",'" & txtTanggal.Text & "','" & txtKodeAkun.Text & "'," & txtJumlah.Value & "," & findIdBB(lvReaPen.SelectedItem.Text) ElseIf vkode <> txtKodeAkun.Text And vtanggal = txtTanggal.Text Then conn.Execute "exec sp_up_rea_kode_debet " & findIdDetail(lvReaPen.SelectedItem.Text) & ",'" & txtTanggal.Text & "','" & txtKodeAkun.Text & "'," & txtJumlah.Value & "," & findIdBB(lvReaPen.SelectedItem.Text) ElseIf vtanggal <> txtTanggal.Text Then conn.Execute "exec sp_up_rea_tanggal_debet " & findIdDetail(lvReaPen.SelectedItem.Text) & ",'" & txtTanggal.Text & "','" & txtKodeAkun.Text & "'," & txtJumlah.Value & "," & findIdBB(lvReaPen.SelectedItem.Text) End If

Else conn.Execute "exec sp_insert_rea_debet '" & txtNoBukti.Text & "','" & txtTanggal.Text & "','" & txtKodeAkun.Text & "', " & txtJumlah.Value End If End If strTrans = "select id_detail, a.no_bukti, a.kode_rekening, b.uraian, tanggal ,kredit, id_bb from trans_detail_buku_besar a, mst_akun b where a.kode_rekening = b.kode_rekening and left(a.kode_rekening,1) in ('4','5','6') and b.type = 'Detail' and b.saldo_normal = 'K' order by a.id_detail " fillTranstoList lvReaPen, strTrans clear vEdit = False End Sub Private Sub cmdTanggal_Click() txtTanggal.Text = frmTanggal.run End Sub Private Sub Form_Load() vEdit = False strTrans = "select id_detail, a.no_bukti, a.kode_rekening, b.uraian, tanggal, kredit, id_bb from trans_detail_buku_besar a, mst_akun b where left(a.kode_rekening,1) in ('4','5','6') and a.kode_rekening = b.kode_rekening and b.type = 'Detail' and b.saldo_normal = 'K' order by id_detail " fillTranstoList lvReaPen, strTrans End Sub Private Sub Form_Resize() Image1.Width = frmReaPenerimaan.ScaleWidth maxLv lvReaPen, frmReaPenerimaan locateFrame frmNavigasi, frmReaPenerimaan End Sub Private Sub lvReaPen_Click() With lvReaPen txtNoBukti.Text = .SelectedItem.ListSubItems(1).Text txtKodeAkun.Text = .SelectedItem.ListSubItems(2).Text txtNmAkun.Text = .SelectedItem.ListSubItems(3).Text txtJumlah.Text = .SelectedItem.ListSubItems(5).Text txtTanggal.Text = .SelectedItem.ListSubItems(4).Text End With locktext cmdSaveAdd.Caption = "Add" cmdCancel.Enabled = False End Sub Sub unlocktext() txtNoBukti.Enabled = True txtJumlah.Enabled = True txtKodeAkun.Enabled = True txtNmAkun.Enabled = True txtTanggal.Enabled = True End Sub Sub locktext() txtNoBukti.Enabled = False txtJumlah.Enabled = False txtKodeAkun.Enabled = False

txtNmAkun.Enabled = False txtTanggal.Enabled = False End Sub Private Sub txtJumlah_GotFocus() selectAllMoney txtJumlah End Sub Private Sub txtKodeAkun_Change() txtNmAkun.Text = findAccountName(txtKodeAkun.Text) End Sub Sub clear() Dim ctl As Control For Each ctl In Me If TypeOf ctl Is TextBox Then ctl.Text = "" If TypeOf ctl Is PVCurrency Then ctl.Value = 0 Next ctl End Sub

4.

FORM REPORT REALISASI ANGGARAN (FrmLapRea.frm)


Dim rs_rek_awal As New ADODB.Recordset Private Sub cmdBukuBesar_Click(Value As Integer) If Value = -1 Then Frbukubesar.Visible = True aktif frwaktu.Visible = True Frbukubesar.Top = 1920 Frbukubesar.Left = 360 frwaktu.Top = 4500 frwaktu.Left = 360 cmdClose.Top = 6000 cmdClose.Left = 4560 cmdCetak.Top = 6000 cmdCetak.Left = 3360 Else nonaktif Frbukubesar.Visible = False frwaktu.Visible = False End If End Sub Private Sub cmdCetak_Click() Dim rs_rek_awal As New ADODB.Recordset Dim rs_kota As New ADODB.Recordset Dim kota As String Dim periode As String If Month(DTP_per_awal.Value) = Month(DTP_per_akhir.Value) Then periode = UCase(Format(DTP_per_akhir.Value, "MMMM yyyy")) Else periode = UCase(Format(DTP_per_awal.Value, "MMMM")) & " - " & UCase(Format(DTP_per_akhir.Value, "MMMM yyyy")) End If Dim strWhere As String With rs_kota .Open "select nama_pro_kab_kota from mst_pro_kab_kota", strConnection kota = UCase(!nama_pro_kab_kota)

.Close End With With CrystalReport1 If cmdJurnal.Value = True Then If Opt_ju_all.Value = True Then If Opt_ju_rek_all.Value = True Then conn.Execute "ALTER VIEW V_JURNAL_ALL " & _ " AS " & _ "SELECT CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) AS TANGGAL ," & _ "A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET, CONVERT(VARCHAR(50),A.KREDIT,3) AS KREDIT " & _ "FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ "WHERE (A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND (REF = 'JR' OR REF = 'JK') AND (LEFT(KODE_REKENING,1) IN ('4','5') or LEFT(KODE_REKENING,2) IN ('61','62') ))" & _ "OR A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND ( LEFT(ID_ASAL,1) IN ('4','5') OR LEFT(ID_ASAL,2) IN ('61','62'))))AND (REF = 'JR' OR REF = 'JK') " & _ "AND A.KODE_REKENING = B.KODE_REKENING" & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) , CONVERT(VARCHAR(50),A.KREDIT,3)," & _ "CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) " .ReportFileName = App.Path & "\Reports\Rpt_jurnal_all.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" ElseIf Opt_ju_rek_pil.Value = True Then conn.Execute "ALTER VIEW V_JURNAL_ALL " & _ " AS " & _ "SELECT CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) AS TANGGAL ," & _ "A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET, CONVERT(VARCHAR(50),A.KREDIT,3) AS KREDIT " & _ "FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ "WHERE (A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE (REF = 'JR' OR REF = 'JK') AND KODE_REKENING BETWEEN " & Cbo_ju_pil_awal.Text & " AND " & Cbo_ju_pil_akhir.Text & " AND LEN(KODE_REKENING) = 5 ) " & _ "OR A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND ID_ASAL BETWEEN " & Cbo_ju_pil_awal.Text & " AND " & Cbo_ju_pil_akhir.Text & " )) AND (REF = 'JR' OR REF = 'JK') " &_ "AND A.KODE_REKENING = B.KODE_REKENING" & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) , CONVERT(VARCHAR(50),A.KREDIT,3)," & _ "CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) " .ReportFileName = App.Path & "\Reports\Rpt_jurnal_all.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" End If ElseIf Opt_ju_pen.Value = True Then If Opt_ju_rek_all.Value = True Then conn.Execute "ALTER VIEW V_JURNAL_PEN_KAS " & _ " AS " & _ " SELECT CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) AS TANGGAL , " & _ " A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET, CONVERT(VARCHAR(50),A.KREDIT,3) AS KREDIT " & _

" FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE (A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND (REF = 'JR' OR REF = 'JK') AND (left(kode_rekening,1) = '4' or left(kode_rekening,2) = '61' )) " & _ " or A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND ( LEFT(ID_ASAL,1) = '4' OR LEFT(ID_ASAL,2) = '61')))AND (REF = 'JR' OR REF = 'JK') " & _ " AND A.KODE_REKENING = B.KODE_REKENING " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) , CONVERT(VARCHAR(50),A.KREDIT,3), " & _ " CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) " .ReportFileName = App.Path & "\Reports\Rpt_jurnal_pen_kas.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" ElseIf Opt_ju_rek_pil.Value = True Then conn.Execute "ALTER VIEW V_JURNAL_PEN_KAS " & _ " AS " & _ " SELECT CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) AS TANGGAL , " & _ " A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET, CONVERT(VARCHAR(50),A.KREDIT,3) AS KREDIT " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE (A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND (REF = 'JR' OR REF = 'JK') AND KODE_REKENING BETWEEN " & Cbo_ju_pil_awal.Text & " AND " & Cbo_ju_pil_akhir.Text & " ) " & _ " or A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND ID_ASAL BETWEEN " & Cbo_ju_pil_awal.Text & " AND " & Cbo_ju_pil_akhir.Text & " ))AND (REF = 'JR' OR REF = 'JK') " & _ " AND A.KODE_REKENING = B.KODE_REKENING " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) , CONVERT(VARCHAR(50),A.KREDIT,3), " & _ " CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) " .ReportFileName = App.Path & "\Reports\Rpt_jurnal_pen_kas.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" End If ElseIf Opt_ju_peng.Value = True Then If Opt_ju_rek_all.Value = True Then conn.Execute " ALTER VIEW V_JURNAL_PENG_KAS " & _ " AS " & _ " SELECT CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) AS TANGGAL , " & _ " A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET, CONVERT(VARCHAR(50),A.KREDIT,3) AS KREDIT " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE (A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND (REF = 'JR' OR REF = 'JK') AND (left(kode_rekening,1) = '5' or left(kode_rekening,2) = '62' )) " & _ " or A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND ( LEFT(ID_ASAL,1) = '5' OR LEFT(ID_ASAL,2) = '62')))AND (REF = 'JR' OR REF = 'JK') " & _ " AND A.KODE_REKENING = B.KODE_REKENING " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) , CONVERT(VARCHAR(50),A.KREDIT,3), " & _ " CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) " .ReportFileName = App.Path & "\Reports\Rpt_jurnal_peng_kas.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" ElseIf Opt_ju_rek_pil.Value = True Then conn.Execute " ALTER VIEW V_JURNAL_PENG_KAS " & _ " AS " & _

" SELECT CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) AS TANGGAL , " & _ " A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET, CONVERT(VARCHAR(50),A.KREDIT,3) AS KREDIT " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE (A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND (REF = 'JR' OR REF = 'JK') AND KODE_REKENING BETWEEN " & Cbo_ju_pil_awal.Text & " AND " & Cbo_ju_pil_akhir.Text & " )" & _ " or A.ID_BK_BESAR IN (SELECT ID_BK_BESAR FROM TRANS_BUKU_BESAR WHERE LEN(KODE_REKENING) = 5 AND ID_ASAL BETWEEN " & Cbo_ju_pil_awal.Text & " AND " & Cbo_ju_pil_akhir.Text & " )) AND (REF = 'JR' OR REF = 'JK') " & _ " AND A.KODE_REKENING = B.KODE_REKENING " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.ID_BK_BESAR, A.KODE_REKENING , B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) , CONVERT(VARCHAR(50),A.KREDIT,3), " & _ " CONVERT(VARCHAR(5),DAY(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),MONTH(A.TANGGAL)) + '-' + CONVERT(VARCHAR(5),YEAR(A.TANGGAL)) " .ReportFileName = App.Path & "\Reports\Rpt_jurnal_peng_kas.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" End If End If

ElseIf cmdBukuBesar.Value = True Then If Opt_bb.Value = True Then If Opt_bb_akun_all.Value = True Then conn.Execute " ALTER VIEW V_BUKU_BESAR_REA " & _ " AS " & _ " SELECT A.ID_BK_BESAR, A.KODE_REKENING ,B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET,CONVERT(VARCHAR(50), A.KREDIT,3) AS KREDIT, CONVERT(VARCHAR(50),A.SALDO_D,3) AS SALDO_D, CONVERT(VARCHAR(50),A.SALDO_K,3) AS SALDO_K , A.ID_ASAL " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE (A.KODE_REKENING IN (SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,1) IN ('4','5','6') AND LEN(KODE_REKENING) = 5) OR " & _ " A.KODE_REKENING IN (SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE LEFT(ID_ASAL,1) IN ('4','5','6') AND LEN(KODE_REKENING) = 5)) " & _ " AND A.KODE_REKENING = B.KODE_REKENING " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.KODE_REKENING, A.ID_BK_BESAR, B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) ,CONVERT(VARCHAR(50), A.KREDIT,3) , CONVERT(VARCHAR(50),A.SALDO_D,3), CONVERT(VARCHAR(50),A.SALDO_K,3), A.ID_ASAL " .ReportFileName = App.Path & "\Reports\Rpt_Buku_Besar.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" ElseIf Opt_bb_rek.Value = True Then conn.Execute " ALTER VIEW V_BUKU_BESAR_REA " & _ " AS " & _ " SELECT A.ID_BK_BESAR, A.KODE_REKENING ,B.URAIAN, A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET,CONVERT(VARCHAR(50), A.KREDIT,3) AS KREDIT, CONVERT(VARCHAR(50),A.SALDO_D,3) AS SALDO_D, CONVERT(VARCHAR(50),A.SALDO_K,3) AS SALDO_K , A.ID_ASAL " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE A.KODE_REKENING IN (SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE KODE_REKENING = '" & Cbo_bb_pil.Text & "') " & _ " AND A.KODE_REKENING = B.KODE_REKENING " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.KODE_REKENING, A.ID_BK_BESAR, B.URAIAN, A.REF, CONVERT(VARCHAR(50),A.DEBET,3) ,CONVERT(VARCHAR(50), A.KREDIT,3) , CONVERT(VARCHAR(50),A.SALDO_D,3), CONVERT(VARCHAR(50),A.SALDO_K,3), A.ID_ASAL " .ReportFileName = App.Path & "\Reports\Rpt_Buku_Besar.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True"

End If ElseIf Opt_bb_pem.Value = True Then If Opt_bb_akun_all.Value = True Then conn.Execute " ALTER VIEW V_BUKU_BESAR_PEMBANTU_REA " & _ " AS " & _ " SELECT A.ID_BK_BESAR, A.KODE_REKENING , LEFT(A.KODE_REKENING,5) AS KODE_TAMBAH,B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET,CONVERT(VARCHAR(50), A.KREDIT,3) AS KREDIT, CONVERT(VARCHAR(50),A.SALDO_D,3) AS SALDO_D, CONVERT(VARCHAR(50),A.SALDO_K,3) AS SALDO_K, A.ID_ASAL " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE (A.KODE_REKENING IN (SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,1) IN ('4','5','6') AND LEN(KODE_REKENING) >= 6 ) OR " & _ " A.KODE_REKENING IN (SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE LEFT(ID_ASAL,1) IN ('4','5','6') AND LEN(KODE_REKENING) >= 6 )) " & _ " AND A.KODE_REKENING = B.KODE_REKENING AND B.TYPE = 'DETAIL'" & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.KODE_REKENING, A.ID_BK_BESAR, B.URAIAN, A.REF, CONVERT(VARCHAR(50),A.DEBET,3) ,CONVERT(VARCHAR(50), A.KREDIT,3) , CONVERT(VARCHAR(50),A.SALDO_D,3), CONVERT(VARCHAR(50),A.SALDO_K,3), A.ID_ASAL , LEFT(A.KODE_REKENING,5) " .ReportFileName = App.Path & "\Reports\Rpt_Buku_Besar_Pembantu.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" ElseIf Opt_bb_rek.Value = True Then conn.Execute " ALTER VIEW V_BUKU_BESAR_PEMBANTU_REA " & _ " AS " & _ " SELECT A.ID_BK_BESAR, A.KODE_REKENING , LEFT(A.KODE_REKENING,5) AS KODE_TAMBAH,B.URAIAN , A.REF, CONVERT(VARCHAR(50),A.DEBET,3) AS DEBET,CONVERT(VARCHAR(50), A.KREDIT,3) AS KREDIT, CONVERT(VARCHAR(50),A.SALDO_D,3) AS SALDO_D, CONVERT(VARCHAR(50),A.SALDO_K,3) AS SALDO_K, A.ID_ASAL " & _ " FROM TRANS_BUKU_BESAR A , MST_AKUN B " & _ " WHERE A.KODE_REKENING IN (SELECT KODE_REKENING FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,5) = " & Cbo_bb_pil.Text & " AND LEN(KODE_REKENING) >= 6 ) " & _ " AND A.KODE_REKENING = B.KODE_REKENING AND B.TYPE = 'DETAIL' " & _ " and month(tanggal) between " & DTP_per_awal.Month & " and " & DTP_per_akhir.Month & " and year(tanggal) = " & DTP_per_akhir.Year & _ " GROUP BY A.KODE_REKENING, A.ID_BK_BESAR, B.URAIAN, A.REF, CONVERT(VARCHAR(50),A.DEBET,3) ,CONVERT(VARCHAR(50), A.KREDIT,3) , CONVERT(VARCHAR(50),A.SALDO_D,3), CONVERT(VARCHAR(50),A.SALDO_K,3), A.ID_ASAL , LEFT(A.KODE_REKENING,5) " .ReportFileName = App.Path & "\Reports\Rpt_Buku_Besar_Pembantu.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" End If End If ElseIf cmdRea.Value = True Then If optSmt1.Value = True Then periode = "January - June " & cboReaTahun.Text strWhere = " AND YEAR(TANGGAL) = " & cboReaTahun.Text & " AND MONTH(TANGGAL) BETWEEN 1 AND 6 " ElseIf optSmt2.Value = True Then periode = "July - December " & cboReaTahun.Text strWhere = " AND YEAR(TANGGAL) = " & cboReaTahun.Text & " AND MONTH(TANGGAL) BETWEEN 7 AND 12 " ElseIf optAll.Value = True Then periode = "January - December " & cboReaTahun.Text strWhere = " AND YEAR(TANGGAL) = " & cboReaTahun.Text End If conn.Execute " ALTER VIEW V_LAP_REALISASI AS " & _

" SELECT A.KODE_REKENING, A.URAIAN, A.KET , CASE WHEN A.KODE_REKENING IS NOT NULL THEN (CASE WHEN B.DEBET IS NULL THEN CONVERT(VARCHAR(50),B.KREDIT,3) ELSE CONVERT(VARCHAR(50),B.DEBET,3) END) ELSE " & _ " (CASE WHEN A.ID_LAP_APBD_REA = 7 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '41' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 15 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,3) = '421' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 20 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,3) = '422' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 25 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,3) = '423' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 26 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,3) IN ('421','422','423') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 32 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,3) = '424' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 33 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) IN ('41','42') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 43 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '51' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 52 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '52' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 56 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '53' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 57 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) IN ('51','52','53') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 64 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '54' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 65 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) IN ('51','52','53','54') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 66 THEN (SELECT CONVERT(VARCHAR(50),SUM(ISNULL(SALDO_K,0)) SUM(ISNULL(SALDO_D,0)),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) IN ('41','42','51','52','53','54') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 88 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_K),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '61' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 107 THEN (SELECT CONVERT(VARCHAR(50),SUM(SALDO_D),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) = '62' AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 108 THEN (SELECT CONVERT(VARCHAR(50),SUM(ISNULL(SALDO_K,0)) SUM(ISNULL(SALDO_D,0)),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) IN ('61','62') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' " & strWhere & " GROUP BY KODE_REKENING)) " & _ " WHEN A.ID_LAP_APBD_REA = 109 THEN (SELECT CONVERT(VARCHAR(50),SUM(ISNULL(SALDO_K,0)) SUM(ISNULL(SALDO_D,0)),3) FROM TRANS_BUKU_BESAR WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,2) IN ('61','62','41','42','51','52','53','54') AND LEN(KODE_REKENING) = 5 AND REF = 'JR' GROUP BY KODE_REKENING)) END ) END AS SALDO " & _ " FROM LAP_APBD_REALISASI A LEFT OUTER JOIN (SELECT ID_BK_BESAR AS ID_BK, KODE_REKENING AS KODE, SALDO_D AS DEBET, SALDO_K AS KREDIT From TRANS_BUKU_BESAR " & _ " WHERE ID_BK_BESAR IN (SELECT MAX(ID_BK_BESAR) FROM TRANS_BUKU_BESAR WHERE LEFT(KODE_REKENING,1) IN ('4','5','6') AND REF = 'JR' AND LEN(KODE_REKENING) = 5 " & strWhere & " GROUP BY

KODE_REKENING) GROUP BY ID_BK_BESAR, KODE_REKENING, SALDO_D, SALDO_K) B ON A.KODE_REKENING = B.KODE " .ReportFileName = App.Path & "\Reports\Rpt_lap_realisasi.rpt" .ParameterFields(0) = "pemda;" & kota & ";True" .ParameterFields(1) = "bulan;" & periode & ";True" End If .RetrieveDataFiles .WindowState = crptMaximized .Action = 1 End With End Sub Private Sub cmdclose_Click() Unload Me End Sub Private Sub cmdJurnal_Click(Value As Integer) If Value = -1 Then aktif Frjurnal.Visible = True frwaktu.Visible = True Frjurnal.Top = 1920 Frjurnal.Left = 360 frwaktu.Top = 5040 frwaktu.Left = 360 cmdClose.Top = 6500 cmdClose.Left = 4560 cmdCetak.Top = 6500 cmdCetak.Left = 3360 Else nonaktif Frjurnal.Visible = False frwaktu.Visible = False End If End Sub Private Sub cmdRea_Click(Value As Integer) If Value = -1 Then aktif Frrea.Visible = True Frrea.Left = 360 Frrea.Top = 2280 cmdCetak.Left = 1920 cmdCetak.Top = 5040 cmdClose.Left = 3120 cmdClose.Top = 5040 Else Frrea.Visible = False frwaktu.Visible = False nonaktif End If cboReaTahun.clear With rs_rek_awal .Open "select year(tanggal) as tahun from trans_buku_besar group by year(tanggal) ", strConnection Do Until .EOF cboReaTahun.AddItem !tahun .MoveNext Loop .Close

End With End Sub Private Sub Form_Resize() Image1.Width = FrmLapRea.ScaleWidth DTP_per_akhir.Value = Date DTP_per_awal.Value = Date End Sub Sub aktif() cmdCetak.Visible = True cmdClose.Visible = True End Sub Sub nonaktif() cmdCetak.Visible = False cmdClose.Visible = False End Sub Private Sub Opt_bb_akun_all_Click() Cbo_bb_pil.Enabled = False End Sub Private Sub Opt_bb_Click() Cbo_bb_pil.clear With rs_rek_awal .Open "select kode_rekening from trans_buku_besar where len(kode_rekening) = 5 and (ref = 'JR' or ref = 'JK')group by kode_rekening ", strConnection Do Until .EOF Cbo_bb_pil.AddItem !kode_rekening .MoveNext Loop .Close End With End Sub Private Sub Opt_bb_pem_Click() Cbo_bb_pil.clear With rs_rek_awal .Open "select left(kode_rekening,5) as kode_rekening from trans_buku_besar where len(kode_rekening) > 5 and (ref = 'JR' or ref = 'JK') group by left(kode_rekening,5)", strConnection Do Until .EOF Cbo_bb_pil.AddItem !kode_rekening .MoveNext Loop .Close End With End Sub Private Sub Opt_bb_rek_Click() Cbo_bb_pil.Enabled = True End Sub

Private Sub Opt_ju_all_Click() Cbo_ju_pil_awal.clear Cbo_ju_pil_akhir.clear With rs_rek_awal .Open "select kode_rekening from mst_akun where (left(kode_rekening,1) in ('4','5') or left(kode_rekening,2) in ('61','62'))and level = 4", strConnection Do Until .EOF Cbo_ju_pil_awal.AddItem !kode_rekening Cbo_ju_pil_akhir.AddItem !kode_rekening .MoveNext Loop .Close End With End Sub Private Sub Opt_ju_pen_Click() Cbo_ju_pil_awal.clear Cbo_ju_pil_akhir.clear With rs_rek_awal .Open "select kode_rekening from mst_akun where (left(kode_rekening,1) in ('4') or left(kode_rekening,2) in ('61')) and level = 4", strConnection Do Until .EOF Cbo_ju_pil_awal.AddItem !kode_rekening Cbo_ju_pil_akhir.AddItem !kode_rekening .MoveNext Loop .Close End With End Sub Private Sub Opt_ju_peng_Click() Cbo_ju_pil_awal.clear Cbo_ju_pil_akhir.clear With rs_rek_awal .Open "select kode_rekening from mst_akun where (left(kode_rekening,1) in ('5') or left(kode_rekening,2) in ('62'))and level = 4", strConnection Do Until .EOF Cbo_ju_pil_awal.AddItem !kode_rekening Cbo_ju_pil_akhir.AddItem !kode_rekening .MoveNext Loop .Close End With End Sub Private Sub Opt_ju_rek_all_Click() Cbo_ju_pil_akhir.Enabled = False Cbo_ju_pil_awal.Enabled = False End Sub Private Sub Opt_ju_rek_pil_Click() Cbo_ju_pil_akhir.Enabled = True

Cbo_ju_pil_awal.Enabled = True End Sub

You might also like