Search What do'U Want.......

Memuat...

Kamis, 22 Mei 2008

Free Hosting

Free Hosting Click Here http://indofreebsd.or.id

Sabtu, 17 Mei 2008

Source Code Pemrograman Delphi Client Server

Latihan UAS P.Client Server

unit unMenu;

interface

uses

Windows, Messages, SysUtils, Variants,Classes, Graphics, Controls, Forms,

Dialogs, ComCtrls, ToolWin, ImgList, Menus,ExtCtrls;

type

TfrMenu = class(TForm)

MainMenu: TMainMenu;

File1: TMenuItem;

ransaksi1: TMenuItem;

Report1: TMenuItem;

DataBarang1: TMenuItem;

DataPelanggan1: TMenuItem;

DataPemasok1: TMenuItem;

N1: TMenuItem;

Exit1: TMenuItem;

ImageList1: TImageList;

ToolBar1: TToolBar;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

ToolButton5: TToolButton;

ToolButton6: TToolButton;

areaForm: TBevel;

procedure FormCreate(Sender: TObject);

procedure Exit1Click(Sender: TObject);

procedure DataBarang1Click(Sender:TObject);

procedure DataPelanggan1Click(Sender:TObject);

procedure DataPemasok1Click(Sender:TObject);

procedure ransaksi1Click(Sender: TObject);

procedure Report1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

frMenu: TfrMenu;

implementation

{$R *.dfm}

uses unBarang;

procedureTfrMenu.FormCreate(Sender: TObject);

begin

frMenu.Color:=clWindow;

frMenu.WindowState:=wsMaximized;

end;

procedureTfrMenu.Exit1Click(Sender: TObject);

begin

Application.Terminate;

end;

procedureTfrMenu.DataBarang1Click(Sender: TObject);

var

i: integer;

tampil: boolean;

frBarang: Tfrbarang;

begin

tampil := False;

for i := 0 to MDIChildCount - 1 do

if MDIChildren[i] is TfrBarang then

begin

tampil := True;

Break;

end;

if not tampil then

begin

frBarang := TfrBarang.Create(Self);

if areaForm.Height - 4 <>

frBarang.ClientHeight := 480

else

frBarang.Height := areaForm.Height - 4;

if areaForm.Width - 4 <>

frBarang.ClientWidth := 712

else

frBarang.Width := areaForm.Width - 4;

frBarang.Show;

end

else

MDIChildren[i].Show;

DataBarang1.Enabled:=false;

end;

end.


unit UnBarang;

interface

uses

Windows, Messages, SysUtils, Variants,Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ComCtrls, ExtCtrls,Buttons;

type

TfrBarang = class(TForm)

Panel1: TPanel;

GroupBox1: TGroupBox;

Bevel1: TBevel;

ListView1: TListView;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Edit1: TEdit;

Edit2: TEdit;

CboSatuan: TComboBox;

Edit3: TEdit;

Edit4: TEdit;

Edit5: TEdit;

btnadd: TButton;

btnsave: TButton;

btncancel: TButton;

btnDelete: TButton;

btnEdit: TButton;

bbClose: TBitBtn;

StatusBar1: TStatusBar;

procedure btnaddClick(Sender: TObject);

procedure bbCloseClick(Sender: TObject);

procedure btnsaveClick(Sender: TObject);

procedure btncancelClick(Sender: TObject);

procedure Edit1Exit(Sender: TObject);

procedure ListView1SelectItem(Sender:TObject; Item: TListItem;

Selected:Boolean);

procedure btnDeleteClick(Sender: TObject);

procedure FormClose(Sender: TObject; varAction: TCloseAction);

private

{ Private declarations }

Procedure BlankForm;

Procedure Navigasi(tombol:boolean);

Procedure SaveBarang;

Procedure ListViewRecord;

Procedure RefixData;

Procedure DeleteRecord;

Function ChechData:boolean;

public

{ Public declarations }

end;

var

frBarang: TfrBarang;

implementation

{$R *.dfm}

uses UnDmMaster;

ProcedureTfrBarang.BlankForm;

Begin

Edit1.Text :='';

Edit2.Text :='';

CboSatuan.Text :='';

Edit3.Text:='';

Edit4.Text:='';

Edit5.Text:='';

end;

ProcedureTfrBarang.Navigasi(tombol:boolean);

begin

btnadd.Enabled := tombol;

btnsave.Enabled := not tombol;

btncancel.Enabled := not tombol;

btnEdit.Enabled := tombol;

btnDelete.Enabled := tombol;

bbClose.Enabled := tombol;

end;

ProcedureTfrBarang.SaveBarang;

Begin

dmMaster.ADOCommandBarang.CommandText:='insert into tBarang values ('''+

(Edit1.Text)+''','''+

(Edit2.Text)+''','''+

(CboSatuan.Text)+''','''+

(Edit3.Text)+''','''+

(Edit4.Text)+''','''+

(Edit5.Text)+''')';

dmMaster.ADOCommandBarang.Execute;

End;

function TfrBarang.ChechData:boolean;

var

pesan: string;

begin

pesan := '';

if Trim(edit1.Text) = '' then pesan := 'KodeBarang belum dimasukan.';

if pesan = '' then

Result := True

else

begin

MessageBox(Handle,PChar(pesan),'DataBarang',MB_OK + MB_ICONERROR);

Result := False;

end;

end;

procedureTfrBarang.ListViewRecord;

var

i: integer;

begin

trydmMaster.ADOQuery1.Close; except end;

dmMaster.ADOQuery1.SQL.Text:='select * fromtBarang order by kode_brg';

dmMaster.ADOQuery1.Open;

ListView1.Clear;

if dmMaster.ADOQuery1.RecordCount > 0 then

for i:=1 to dmMaster.ADOQuery1.RecordCountdo

begin

dmMaster.ADOQuery1.RecNo :=i;

with ListView1.Items.Add do

begin

Caption := IntToStr(ListView1.Items.Count);

SubItems.Add(dmMaster.ADOQuery1.Fields[0].AsString);

SubItems.Add(dmMaster.ADOQuery1.Fields[1].AsString);

SubItems.Add(dmMaster.ADOQuery1.Fields[2].AsString);

SubItems.Add(dmMaster.ADOQuery1.Fields[3].AsString);

SubItems.Add(dmMaster.ADOQuery1.Fields[4].AsString);

SubItems.Add(dmMaster.ADOQuery1.Fields[5].AsString);

end;

end;

end;

procedureTfrBarang.RefixData;

var

i: integer;

begin

for i := 1 toListView1.Items.Count do

ListView1.Items[i-1].Caption :=IntToStr(i);

end;

procedureTfrBarang.DeleteRecord;

begin

if (ListView1.Selected <> nil) and(Edit1.Text <> '') then

if MessageBox(Handle,'Hapus data barangdari sistem ?','Data Barang',MB_YESNO + MB_ICONQUESTION) = ID_YES then

begin

dmMaster.ADOCommandBarang.CommandText:= 'delete from tBarang where kode_brg= ''' + (Edit1.Text) + '''';

dmMaster.ADOCommandBarang.Execute;

ListView1.DeleteSelected;

BlankForm;

RefixData;

end;

end;

procedureTfrBarang.btnaddClick(Sender: TObject);

begin

BlankForm;

Navigasi(false);

edit1.SetFocus;

end;

procedureTfrBarang.bbCloseClick(Sender: TObject);

begin

close;

end;

procedureTfrBarang.btnsaveClick(Sender: TObject);

begin

SaveBarang;

MessageBox(Handle,'Saved..., Record','DataBarang',MB_ok + MB_ICONExclamation);

ListViewRecord;

BlankForm;

Navigasi(true);

Edit1.SetFocus;

end;

procedureTfrBarang.btncancelClick(Sender: TObject);

begin

Navigasi(true);

edit1.SetFocus;

end;

procedureTfrBarang.Edit1Exit(Sender: TObject);

begin

if Edit1.text<> '' then

begin

try dmMaster.ADOQuery1.Close; except end;

dmMaster.ADOQuery1.SQL.Text:='selectkode_brg from tBarang where kode_brg='''+(Edit1.Text)+'''';

dmMaster.ADOQuery1.Open;

if Edit1.Text=dmMaster.ADOQuery1.Fields[0].AsString then

begin

application.MessageBox('Kode barangsudah ada','Data Barang',mb_ok + mb_iconexclamation);

Edit1.Text:='';

Edit1.SetFocus;

end;

end

else

Exit;

end;

procedureTfrBarang.ListView1SelectItem(Sender: TObject; Item: TListItem;

Selected: Boolean);

begin

ifListView1.Selected <> nil then

begin

btnDelete.Enabled:=true;

btnEdit.Enabled:=true;

Edit1.Text :=ListView1.Selected.SubItems.Strings[0];

Edit2.Text :=ListView1.Selected.SubItems.Strings[1];

cboSatuan.Text :=ListView1.Selected.SubItems.Strings[2];

Edit3.Text:=Listview1.Selected.SubItems.Strings[3];

Edit4.Text:=Listview1.Selected.SubItems.Strings[4];

Edit5.Text:=Listview1.Selected.SubItems.Strings[5];

end;

end;

procedureTfrBarang.btnDeleteClick(Sender: TObject);

begin

DeleteRecord;

btnDelete.Enabled:=false;

btnEdit.Enabled:=false;

end;

procedureTfrBarang.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Action:=caFree;

end;

end.


unit UnDmMaster;

interface

uses

SysUtils, Classes, DB, ADODB;

type

TdmMaster = class(TDataModule)

ADOConnectionPenjualan: TADOConnection;

ADOCommandBarang: TADOCommand;

ADOQuery1: TADOQuery;

private

{ Private declarations }

public

{ Public declarations }

end;

var

dmMaster: TdmMaster;

implementation

{$R *.dfm}

end.

Jumat, 16 Mei 2008

MENEMUKAN DAN MENDOWNLOAD MELAUI FTP

Server FTP: Gudang Data Yang Lengkap

Platform pertama dan terpenting untuk penyebaran film, musik, dan software adalah server FTP yang menjadi gudang data di internet. Namun,data tersebut hanya tersedia untuk suatu komunitas tertentu: Hanya anggota kelompok cracker pengelola server yang mengetahui lokasinya; aksesbagi pengguna umum biasanya tidak tersedia. Alasannya sederhana. Umumnya, bahkan pemilik server pun tidak mengetahui bahwa komputer internetnya digunakan sebagai download atau ‘ warez dump’.

Pekerjaan detektif: mencari server FTP rahasia

Tidak semua sumber di Internet tersembunyi seperti server ‘pembajak’ yang rahasia. Banyak peselancar mengelola server FTP sendiri yang boleh diakses oleh pengguna web biasa. Itu juga bagus. Sebagai contoh, setiap kali sebuah game baru beredar dalam versi demo, server produsen seringkali crash akibat kebanjiran pengunjung; atau ketika ada versi baru distribusi linux, kecepatan download yang ‘normal’ sulit dicapai.

Disini,universitas dan institusi pendidikan memiliki stamina yang menganggumkan dengan saluran fixed line-nya yang cepat. Server-server di universitas masih terus mengirimkan data ketika server mirror telah lama menyerah. Meskipun demikian, sebelum mendownload anda masih harus lama mencari. Di web hanya tersedia sedikit search-engine bagus yang dapat mencari ke server-server FTP.

Situs web yang terkenal dengan layanan pencari FTP seperti Lycos (www.lycos.com) atau AllTheWeb (www.alltheweb.com) tidak dapat menemukan server yang isinya meragukan, karena tidak selalu ‘legal’. Namun, jika dioperasikan dengan tepat, search-engine ini selalu menunjukkan sebuah server download yang cepat untuk isi yang ‘legal.’

Search-engine untuk FTP berbeda dengan webcrawler. Di sini, masukkan sedapat mungkin hanya satu istilah yang tepat. Sebagai contoh,sebuah file dengan nama ‘suse7.1.bin’ tidak akan dapat ditemukan jika anda mencarinya dengan kata kunci ‘Linux AND distribution.’

Untungnya, ada spesialis search-engine FTP yang dapat menunjukkan semua server yang menyediakan download, misalnya www.reliz.ru yang menerapkan kesederhanaan seperti Geogle. Cukup masukkan satu istilah atau beberapa kata kunci, lalu klik tombol ‘search.’ Sebagai hasilnya, Reliz.ru akan menyajikan sebuah daftar link yang mengantar browser anda langsung ke file yang dicari.

MENEMUKAN LEBIH CEPAT: FTP-Indexer yang beralamat di www.reliz.ru melakukan pencarian kebanyak gudang file di Internet

Mengakali pemeriksaan akses: Cara menhemat biaya bulanan

Search-engeni Reliz.ru mempersulit pencarian pada server FTP: per hari seorang pengguna umum hanya boleh mengajukan satu permintaan pencarian ke Reliz.ru. situs ini menyimpan alamat IP anda dan mengijinkan pencarian berikutnya setelah 24 jam, kecuali jika anda bersedia membayar U$$20 (3 bulan) atau U$$35 (6 bulan). Pembatasan tersebut bukan merupakan halangan bagi sambungan Internet dial-up: putuskan saja sejenak koneksi online anda. Pada dial-up berikutnya provider anda secara otomatis akan memberikan alamat IP baru.

Layanan pencari FTP yang juga bagus antara lain ‘Napalm FTP Indexer’ dengan alamat http://search.ftphost. Net/indexer/search.htm dan www.oth.net. Layanan lain yang juga patut disarankan adalah search-engeni FTP dengan alamat www.ftpfind.com. Kekuatan layanan ini adalah tersedianya pilihan ‘Thematic Search.’ Dengan fasilitas ini,satu permintaan anda sudah dapat membatasi apakah anda mencari software untuk system operasi tertentu atau hanya ingin melihat film, musik, atau gambar. Kategori ini pun masih dapat dibagi lagi berdasarkan tipe file.

Men-download dengan nyaman: program FTP gratis terbaik

Semua website diatas tak ada gunanya bila anda tidak memiliki FTP-client. Anda memang dapat men-download file dengan browser, tetapi kurang nyaman. Program FTP gratis semakin sedikit, tetapi tool WS_FTP LE (www.ipswitch.com) atau SmartFTP (www.smartftp.com) patut anda download. Pilihan lainnya adalah Total Commander (www.ghisler.com). Di bawah windows, program ini berfungsi sebagai pengganti File-Manager yang dapat menakses server FTP.

Download melalui firewall: FTP pasif menghindari masalah

Sebuah setting penting bagi peselancar yang ingin men-download melalui proxy atau firewall adalah aktivasi pilihan ‘passive amaode’ atau ‘Passive file Transfers.’ Pada mode pasif ini, FTP-client akan membukadua hubungan yang diperlukan dengan server (satu untuk menirim perintah, satu untuk penyaluran data).pada mode aktif, client hanya membuka satu saluran untuk perintah dan menanti server membuka saluran data. Masalahnya, banyak firewall pada PC pribadi yang ‘alergi’ terhadap upaya koneksi dari luar (dalam hal ini dari server FTP) dan memblokirnya tanpa pandang bulu. Karena itu, pengguna fiewall, sepertipengguna Internet di perkantoran, sebaiknya memilih mode pasif.

Dalam Total Commander, setting untuk mengaktifkan mode pasif dapat anda temukan dibawah tab FTP. Disini anda dapt menambahkan server FTP baru pada daftar atau mengubah entri yang sudah ada melalui menu Edit. Dalam jendela ini anda hanya perlu memberi tanda di depan kolom ‘Use Passive Mode fir Transfers.’

Cepat dan mudah: Mendownload file dari server FTP

  1. GUDANG: Saat pertama kali dijalankan,SmartFTP secara otomatis langsung membuka jendela konfigurasi.dibawah option ‘General,’ entri direktori standar untuk menyimpan file download belum tercantum. Pilih folder yang anda inginkan. Sebaiknya entri untuk alamat e-mail anda tak perlu dikoreksi-alamat yang tercantum sudah cukup.
  2. KONEKSI: Buka jendela ‘Connection.’ Tingkatkan nilai dalam kolom ‘Max. Retries’ menjadi 20. ‘Retry Delay’ yang merupakan waktu tunggu antara upaya koneksi sekurangnya harus 30 detik . kurang dari itu, server FTP dapat memblokir anda dengan alas an perilakutidak sopan. Pem\ngguna firewall perlu mengaktifkan pilihan ‘Passive Mode.’
  3. TEMPAT KERJA: Tampilan yang serupa Explore ini adalah jendela utama SmartFTP. Dalam kolom almat masukkan URL, nama pengguna, dan password untuk server FTP yang diinginkan. Pada server dengan akses tanpa proteksi anda perlu memberi tanda di depan ‘Anonymous.’ File dapat anda copy dengan metoda Drag & Drop biasa seperti pada Windows-Explore.