Arsip: dari pake query mo dijadi pake ADOQuery qo error y

 
user image
more 15 years ago

fafa

saya dapat dari buku tentang report buat pertanggal nih sourecodenya

procedure TfrmCetakJualPerBarang.btPreviewClick(Sender: TObject);
var PTgAwal, PTgAkhir : TDateTime;
begin
  //jika tanggal kosong, anggap dari awal sampai akhir
  if length(edTgAwal.Text)=0 then edTgAwal.Text:='01-01-1900';
  if length(edTgAkhir.Text)=0 then edTgAkhir.Text:='01-01-2999';
  //cek input tanggal
  try
    begin
      PTgAwal:=StrToDate(edTgAwal.Text);
      PTgAkhir:=StrToDate(edTgAkhir.Text);
    end;
  except
    beep;
    ShowMessage('Input data tanggal tidak sah!'+chr(13)+
                'Format tanggal: dd-mm-yyyy');
    exit;
  end;
  with uLembarcetakJualPerBarang.lbrCetakJualPerBarang do
    begin
      //hapus string SQL lama jika ada
      quJual.SQL.Clear;
      //buat string SQL baru
      quJual.SQL.Add('select  from '+QuotedStr('Jual.DB'));
      //jika edKodeBrg kosong, anggap semua barang
      if length(trim(edKodeBrg.Text))=0 then
         edKodeBrg.Text:='%';
      quJual.SQL.Add('where KodeBrg Like :PKodeBrg');
      quJual.SQL.Add('and TgBon>=:PTgAwal');
      quJual.SQL.Add('and TgBon<=:PTgAkhir');
      //set parameter
      quJual.ParamByName('PKodeBrg').AsString:=edKodeBrg.Text;
      quJual.ParamByName('PTgAwal').AsDate:=
                          StrToDate(edTgAwal.Text);
      quJual.ParamByName('PTgAkhir').AsDate:=
                          StrToDate(edTgAkhir.Text);
      //siapkan query
      quJual.Prepare;
      //buka SQL
      quJual.Open;
      //isi variabel dalam bandTitle
      if length(trim(edKodeBrg.Text))=0 then
         edKodeBrg.Text:='%';
     //isi variabel dalam bandTitle
      if edKodeBrg.Text='%' then
        begin
          qrKodeBrg.Caption:='Semua Barang';
          qrNamaBrg.Caption:='';
        end
      else
        begin
          qrKodeBrg.Caption:=edKodeBrg.Text;
          qrNamaBrg.Caption:=edNama.Text;
        end;
      qrPeriode.Caption:=edTgAwal.Text+' s/d '+edTgAkhir.Text;
      if Sender=btPreview then
         //jika event OnClick berasal dari btPreview
         qrCetakJualPerBarang.Preview
      else
         //jika event OnClick berasal dari btCetak
         qrCetakJualPerBarang.Print;
    end;
tapi pas saya mo rubah query menjadi adoquery qo ada yang error ya?? soucre pake adoquery

procedure TFormAbsenkelas.previewklstglClick(Sender: TObject);
var PTgAwal, PTgAkhir : TDateTime;
begin
  //jika tanggal kosong, anggap dari awal sampai akhir
  if length(TglAwal.Text)  =0 then
      TglAwal.Text:='01-01-1900';
  if length(TglAkhir.Text) =0 then
      TglAkhir.Text:='01-01-2999';
  //cek input tanggal
  try
    begin
      PTgAwal   :=  StrToDate(TglAwal.Text);
      PTgAkhir  :=  StrToDate(TglAkhir.Text);
    end;
  except
    beep;
    ShowMessage('Input data tanggal tidak sah!'+chr(13)+
                'Format tanggal: dd-mm-yyyy');
    exit;
  end;
  with Uabsenkelasperbulan.AbsenkelasPerbulan do
    begin
      //hapus string SQL lama jika ada
      ADOQabsen.SQL.Clear;
      //buat string SQL baru
      ADOQabsen.SQL.Add('select   from absen');//'+QuotedStr('Jual.DB'));
      ADOQabsen.SQL.Add('where Tgl_absen>=:PTgAwal');
      ADOQabsen.SQL.Add('and Tgl_absen<=:PTgAkhir');
      //set parameter
      ADOQabsen.Parameters.ParamByName('PTgAwal').AsDate  :=//errornya AsDate
                          StrToDate(tglkelasawal.Text);
      ADOQabsen.Parameters.ParamByName('PTgAkhir').AsDate :=//errornya AsDa
                          StrToDate(tglkelasakhir.Text);
     //siapkan query
      ADOQabsen.Prepared;
      //buka SQL
      ADoQabsen.Open;
      //isi variabel dalam bandTitle
      qrPeriode.Caption   :=TglAwal.Text+' s/d '+TglAkhir.Text;
      qrkelas.Caption     := '';
  end;
end;
errornya undeclared identifier 'AsDate' kenapa y?? ada yang tau g kenapa??
user image
more 15 years ago

deLogic

coba AsDate nya diganti Value aja..
user image
more 15 years ago

saysansay

Dari DivcallSDK sampe nanya Query...wah jadi menurun dunkz...tingkat kesulitannya @fafa,,,payah neh.. :D Dirubah Jadi AsDateTime

   with AdoQuery1 do
   Begin
       Close;
       SQL.Clear;
      SQL.Text := 'Select * From t_absen where Tgl_absen BETWEEN :x_tglawal AND :x_tglAkhir 
      // Isikan Parameternya ingat Pake AsDateTime'
   end;
user image
more 15 years ago

fafa

hehehe,,bro saysansay,,,,hmm tau nih Diva lagi dikerjakan belom ditest pake pstn,,soalnya masih binggun ada 4 port kabel telepon dya mo dimasukin port mana y?mesti di pantek pake program atau bisa lngsung dicoba...,,!!!oiya bro maap belom sempat main kerumah,,ntar deh saya main y,,,,tapi rame2 g pa2 ya??
user image
more 15 years ago

EkoIndri

sekedar informasi tambahan buat mas fafa sebenarnya biar sedikit agak lebih stabil, kalau memang ADOQuery-nya hanya untuk melakukan satu perintah aja lebih baik penulisan query di propertinya langsung jadi ketika parameter digenerate, maka parameternya langsung bisa menunjukkan itu sebagai DateTime tanpa harus menegaskannya didalam kode program. tanda ":" menunjukkan sebagai paramter ( kalau belum tahu. he....3x ) kalau di database MS SQL Server tanda ":" sama dengan "@", yang keduanya sama sama menunjukkan sebagai parameter semoga info diatas bisa bermanfaat.
more ...
  • Pages:
  • 1
Share to
Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com