|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - [решено] vb.net правка access файла |
|
|
.NET - [решено] vb.net правка access файла
|
Пользователь Сообщения: 82 |
Профиль | Сайт | Отправить PM | Цитировать Здравствуйте, господа.
Есть файл Card.mdb, содержащий в себе таблицу NumberDisc. В этой таблице, помимо прочих, есть столбцы с названиями Discount и Amount. В ячейках этих столбцов записаны только числа (то есть ни букв, ни спец. знаков там нет). Такова задача: Построчно анализируя информацию в ячейках этих двух, исходя из числа, находящегося в ячейке Amount, менять значение в ячейке Discount по принципу Если Amount больше или равно 1 - Установить Discount = 5, но Если Amount больше или равно 10 - Установить Discount = 10, но Если Amount больше или равно 15 - Установить Discount = 15, и Если Amount больше 20 - Установить Discount = 20 Такие вот дела... |
|
Отправлено: 06:12, 27-04-2015 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать В чём вопрос-то?
|
Отправлено: 08:21, 27-04-2015 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 82
|
Профиль | Сайт | Отправить PM | Цитировать В построении цикла с проверкой числа в ячейке амоунт и, на основании информации из нее, изменением числа в ячейке дискоунт. В контроле ацесса я, мягко говоря, еще не силен. В текстовых файлах это WriteLine, а здесь то что? Мне достаточно один раз увидеть - и я запомню
|
------- Отправлено: 15:09, 27-04-2015 | #3 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать iccup.platoon@vk, здесь работа с множествами. Сложение пересечение и т.д.
Выбор записей из таблиц по условию - SELECT Запись - INPUT и как то так. Если не затруднительно - приложите образец. С нуля пример дико лень писать. |
------- Отправлено: 15:17, 27-04-2015 | #4 |
Пользователь Сообщения: 82
|
Профиль | Сайт | Отправить PM | Цитировать Пример таблицы? Прикреплю. Пример кода? Да я даже с чего начать не знаю =( Вот код того, что постиг:
Большой код
Imports System.Data.OleDb Public Class Form1 Dim str As String Dim Con As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\FS-Reseption\AppData\Local\VirtualStore\Program Files (x86)\Anticafe\base\Card.mdb;Persist Security Info=True;Jet OLEDB:Database Password=dead12345") ' Переменная для подключения базы 'Dim Con As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\base\Card.mdb;Persist Security Info=True;Jet OLEDB:Database Password=dead12345") ' Переменная для подключения базы Dim SqlCom As OleDb.OleDbCommand Dim DT As New Data.DataTable Dim DA As OleDb.OleDbDataAdapter Dim One As Integer Dim Two As Integer Dim BasePath As String Dim Soob As Integer Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load End Sub ' ================== Кнопка на добавление средств Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click SqlCom = New OleDb.OleDbCommand("SELECT * FROM `NumberDisc` WHERE `Number` like '%" & "0001" + TextBox1.Text & "%'", Con) Con.Open() SqlCom.ExecuteNonQuery() DA = New OleDb.OleDbDataAdapter(SqlCom) DA.Fill(DT) Con.Close() On Error Resume Next Me.TextBox2.DataBindings.Add(New Binding("Text", DT, "Name")) Me.TextBox3.DataBindings.Add(New Binding("Text", DT, "Discount")) Me.TextBox4.DataBindings.Add(New Binding("Text", DT, "Telephone")) Me.TextBox5.DataBindings.Add(New Binding("Text", DT, "Bonus")) Soob = MsgBox("Начислить клиенту " & TextBox6.Text & " рублей?", 36, "Подтверждение действия") If Soob = 6 Then 'логирование One = TextBox5.Text Two = TextBox6.Text 'IO.File.AppendAllText("D:/File.txt", DateString & " " & TimeOfDay & vbTab & "Номер карты: " & TextBox1.Text & vbTab & "Зачислено: " & TextBox6.Text & vbTab & "Было: " & One & vbTab & "Стало: " & One + Two & vbCrLf) ' Запись текста из TextBox1 в File.txt IO.File.AppendAllText("\\nas\Docs\DepositLog\Log.txt", DateString & " " & TimeOfDay & vbTab & "Номер карты: " & TextBox1.Text & vbTab & "Зачислено: " & TextBox6.Text & vbTab & "Было: " & One & vbTab & "Стало: " & One + Two & vbCrLf) ' Запись текста из TextBox1 в File.txt 'конец логирования MsgBox("Сумма начислена: " & Two) DT.Clear() SqlCom = New OleDb.OleDbCommand("UPDATE [NumberDisc] SET [Bonus]= " & One + Two & " WHERE `Number` like '%" & TextBox1.Text & "%'", Con) TextBox1.Clear() TextBox6.Clear() Con.Open() SqlCom.ExecuteNonQuery() Con.Close() Else DT.Clear() TextBox1.Clear() TextBox6.Clear() End If End Sub ' ======================== Кнопка снятия денег Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click SqlCom = New OleDb.OleDbCommand("SELECT * FROM `NumberDisc` WHERE `Number` like '%" & "0001" + TextBox1.Text & "%'", Con) Con.Open() SqlCom.ExecuteNonQuery() DA = New OleDb.OleDbDataAdapter(SqlCom) DA.Fill(DT) Con.Close() On Error Resume Next Me.TextBox2.DataBindings.Add(New Binding("Text", DT, "Name")) Me.TextBox3.DataBindings.Add(New Binding("Text", DT, "Discount")) Me.TextBox4.DataBindings.Add(New Binding("Text", DT, "Telephone")) Me.TextBox5.DataBindings.Add(New Binding("Text", DT, "Bonus")) Soob = MsgBox("Снять со счета " & TextBox6.Text & " рублей?", 36, "Подтверждение действия") ' Показываем сообщение, и номер нажатой кнопки записывается в переменную Soob If Soob = 6 Then 'логирование One = TextBox5.Text Two = TextBox6.Text 'IO.File.AppendAllText("D:/File.txt", DateString & " " & TimeOfDay & vbTab & "Номер карты: " & TextBox1.Text & vbTab & "Зачислено: " & TextBox6.Text & vbTab & "Было: " & One & vbTab & "Стало: " & One + Two & vbCrLf) ' Запись текста из TextBox1 в File.txt IO.File.AppendAllText("\\nas\Docs\DepositLog\Log.txt", DateString & " " & TimeOfDay & vbTab & "Номер карты: " & TextBox1.Text & vbTab & "Зачислено: " & TextBox6.Text & vbTab & "Было: " & One & vbTab & "Стало: " & One + Two & vbCrLf) ' Запись текста из TextBox1 в File.txt 'конец логирования MsgBox("Списано средств: " & Two) DT.Clear() SqlCom = New OleDb.OleDbCommand("UPDATE [NumberDisc] SET [Bonus]= " & One - Two & " WHERE `Number` like '%" & TextBox1.Text & "%'", Con) TextBox1.Clear() TextBox6.Clear() Con.Open() SqlCom.ExecuteNonQuery() Con.Close() Else DT.Clear() TextBox1.Clear() TextBox6.Clear() End If End Sub Private Sub DataGridView1_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click SqlCom = New OleDb.OleDbCommand("SELECT * FROM `NumberDisc` WHERE `Number` like '%" & "0001" + TextBox1.Text & "%'", Con) Con.Open() SqlCom.ExecuteNonQuery() DA = New OleDb.OleDbDataAdapter(SqlCom) DA.Fill(DT) Con.Close() On Error Resume Next Me.TextBox2.DataBindings.Add(New Binding("Text", DT, "Name")) Me.TextBox3.DataBindings.Add(New Binding("Text", DT, "Discount")) Me.TextBox4.DataBindings.Add(New Binding("Text", DT, "Telephone")) Me.TextBox5.DataBindings.Add(New Binding("Text", DT, "Bonus")) MsgBox("ФИО: " & TextBox2.Text & vbCrLf & "Скидка: " & TextBox3.Text & vbCrLf & "Номер телефона: " & TextBox4.Text & vbCrLf & "Средства на счету: " & TextBox5.Text) DT.Clear() End Sub Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click DT.Clear() End Sub End Class Тут видно как я костылил с некоторыми вещами... Повесить нужно это всё на Button4. |
|
Последний раз редактировалось iccup.platoon@vk, 27-04-2015 в 15:43. Отправлено: 15:35, 27-04-2015 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата iccup.platoon@vk:
|
|
Отправлено: 15:51, 27-04-2015 | #6 |
Пользователь Сообщения: 82
|
Профиль | Сайт | Отправить PM | Цитировать Ой dead12345
|
------- Отправлено: 16:57, 27-04-2015 | #7 |
Пользователь Сообщения: 82
|
Профиль | Сайт | Отправить PM | Цитировать Up =(
|
------- Отправлено: 00:17, 29-04-2015 | #8 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать iccup.platoon@vk, извини, не добрался. Завтра на большом компьютере постараюсь посмотреть
|
Отправлено: 00:37, 29-04-2015 | #9 |
Пользователь Сообщения: 82
|
Профиль | Сайт | Отправить PM | Цитировать UUuup =((((
|
------- Отправлено: 01:00, 01-05-2015 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
.NET - [решено] Проблема при сохранения файла в vb.net | vitalik8388 | Программирование и базы данных | 7 | 02-05-2012 22:01 | |
.NET - [решено] vb.net чтение конкретной строки файла | RUVATA | Программирование и базы данных | 7 | 19-08-2010 10:21 | |
Прочие БД - Запросы в VB (MS Access) | mxmstrnt | Программирование и базы данных | 0 | 14-04-2008 16:22 | |
.NET - *Теория*(VB.NET || C#.net ) Нужен алгоритм для мини - игры | ssdm | Программирование и базы данных | 11 | 17-05-2007 02:12 | |
Сравнение VB.NET и Visual C++.NET | Commander | Программирование и базы данных | 5 | 09-05-2003 19:05 |
|