Cara Membuat Nomor atau Kode Otomatis di Delphi

Fitur ini tentunya akan banyak dibutuhkan tatkala kita benar-benar membuat sebuah aplikasi yang reel dan tentunya permintaan dari konsumen kita. Yang akan saya berikan disini adalah satu dari sekian banyak teknik yang bisa digunakan, jadi anda tidak perlu terpaku pada contoh yang saya berikan ini.

Pertama, letakan function ini dibawaha Public atau Private Declaration:
    function getkode(kdbukti:string):integer;
    function nextkode(nourut:integer):string;
    Procedure IsiCbWilayah;
    Procedure IsiGrid;
    procedure CariPetugas;
    procedure LoadDataPenyerahan;
    procedure CekDataPenyerahanBulanIni;
    procedure IsiCBTahun;


Lalu di bawah koding {$R *.dfm} buatlah function-function ini:

function Tfrpenyerahan.getkode(kdbukti:string):integer;
var
  pjgkode:integer;
  skode:string;
  ikode:integer;
begin
  pjgkode:=length(kdbukti);
  skode:=copy(kdbukti,6,pjgkode);
  ikode:=strtoint(skode);
  result:=ikode;
end;


function Tfrpenyerahan.nextkode(nourut:integer):string;
var
  nextnourut:integer;
  pjgnexturut:integer;
  snextnourut:string;
begin
  nextnourut:=nourut+1;
  pjgnexturut:=length(inttostr(nextnourut));
  case pjgnexturut of
    1:begin
        snextnourut:='000' +inttostr(nextnourut);
      end;
    2:begin
        snextnourut:='00' +inttostr(nextnourut);
      end;
    3:begin
        snextnourut:='0' +inttostr(nextnourut);
      end;
    4:begin
        snextnourut:=inttostr(nextnourut);
      end;
  end;
  snextnourut:='LMPD-'+snextnourut;
  result:=snextnourut;
end;

procedure Tfrpenyerahan.IsiCBTahun;
var i:integer;
begin
  cbtahun.Clear;
  for i:=strtoint(rightstr((datetostr(now)),4)) downto 2010 do
  begin
    cbtahun.Items.Add(inttostr(i));
  end
end;

Procedure Tfrpenyerahan.IsiCbWilayah;
begin
  with adqcustom do begin
    with sql do begin
      clear;
      add('select a.*,b.* from trw as a left outer join tdusun as b on a.kd_dusun=b.kd_dusun order by nama_rw asc');
    end;
    open;
    cbwilayah.Clear;
    first;
    while not eof do begin
      cbwilayah.Items.Add(adqcustom.FieldByName('nama_rw').AsString);
      next;
    end;
  end;
end;

Post a Comment

Previous Post Next Post