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

Como Reconhecer A última Linha De Um Record Set?


Señor Smoke

Pergunta

Fala pessoal!

Seguinte, estou desenvolvendo um sistema de desbloqueio de terminais no VB6.

Estou com o seguinte problema. Eu gostaria que, quando o usuário tentasse desbloquear um terminal já desbloqueado, um aviso fosse mostrado na tela.

Acontece que, um terminal possui um histórico. Por exemplo:

Terminal            data_bloqueio             data_desbloqueio

308203038          12/12/2005                15/12/2005
308203038          17/12/2005                 NULL
No caso acima, se o usuario tentar desbloquear o terminal ele deveria conseguir porque o terminal foi desbloqueado e bloqueado novamente em uma data posterior. O codigo que estou fazendo acusa que o terminal já foi desbloqueado sendo que isto não é verdade. Resumindo o que eu quero fazer é pegar o ultimo registro do record set e verificar se a data_desbloqueio é NULL. Não estou conseguindo identificar a ultima linha do record set. Aqui vai o codigo que estou fazendo:
Private Sub Command1_Click()
On Error GoTo errexcl
If dddter.Text = "" Or ddd.Text = "" Then
MsgBox "Campos obrigatórios em branco", vbExclamation
Else
SQL = "Select * from t91013.COBILLING_BLOQUEIOS where DDD_Terminal = '" & dddter.Text & "' AND DDD = '" & ddd.Text & "'  "
Set Rs = Con.Execute(SQL)
If Rs.BOF And Rs.EOF Then
MsgBox "Registro não encontrado", vbExclamation
'ElseIf Rs.Fields("data_desbloqueio").Value <> "" Then
'MsgBox "Registro já se encontra desbloqueado", vbExclamation
Else
 VOK = MsgBox("O registro será desbloqueado", _
     vbYesNo + vbQuestion, "Atenção")
     If VOK = vbYes Then
        SQL = "Update t91013.COBILLING_BLOQUEIOS Set Data_Desbloqueio=getdate() where ddd = '" & ddd.Text & "' and ddd_terminal = '" & dddter.Text & "'and data_desbloqueio is Null"
        Con.Execute SQL
        SQL = "update cobilling_bloqueios set tipo_desbloqueio = 'Manual' Where ddd_terminal = '" & dddter.Text & "' and tipo_desbloqueio is null"
        Con.Execute SQL
        MsgBox "Registro desbloqueado com sucesso"
     End If
End If
End If

Espero que possam me ajudar. É a ultima do ano, isso eu prometo srsrsrsrs

FELIZ ANO NOVO A TODOS!!

Link para o comentário
Compartilhar em outros sites

13 respostass a esta questão

Posts Recomendados

  • 0

que banco de dados você usa?

Se você tiver trabalhando com ACCESS use top 1 Ex:

sqlPlayer = "Select top 1 * From PlayingCharacters Where CurrentLevel < 300

se for mySQL use limit 1 EX:

sqlPlayer = "Select * From PlayingCharacters Where CurrentLevel < 300 limit 1

espero ter ajudado

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

O MoveLast vai para o último registro do recordset, porém o último registro da tabela pode não ser exatamente o último do recordset já que eles podem estar em uma ordem diferente. Experimente colocar uma DataGrid no form e atribuir o recordset utilizado à propriedade DataSource dela. Verifique então quais os registros mostrados e veja se o último realmente é o que você espera.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Pra poder manipular as propriedades do record set (movelast, movefirst etc...)

é realmente necessário associar o record set a um DataGrid.datasource?

Não é possivel usar essas propriedades sem um datagrid, digo, pegando diretamente do record set?

Estou dizendo isso porque no meu caso acima, eu não estou usando um datagrid, estou carregando os resultados das consultas diretamente no record set.

Link para o comentário
Compartilhar em outros sites

  • 0

Pra poder manipular as propriedades do record set (movelast, movefirst etc...)

é realmente necessário associar o record set a um DataGrid.datasource?

Não é possivel usar essas propriedades sem um datagrid, digo, pegando diretamente do record set?

Estou dizendo isso porque no meu caso acima, eu não estou usando um datagrid, estou carregando os resultados das consultas diretamente no record set.

Sim, você pode utilizá-las sem o recordset estar ligado a uma DataGrid. Eu só sugeri isso porque fica *mais fácil de visualizar* o conteúdo do recordset.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Eu sei, é que eu não gostaria de poluir meu form com um datagrid.

Ponha o datagrid so pra testar. depois apague.

Será que eu não fui claro a respeito disso...? É só mesmo para testar, para você poder *ver* qual é o último registro *do* recordset e conferir se é realmente o que você está querendo/imaginando.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...