Redvan Ответов: 1

Как сравнить то, что было, с тем, что есть


Привет,

Меня попросили добавить одитинг на экран.

У нас есть приложение в vb, которое отображает сетку. Первый столбец-это кнопка ссылки. При нажатии кнопки LB отображается область сведений со всеми аккуратно организованными полями.

В событии rowcommand для сетки я могу захватить выбранную строку и сохранить ее в сеансе, чтобы иметь данные "до".

После того как пользователь внесет изменения, я полагаю, что мне нужно сохранить данные поля и вызвать метод для сравнения, используя сохраненные данные сеанса как "до" и отображенные (измененные) данные как "после".

Мне было кратко поручено использовать коллекцию и a для каждой следующей процедуры, чтобы сделать это.

Проблема в том, что я немного Новичок во всем этом и не знаю, как собрать все это вместе.

Что я уже пробовал:

Я исследовал онлайн и вскоре обнаружил, что это сложная задача, с которой сталкивались другие, но то, что они делали, было сложнее, чем моя простая сетка. Я не мог найти что-то близкое к моей ситуации, но должен быть простой способ сделать это.

1 Ответов

Рейтинг:
6

JU571C3

из того, что я понял, кажется, что вы хотите увидеть, изменилось ли что-то или нет, так что если это так, то это то, что вы должны сделать:
сначала вы должны создать строку, содержащую "старую" вещь (например, текст) и новую строку
Теперь поместите информацию в одно текстовое поле из базы данных(я предполагаю, что вы знаете, как это сделать, если я ошибаюсь, то используйте этот код:

Dim Str As String
Try
   Str = "update tabel1 set ID="
   Str += """" & TextBox1.Text & """"
   Str += " where ID="
   Str += TextBox1.Text.Trim()
   provider.Open()
   Cmd = New OleDbCommand(Str, provider)
   Cmd.ExecuteNonQuery()
   provider.Close()
   Catch ex As Exception
End Try

)
public sub Form1
dim Str_Old As String
dim Str_Old As String 

Тогда использовать их так же просто, как :
Private Sub Form1 (...) handles Form1.load
Str_Old = TextBox1.Text ' Original data like if you have the things loading on startup to a textbox

Private sub Check_Changed
StrNew = TextBox1.Text
if Str_New <> Str_Old then ' The "<>" means different
' Your code here (The one that is suposed to act if something changed)
Else
' Your code here (The one that is suposed to act if nothing changed)
End If

Теперь вызвать это легко если вы хотите чтобы это действовало при нажатии кнопки то просто поместите это в кнопку:
Check_Changed()

Теперь вы можете идти
Отказ от ответственности: я просто объяснил все шаг за шагом, потому что вы говорите, что вы новичок.