Arsip: membuat no urut secara otomatis

 
user image
more 12 years ago

kentung

saya mau membuat no urut yang menggabungkan antara tanggal input dan no urut, mis tanggal hari ini + no urut "140108-00001" . Detailnya, begitu user click tombol new data, no urut secara otomatis akan betambah, jika hari berubah maka no urut akan di mulai dari tanggal hari ini dan "00001" lagi, ada yang bisa bantu ngga ya terima kasih
user image
more 12 years ago

DelphiExpert

banyak cara utk melakukan itu. guna lebih spesifik baiknya anda sebutkan back-end storage yg anda gunakan. entah itu persistence, local file atau DBMS (database), baru kemudian penyelesaian dapat dikerucutkan. utk jenis DBMS (database) pastikan DB engine yg anda gunakan support sequence atau tidak, jika tidak pembuatan tabel & field khusus pastinya perlu dilakukan...
user image
more 12 years ago

kentung

Saya menggunakan DATABASE Access
user image
more 12 years ago

old_shutterhand

kode berikut akan menghasilkan nourut: NT00001/1/2008 sd NT99999/1/2008, lebih lanjut dapat anda modif sendiri;
Procedure BuatNomorUrut;
var N, Urutan:Integer;
    JKarakter:Integer;
begin
  // buat urutan data pada variable N
  if query1.RecordCount=0 then
    N:=1
  else
    begin
      query1.Last;
      Urutan:=StrToInt(AmbilKanan(copy(query1['no_urut'],1,7),5));
      N:=Urutan+1;
    end;
  // hitung jumlah karakter
  JKarakter:=Length(trim(IntToStr(N)));
  //sesuaikan kode dengna jumlah karakter
  Case JKarakter of
  1: Kbaru:='NU0000'+trim(IntToStr(N));
  2: Kbaru:='NU000'+trim(IntToStr(N));
  3: Kbaru:='NU00'+trim(IntToStr(N));
  4: Kbaru:='NU0'+trim(IntToStr(N));
  5: Kbaru:='NU'+trim(IntToStr(N));
  end;
  kBaru:=kbaru+'/'+inttostr(monthof(date))+'/'+inttostr(yearof(date));
end;
user image
more 12 years ago

old_shutterhand

lupa, ini funtion ambilkanan nya
function AmbilKanan(Tx:String;Jkar:Integer):String;
var Panjang,q,R,Sisa:Integer;
    Terbalik, TextBenar:String;
begin
  Panjang:=Length(trim(Tx));
  Terbalik:='';
  //mengambil karakter dari kanan
  Sisa:=Panjang-Jkar;
  for q:=Panjang downto (Sisa+1) do
  begin
    Terbalik:=Terbalik+Tx[q];
  end;
  //membalik hasil penganmbilan karakter
  //dari kanan ke kiri
  TextBenar:='';
  for R:=length(trim(Terbalik)) downto 1 do
  begin
    TextBenar:=TextBenar+Terbalik[R];
  end;
  Result:=TextBenar;
end;
semoga membantu
user image
more 12 years ago

kentung

akan saya coba sintax ini, terimakasih, tolong kirimkan sintax yang lain dong
user image
more 12 years ago

mas_kofa

@untuk function Ambilkanan bisa pake fungsi berikut function RightStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload; function RightStr(const AText: WideString; const ACount: Integer): WideString; overload;

uses StrUtils;
user image
more 12 years ago

jimbot

akan saya coba sintax ini, terimakasih, tolong kirimkan sintax yang lain dong
misalnya...antara lain...contohnya... atau... bisa di pertegas... :D
user image
more 12 years ago

yusdi

@mas_kofa: @untuk function Ambilkanan bisa pake fungsi berikut function RightStr(const AText: AnsiString; const ACount: Integer): AnsiString; overload; function RightStr(const AText: WideString; const ACount: Integer): WideString; overload;

uses StrUtils;
yoha aku juga pake kayak gitu...jangan lupa pada uses ada tambahannya... aku ampe mumet 7 keliling gara2 di uses ga kutambahin StrUtils.... RightStr ('Programmer',5); ---> akan menghasilkan string 'ammer CMIIW'
user image
more 12 years ago

kentung

aku dah coba modif berdasarkan sintax di atas, dan hasilnya seperti ini : procedure TForm4.ButtonTambahClick(Sender: TObject); Var tgl_skrg : TDate; mm:string; dd:string; year:string; id,id_str,id_str2,copy_id,tgl1,year1:string; id_int:integer; begin while not TABLE1.eof do begin tgl_skrg := date; dd :=FormatDateTime('dd',tgl_skrg); year:=FormatDateTime('yyyy',tgl_skrg); mm :=FormatDateTime('yyyy',tgl_skrg); //mengambil value yang akan di autonumberkan id:=TABLE1.fieldvalues['Nonota']; TABLE1.next; end; //mengembalikan posisi record ke posisi 1 TABLE1.firSt; //mengambil karakter yang akan di autonumberkan misalnya menggunakan MS00001 copy_id:=Copy(id,9,4); //memeriksa apakah record kosong / tidak If copy_id='' then id_int:=1 else id_int :=strToInt(copy_id)+1; //menggabungkan kembali dengan karakter MS id_str:=dd+mm+year+'MS000'+IntToStr(id_Int); //menampilkan di form.misalnya saja di tampilkan di editbox AturTombol(False); AturEntriData(True); Table1.Append; tgl_skrg := date; DateTimePickerTglLahir.Date :=tgl_skrg; DBEdit1.text:=id_str; DateTimePickertgllahir.SetFocus; end; tapi masalahnya,kenapa pada saat DATABASE kosong yang muncul bukan "dd+mm+year+"MS0001" tapi hanya MS0001 saja, tolong dong kira-kira salahnya ada di mana???? terima kasih
more ...
  • Pages:
  • 1
  • 2
Share to
Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com