COMPARAR DADOS

GUIGOR 19/06/2015 21:59:44
#447926
boa noite amigos
preciso da ajuda de vcs, é o seguinte eu tenho um cadastro de produto onde existem varias informações então o que preciso e quando o usuario efetuar a alteração de um determinado item eu saiba que foi alterado e gravar em uma tabela então eu to fazendo assim:

quando o usuario clica no grid eu capturo os dados da seguinte forma:

[ô]Caputura Valores dos Imposto
Captura_CST = GridProdutos.SelectedItem.SubItems(23)
Captura_ICME = GridProdutos.SelectedItem.SubItems(2)
Captura_ICMS = GridProdutos.SelectedItem.SubItems(3)
Captura_CodTrib = GridProdutos.SelectedItem.SubItems(4)
Captura_CodTribPDV = GridProdutos.SelectedItem.SubItems(5)
Captura_CSTPisCofinsEntrada = GridProdutos.SelectedItem.SubItems(26)
Captura_CSTPisCofinsSaida = GridProdutos.SelectedItem.SubItems(27)
Captura_AliqPisEntrada = GridProdutos.SelectedItem.SubItems(28)
Captura_AliqPisSaida = GridProdutos.SelectedItem.SubItems(29)
Captura_AliqCofinsEntrada = GridProdutos.SelectedItem.SubItems(32)
Captura_AliqCofinsSaida = GridProdutos.SelectedItem.SubItems(33)
Captura_NatRecPisCoFins = GridProdutos.SelectedItem.SubItems(34)
Captura_NCM = GridProdutos.SelectedItem.SubItems(35)

e quando o usuario clica no botao confirmar eu tenho que neste exato momento saber como proceder o valor que ta na variavel captura e o que esta no respectivos campos e ai que ta o problema nao sei como fazer ja tentei assim mais nao funcionou


If Captura_CST <> TxtCSTICMS Or Captura_ICME <> TxtICME Or Captura_ICMS <> TxtICMS Or Captura_CodTrib <> TxtCodTrib Or Captura_CodTribPDV <> TxtCodTribPDV Or Captura_CSTPisCofinsEntrada <> TxtCSTPIS Or Captura_CSTPisCofinsSaida <> txtcstPissaida Or Captura_AliqPisEntrada <> TxtPercPisEntrada Or Captura_AliqPisSaida <> TxtPercPisSaida Or Captura_AliqCofinsEntrada <> TxtPercCofinsEntrada Or Captura_AliqCofinsSaida <> TxtPercCofinsSaida Or Trim(Captura_NatRecPisCoFins) <> Trim(TxtNatReceitaPisCofins) Or Captura_NCM = TxtNCM Then


GrabadadosNaTabela

End If



desde ja muito obrigado


ASHKATCHUP 22/06/2015 09:42:07
#448002
Geralmente os componentes do tipo GRID possuem um evento chamado [Ô]OnChange[Ô] ou algo semelhante. Tu pode criar uma variável do tipo boolean e deixar ela TRUE nesse evento. Além disso, qnd tu carregar os dados do banco de dados, tu coloca ela como FALSE.

Por fim, é só fazer o teste na hora de salvar (if Variabel = True then).
FILMAN 22/06/2015 13:13:54
#448013
Minha dica é colorir a linha caso haja uma alteração!

Você está usando qual grid? E a linguagem é VB/VBA mesmo?
GUIGOR 05/07/2015 12:39:25
#448482
uso o listview e uso vb6
OMAR2011 05/07/2015 20:20:03
#448484
Fiz um pequeno exemplo, este é o código de teste.
Clica no listview
Private Sub Lvped_Click()
Text1.Text = Lvped.selectedItem [ô]codigo de autonumeração
Text2.Text = Lvped.selectedItem.ListSubItems.item(3).Text
Text3.Text = Lvped.selectedItem.ListSubItems.item(4).Text
Text4.Text = Lvped.selectedItem.ListSubItems.item(5).Text
captura_valor = Lvped.selectedItem.ListSubItems.item(3).Text
Captura_ICME = Lvped.selectedItem.SubItems(4)
Captura_ICMS = Lvped.selectedItem.SubItems(5)
End Sub

Private Sub Command10_Click()
[ô]As variáveis declarei com currency
Dim sql As String
sql = [Ô]Insert into Suatabela(preco,ICME,ICMS) values([ô][Ô] & Text2.Text & [Ô][ô],[ô][Ô] & Text3.Text & [Ô][ô],[ô][Ô] & Text4.Text & [Ô][ô])[Ô]
If captura_valor <> Text2.Text Or Captura_ICME <> Text3.Text Or Captura_ICMS <> Text4.Text Then
con.Execute (sql)
MsgBox [Ô]Gravado[Ô]
Else
MsgBox [Ô]nada alterado[Ô]
End If
End Sub
Pode fazer semelhante que vai dar certo.
Olhe a variável, de acordo o que vai armazenar.
Tópico encerrado , respostas não são mais permitidas