Senin, 19 Mei 2014

GUI KP

SISTEM INFORMASI PENGOLAHAN DATA TRANSAKSI PENJUALAN
DI KOPERASI UNIT DESA TANGJUNG HARAPAN

1.      PERANCANGAN ANTAR MUKA
Antar muka atau interface merupakan salah satu alat komunikasi antara pengguna dengan komputer. Oleh karena itu antar muka yang dibangun atau dibuat haruslah mudah dimengerti dan mudah di operasikan oleh pungguna.
Berikut ini merupakan interface atau antar muka dari sistem yang dibangun dan terdiri dari beberapa bagian, antara lain:
Ø  Form Login
Gambar 1. Form Login
Ø  Menu Utama
Gambar 2. Menu Utama


Ø  Data Barang
Gambar 3. Data Barang

Ø  Penjualan Langsung
Gambar 5. Penjualan Langsung



Ø  Data Penjualan Langsung
Gambar 6. Data Penjualan Langsung

2.      IMPLEMENTASI
Tahap implementasi merupakan tahapan yang meliputi kebutuhan  Perangkat  Lunak,  Perangkat  Keras,  Basis  Data,  dan  implementasi antarmuka,  serta  pengujian  aplikasi  sistem  yang  telah  dirancang  sesuai  dengan kebutuhan aplikasi.
·         Batasan Implementasi
Dalam  mengimplemetasikan Sistem Informasi Transaksi Penjualan ini terdapat beberapa hal yang menjadi batasan implementasi, yaitu :
1.      Kebutuhan pada Sistem Informasi Transaksi Penjualan ini hanya menyangkut masalah pengelolaan transaksi, data hasil transaksi, dan pembuatan laporan hasil transaksi.
2.      Basis data yang harus digunakan dalam pengimplementasian ini adalah MySQL.
·         Implementasi Kebutuhan Perangkat Lunak
Untuk implementasi Sistem Informasi Transaksi Penjualan  ini  dibutuhkan beberapa perangkat lunak penunujang, antara lain :
Ø  Sistem Operasi Windows XP SP3
Ø  DataBase MySQL
Ø  XAMPP
Ø  ODBC Drive
·         Implementasi Kebutuhan Perangkat Keras
Kebutuhan perangkat  keras  yang  dibutuhkan  oleh Sistem Informasi Transaksi Penjualan dalam implementasinya adalah sebagai berikut :
1.      Processor yang dipergunakan adalah intel Pentium4
2.      Harddisk terpasang 80GB, Rekomendasi minimum 40GB.
3.      RAM 500 MB.
4.      VGA card Onboard.
5.      Mouse, Keyboard, dan Monitor sebagai alat input antar muka
4.1.       IMPLEMENTASI ANTAR MUKA
Ø  Form LogIn
Ø  Form Menu Utama
Ø  Form Data Barang
Ø  Form Penjualan Langsung








Ø  Form Data Penjualan Langsung

3.      CODING
Ø  LogIn
procedure TFormLogin.Button1Click(Sender: TObject);
begin
  Close;
end;
procedure TFormLogin.sButton2Click(Sender: TObject);
begin
  Close;
end;
procedure TFormLogin.sButton1Click(Sender: TObject);
begin
if (sEdit1.Text='Admin') and (sEdit2.Text=Memo1.Lines[0])then
    begin
      FormUtama.ShowModal;
      sEdit1.Clear;
    sEdit2.Clear;
      sEdit1.SetFocus;
    end
  else
    begin
      MessageDlg('Maaf, akses ditolak!', mtError, [mbOK], 0);
      sEdit1.Clear;
      sEdit2.Clear;
      sEdit1.SetFocus;
 end;
end;
procedure TFormLogin.FormActivate(Sender: TObject);
begin
  Memo1.Lines.LoadFromFile('Password.txt');
end;
end.
Ø  Form Utama
procedure TFormUtama.DataBarang1Click(Sender: TObject);
begin
    FormDataMasterBarang.ShowModal;
end;
procedure TFormUtama.DataAnggota1Click(Sender: TObject);
begin
  FormDataMasterAnggota.ShowModal;
end;


procedure TFormUtama.GantiPassword1Click(Sender: TObject);
begin
   FormUbahPassword.ShowModal;
end;
procedure TFormUtama.Penjualan1Click(Sender: TObject);
begin
   FormPembayaranBarangCash.ShowModal;
end;
procedure TFormUtama.Kredit1Click(Sender: TObject);
begin
   FormTransaksiKredit.ShowModal
end;
procedure TFormUtama.Penjualan2Click(Sender: TObject);
begin
  CetakLaporanCashPerhari.ShowModal; 
end;
procedure TFormUtama.Kredit2Click(Sender: TObject);
begin
 CetakLaporanKredit.ShowModal;
end;
procedure TFormUtama.entangAplikasi1Click(Sender: TObject);
begin
  AboutBox.ShowModal;
end;
procedure TFormUtama.entangPembuat1Click(Sender: TObject);
begin
   FormPembuat.ShowModal;
end;
end.
Ø  Penjualan Langsung
function TFormPembayaranBarangCash.kode:String;
begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Text := 'select KodeTransaksi from ByrBrgCash where KodeTransaksi like "CS' + FormatDateTime('dd', now)+FormatDateTime('mm',Now) + FormatDateTime('yy',Now) + '%" order by KodeTransaksi';
  ADOQuery1.Open;
  if ADOQuery1.RecordCount>0 then
    begin
      ADOQuery1.Last;
      Result:='CS'+ FormatDateTime('dd',now)+FormatDateTime('mm',Now) + FormatDateTime('yy',Now) + FormatFloat('000',StrToInt(Copy(ADOQuery1.Fields[0].AsString,9,3)) + 1)
    end
  else
    Result :='CS'+ FormatDateTime('dd',now)+FormatDateTime('mm',Now) + FormatDateTime('yy',Now) + '001';
end;
procedure TFormPembayaranBarangCash.tampil;
begin
  with DM.Cash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from byrbrgCash Where KodeTransaksi LIKE "'+Edit2.Text+'"');
      Open;
    end;
end;
procedure TFormPembayaranBarangCash.sButton4Click(Sender: TObject);
begin
               DM.Cash.Insert;
    FormTambahBarang.ShowModal;
end;
procedure TFormPembayaranBarangCash.FormActivate(Sender: TObject);
begin
  Edit2.Text:=kode;
  tampil;
  with DM.Cash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from ByrBrgCash Where KodeTransaksi LIKE"'+Edit2.Text+'" Order By KodeTransaksi ASC');
      Open;
    end;
end;
           procedure TFormPembayaranBarangCash.sButton2Click(Sender: TObject);
begin
  tampil;
  if DM.Cash.RecordCount=0 then
    ShowMessage('Tidak ada barang yang dibeli')
  else if (Edit3.Text='')or (Edit3.Text='0') then
    ShowMessage('Pembeli belum membayar!')
  else if Edit1.Text[1]='-' then
    ShowMessage('Uang pembeli kurang!')
  else
    begin
      with DM.FakturCash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from ByrBrgCash Where KodeTransaksi LIKE"'+Edit2.Text+'" Order By KodeTransaksi ASC');
      Open;
    end;
  if DM.FakturCash.RecordCount=0 then
    ShowMessage('Data tidak ada!')
  else
    begin
      RvProject1.Close;
      RvProject1.ProjectFile:='FakturCash.rav';
      RvProject1.SelectReport('Report2', false);
      RvProject1.SetParam('Tanggal', FormatDateTime('dd/mm/yyyy', Now));
      RvProject1.SetParam('Cash', Edit3.Text);
      RvProject1.SetParam('Kembalian', Edit1.Text);
      RvProject1.Execute;
    end;
      Edit2.Text:=kode;
      tampil;
      Edit3.Text:='0';
      Edit1.Text:='0';
      Label4.Caption:='0';
    end;
end;
procedure TFormPembayaranBarangCash.Edit3Change(Sender: TObject);
begin
  if Edit3.Text='' then
    Edit1.Text:='0'
  else
    Edit1.Text:=IntToStr(StrToInt(Edit3.Text)-StrToInt(Label4.Caption));
end;
procedure TFormPembayaranBarangCash.Button1Click(Sender: TObject);
begin
  if MessageDlg('Anda yakin akan membatalkan transaksi?', mtConfirmation, mbOKCancel, 0)=mrok then
    begin
      with DM.Cash do
        begin
          Close;
          SQL.Clear;
          SQL.Add('Delete From ByrBrgCash Where KodeTransaksi LIKE "'+Edit2.Text+'"');
          ExecSQL;
          SQL.Clear;
          SQL.Add('Select * from ByrBrgCash Where KOdeTransaksi LIKE "'+Edit2.Text+'"');
          Open;
        end;
    end;
  Edit2.Text:=kode;
  tampil;
  Edit3.Text:='0';
  Edit1.Text:='0';
 Label4.Caption:='0';
end;
 procedureTFormPembayaranBarangCash.sButton5Click(Sender: TObject);
var KodeTrans, KodeBrg, Qty, Harga:string;
begin
  KodeTrans:=DM.Cash['KodeTransaksi'];
  KodeBrg:=DM.Cash['KodeBarang'];
  Qty:=DM.Cash['Qty'];
  Harga:=DM.Cash['Harga'];
  Label4.Caption:=IntToStr(StrToInt(Label4.Caption)-StrToInt(Harga));
  with DM.Cash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Delete From ByrBrgCash Where KodeTransaksi LIKE "'+KodeTrans+'" AND KodeBarang LIKE "'+KodeBrg+'" AND Qty Like "'+Qty+'" AND Harga LIKE "'+Harga+'"');
      ExecSQL;
      SQL.Clear;
      SQL.Add('Select * from ByrBrgCash Where KodeTransaksi LIKE "'+Edit2.Text+'"');
      Open;
    end;
end;
end.


Interface sistem informasi pengolahan data penjualan

SISTEM INFORMASI PENGOLAHAN DATA TRANSAKSI PENJUALAN
DI KOPERASI UNIT DESA TANGJUNG HARAPAN
1. PERANCANGAN ANTAR MUKA
Antar muka atau interface merupakan salah satu alat komunikasi antara pengguna dengan komputer. Oleh karena itu antar muka yang dibangun atau dibuat haruslah mudah dimengerti dan mudah di operasikan oleh pungguna.
Berikut ini merupakan interface atau antar muka dari sistem yang dibangun dan terdiri dari beberapa bagian, antara lain:
Ø Form Login
Gambar 1. Form Login
Ø Menu Utama
Gambar 2. Menu Utama
Ø Data Barang
Gambar 3. Data Barang
Ø Penjualan Langsung
Gambar 5. Penjualan Langsung
Ø Data Penjualan Langsung
Gambar 6. Data Penjualan Langsung
2. IMPLEMENTASI
Tahap implementasi merupakan tahapan yang meliputi kebutuhan  Perangkat  Lunak,  Perangkat  Keras,  Basis  Data,  dan  implementasi antarmuka,  serta  pengujian  aplikasi  sistem  yang  telah  dirancang  sesuai  dengan kebutuhan aplikasi.
· Batasan Implementasi
Dalam  mengimplemetasikan Sistem Informasi Transaksi Penjualan ini terdapat beberapa hal yang menjadi batasan implementasi, yaitu :
1. Kebutuhan pada Sistem Informasi Transaksi Penjualan ini hanya menyangkut masalah pengelolaan transaksi, data hasil transaksi, dan pembuatan laporan hasil transaksi.
2. Basis data yang harus digunakan dalam pengimplementasian ini adalah MySQL.
· Implementasi Kebutuhan Perangkat Lunak
Untuk implementasi Sistem Informasi Transaksi Penjualan  ini  dibutuhkan beberapa perangkat lunak penunujang, antara lain :
Ø Sistem Operasi Windows XP SP3
Ø DataBase MySQL
Ø XAMPP
Ø ODBC Drive
· Implementasi Kebutuhan Perangkat Keras
Kebutuhan perangkat  keras  yang  dibutuhkan  oleh Sistem Informasi Transaksi Penjualan dalam implementasinya adalah sebagai berikut :
1. Processor yang dipergunakan adalah intel Pentium4
2. Harddisk terpasang 80GB, Rekomendasi minimum 40GB.
3. RAM 500 MB.
4. VGA card Onboard.
5. Mouse, Keyboard, dan Monitor sebagai alat input antar muka 
4.1. IMPLEMENTASI ANTAR MUKA
Ø Form LogIn
Ø Form Menu Utama
Ø Form Data Barang
Ø Form Penjualan Langsung

Ø Form Data Penjualan Langsung
3. CODING
Ø LogIn
procedure TFormLogin.Button1Click(Sender: TObject);
begin
  Close;
end;
procedure TFormLogin.sButton2Click(Sender: TObject);
begin
  Close;
end;
procedure TFormLogin.sButton1Click(Sender: TObject);
begin
if (sEdit1.Text='Admin') and (sEdit2.Text=Memo1.Lines[0])then
    begin
      FormUtama.ShowModal;
      sEdit1.Clear;
    sEdit2.Clear;
      sEdit1.SetFocus;
    end
  else
    begin
      MessageDlg('Maaf, akses ditolak!', mtError, [mbOK], 0);
      sEdit1.Clear;
      sEdit2.Clear;
      sEdit1.SetFocus;
 end;
end;
procedure TFormLogin.FormActivate(Sender: TObject);
begin
  Memo1.Lines.LoadFromFile('Password.txt');
end;
end.
Ø Form Utama
procedure TFormUtama.DataBarang1Click(Sender: TObject);
begin
    FormDataMasterBarang.ShowModal;
end;
procedure TFormUtama.DataAnggota1Click(Sender: TObject);
begin
  FormDataMasterAnggota.ShowModal;
end;
procedure TFormUtama.GantiPassword1Click(Sender: TObject);
begin
   FormUbahPassword.ShowModal;
end;
procedure TFormUtama.Penjualan1Click(Sender: TObject);
begin
   FormPembayaranBarangCash.ShowModal;
end;
procedure TFormUtama.Kredit1Click(Sender: TObject);
begin
   FormTransaksiKredit.ShowModal
end;
procedure TFormUtama.Penjualan2Click(Sender: TObject);
begin
  CetakLaporanCashPerhari.ShowModal;  
end;
procedure TFormUtama.Kredit2Click(Sender: TObject);
begin
 CetakLaporanKredit.ShowModal;
end;
procedure TFormUtama.entangAplikasi1Click(Sender: TObject);
begin
  AboutBox.ShowModal;
end;
procedure TFormUtama.entangPembuat1Click(Sender: TObject);
begin
   FormPembuat.ShowModal;
end;
end.
Ø Penjualan Langsung
function TFormPembayaranBarangCash.kode:String;
begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Text := 'select KodeTransaksi from ByrBrgCash where KodeTransaksi like "CS' + FormatDateTime('dd', now)+FormatDateTime('mm',Now) + FormatDateTime('yy',Now) + '%" order by KodeTransaksi';
  ADOQuery1.Open;
  if ADOQuery1.RecordCount>0 then
    begin
      ADOQuery1.Last;
      Result:='CS'+ FormatDateTime('dd',now)+FormatDateTime('mm',Now) + FormatDateTime('yy',Now) + FormatFloat('000',StrToInt(Copy(ADOQuery1.Fields[0].AsString,9,3)) + 1)
    end
  else
    Result :='CS'+ FormatDateTime('dd',now)+FormatDateTime('mm',Now) + FormatDateTime('yy',Now) + '001';
end;
procedure TFormPembayaranBarangCash.tampil;
begin
  with DM.Cash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from byrbrgCash Where KodeTransaksi LIKE "'+Edit2.Text+'"');
      Open;
    end;
end;
procedure TFormPembayaranBarangCash.sButton4Click(Sender: TObject);
begin
               DM.Cash.Insert;
    FormTambahBarang.ShowModal;
end;
procedure TFormPembayaranBarangCash.FormActivate(Sender: TObject);
begin
  Edit2.Text:=kode;
  tampil;
  with DM.Cash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from ByrBrgCash Where KodeTransaksi LIKE"'+Edit2.Text+'" Order By KodeTransaksi ASC');
      Open;
    end;
end;
           procedure TFormPembayaranBarangCash.sButton2Click(Sender: TObject);
begin
  tampil;
  if DM.Cash.RecordCount=0 then
    ShowMessage('Tidak ada barang yang dibeli')
  else if (Edit3.Text='')or (Edit3.Text='0') then
    ShowMessage('Pembeli belum membayar!')
  else if Edit1.Text[1]='-' then
    ShowMessage('Uang pembeli kurang!')
  else
    begin
      with DM.FakturCash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * from ByrBrgCash Where KodeTransaksi LIKE"'+Edit2.Text+'" Order By KodeTransaksi ASC');
      Open;
    end;
  if DM.FakturCash.RecordCount=0 then
    ShowMessage('Data tidak ada!')
  else
    begin
      RvProject1.Close;
      RvProject1.ProjectFile:='FakturCash.rav';
      RvProject1.SelectReport('Report2', false);
      RvProject1.SetParam('Tanggal', FormatDateTime('dd/mm/yyyy', Now));
      RvProject1.SetParam('Cash', Edit3.Text);
      RvProject1.SetParam('Kembalian', Edit1.Text);
      RvProject1.Execute;
    end;
      Edit2.Text:=kode;
      tampil;
      Edit3.Text:='0';
      Edit1.Text:='0';
      Label4.Caption:='0';
    end;
end;
procedure TFormPembayaranBarangCash.Edit3Change(Sender: TObject);
begin
  if Edit3.Text='' then
    Edit1.Text:='0'
  else
    Edit1.Text:=IntToStr(StrToInt(Edit3.Text)-StrToInt(Label4.Caption));
end;
procedure TFormPembayaranBarangCash.Button1Click(Sender: TObject);
begin
  if MessageDlg('Anda yakin akan membatalkan transaksi?', mtConfirmation, mbOKCancel, 0)=mrok then
    begin
      with DM.Cash do
        begin
          Close;
          SQL.Clear;
          SQL.Add('Delete From ByrBrgCash Where KodeTransaksi LIKE "'+Edit2.Text+'"');
          ExecSQL;
          SQL.Clear;
          SQL.Add('Select * from ByrBrgCash Where KOdeTransaksi LIKE "'+Edit2.Text+'"');
          Open;
        end;
    end;
  Edit2.Text:=kode;
  tampil;
  Edit3.Text:='0';
  Edit1.Text:='0';
 Label4.Caption:='0';
end;
 procedureTFormPembayaranBarangCash.sButton5Click(Sender: TObject);
var KodeTrans, KodeBrg, Qty, Harga:string;
begin
  KodeTrans:=DM.Cash['KodeTransaksi'];
  KodeBrg:=DM.Cash['KodeBarang'];
  Qty:=DM.Cash['Qty'];
  Harga:=DM.Cash['Harga'];
  Label4.Caption:=IntToStr(StrToInt(Label4.Caption)-StrToInt(Harga));
  with DM.Cash do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Delete From ByrBrgCash Where KodeTransaksi LIKE "'+KodeTrans+'" AND KodeBarang LIKE "'+KodeBrg+'" AND Qty Like "'+Qty+'" AND Harga LIKE "'+Harga+'"');
      ExecSQL;
      SQL.Clear;
      SQL.Add('Select * from ByrBrgCash Where KodeTransaksi LIKE "'+Edit2.Text+'"');
      Open;
    end;
end;
end.