Vous êtes sur la page 1sur 7

LAMPIRAN LISTING PROGRAM

PERANCANGAN APLIKASI GENERAL LEDGER


(BUKU BESAR) AKUNTANSI STUDI KASUS PT.
NUGA AGARA INTERNASIONAL

DM1- TRekeningCalcFields
procedure TDM1.TRekeningCalcFields(DataSet: TDataSet);
begin
if (TRekeningType.Value='Header') AND (TRekeningLink.Value=False) then
TRekeningPerkiraan.Value:= TRekeningKode.Value+'
'+TRekeningRekening.Value
else if (TRekeningType.Value='Header') AND (TRekeningLink.Value=True) then
TRekeningPerkiraan.Value:= ' '+TRekeningKode.Value+'
'+TRekeningRekening.Value
else if (TRekeningType.Value='Detail') AND (TRekeningLink.Value=False) then
TRekeningPerkiraan.Value:= ' '+TRekeningKode.Value+'
'+TRekeningRekening.Value
else
TRekeningPerkiraan.Value:= ' '+' '+TRekeningKode.Value+'
'+TRekeningRekening.Value;
end;
end.

Universitas Sumatera Utara


Form F_BukuBesar - FormCreate
procedure TF_BukuBesar.FormCreate(Sender: TObject);
var thn,bln,tgl :Word;
begin
DM1.TRekening.Filtered := False;
DM1.TRekening.Filter :='Type=''Detail''' ;
DM1.TRekening.Filtered := True;
DecodeDate(now,thn,bln,tgl);
cbBulan.ItemIndex := bln-1;
UpDown1.Position:=Thn;
DM1.TBBesar.Open;
DM1.TRekening.Filtered := False;
EdKode.Clear;
end;

Form F_BukuBesar Procedure PrepareBukuBesar


procedure TF_BukuBesar.PreparebukuBesar;
var JDebet,JKredit,Saldo : Real;
tgl,bln,thn : Word;
begin
if not (edRekening.Text='') then
begin
DecodeDate(now,thn,bln,tgl);
thn := StrToInt(EdThn.Text);
bln := cbBulan.ItemIndex + 1;
//Generate saldo sebelumnya
DM1.QSaldoSBL.Close;
DM1.QSaldoSBL.Parameters.ParamByName('tanggal').Value
StrToDate(IntToStr(bln)+'/1/'+IntToStr(thn));
DM1.QSaldoSBL.Parameters.ParamByName('koderek').Value := EdKode.text;
DM1.QSaldoSBL.Open;
//Generate list transaksi bulan tertentu
with DM1.QBBesar do
begin
Close;
Parameters.ParamByName('koderek').Value := EdKode.Text;
Parameters.ParamByName('tanggal1').Value :=
StrToDate(IntToStr(bln)+'/1/'+IntToStr(thn));
if bln = 12 then
Parameters.ParamByName('tanggal2').Value :=
StrToDate(IntToStr(1)+'/1/'+IntToStr(thn+1))
else
Parameters.ParamByName('tanggal2').Value :=
StrToDate(IntToStr(bln+1)+'/1/'+IntToStr(thn));
Open;
end;

FProgress.Show;
FProgress.Gauge1.MaxValue := DM1.QBBesar.RecordCount;

Universitas Sumatera Utara


FProgress.Gauge1.Progress := 0;
//mengosongkan buku besar
DM1.SQLCmd.Close;
DM1.SQLCmd.SQL.Clear;
DM1.SQLCmd.SQL.Add('Delete From TBukuBesar');
DM1.SQLCmd.ExecSQL;
DM1.TBBesar.Requery;
DM1.TRekening.Locate('Kode',EdKode.Text,[]);
//buat saldo awal
DM1.TBBesar.DisableControls;
DM1.TBBesar.Insert;
DM1.TBBesarTgl.Value := StrToDate(IntToStr(bln)+'/1/'+IntToStr(thn));
DM1.TBBesarTransaksi.Value := 'Saldo Awal';
DM1.TBBesarRekening.Value :=
DM1.TRekeningKode.Value+DM1.TRekeningRekening.Value;
JDebet := DM1.TRekeningDebet.Value;
JKredit:=DM1.TRekeningKredit.Value;
if (DM1.QSaldoSBL.RecordCount = 0) then
begin
DM1.TBBesarDebet.Value := JDebet;
DM1.TBBesarKredit.Value :=JKredit;
end
else
begin
DM1.QSaldoSBL.Locate('Rekening',edRekening.Text,[]);
JDebet := Jdebet + DM1.QSaldoSBL.FieldByName('JDebet').Value;
JKredit := JKredit + DM1.QSaldoSBL.FieldByName('JKredit').Value;
if (JDebet-JKredit > 0) then
begin
DM1.TBBesarDebet.Value := JDebet - JKredit;
DM1.TBBesarKredit.Value :=0;
end
else
begin
DM1.TBBesarDebet.Value := 0;
DM1.TBBesarKredit.Value :=JKredit - JDebet;
end;
end;
if (DM1.TRekeningNormal.Value = 'Debet') then
Saldo := JDebet -JKredit
else
Saldo := JKredit -JDebet;
DM1.TBBesarSaldo.Value := Saldo;
DM1.TBBesar.Post;
DM1.QBBesar.First;
while not (DM1.QBBesar.Eof) do
begin
DM1.TBBesar.Insert;
DM1.TBBesarNo.Value := DM1.QBBesarNo.Value;

Universitas Sumatera Utara


DM1.TBBesarTgl.Value := DM1.QBBesarTgl.Value;
DM1.TBBesarTransaksi.Value := DM1.QBBesarTransaksi.Value;
DM1.TBBesarRekening.Value := DM1.QBBesarRekening.Value;
DM1.TBBesarDebet.Value := DM1.QBBesarDebet.Value;
DM1.TBBesarKredit.Value :=DM1.QBBesarKredit.Value;
JDebet := JDebet + DM1.QBBesarDebet.Value;
JKredit:= JKredit + DM1.QBBesarKredit.Value;
if (DM1.TRekeningNormal.Value = 'Debet') then
Saldo := JDebet -JKredit
else
Saldo := JKredit -JDebet;
DM1.TBBesarSaldo.Value := Saldo;
DM1.TBBesar.Post;
DM1.QBBesar.Next;
FProgress.Gauge1.Progress := FProgress.Gauge1.Progress + 1;
FProgress.Update;
end;
DM1.TBBesar.Insert;
if bln = 12 then
DM1.TBBesarTgl.Value := StrToDate(IntToStr(1)+'/1/'+IntToStr(thn+1))-1
else
DM1.TBBesarTgl.Value := StrToDate(IntToStr(bln+1)+'/1/'+IntToStr(thn))-1;
DM1.TBBesarTransaksi.Value := 'Saldo Akhir';
DM1.TBBesarSaldo.Value := Saldo;
DM1.TBBesar.Post;
DM1.TBBesar.EnableControls;
FProgress.Close;
end;
end;

Form F_BukuBesar BtnPreviewClick


procedure TF_BukuBesar.BtnPreviewClick(Sender: TObject);
var tgl,bln,thn : word;
begin
DecodeDate(now,thn,bln,tgl);
thn := StrToInt(EdThn.Text);
if cbBulan.ItemIndex = 0 then
Rep_BukuBesar.LabPeriode.Caption := IntToStr(bln) + '-' + IntToStr(thn)
else
Rep_BukuBesar.LabPeriode.Caption := cbBulan.Text + '-' + IntToStr(thn);
with F_Preview do
begin
Top:=F_BukuBesar.Top;
Left:=F_BukuBesar.Left;
Width:=F_BukuBesar.Width;
Height:=F_BukuBesar.Height;
Show;
end;
Rep_BukuBesar.Preview;

Universitas Sumatera Utara


end;

Form F_BukuBesar BtnRekeningClick


procedure TF_BukuBesar.BtnRekeningClick(Sender: TObject);
begin
if F_PilihRekening.ShowModal=mrOk then
begin
edRekening.Text := DM1.TRekeningRekening.Value;
EdKode.Text:=DM1.TRekeningKode.Value;
PreparebukuBesar;
end;
end;

Form F_BukuBesar BtnSelesaiClick


procedure TF_BukuBesar.BtnSelesaiClick(Sender: TObject);
begin
Close;
end;

Form F_BukuBesar cbBulanChange


procedure TF_BukuBesar.cbBulanChange(Sender: TObject);
begin
PreparebukuBesar;
end;

Form F_BukuBesar UpDown 1 Click


procedure TF_BukuBesar.UpDown1Click(Sender: TObject; Button: TUDBtnType);
begin
PreparebukuBesar;
end;

Form F_Pilihrekening FormShow


procedure TF_PilihRekening.FormShow(Sender: TObject);
begin
DM1.TRekening.Filtered := False;
DM1.TRekening.Sort:='KODE ASC';
EdPerk.Clear;
EdPerk.SetFocus;
end;

Form F_PilihRekening EdPerkChange


procedure TF_PilihRekening.EdPerkChange(Sender: TObject);
begin
if EdPerk.Text<>'' then
begin
DM1.TRekening.Filtered := False;
DM1.TRekening.Filter :='Rekening like ''' + EdPerk.Text + '*''' ;
DM1.TRekening.Filtered := True;
end;

Universitas Sumatera Utara


end;

Form F_Pilihrekening EdPerkKeyDown


procedure TF_PilihRekening.EdPerkKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_up then
DM1.TRekening.Prior;
if key=vk_down then
DM1.TRekening.Next;
end;

From F_Preview SpeedButton1Click


procedure TF_Preview.SpeedButton1Click(Sender: TObject);
begin
QRPreview1.PageNumber := 1 ;
Edit2.Text := IntToStr(QRPreview1.PageNumber);
end;

Form F_Preview SpeedButton2Click


procedure TF_Preview.SpeedButton2Click(Sender: TObject);
begin
QRPreview1.PageNumber := StrToInt(Edit2.Text)-1;
Edit2.Text := IntToStr(QRPreview1.PageNumber);
end;

Form F_Preview SpeedButton3Click


procedure TF_Preview.SpeedButton3Click(Sender: TObject);
begin
QRPreview1.PageNumber := StrToInt(Edit2.Text)+1;
Edit2.Text := IntToStr(QRPreview1.PageNumber);
end;

Form F_Preview SpeedButton4Click


procedure TF_Preview.SpeedButton4Click(Sender: TObject);
begin
QRPreview1.PageNumber := QRPreview1.QRPrinter.PageCount;
Edit2.Text := IntToStr(QRPreview1.PageNumber);
end;

From F_Preview SpeedButton5Click


procedure TF_Preview.SpeedButton5Click(Sender: TObject);
begin
QRPreview1.QRPrinter.Print;
end;

Universitas Sumatera Utara


Form F_Preview SpeedButton6Click
procedure TF_Preview.SpeedButton6Click(Sender: TObject);
begin
QRPreview1.ZoomToFit;
SpinEdit1.Text:=IntToStr(QRPreview1.Zoom);
end;

Form F_Preview SpeedButton7Click


procedure TF_Preview.SpeedButton7Click(Sender: TObject);
begin
Close;
end;

Form F_Preview SpinEdit1Change


procedure TF_Preview.SpinEdit1Change(Sender: TObject);
begin
QRPreview1.zoom := StrToInt(SpinEdit1.Text);
end;

Report Rep_BukuBesar QuickRepPreview


procedure TRep_BukuBesar.QuickRepPreview(Sender: TObject);
begin
F_Preview.QRPreview1.QRPrinter := TQRPrinter(Sender);
end;

Universitas Sumatera Utara

Vous aimerez peut-être aussi