Share this topic on FacebookShare this topic on MySpaceShare this topic on Del.icio.usShare this topic on DiggShare this topic on StumbleUponShare this topic on TwitterShare this topic on GoogleShare this topic on Yahoo

Author Topic: Edit data pada grid yg recordsourcenya berasal dari cursor  (Read 685 times)

0 Members and 1 Guest are viewing this topic.

Offline yaxer

  • Newbie
  • *
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 20
Edit data pada grid yg recordsourcenya berasal dari cursor
« on: January 09, 2010, 09:44:03 AM »
para master yang budiman..
saya punya masalah Bagaimana cara menyimpan value yg telah di edit pd textbox dengan kondisi sbb :
1. saya telah membuat sebuah CURSOR dengan segala kondisinya (SELECT, WHERE,
    ORDER, dll)yg sy gunakan untuk mensearch data pada tabel pelanggan.

2. CURSOR tersebut dipakai menjadi RecordSource pada sebuah GRID,
   sehingga data yg tampil di grid row 1 adalah data pd tabel pelanggan yg ingin saya edit.(misal baris ke-2 pd tabel pelanggan)

3. saya menggunakan beberapa textbox untuk mengedit data yg ditampilkan pda grid1 diatas
4. pada cmdsimpan sy menggunakan perintah> replace nama with thisform.text1.value..dst

Masalah yg saya hadapi adalah (misalnya yg mau diedit pelanggan yg berada pd baris ke-2 atau baris ke-3..dst pada tabel pelanggan)ketika saya mengklik cmdsimpan, maka yg berubah hanyalah baris ke-1 pd tabel pelanggan..
sy jadi bingung karena ini pengalaman sy yg pertama mengedit data dengan menggunakan cursor yg recordsourcenya
ditampilkan digrid..Apakah sy salah menulis codenya..?

mohon pencerahannya...
thx

Offline poison

  • Hero Member
  • *
  • Thank You
  • -Given: 14
  • -Receive: 9
  • Posts: 712
  • Poison 4 Women
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #1 on: January 09, 2010, 10:13:31 AM »
tahap pertama :
- perlu dipahami / diperlajari mengenai PK (primary Key),ini yang memegang peranan penting dalam editing data..
- perlu dipahami / diperlajari (lagi... :icon_biggrin:) : cursor merupakan data terpisah dari data utama, bersifat temporary

tahap kedua :
- saat load data ke grid (buat searching) jangan lupa mengikutkan Primary Key (ni jika PK dah ada)
- saat memindah data di grid ke text box (untuk diedit) jangan lupa PK tersebut dicatat, bisa pake variable ato properties form..
- saat simpan data hasil edit, coba pake SPT...semisal
Code: [Select]
update Table_Pelanggan set nama = thisform.txtNamaPelanggan WHERE pkPelanggan = thisform.pkPelanggan


***
semoga membantu
think BIG to get BIG
http://poison.site88.net

Offline yaxer

  • Newbie
  • *
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 20
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #2 on: January 09, 2010, 11:26:23 AM »
apakah primary key itu sama dengan index yg sy buat pada saat pembuatan tabel?

Offline need_help

  • Senior Member
  • *
  • Thank You
  • -Given: 15
  • -Receive: 5
  • Posts: 565
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #3 on: January 09, 2010, 11:48:06 AM »
apakah primary key itu sama dengan index yg sy buat pada saat pembuatan tabel?

iya.
tapi type nya dari reguler di ganti primary
malu bertanya sesat di jalan banyak bertanya malu2 in...pilih mana hayo?

Offline yaxer

  • Newbie
  • *
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 20
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #4 on: January 09, 2010, 12:07:54 PM »
ok mas..
berarti field no_pel yg sy jadikan sebagai primary key..mohon sy diberi contoh bagaimana memasukkan primary key pada cursor yg sy gunakan untuk mnsearhing data ke grid1..berikut code cursor yg sy gunakan utk searching data :
thisform.grid1.RecordSource=""
xcari=UPPER(ALLTRIM(thisform.text13.Value))
thisform.grid1.RecordSource=''
lcFind = '%'+alltrim(xcari)+'%'
SELECT * FROM pelanggan WHERE UPPER(nama) like lcFind ORDER BY nama INTO CURSOR cDisplayData
thisform.grid1.RecordSource="cDisplayData"
mohon pencerahannya sekali lagi...
thx for your help.

Offline davidmustakim

  • Fox-id M.V.P
  • Hero Member
  • *
  • Thank You
  • -Given: 1
  • -Receive: 22
  • Posts: 4599
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #5 on: January 09, 2010, 02:17:21 PM »
Sebenarnya masalah anda tidak terlalu berhubungan dengan key-key-an, entah itu primary atau apa. Kalau anda niatnya merubah record ke 3 atau ke 4 tetapi yang terubah adalah record 1 maka itu artinya SEDERHANA: RECORD POINTER SAAT ITU MEMANG SEDANG BERADA DI RECORD 1 !!!

Masalahnya: Gimana memastikan record pointer berada pada record yang tepat ?
Jawabnya juga SEDERHANA: controlsource textbox di-set ke field yang sesuai lalu pastikan nembak command THISFORM.REFRESH() sebelum meng-edit.

Offline yaten

  • Full Member
  • *
  • Thank You
  • -Given: 0
  • -Receive: 1
  • Posts: 51
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #6 on: January 28, 2010, 07:56:37 AM »
coba :
1.  anda sediakan satu form dengan grid dan textbox lainnya
2. data dari cursor ditampilkan di grid ( select * .. READWRITE )-> biar cursor bs diedit
3.  begitu anda klik di grid maka data yang digrid akan ditampilkan di textbox ( jgn lupa   kode pelangganya diikutkan juga )
4.  lalu anda melakukan ditextbox
5. simpan data
6. replace di grid dengan data yang ditextbox selanjutnya cari data di pelanggan berdasarkan data di textbox (kode pelanggan) lalu replace

mgkn ini bisa membantu ?..

Offline onytoo

  • Fox-id M.V.P
  • Junior Member
  • *
  • Thank You
  • -Given: 7
  • -Receive: 45
  • Posts: 230
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #7 on: January 28, 2010, 08:34:50 PM »
coba nih:

1. pada perintah sql 'SELECT ....' pastikan untuk mengikut sertakan field kunci (key)
    ex:
    SELECT kode,nama FROM tabel_pelanggan WHERE blabla ORDER BY blabla INTO CURSOR cursor_pelanggan
    disini kita anggap kode adalah field kuncinya

2. setelah tampil di grid, maka setiap row pada grid pasti ada nilai key-nya kan (meski tidak ditampilkan
    di salah satu column-nya), dan kamu pilih salah satu row-nya.
Quote
Masalahnya: Gimana memastikan record pointer berada pada record yang tepat ?
Jawabnya juga SEDERHANA: controlsource textbox di-set ke field yang sesuai lalu pastikan nembak command THISFORM.REFRESH() sebelum meng-edit.

   maksud om David disini adalah:
   pada control textbox atau apalah set property controlsource-nya sesuai dengan nama field di cursor_pelanggan
   sehingga apapun yang kamu lakukan terhadap nilai di control tersebut, field pada row / record yang aktif pasti
   akan ikut berubah secara otomatis. (betul begitu om David?)

3. klo mau simpan ke tabel_pelanggan :

     UPDATE tabel_pelanggan [ SET nama_field1=nilai1 [ , .... ] ] ;
       WHERE nama_field_kunci = cursor_pelanggan.nilai_kunci
   
    atau
   
    SELECT tabel_pelanggan
    REPLACE nama_field1 WITH nilai1 [ ,.... ] FOR nama_field_kunci = cursor_pelanggan.nilai_kunci
    * jika ingin ke grid lagi
    * SELECT cursor_pelanggan

     ( ingat! tabel_pelanggan bukan cursor_pelanggan )

mudah2an mengerti dan semoga berhasil

Offline davidmustakim

  • Fox-id M.V.P
  • Hero Member
  • *
  • Thank You
  • -Given: 1
  • -Receive: 22
  • Posts: 4599
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #8 on: January 28, 2010, 11:16:31 PM »
yang saya maksud, intinya: kalau mau ubah record 3 pastikanlah yang sedang dihadapi adalah record tsb, bukan asal nembak command replace tanpa peduli record pointer sedang berada dimana... jadi semua itu tidak ada hubungan dengan primary key atau apapun key-key-an !

Offline harry_buana

  • Junior Member
  • *
  • Thank You
  • -Given: 0
  • -Receive: 0
  • Posts: 365
  • every one has its own capability
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #9 on: January 29, 2010, 08:20:48 AM »
Dear Yaxer,

kamu menampilkan data di grid, dan mengeditnya menggunakan textbox. pertanyaan saya kenapa harus begitu? kenapa tidak langsung edit di grid saja, khan jadi lebih mudah.
selanjutnya pada saat kamu tampilkan data digrid apakah record source-nya sudah sama dengan control source di textbox yang kamu akan gunakan untuk editnya?.
karena jika sumber datanya sama, maka pada saat kamu move ke row#2 maka di textbox untuk edit juga pasti akan langsung menampilkan data di row#2.

so, coba di cek kembali, jika masih belum bisa jangan sungkan bertanya.
** malu bertanya sesat di jalan **

Regards,

-seeker-

Offline davidmustakim

  • Fox-id M.V.P
  • Hero Member
  • *
  • Thank You
  • -Given: 1
  • -Receive: 22
  • Posts: 4599
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #10 on: January 29, 2010, 12:14:58 PM »
itu kalo controlsource textbox = tabel/field yang sama dengan recordsource grid, dan pada afterrowcolumnchage grid ada koding "thisform.refresh"

Offline ganaz

  • Junior Member
  • *
  • Thank You
  • -Given: 3
  • -Receive: 1
  • Posts: 225
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #11 on: January 29, 2010, 01:20:31 PM »
oh jadi inti pertanyaan ini bagaimana edit/entry data dimana data aslinya ada di dalam tabel terus di tampilkan di textbox record yang dipilih itu.
wes....wes... ra mudeng2 aku
pada object grid kemudian procedure after row col changes
masukkan ini
Code: [Select]
**umpama nama pelanggan yang ingin di edit
thisform.text1.value=id_pelanggan
thisform.text2.value=pelanggan
dari perintah tersebut sudah bisa dipastikan record yang ditampilkan di textbox itu adalah record yang anda pilih saat menaruh cursor mouse ke grid

kemudian untuk perintah simpan, update dll anda bisa sesuiakan dengan kemampuan anda asalkan jangan lupa yang disampaikan mas poison KEY FIELD nya
Thank'z


Ganaz

Offline davidmustakim

  • Fox-id M.V.P
  • Hero Member
  • *
  • Thank You
  • -Given: 1
  • -Receive: 22
  • Posts: 4599
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #12 on: February 26, 2010, 03:25:04 PM »
untuk textbox harusnya yang diset adalah property controlsource, bukan .value, dan event afterrowcolchange grid tinggal lakukan thisform.refresh()

Offline kc2

  • Junior Member
  • *
  • Thank You
  • -Given: 1
  • -Receive: 0
  • Posts: 141
  • jari tanganku
Re: Edit data pada grid yg recordsourcenya berasal dari cursor
« Reply #13 on: February 27, 2010, 08:26:47 AM »
Kayae solved tuh
yaxer « Reply #4 on: January 09, 2010, 01:07:54 PM » sampe skr g' nongol2 lagi