UPDATE TABELA
Olá pessoal, estou tentando montar um aplicativo de manutenção de locais de trabalho de funcionários (Setores). Para jogar o ou os funcionários de um setor para outro estou usando um combo1 de seleção do setor de origem que exibe o s funcionários em um List1 logo abaixo e em um combo2 seleciono o setor de destino e em um List2 abaixo onde são jogados o ou os funcionários com command buttons para o setor de destino. O que não estou conseguindo fazer é atualizar (UPDATE) a tabela que contém as informações de locais dos funcionários. Para entender melhor segue:
Para carregar os combos:
-----------------------------
Public Sub carregacombo1()
Dim sql As String
sql = [Ô]SELECT * FROM tbSetor ORDER BY Descricao[Ô]
rs1.Open sql, conn, adOpenStatic
Do While Not rs1.EOF
Combo1.AddItem rs1!Descricao
Combo1.ItemData(Combo1.NewIndex) = rs1![codSetor]
[ô]Combo1.ItemData(x) = rs!codCliente
rs1.MoveNext
Loop
rs1.Close
End Sub
------------------------------------------------
Private Sub mostra()
Dim sql As String
sql = [Ô]SELECT tbFunc.codFunc, tbFunc.Nome, tbContrato.codContrato, tbContrato.codSetor, tbContrato.codFunc, tbSetor.codSetor, tbSetor.Descricao[Ô] & _
[Ô] FROM tbSetor INNER JOIN (tbFunc INNER JOIN tbContrato ON tbFunc.codFunc = tbContrato.codFunc) ON tbSetor.codSetor = tbContrato.codSetor[Ô] & _
[Ô] WHERE tbSetor.codsetor =[Ô] & Combo1.ItemData(Combo1.ListIndex)
rs1.Open sql, conn, adOpenStatic
List1.Clear
Do While Not rs1.EOF
List1.AddItem rs1!Nome
rs1.MoveNext
Loop
rs1.Close
End Sub
---------------------------------
O button SALVAR:
Private Sub btnSave_Click()
On Error GoTo ErrHandler
If Combo2.ListIndex = -1 Then
MsgBox [Ô]Por favor, selecione um Setor de destino.[Ô]
Combo2.SetFocus
End If
If List2.ListCount = 0 Then
MsgBox [Ô]Por favor, selecione os itens na lista de destino[Ô]
End If
If MsgBox([Ô]Confirma gravação?[Ô], vbQuestion + vbYesNo, [Ô]Exemplo[Ô]) = vbYes Then
Dim i As Integer
For i = 0 To List2.ListCount – 1
conn.Execute [Ô]update tbContrato set(CodContrato, codFunc, codSetor) Values ([Ô] & Combo2.ItemData(Combo2.ListIndex) & [Ô], [Ô] & List2.ItemData(i) & [Ô], [Ô] & i + 1 & [Ô])[Ô] [ô] aqui é o problema, eu acho?//
Next
End If
Exit Sub
ErrHandler:
MsgBox [Ô]Erro: [Ô] & Err.Number & vbCrLf & Err.Description, vbCritical
End Sub
Para carregar os combos:
-----------------------------
Public Sub carregacombo1()
Dim sql As String
sql = [Ô]SELECT * FROM tbSetor ORDER BY Descricao[Ô]
rs1.Open sql, conn, adOpenStatic
Do While Not rs1.EOF
Combo1.AddItem rs1!Descricao
Combo1.ItemData(Combo1.NewIndex) = rs1![codSetor]
[ô]Combo1.ItemData(x) = rs!codCliente
rs1.MoveNext
Loop
rs1.Close
End Sub
------------------------------------------------
Private Sub mostra()
Dim sql As String
sql = [Ô]SELECT tbFunc.codFunc, tbFunc.Nome, tbContrato.codContrato, tbContrato.codSetor, tbContrato.codFunc, tbSetor.codSetor, tbSetor.Descricao[Ô] & _
[Ô] FROM tbSetor INNER JOIN (tbFunc INNER JOIN tbContrato ON tbFunc.codFunc = tbContrato.codFunc) ON tbSetor.codSetor = tbContrato.codSetor[Ô] & _
[Ô] WHERE tbSetor.codsetor =[Ô] & Combo1.ItemData(Combo1.ListIndex)
rs1.Open sql, conn, adOpenStatic
List1.Clear
Do While Not rs1.EOF
List1.AddItem rs1!Nome
rs1.MoveNext
Loop
rs1.Close
End Sub
---------------------------------
O button SALVAR:
Private Sub btnSave_Click()
On Error GoTo ErrHandler
If Combo2.ListIndex = -1 Then
MsgBox [Ô]Por favor, selecione um Setor de destino.[Ô]
Combo2.SetFocus
End If
If List2.ListCount = 0 Then
MsgBox [Ô]Por favor, selecione os itens na lista de destino[Ô]
End If
If MsgBox([Ô]Confirma gravação?[Ô], vbQuestion + vbYesNo, [Ô]Exemplo[Ô]) = vbYes Then
Dim i As Integer
For i = 0 To List2.ListCount – 1
conn.Execute [Ô]update tbContrato set(CodContrato, codFunc, codSetor) Values ([Ô] & Combo2.ItemData(Combo2.ListIndex) & [Ô], [Ô] & List2.ItemData(i) & [Ô], [Ô] & i + 1 & [Ô])[Ô] [ô] aqui é o problema, eu acho?//
Next
End If
Exit Sub
ErrHandler:
MsgBox [Ô]Erro: [Ô] & Err.Number & vbCrLf & Err.Description, vbCritical
End Sub
Mostre a estrutura das tabela [Ô]tbSetor[Ô] e [Ô]tbContrato[Ô], por favor...
Nota: Notação húngara em tabelas não via faz um tempinho
Nota: Notação húngara em tabelas não via faz um tempinho
Estruturas:
tbSetor: codSetor - Numero - PK
Descricao - Texto
tbContrato: codContrato - Numero - PK
codFunc - Numero
codSetor - Numero
tbFunc - codFunc - Numero - PK
Nome - Texto
PS: desculpe a ignorância, mas, como eu insiro imagens ou print de telas no corpo dos tópicos aqui do FÓRUM ????
tbSetor: codSetor - Numero - PK
Descricao - Texto
tbContrato: codContrato - Numero - PK
codFunc - Numero
codSetor - Numero
tbFunc - codFunc - Numero - PK
Nome - Texto
PS: desculpe a ignorância, mas, como eu insiro imagens ou print de telas no corpo dos tópicos aqui do FÓRUM ????
Relacionamentos:
- codFunc(tbFunc) se relaciona com codFunc(tbContrato) - um para muitos;
- codSetor(tbSetor) se relaciona com codSetor(tbContrato) - um para muitos;
- tbFunc e tbSetor não se relacionam diretamente.
- codFunc(tbFunc) se relaciona com codFunc(tbContrato) - um para muitos;
- codSetor(tbSetor) se relaciona com codSetor(tbContrato) - um para muitos;
- tbFunc e tbSetor não se relacionam diretamente.
para inseirir imagem no forum:
primeiro salve a(s) imagem(s) desejada(s) no hd
depois vá até o site http://www.imageshack.us/
na logo que o site abre existe um campo com um botão [Ô]Browser[Ô], clique neste botão
selecione o arquivo que vc deseja inserir depois clique no botão [Ô]Carregar agora[Ô].
ira aparecer o [txt-color=#0000f0]CODIGO DO FORUM[/txt-color] copie o link e cole assim
ficara assim
primeiro salve a(s) imagem(s) desejada(s) no hd
depois vá até o site http://www.imageshack.us/
na logo que o site abre existe um campo com um botão [Ô]Browser[Ô], clique neste botão
selecione o arquivo que vc deseja inserir depois clique no botão [Ô]Carregar agora[Ô].
ira aparecer o [txt-color=#0000f0]CODIGO DO FORUM[/txt-color] copie o link e cole assim
ficara assim
tela do form:
Uploaded with ImageShack.us
Uploaded with ImageShack.us
Tópico encerrado , respostas não são mais permitidas