Cara Membuat Program SMS Gateway dengan VB Net - Berhubung aku sedang enggan buat menciptakan tulisan atau dokumentasi berkaitan Penerapan SMS Gateway VB.Net bersama Gammu ini sehingga aku Unggah aja Source code nya, Mudah-mudahan berguna utk teman2 seluruh nya.....
Form Login
Source Code Form Login:
Imports MySql.Data.MySqlClient
Public Class LogIn
Private Sub cekKoneksi()
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
' MsgBox("OK")
Catch ex As Exception
MsgBox("Cek Koneksi !")
MyCon.Close()
End Try
End Sub
Private Sub LogIn_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
cekKoneksi()
cboLevel.SelectedIndex = 0
End Sub
Private Sub btnLogIn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogIn.Click
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "select UserName, Pass, Level From tb_user WHERE UserName = RPLACE ('" & txtUserName.Text.Replace("'", "''") & "', '" & txtPassword.Text.Replace("'", "''") & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
MsgBox("Log In Sukses")
If cboLevel.Text = "Admin" Then
Else
End If
btnCancel.PerformClick()
Else
MsgBox("Log In Gagal")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
FormSMS.Show()
End Sub
Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
txtPassword.Text = ""
txtUserName.Text = ""
cboLevel.SelectedIndex = 0
End Sub
End Class
Form SMS Gateway
Source Code Form SMS Gateway:
Imports MySql.Data.MySqlClient
Public Class FormSMS
Private strNm_pel As String
Private strTagihan As String
Private strBulan As String
Private strKd_pel As String
Private strStatus As String
'deklarasi unt pengambilan nilai pada tblinbox
Private strInboxTextSms As String
Private strInboxNoPengirim As String
Private strInboxProses As Boolean
Private strInboxIdSMS As String
Private strHasil As String 'hasil dari balesan cek sms
Private strPesanTextSms As String 'pesan sms yg akn di kirim (dlm autoreply )
Private Sub AllKosong()
rdUnAll.PerformClick()
txtTextSms.Text = ""
'rdBcTagihan.Checked = False
'rdKirimInfo.Checked = False
End Sub
Private Sub kosongPel()
txtAlamat.Text = ""
txtKd_pel.Text = ""
txtNm_Pel.Text = ""
txtTelp.Text = ""
End Sub
Private Sub AktifPel()
txtAlamat.ReadOnly = False
txtKd_pel.ReadOnly = False
txtNm_Pel.ReadOnly = False
txtTelp.ReadOnly = False
End Sub
Private Sub NonAktifPel()
txtAlamat.ReadOnly = True
txtKd_pel.ReadOnly = True
txtNm_Pel.ReadOnly = True
txtTelp.ReadOnly = True
End Sub
Private Sub ListGridPel()
Try
MyCon = New MySqlConnection(strCon)
objDatatable = New DataTable
MyCon.Open()
strSql = "Select * from Tb_pelanggan"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
objDatatable.Load(objReader)
grdPelanggan.DataSource = objDatatable
grdPelanggan.Columns(0).Width = 150
grdPelanggan.Columns(1).Width = 200
grdPelanggan.Columns(2).Width = 250
grdPelanggan.Columns(3).Width = 150
objCommand.Dispose()
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
objReader.Close()
objReader = Nothing
End Try
End Sub
Private Sub KosongTAg()
txtKd_pelTag.Text = ""
txtTagihan.Text = ""
End Sub
Private Sub AktifTAg()
txtKd_pelTag.ReadOnly = False
txtTagihan.ReadOnly = False
End Sub
Private Sub NonAktifTag()
txtKd_pelTag.ReadOnly = True
txtTagihan.ReadOnly = True
End Sub
Private Sub ListGridTag()
Try
MyCon = New MySqlConnection(strCon)
objDatatable = New DataTable
MyCon.Open()
strSql = "Select * from Tb_tagihan"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
objDatatable.Load(objReader)
grdTagihan.DataSource = objDatatable
grdTagihan.Columns(0).Width = 150
grdTagihan.Columns(1).Width = 250
grdTagihan.Columns(2).Width = 250
grdTagihan.Columns(3).Width = 100
objCommand.Dispose()
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
' objReader.Close()
objReader = Nothing
End Try
End Sub
Private Sub listGridNoTujuan()
Try
MyCon = New MySqlConnection(strCon)
objDatatable = New DataTable
MyCon.Open()
strSql = "Select KD_pel,nm_pel, telp FROM tb_pelanggan"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
objDatatable.Load(objReader)
grdTujuan.DataSource = objDatatable
grdTujuan.Columns(0).Width = 150
grdTujuan.Columns(1).Width = 250
grdTujuan.Columns(2).Width = 150
Dim chk As New DataGridViewCheckBoxColumn()
grdTujuan.Columns.Add(chk)
chk.HeaderText = "Check Data"
chk.Name = "chk"
grdTujuan.Rows(2).Cells(3).Value = False
objCommand.Dispose()
Catch ex As Exception
' MsgBox(ex.Message.ToString)
'MsgBox("Check Yang sudah ada datanya")
Finally
MyCon.Close()
MyCon = Nothing
' objReader.Close()
objReader = Nothing
End Try
End Sub
Private Sub listGridInbox()
Try
MyCon = New MySqlConnection(strCon)
objDatatable = New DataTable
MyCon.Open()
strSql = "Select ReceivingDateTime, SenderNumber, TextDecoded, Processed As Process From Inbox ORDER BY ReceivingDateTime DESC "
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
objDatatable.Load(objReader)
grdInbox.DataSource = objDatatable
grdInbox.Columns(0).Width = 170
grdInbox.Columns(1).Width = 130
grdInbox.Columns(2).Width = 790
grdInbox.Columns(3).Width = 70
objCommand.Dispose()
Catch ex As Exception
MsgBox("Error " & ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
End Try
End Sub
Private Sub listGridOutBox()
Try
MyCon = New MySqlConnection(strCon)
objDatatable = New DataTable
MyCon.Open()
strSql = "Select InsertIntoDB, destinationNumber , TextDecoded From outbox ORDER BY InsertIntoDB DESC"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
objDatatable.Load(objReader)
grdOutbox.DataSource = objDatatable
grdOutbox.Columns(0).Width = 150
grdOutbox.Columns(1).Width = 150
grdOutbox.Columns(2).Width = 1000
' grdOutbox.Columns(2).Width = 790
' grdOutbox.Columns(3).Width = 90
objCommand.Dispose()
Catch ex As Exception
MsgBox("Error " & ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
End Try
End Sub
Private Sub AutoReplay()
Dim strSMSKataPertama As String 'hasil pecah kalimat sms
Dim strSMSKataKedua As String 'hasil pecah kalimat sms
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
'mencari sms yg belum d proses (false)
strSql = "select SenderNumber, TextDecoded, ID FROM INBOX Where Processed = 'false'"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
strInboxNoPengirim = objReader(0)
strInboxTextSms = objReader(1)
strInboxIdSMS = objReader(2)
objCommand.Dispose()
'memecah isi sms dan merubah menjadi kapital
Dim ArrayPecahSms() As String = Split(strInboxTextSms, " ")
strSMSKataPertama = ArrayPecahSms(0).ToUpper
strSMSKataKedua = ArrayPecahSms(1).ToUpper
'jika huruf depan AIR
objReader.Close()
If strSMSKataPertama = "AIR" Then
'buat balasan
Dim dtBlnSekarang = Format(Now.Date, "yyyy-MMM")
'ambil data yang akan dikirim ke pelanggan
strSql = "SELECT P.kd_pel, P.nm_pel, T.bulan, T.Tagihan, T.status FROM Tb_pelanggan P INNER JOIN Tb_tagihan T ON P.kd_pel = T.kd_pel WHERE P.kd_pel = '" & strSMSKataKedua.Replace("'", "''") & "' AND T.bulan = '" & dtBlnSekarang & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader
If objReader.HasRows Then
objReader.Read()
strKd_pel = objReader(0)
strNm_pel = objReader(1)
strBulan = objReader(2)
strTagihan = objReader(3)
strStatus = objReader(4)
'format sms
strPesanTextSms = "Tagihan pelanggan " & strKd_pel & " Nama " & strNm_pel & " Bulan " & strBulan & " Sebesar : " & strTagihan & " " & strStatus & ""
Else
strPesanTextSms = "Maaf Kode Pelanggan Tidak benar"
objReader.Close()
End If
Else
strPesanTextSms = "Maaf,Format salah! kirim sms dengan format AIR[spasi]kode pelanggan"
End If
strSql = "INSERT INTO outbox (destinationNumber , TextDecoded) VALUES ( '" & strInboxNoPengirim & "','" & strPesanTextSms & "')"
objCommand = New MySqlCommand(strSql, MyCon)
objCommand.ExecuteNonQuery()
objCommand.Dispose()
'update database
strSql = "UPDATE INBOX set Processed = 'TRUE' WHERE ID = '" & strInboxIdSMS & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objCommand.ExecuteNonQuery()
objCommand.Dispose()
End If
Catch ex As Exception
objReader.Close()
strPesanTextSms = "Maaf Kode Pelanggan Tidak benar"
strSql = "INSERT INTO outbox (destinationNumber , TextDecoded) VALUES ( '" & strInboxNoPengirim & "','" & strPesanTextSms & "')"
objCommand = New MySqlCommand(strSql, MyCon)
objCommand.ExecuteNonQuery()
objCommand.Dispose()
'update database
strSql = "UPDATE INBOX set Processed = 'TRUE' WHERE ID = '" & strInboxIdSMS & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objCommand.ExecuteNonQuery()
objCommand.Dispose()
'MsgBox(ex.Message.ToString)
'Exit Sub
'MsgBox("error insert outbox " & ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
objCommand.Dispose()
objCommand = Nothing
End Try
End Sub
Private Sub TabPage3_ChangeUICues(ByVal sender As Object, ByVal e As System.Windows.Forms.UICuesEventArgs) Handles Data_pel.ChangeUICues
Call ListGridPel()
Call kosongPel()
Call AktifPel()
End Sub
Private Sub FormSMS_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'cek koneksi
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
' MsgBox("OK")
Catch ex As Exception
MsgBox("Cek Koneksi !")
MyCon.Close()
End Try
Call ListGridPel()
Call kosongPel()
Call ListGridTag()
Call listGridNoTujuan()
Call listGridInbox()
Call listGridOutBox()
btnEdit.Enabled = False
btnDelete.Enabled = False
btnEditTag.Enabled = False
btnDeleteTag.Enabled = False
'txtTextSms.ReadOnly = True
End Sub
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
If txtAlamat.Text = "" Or txtKd_pel.Text = "" Or txtNm_Pel.Text = "" Or txtTelp.Text = "" Then
MsgBox("Data Harus Lengkap")
Else
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "Select Kd_pel FROM tb_pelanggan Where kd_pel = '" & txtKd_pel.Text.Replace("'", "''") & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
MsgBox("Duplicate Data")
Else
objCommand.Dispose()
objReader.Close()
strSql = "Insert INTO tb_pelanggan (kd_pel, nm_pel, alamat, telp ) values ('" & txtKd_pel.Text.Replace("'", "''") & "','" & txtNm_Pel.Text.Replace("'", "''") & "', '" & txtAlamat.Text.Replace("'", "''") & "','" & txtTelp.Text.Replace("'", "''") & "')"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
MsgBox("Simpan data, Sukses ")
Else
MsgBox("Simpan Data, Gagal")
End If
End If
objCommand.Dispose()
Catch ex As Exception
'MsgBox(ex.Message.ToString)
Finally
'MyCon.Close()
objReader.Close()
MyCon = Nothing
objReader = Nothing
btnCancel.PerformClick()
End Try
End If
End Sub
Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
Call kosongPel()
Call ListGridPel()
btnEdit.Text = "Edit"
btnSave.Enabled = True
btnEdit.Enabled = False
btnDelete.Enabled = False
Call AktifPel()
End Sub
Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click
If txtAlamat.Text = "" Or txtKd_pel.Text = "" Or txtNm_Pel.Text = "" Or txtTelp.Text = "" Then
MsgBox("Data Harus Lengkap")
Else
If btnEdit.Text = "Edit" Then
btnEdit.Text = "Update"
Call AktifPel()
txtKd_pel.ReadOnly = True
btnSave.Enabled = False
btnDelete.Enabled = False
Else
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "Update tb_pelanggan Set nm_pel = '" & txtNm_Pel.Text.Replace("'", "''") & "', " & _
"Alamat = '" & txtAlamat.Text.Replace("'", "''") & "', " & _
"Telp = '" & txtTelp.Text.Replace("'", "''") & "'" & _
"Where kd_pel = '" & txtKd_pel.Text.Replace("'", "''") & "'"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
MsgBox("Update Data, Sukses !", MsgBoxStyle.Information, "Info")
Else
MsgBox("Update Data, Gagal !", MsgBoxStyle.Information, "Info")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
'MyCon.Close()
MyCon = Nothing
' objReader.Close()
objReader = Nothing
btnCancel.PerformClick()
End Try
End If
End If
End Sub
Private Sub grdPelanggan_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles grdPelanggan.CellClick
Try
txtKd_pel.Text = grdPelanggan.SelectedCells(0).Value
txtNm_Pel.Text = grdPelanggan.SelectedCells(1).Value
txtAlamat.Text = grdPelanggan.SelectedCells(2).Value
txtTelp.Text = grdPelanggan.SelectedCells(3).Value
Call NonAktifPel()
btnSave.Enabled = False
btnEdit.Enabled = True
btnDelete.Enabled = True
Catch ex As Exception
MsgBox("Data Kosong", MsgBoxStyle.Information, "Info")
End Try
End Sub
Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
If txtAlamat.Text = "" Or txtKd_pel.Text = "" Or txtNm_Pel.Text = "" Or txtTelp.Text = "" Then
MsgBox("Data Harus Lengkap")
Else
If btnDelete.IsHandleCreated Then
Dim pesan As String
pesan = MsgBox("Anda yakin Akan Meghapus data Ini ?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Info")
If pesan = vbYes Then
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "Delete From tb_pelanggan WHERE kd_pel = '" & txtKd_pel.Text & "'"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
MsgBox("Data Telah Dihapus")
Else
MsgBox("Gagal Menghapus data ")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
'MyCon.Close()
MyCon = Nothing
'objReader.Close()
objReader = Nothing
btnCancel.PerformClick()
End Try
End If
End If
End If
End Sub
Private Sub btnSaveTag_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSaveTag.Click
If txtTagihan.Text = "" Or txtKd_pelTag.Text = "" Then
MsgBox("Data Harus Lengkap")
Else
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "Select Kd_pel, bulan FROM tb_tagihan Where kd_pel = '" & txtKd_pelTag.Text.Replace("'", "''") & "' AND Bulan = '" & CStr(Format(dtTagihan.Value, "yyyy-MMM")) & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader(CommandBehavior.Default)
If objReader.HasRows Then
objReader.Read()
MsgBox("Duplicate Data")
Else
objCommand.Dispose()
objReader.Close()
strSql = "Insert INTO tb_tagihan (kd_pel, tagihan, bulan, status ) values ('" & txtKd_pelTag.Text.Replace("'", "''") & "','" & txtTagihan.Text.Replace("'", "''") & "', '" & CStr(Format(dtTagihan.Value, "yyyy-MMM")) & "', 'Unchecked')"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
MsgBox("Simpan data, Sukses ")
Else
MsgBox("Simpan Data, Gagal")
End If
End If
objCommand.Dispose()
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
MyCon.Close()
objReader.Close()
MyCon = Nothing
objReader = Nothing
btnCancelTag.PerformClick()
End Try
End If
End Sub
Private Sub btnEditTag_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditTag.Click
If txtTagihan.Text = "" Or txtKd_pelTag.Text = "" Then
MsgBox("Data Harus Lengkap")
Else
If btnEditTag.Text = "Edit" Then
btnEditTag.Text = "Update"
Call AktifTAg()
txtKd_pel.ReadOnly = True
btnSave.Enabled = False
btnDelete.Enabled = False
Else
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "Update tb_tagihan Set tagihan = '" & txtTagihan.Text.Replace("'", "''") & "', " & _
"bulan = '" & CStr(Format(dtTagihan.Value, "yyyy-MMM")) & "'" & _
"Where kd_pel = '" & txtKd_pelTag.Text.Replace("'", "''") & "'"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
MsgBox("Update Data, Sukses !", MsgBoxStyle.Information, "Info")
Else
MsgBox("Update Data, Gagal !", MsgBoxStyle.Information, "Info")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
'MyCon.Close()
MyCon = Nothing
'objCommand.Dispose()
objCommand = Nothing
btnCancelTag.PerformClick()
End Try
End If
End If
End Sub
Private Sub btnDeleteTag_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDeleteTag.Click
If txtTagihan.Text = "" Or txtKd_pelTag.Text = "" Then
MsgBox("Data Harus Lengkap")
Else
Dim pesan As String
pesan = MsgBox("Anda yakin Akan Meghapus data Ini ?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Info")
If pesan = vbYes Then
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "Delete From tb_tagihan WHERE kd_pel = '" & txtKd_pelTag.Text & "'"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
MsgBox("Data Telah Dihapus")
Else
MsgBox("Gagal Menghapus data ")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
'MyCon.Close()
MyCon = Nothing
objReader.Close()
objReader = Nothing
btnCancelTag.PerformClick()
End Try
End If
End If
End Sub
Private Sub btnCancelTag_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelTag.Click
Call KosongTAg()
Call ListGridTag()
btnEditTag.Text = "Edit"
btnSaveTag.Enabled = True
btnEditTag.Enabled = False
btnDeleteTag.Enabled = False
Call AktifTAg()
End Sub
Private Sub grdTagihan_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles grdTagihan.CellClick
Try
txtKd_pelTag.Text = grdTagihan.SelectedCells(0).Value
txtTagihan.Text = grdTagihan.SelectedCells(1).Value
dtTagihan.Value = CDate(grdTagihan.SelectedCells(2).Value)
Call NonAktifTag()
btnSaveTag.Enabled = False
btnEditTag.Enabled = True
btnDeleteTag.Enabled = True
Catch ex As Exception
MsgBox("Data kosong", MsgBoxStyle.Information, "Info")
End Try
End Sub
Private Sub KirimInfo()
For i As Integer = 0 To grdTujuan.RowCount - 2
Dim noTuj As String
'mengambil no yg dipilih dg checkbox
If grdTujuan.Rows(i).Cells(3).Value = True Then
noTuj = grdTujuan.Rows(i).Cells(2).Value
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "INSERT INTO outbox (destinationNumber , TextDecoded, CreatorId) VALUES ( '" & noTuj & "','" & txtTextSms.Text.Replace("'", "''") & "','Gammu')"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
' MsgBox("Pesan Telah Dikirim")
Else
MsgBox("Pesan Gagal Dikirim")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
objCommand.Dispose()
objCommand = Nothing
End Try
End If
Next
End Sub
Private Sub kirimTagihan()
For i As Integer = 0 To grdTujuan.RowCount - 2
Dim noTuj As String
'mengambil no yg dipilih dg checkbox
If grdTujuan.Rows(i).Cells(3).Value = True Then
noTuj = grdTujuan.Rows(i).Cells(2).Value
MsgBox("" + noTuj)
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "SELECT P.kd_pel, P.nm_pel , T.bulan, T.tagihan FROM tb_pelanggan P INNER JOIN Tb_tagihan T ON P.kd_pel = T.kd_pel WHERE p.telp = '" & CStr(noTuj) & "'"
objCommand = New MySqlCommand(strSql, MyCon)
objReader = objCommand.ExecuteReader
If objReader.HasRows Then
objReader.Read()
strKd_pel = CInt(objReader(0))
strNm_pel = CInt(objReader(1))
strBulan = CInt(objReader(2))
strTagihan = CInt(objReader(3))
'MsgBox("" + CStr(kd) + CStr(nm) + CStr(bulan))
Else
MsgBox("Pesan Gagal Dikirim")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
objCommand.Dispose()
objCommand = Nothing
End Try
Dim pesan As String = "Tagihan Pelanggan " & strKd_pel & strNm_pel & "bulan" & strBulan & "Adalah Sebesar" & strTagihan & ""
Try
MyCon = New MySqlConnection(strCon)
MyCon.Open()
strSql = "INSERT INTO outbox (destinationNumber , TextDecoded, CreatorId) VALUES ( '" & noTuj & "','" & pesan & "','Gammu')"
objCommand = New MySqlCommand(strSql, MyCon)
If objCommand.ExecuteNonQuery Then
' MsgBox("Pesan Telah Dikirim")
Else
MsgBox("Pesan Gagal Dikirim")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
Finally
MyCon.Close()
MyCon = Nothing
objCommand.Dispose()
objCommand = Nothing
End Try
End If
Next
End Sub
Private Sub btnKirim_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKirim.Click
'cek no tujuan sudah d cheked atau belum
Dim noTujuan As Boolean
For i As Integer = 0 To grdTujuan.Rows.Count - 2
noTujuan = grdTujuan.Rows(i).Cells(3).Value
Next
If txtTextSms.Text = "" Then
MsgBox("Tulis pesan anda", MsgBoxStyle.Information + MsgBoxStyle.Critical, "Info")
Else
Call KirimInfo()
Call AllKosong()
Call listGridInbox()
Call listGridOutBox()
End If
End Sub
Private Sub checkAll_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdAll.CheckedChanged
If rdAll.Checked = True Then
For i As Integer = 0 To grdTujuan.Rows.Count - 2
grdTujuan.Rows(i).Cells(3).Value = True
Next
End If
End Sub
Private Sub checkUn_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdUnAll.CheckedChanged
If rdUnAll.Checked = True Then
For i As Integer = 0 To grdTujuan.Rows.Count - 2
grdTujuan.Rows(i).Cells(3).Value = False
Next
End If
End Sub
'Private Sub rdKirimInfo_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
' If rdKirimInfo.Checked = True Then
' txtTextSms.ReadOnly = False
' End If
'End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Call AutoReplay()
Call listGridInbox()
Call listGridOutBox()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
'agar bisa berjalan secara otomatis setiap 1 detik (interval 1000)
'lblJam.Text = Format(Now.Date, "dd:MM:yyyy - hh:mm:ss")
Call AutoReplay()
Call listGridInbox()
Call listGridOutBox()
End Sub
Private Sub txtCekPulsa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtCekPulsa.Click
Dim myProses As New Process
Process.Start("c:\gammu\gammu -c gammurc -s 0 getussd *123#")
' C:\Gammu\bin
myProses.Close()
MsgBox("" & strHasil, MsgBoxStyle.Information, "Pulsa")
End Sub
Private Sub txtTextSms_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtTextSms.TextChanged
'menghitung jumlah karakter dlm textbox
lblkarakter.Text = txtTextSms.Text.Count & " Karakter"
'menghitung jumlah kta dlm textbox
Dim kata() As String = txtTextSms.Text.Split(" ")
lblkata.Text = kata.Length & " Kata"
End Sub
End Class
Download Source Code Program Aplikasi SMS Gateway:

0 komentar:
Posting Komentar