Arsip: Get TDBEdit Value Menggunakan LookUp Grid
more 12 years ago
lukersgn
Dear Guys,
Salam Delphi,
Gmn yah cara mengambil nilai dari lookup form yg menggunakan TcxGrid, untuk dimasukkan ke bbrp DBEdit, saya sudah coba, tapi mengalami error terus. (seperti pada gambar).
Berikut code waktu doubleclick gridnya :
procedure TFormSearchBank.cxGrid1DBTableView1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
FormMissionOrder.edBankName.Text := qSearchBank.FieldByName('BANK_NAME').AsString;
FormMissionOrder.edAccountName.Text := qSearchBank.FieldByName('ACCOUNT_NAME').AsString;
FormMissionOrder.edAccountNo.Text := qSearchBank.FieldByName('ACCOUNT_NR').AsString;
Close;
end;
Terima kasih atas pencerahannya.
more 12 years ago
lukersgn
Errornya begini Mas,,
"Access violation at address 009ABAD8 in module 'Sysapp.exe. Read of address 00000464"
terima kasih buat pencerahannya.
more 12 years ago
theodorusap
Mohon ijin comment
Gunakan TStringlist sebagai penyimpan data universal.
- Hasil lookup disimpan ke TStringList,
- Isi TStringList dipindahkan ke Edit
Untuk Lookup Form :
Unit USearchBank;
......
interface
......
FormSearchBank = class(TFormSearchBank)
......
private
FOutputList : Tstrings;
....
Public
Function ExecuteLookup(Title,SQL:String; aOutput:TStrings):Boolean;
End;
implementation
.......
{TFormSearchBank}
....
Function TFormSearchBank.ExecuteLookup(Title,SQL:String; aOutput:TStrings):Boolean;
begin
FOutput:=aOutput;
Caption:=Title;
//Inisialisasi SQL ke qSearchBank dan cxGrid1DBTableView1 di sini
//misalnya :
qSearchBank.CommandText:=SQL;
qSearchBank.Open;
Result:=ShowModal=MROK; {<<-- kalo lookupnya pake Modal}
end;
.....
procedure TFormSearchBank.cxGrid1DBTableView1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
var
I:Integer;
begin
//Simpan hasil pilihan ke Output Tstrings
FOutputList.Clear;
For I:=0 to qSearchBank.FieldCount-1 do
FOutputList.Values[qSearchBank.Fields.Fields[i].FieldName] := qSearchBank.Fields.Fields[i].AsString;
ModalResult:=MROK; //<--sekali lagi, kalo pake modal
end;
....
End.[/code:1:e0930368e0]
Sementara di FormMissionOrder, misalnya lookup pada saat click Button 1, maka :
[code:1:e0930368e0]......
Implementation
uses ...., TFormSearchBank, ...; {tambahkan TFormSearchBank ke uses}
procedure FormMissionOrder.Button1Click(Sender:TObject);
var
F:TFormSearchBank;
SQL:String;
outputList:Tstrings;
begin
F:=TFormSearchBank.Create(Application);
outputList:TstringList.Create;
try
SQL:='Select * from ........';
if F.ExecuteLookup('Pilih Bank',SQL,aOutput) then
begin
//set output lookup ke Edit
edBankName.Text := outputList.Values['BANK_NAME'];
edAccountName.Text := outputList.Values['ACCOUNT_NAME'];
edAccountNo.Text := outputList.Values['ACCOUNT_NR'];
end;
finally
outputList.Free;
F.free;
end;
end;
//=========================================\\
Dengan cara seperti ini, FormSearchBank bisa digunakan sebagai
universal lookup form, bukan hanya bank saja.
Mudah-mudahan membantu.
more 12 years ago
theodorusap
sedikit revisi postingan ane :
bagian ini :
if F.ExecuteLookup('Pilih Bank',SQL,aOutput) then
seharusnya :
if F.ExecuteLookup('Pilih Bank',SQL,outputList) then
more 12 years ago
lukersgn
untuk proses ambil datanya sudah bisa dan muncul di DBEditnya bro, tapi waktu disave menggunakan DBNavigator, datanya ga masuk bro,
kira-kira kurang dmn yah?
Thanks bro.
more 12 years ago
theodorusap
jadi edBankName, edAccountName, edAccountNo itu jenisnya DBEdit bukan TEdit?
Kalo TEdit langsung aja edBankName.Text:=...................
Tapi kalo jenisnya DBEdit, prosesnya g seperti itu gan.
Cek dulu, apakan edBankName sudah dilink ke Datasource dan Dtasource sudah link ke Dataset.
Kalo belum, mesti dibuat rutin untuk simpan ke Database atau dilink dulu.
kalo sudah link, sebelum masukin, ubah dataset yang digunakan untuk link ke edBankName, edAccountName, dan edAccountNo ke mode edit sebelum diset.
Misalnya edBankName, edAccountName, dan edAccountNo link ke dataset yang sama maka :
if F.ExecuteLookup('Pilih Bank',SQL,aOutput) then
begin
//set output lookup ke Edit
ededBankName.Datasource.Dataset.edit; //atau append untuk tambah record baru
try
edBankName.Field.AsString := outputList.Values['BANK_NAME'];
edAccountName.Field.AsString := outputList.Values['ACCOUNT_NAME'];
edAccountNo.Field.AsString := outputList.Values['ACCOUNT_NR'];
edBankName.Datasource.Dataset.Post;
except
//gagal simpan
edBankName.Datasource.Dataset.cancel;
end;
end;
more ...
- Pages:
- 1
- 2
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 4 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- membuat no urut di dbgrid1 bagaimana yaa?
by mully in MySQL more 17 years ago - tolong donk algoritma permutasi dan substitusi
by woko in Tip n Trik Pemrograman more 15 years ago - tanya.....aplikasi dibuat client server
by Iansx in Hal umum tentang Pascal Indonesia more 17 years ago - ngambil tanggal untuk faktur otomatis
by khumaedy in Tip n Trik Pemrograman more 16 years ago - User Login pada status bar
by yanuar1087 in Hal umum tentang Pascal Indonesia more 12 years ago - Find Nearest di mySQL ???
by BorlandMania in MySQL more 16 years ago - Cara Null + Numeric dg query?
by ZeAL in MsSQL more 18 years ago - transfer waktu ke SQL
by coacoac in Tip n Trik Pemrograman more 17 years ago - ReportBuilder + Teechart Support
by wildan_m in Reporting more 15 years ago - Icon berubah saat di klik
by felly in Kritik & Saran more 15 years ago