Tulisan yang lalu sempat membahas teknik mengambil data dari suatu database dengan bahasa Matlab. Berikutnya adalah dari data yang diambil tersebut akan kita gunakan untuk perhitungan. Permasalah yang muncul adalah teknik mengkonversi data karena data yang diambil lewat instruksi “select” pada Visual Query Builder adalah tipe “cell”. Anggaplah Anda sudah membuat ODBC dari suatu database (Access, MySQL, dll) di windows. Buka Visual Query Builder Anda lalu koneksikan disertai perintah sql “Select”. Beri nama variabel keluaran Matlab di workspace-nya “a”.
Setelah ditekan tombol “execute” maka di workspace Anda menjumpai suatu variabel “a” yang jika diketik pada Command Window muncul:
>> a
a =
‘001’ ‘bata’ ‘550’
‘002’ ‘pasir’ ‘300000’
‘003’ ‘koral’ ‘200000’
‘004’ ‘semen’ ‘55000’
Misal kita diminta menjumlahkan harga bata dengan harga pasir (550 + 300000). Jika langsung menggunakan instruksi a(1,3)+a(2,3) akan muncul pesan error: ??? Undefined function or method ‘plus’ for input arguments of type ‘cell’. Itu tandanya Matlab menolak karena yang dijumlahkan bukan numerik. Ikuti langkah berikut ini untuk melakukan konversi.
Gunakan instruksi “cell2mat” untuk merubah format “cell” dari database menjadi format “mat”. Perhatikan instruksi pada command window di bawah ini:
>> bata=str2num(cell2mat(a(1,3))) % merubah cell ke mat dilanjutkan ke numerik !!!
bata =
550
>> pasir=str2num(cell2mat(a(2,3)))
pasir =
300000
>> bata+pasir
ans =
300550
Bagaimana melakukannya di GUI (Form)? Itu ceritanya lain lagi .. tapi prinsip konversi tipe datanya tetap sama.
mas, mau tanya tentang validasi input
misalnya kita cuma mau inputan kita angka aja gmn caranya?d
misalnya ada edit text yg menunggu user memasukan angka volume, di m-file bisa kita ketik:
volume = str2double(get(hObject, ‘String’));
if isnan(volume)
set(hObject, ‘String’, 0);
errordlg(‘Masukan dengan Bilangan’,’Salah Input’);
end
% Menyimpan
handles.metricdata.volume = volume;
guidata(hObject,handles)
makasih mas, masalah udah beres
tapi ada satu problem lagi
seandainya ada dua edit text kosong, edit_1 sama edit_2, dan ada button proses penjumlahan untuk kedua edit text tersebut
seandainya saat gui baru di jalankan, dan kita blm menginputkan angka pada edit text tersebut, kita menekan button proses, untuk validasi input yang nilainya belum di inputkan gmn mas?
makasih mas