About Me

Foto saya
sehari-hari di depan komputer,ngoding, ngenet, ngechat dan Saya Mau nyari kerjaan. Saya Tamatan UPI-YPTK padang Tahubn 2012, Jurusan Sistem Informasi. Yang Saat ini masih mencari Kerjaan. Di Jakarta emang Susah Banget Cari Kerja

Sabtu, 25 Desember 2010

Program Transaksi Penjualan Dengan Java

 Copy kan aj smua yg ada di bawah ini, lalu pastekan ke turbo pascal, insyaallah langsung jalan

Program Lat_1;
Uses crt;
Type Penjualan = Record
       nofaktur     : string[6];
       tglPenjualan : string[17];
       JnsPkt       : string[1];
       HrgPkt       : real;
       JmlPkt       : integer;
       Pembayaran   : real;
       diskon       : real;
       totBayar     : real;
       end;
var FilePenjualan   : File of Penjualan;
    RecordPenjualan : Penjualan;
    Lagi, Hapus     : char;
    fakturhapus     : string[13];
    I,JumlahRecord  : integer;
    ketemu          : boolean;
    FakturCari      : string[8];
    Pilihan,br      : integer;

Procedure Tambah_Data;
begin
     Assign (FilePenjualan, 'Jual.dat');
     {$I-}
     Reset (FilePenjualan);
     {$I+}
     if IOResult <> 0 then
        rewrite (FilePenjualan);
     clrscr;
     seek (FilePenjualan, FileSize(FilePenjualan));
     Lagi := 'Y';
     while upcase(Lagi) = 'Y' do
     begin
          clrscr;
          with RecordPenjualan do
          begin
               gotoxy(11,4);writeln('Penjualan Komputer PT. De Naldi');
               gotoxy(11,5);writeln('================================');
               gotoxy(5,7);write  ('No. Faktur                     : ');readln(NoFaktur);
               gotoxy(5,8);write  ('Jenis Paket Komputer [A/B/C/D] : ');readln(jnsPkt);
               gotoxy(5,9);write  ('Harga PerPaket                 : Rp. ');readln(hrgPkt);
               gotoxy(5,10);write  ('Jumlah Paket Pesanan           : ');readln(jmlPkt);

               Pembayaran := HrgPkt * jmlPkt;
               If (JnsPkt = 'A') and (JmlPkt < 4) then
                  diskon := 0
               else
                    If (JnsPkt = 'A') and (JmlPkt >= 4) then
                       diskon := 0.05 * Pembayaran
                    else
                        If (JnsPkt = 'B') and (JmlPkt < 3) then
                           diskon := 0
                        else
                            If (JnsPkt = 'B') and (JmlPkt >= 3) then
                               diskon := 0.05 * Pembayaran
                            else
                                If (JnsPkt = 'C') and (JmlPkt < 2) then
                                   diskon := 0
                                else
                                    If (JnsPkt = 'C') and (JmlPkt >= 2) then
                                       diskon := 0.05 * Pembayaran
                                    else
                                        If JnsPkt = 'D' then
                                           diskon := 0.05 * Pembayaran;
               TotBayar := Pembayaran - diskon;
               gotoxy(5,11);write ('Pembayaran                     : Rp.',Pembayaran:8:0);
               gotoxy(5,12);write ('diskon                         : Rp.',diskon:8:0);
               gotoxy(5,13);write ('Total Pembayaran               : Rp.',totBayar:8:0);
               end;
          write (FilePenjualan, RecordPenjualan);
          gotoxy (5,15);write('Ada data lagi [Y/T] ? : ');readln(lagi);
          end;
     close (FilePenjualan);
     end;

Procedure Tmp_Semua_Data;
begin
     Assign (FilePenjualan, 'Jual.dat');
     Reset  (FilePenjualan);
     clrscr;
     gotoxy(5,2);writeln ('              PENJUALAN KOMPUTER PERPAKET PT.De Naldi               ');
     gotoxy(5,3);writeln;
     gotoxy(5,4);writeln ('|======|===========|========|========|==========|=======|==========|');
     gotoxy(5,5);writeln ('|  No. |Jenis Paket| Harga  |Jumlah  |Pembayaran| Diskon|  Total   |');
     gotoxy(5,6);writeln ('|Faktur| Penjualan |Perpaket| Paket  |   Rp.    |  5 %  |Pembayaran|');
     gotoxy(5,7);writeln ('|      | [A/B/C/D] |  Rp.   |Pesanan |          |  Rp.  |   Rp.    |');
     gotoxy(5,8);writeln ('|======|===========|========|========|==========|=======|==========|');
                         {  123456 12345678901 12345678 12345678 1234567890 1234567 1234567890  }
     while not EOF (FilePenjualan) do
     begin
          br := br + 1;
          read (FilePenjualan, RecordPenjualan);
          with RecordPenjualan do
          begin
               gotoxy(5,br+8);write ('|',nofaktur:6,'|',jnspkt:11,'|',hrgpkt:8:0,'|');
               write (jmlpkt:8,'|',Pembayaran:10:0,'|',diskon:7:0,'|',totbayar:10:0,'|');
          gotoxy(5,br+9);writeln ('|======|===========|========|========|==========|=======|==========|');
          end;
     end;
     close (FilePenjualan);
     repeat until keypressed;
     end;

Procedure Tmp_Tertentu;
begin
     Assign (FilePenjualan,'Jual.dat');
     {$I-}
     Reset (FilePenjualan);
     {$I+}
     if IOResult <> 0 then
        writeln ('File tidak ada !');
     JumlahRecord := Filesize (FilePenjualan);
     Lagi := 'Y';
     while upcase (Lagi) = 'Y' do
     begin
          ketemu := false;
          clrscr;
          gotoxy(15,5);write ('No. Faktur yang akan dicari : ');readln(FakturCari);
          writeln;
          for I := 1 to JumlahRecord do
          begin
               seek (FilePenjualan,I-1);
               read (FilePenjualan, RecordPenjualan);
               if RecordPenjualan.nofaktur = FakturCari then
               begin
                     ketemu := true;
                     gotoxy(10,7);writeln ('Jenis Paket Penjualan [A/B/C/D]  : ',RecordPenjualan.JnsPkt);
                     gotoxy(10,8);writeln ('Harga Perpaket                   : Rp. ',RecordPenjualan.HrgPkt:8:0);
                     gotoxy(10,9);writeln ('Jumlah Paket Pesanan             : ',RecordPenjualan.JmlPkt);
                     gotoxy(10,10);writeln ('Pembayaran                       : Rp. ',RecordPenjualan.Pembayaran:8:0);
                     gotoxy(10,11);writeln ('Diskon 10 %                      : Rp. ',RecordPenjualan.Diskon:8:0);
                     gotoxy(10,12);writeln ('Total Pembayaran                 : Rp. ',RecordPenjualan.TotBayar:8:0);
                     end;
               end;
          if not ketemu then
          begin
               gotoxy(15,7);writeln ('NO. FAKTUR YANG DICARI TIDAK DITEMUKAN');
               end;
          gotoxy(10,14);write ('Cari No. Faktur yang lain [Y/T] ? : ');readln(Lagi);
          end;
     close (FilePenjualan);
     end;

Procedure Koreksi_Data;
begin
     Assign (FilePenjualan, 'Jual.dat');
     {$I-}
     Reset (FilePenjualan);
     {$I+}
     if IOResult <> 0 then
        writeln ('FILE TIDAK ADA!!!!');
     JumlahRecord := Filesize (FilePenjualan);
     Lagi := 'Y';
     while upcase(Lagi) = 'Y' do
     begin
          ketemu := false;
          clrscr;
          gotoxy(20,10);write ('No. Faktur yang dicari : ');readln(FakturCari);
          writeln;
          for I:=1 to jumlahrecord do
          begin
               seek (FilePenjualan, I-1);
               read (FilePenjualan, RecordPenjualan);
               if FakturCari = RecordPenjualan.nofaktur then
               begin
                    with RecordPenjualan do
                    begin
                         ketemu := true;
                         clrscr;
                         gotoxy(10,5);writeln  ('Jenis Paket Penjualan [A/B/C/D]  : ',JnsPkt);
                         gotoxy(10,6);write    ('Koreksinya                       : ');readln(JnsPkt);
                         gotoxy(10,8);writeln  ('Harga Perpaket                   :',HrgPkt:8:0);
                         gotoxy(10,9);write    ('Koreksinya                       : ');readln(HrgPkt);
                         gotoxy(10,11);writeln ('Jumlah Paket Pesanan             : ',JmlPkt);
                         gotoxy(10,12);write   ('Koreksinya                       : ');readln(jmlpkt);

                         Pembayaran := HrgPkt * jmlPkt;
                         If (JnsPkt = 'A') and (JmlPkt < 4) then
                            diskon := 0
                         else
                             If (JnsPkt = 'A') and (JmlPkt >= 4) then
                                diskon := 0.1 * Pembayaran
                             else
                                 If (JnsPkt = 'B') and (JmlPkt < 3) then
                                    diskon := 0
                                 else
                                     If (JnsPkt = 'B') and (JmlPkt >= 3) then
                                        diskon := 0.1 * Pembayaran
                                     else
                                         If (JnsPkt = 'C') and (JmlPkt < 2) then
                                            diskon := 0
                                         else
                                             If (JnsPkt = 'C') and (JmlPkt >= 2) then
                                                diskon := 0.1 * Pembayaran
                                             else
                                                 If JnsPkt = 'D' then
                                                    diskon := 0.1 * Pembayaran;
                         TotBayar := Pembayaran - diskon;
                         gotoxy(10,13);write ('Koreksi Pembayaran                 : ',pembayaran:8:0);
                         gotoxy(10,14);write ('Koreksi Diskon                     : ',diskon:8:0);
                         gotoxy(10,15);write ('Koreksi Total Pembayaran           : ',totbayar:8:0);
                         end;
                    end;
               seek  (FilePenjualan,I-1);
               write (FilePenjualan, RecordPenjualan);
               end;
          if not ketemu then
          begin
               gotoxy(20,11);writeln ('NO. FAKTUR YANG DICARI TIDAK ADA!!!');
               end;
          gotoxy(10,17);write ('Ingin Koreksi Lagi [Y/T] ? : ');readln(Lagi);
          end;
     close (FilePenjualan);
     end;

Procedure Hapus_data;
begin
     Assign (FilePenjualan, 'Jual.dat');
     {$I-}
     Reset (FilePenjualan);
     {#$I+}
     if IOResult <> 0 then
        writeln ('File Tidak Ada');
     JumlahRecord := FileSize (FilePenjualan);
     Lagi := 'Y';
     while upcase(Lagi) = 'Y' do
     begin
          clrscr;
          ketemu := false;
          gotoxy(30,5);writeln ('Menghapus Data');
          gotoxy(30,6);writeln ('--------------');
          gotoxy(25,8);write ('No. Faktur yang akan dihapus : ');readln(fakturhapus);
          for I:=1 to JumlahRecord do
          begin
               seek (FilePenjualan,I-1);
               read (FilePenjualan, RecordPenjualan);
               if RecordPenjualan.nofaktur = fakturHapus then
               begin
                    with RecordPenjualan do
                    begin
                         ketemu := true;
                         gotoxy(20,10);writeln ('Jenis Paket Komputer [A/B/C/D]  : ',jnspkt);
                         gotoxy(20,11);writeln ('Harga Perpaket                  : ',hrgpkt:8:0);
                         gotoxy(20,12);writeln ('Jumlah Paket Pesanan            : ',jmlpkt);
                         gotoxy(20,13);writeln ('Pembayaran                      : ',pembayaran:8:0);
                         gotoxy(20,14);writeln ('Diskon                          : ',diskon:8:0);
                         gotoxy(20,15);writeln ('Total Pembayaran                : ',totbayar:8:0);
                         end;
                    writeln;
                    gotoxy(20,17);write ('Yakin akan dihapus [Y/T]? : ');readln(Hapus);
                    if upcase(hapus) = 'Y' then
                    begin
                         with RecordPenjualan do
                         begin
                              clrscr;
                              gotoxy(20,8);writeln ('Ket : diisi kosong');
                              gotoxy(20,10);write ('No. Faktur                    : ');readln(nofaktur);
                              gotoxy(20,11);write ('Jenis Paket Kompter [A/B/C/D] : ');readln(jnspkt);
                              gotoxy(20,12);write ('Harga Perpaket                : ');readln(hrgpkt);
                              gotoxy(20,13);write ('Jumlah Paket Pesanan          : ');readln(jmlpkt);
                              gotoxy(20,14);write ('Pembayaran                    : ');readln(pembayaran);
                              gotoxy(20,15);write ('Diskon                        : ');readln(Diskon);
                              gotoxy(20,16);write ('Total Pembayaran              : ');readln(totbayar);
                              end;
                         end;
                    seek (FilePenjualan, I-1);
                    write (FilePenjualan, RecordPenjualan);
               end;
               if not ketemu then
               begin
                    gotoxy(25,10);writeln ('Data yang dicari tidak ada!');
                    end;
          end;
          gotoxy(20,17);write ('Ada data lagi yang akan dihapus [Y/T]? : ');readln(lagi);
          end;
     close (FilePenjualan);
     end;


{Program Utama}
begin

     pilihan := 6;
     while Pilihan <> 7 do
     begin
          clrscr;
          gotoxy(20,5); writeln ('MENU PILIHAN');
          gotoxy(20,6); writeln ('============');
          gotoxy(15,8);writeln ('1. TAMBAH DATA.');
          gotoxy(15,9);writeln ('2. TAMPIL SEMUA DATA.');
          gotoxy(15,10);writeln ('3. TAMPIL DATA TERTENTU.');
          gotoxy(15,11);writeln ('4. KOREKSI DATA.');
          gotoxy(15,12);writeln ('5. HAPUS DATA.');
          gotoxy(15,13);writeln ('6. SELESAI.');
          gotoxy(15,15);write ('MASUKKAN PILIHAN ANDA [1/2/3/4/5/6] ? : ');
          gotoxy(55,15);readln(Pilihan);

     if Pilihan = 1 then
        Tambah_Data
     else
         if Pilihan = 2 then
            Tmp_Semua_Data
         else
             if Pilihan = 3 then
                Tmp_Tertentu
             else
                 if Pilihan = 4 then
                    Koreksi_Data
                 else
                     if Pilihan = 5 then
                        Hapus_data
                     else
                         exit;
         end;
     end.

1 komentar: