Arsip: bagaimana menjalankan macro di Access melalui delphi

 
user image
more 16 years ago

SaKt!

[color=blue:85a1c78621][/color:85a1c78621] Salam kenal, Delphier, saya kesulitan menjalankan macro di Access melalui delphi. sintaksnya pake apa ya ? :cry:
user image
more 16 years ago

tox2wow

Macro itu apa yahhh ?? Apa sejenis command SQL ?? Atau apa nehhh ??? Gw taunya SQL doank :oops: ... kekekekekke. Kalo untuk command SQL, biasanya gw pake (with ADO component) : 1. Insert Into Command :

with ADOConnection1 do
 begin
  Close;
  SQL.Clear;
  SQL.Add('Insert into Nama_Tabel Values(' + Variabel_Integer + ',' +               QuotedStr('Variabel_String') + ')');
 ExecSQL;
 end;
2. Update Command :

with ADOConnection1 do
 begin
  Close;
  SQL.Clear;
  SQL.Add('Update Nama_Tabel Set Field1 = ' + Variabel_Integer + ',' + 'Field2 = ' + QuotedStr('Variabel_String') + ' where Field_Pembanding = ' + Kriteria_Pembanding');
  ExecSQL;
 end;
3. Delete Command :

with ADOConnection1 do
 begin
  Close;
  SQL.Clear;
  SQL.Add('Delete from Nama_Tabel where Field_Pembanding = ' + Kriteria_Pembanding');
  ExecSQL;
 end;
4. Select Command :

with ADOConnection1 do
 begin
  Close;
  SQL.Clear;
  SQL.Add('Select * from Nama_Tabel');
  Open;
 end;
// atau
with ADOConnection do
 begin
  Close;
  SQL.Clear;
  SQL.Add('Select Nama_Field1, Nama_Field2 from Nama_Tabel where Field_Pembanding = ' + Kriteria_Pembanding');
  Open;
 end;
Catatan : Untuk perintah DML, eksekusi perintah SQL selalu dilakukan dengan 'ExecSQL'. Sedangkan untuk perintah DDL, eksekusi perintah SQL selalu dilakukan dengan 'Open'. Well, senior-senior Delphi-Id, correct me if i'm wrong !!! Eiiitttttt, satu lagi, untuk variabel bertipe string, sebaiknya gunakan QuotedStr('Variabel_String'). QuotedStr digunakan untuk memberikan tanda petik '' yang mengapit variabel string. Hmmmm, itu mungkin yang ditanyain ya ??? Sory kalo salah ... kekekkeke :lol:
user image
more 16 years ago

deLogic

sepertinya bukan itu deh yg dimaksud, tapi masalah automation. gampangnya, pake komponen TAccessApplication, ada di Tab Server, kalo gak ada load package 'Microsoft Office XP Sample' Automation Server Wrapper Components', filenya dclofficexp70.bpl (D7). terus gunakan method DoCmd.RunMacro... contohnya:

  AP.OpenCurrentDatabase('db1.mdb', False, '');
  AP.DoCmd.RunMacro('Test', 1, '');
  AP.CloseCurrentDatabase;
user image
more 16 years ago

SaKt!

wahh, aku dah coba spt saran deLogic, tapi muncul pesan error :? "Microsoft Access can't open the database because it is missing, or opened exclusively by another user" Padahal databasenya di local komputerku aja. Aku dah coba trace dgn melihat apakah databasenya sedang dibuka saat run time dan ternyata ga ada juga yang membuka. Menurutku apabila databasenya sedang terbuka maka akan muncul LockFilenya (dg extention ldb). listing programnya sbb: AccessApplication.OpenCurrentDatabase('db\dsppcavl.mdb', false); try AccessApplication.DoCmd.RunMacro('Macro_Import_DBS', 1, ''); finally AccessApplication.CloseCurrentDatabase; Untuk informasi, aku menggunakan delphi 6 dan access 2000
user image
more 16 years ago

deLogic

coba filepath-nya ditulis secara lengkap....
user image
more 16 years ago

SaKt!

Ternyata berhasil, Thanks :wink:
more ...
  • Pages:
  • 1
Share to
Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com