Ir para conteúdo
Fórum Script Brasil
  • 0

Comparar valores nulos - Access 2003


Flafis

Pergunta

Tenho duas listbox, 1 - Pessoas, 2 Pessoas Selecionadas, e tenho 1 combo box que filtra as pessoas que aparecem na 1ª listbox, assim o usuário seleciona quem ele quiser e enviar para a 2 listbox, meu problema está quando vou salvar, pois tenho que checar se algumas pessoas listadas no listbox2 já foram salvas no banco, ai tento comparar e quando o valor é nulo tenho que gravar no banco, porem não consigo fazer com que a comparação ocorra, segue o codigo:

Private Sub Salvar_Click()

On Error GoTo Err_Salvar_Click

'Dim doCount As Integer

Dim ctlDest As Control

Dim MsgSalvar As String

'Dim intRegCorr As Integer

Dim strEvento As Integer

Dim con As Object

Dim rs As Object

Dim strDadosBd As Control

Dim strteste As Integer

Set ctlDest = Form!lstDestino

strEvento = Form!Id_evento.Value

Set strDadosBd = Form!lstaux

' DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

'O For é para selecionar item a item da lista

strDadosBd.RowSource = ctlDest.RowSource

For intRegCorr = 0 To lstDestino.ListCount - 1 'ctlDest.ListCount - 1 'lstDestino.ListCount

Set con = Application.CurrentProject.Connection

Set rs = CreateObject("ADODB.Recordset")

'Esse select é para verificar se já foram gravado no banco os registro que estao na listbox

stSql = "Select evento_pessoa.id_evento, evento_pessoa.id_pessoa from evento_pessoa " _

& "where evento_pessoa.id_pessoa = " & ctlDest.Column(0, intRegCorr) & _

" and evento_pessoa.id_evento =" & strEvento

strDadosBd.RowSource = stSql

'passo a sentenca para uma listbox invisivel, para fazer a comparação

'nesse momento é que deveria ocorrer a verificação do valor nulo mas não acontece

If strDadosBd.Column(1, intRegCorr) = Null Then

strteste = 0

Else

strteste = CInt(strDadosBd.Column(1, intRegCorr))

End If

'esse if criei para ver se com a integer o sistema fazia a comparação mas não da certo

If strteste = 0 Then

'Esse insert faz com que para cada item selecionado eu acrescente uma pessoa na tabela

'com o mesmo codigo do evento

stSql = "INSERT INTO evento_Pessoa (id_evento, Id_Pessoa )"

stSql = stSql & "VALUES"

stSql = stSql & "(" & strEvento & "," & ctlDest.Column(0, intRegCorr) & ")"

rs.Open stSql, con, 1 = adOpenKeyset

End If

Next intRegCorr

'Limpa a string global para comçar uma nova seleção

strItemsGlb = ""

If lstDestino.ListCount > 1 Then

MsgSalvar = MsgBox(ctlDest.ListCount & " - Registros salvos com sucesso", vbOKOnly, "Mensagem Confirmação")

'Limpa a caixa de listagem para começar uma nova seleção

'ctlDest.RowSource = ""

Else

'ctlDest.ListCount - conta quantos itens tem no ListBox - Destino, depois vem texto, depois vem que tipo

'de botao irá aparecer para o usuario, depois o título do MsgBox

MsgSalvar = MsgBox(ctlDest.ListCount & " - Registro salvo com sucesso", vbOKOnly, "Mensagem Confirmação")

'Limpa a caixa de listagem para começar uma nova seleção

'ctlDest.RowSource = ""

End If

Exit_Salvar_Click:

Exit Sub

Err_Salvar_Click:

MsgBox Err.Description

Resume Exit_Salvar_Click

End Sub

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...