Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

manga

Problema com Recordset

Recommended Posts

Tenho que identificar se alguns campos estão vazios em um Recordset mas não consigo. Tentei o seguinte:If RSclientes("login") = "" ThenResponse.Write "Campo LOGIN em branco - ID: "&idRSclientes.Closeset RSclientes = NothingResponse.EndEnd IfSei que o campo login está em branco mas o ASP não executa o IF. Também já tentei o IsEmpty mas ele retorna falso, tentei Len(RSclientes("login")) = 0, mas também não funcionou!Alguém pode me ajudar por favor???ObrigadoManga

Compartilhar este post


Link para o post
Compartilhar em outros sites

A variável id está citada acima do if:id = Request.Form("id")If RSclientes("login") = "" ThenResponse.Write "Campo LOGIN em branco - ID: "&idRSclientes.Closeset RSclientes = NothingResponse.EndEnd IfMesmo se não houvesse valor para "ID" ele deveria executar o IF. O problema é que o script acha que existe algum valor em "login" e eu não sei como indicar esse valor no IF.Ajudem por favor!!! :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aí vai:Dim connect, RSclientes, idid = Request.Form("id")Set connect = Server.CreateObject("ADODB.Connection")connect.Open Application("ConnStringPWS")Set RSclientes= Server.CreateObject("ADODB.Recordset")RSclientes.CursorLocation = 3RSclientes.Open "clientes", connect, , , 2set RSclientes = connect.execute("SELECT * FROM clientes WHERE id='"&id&"'")If RSclientes.EOF ThenResponse.Write "ID INEXISTENTE - ID: "& idRSclientes.Closeset RSclientes = NothingResponse.EndEnd IfIf RSclientes("contato") = "" ThenResponse.Write "Campo CONTATO em branco - ID: "&idRSclientes.Closeset RSclientes = NothingResponse.EndEnd IfIf RSclientes("login")= "" ThenResponse.Write "Campo LOGIN em branco - ID: "&idRSclientes.Closeset RSclientes = NothingResponse.EndEnd IfResponse.Write "Registro Completo"RSclientes.CloseSet RSclientes = Nothingconnect.CloseSet connect = Nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, valeu a força mas continua não funcionando.Você chegou a testar esse script?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele não retorna nenhum erro. Ele simplesmente não reconhece que o campo RSclientes("login") está vazio e não executa o IF. Sabe o que é mais engraçado, é que tanto faz você escrever:If RSclientes("login") = "" ouIf RSclientes("login") <> "" Que o resultado é o mesmo, ou seja, para o ASP RSclientes("login") é igual e diferente de "" ao mesmo tempo !!!!!Tá complicado :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, eu usei seu código. Só chamei de RSclientes ao invés de RS. O problema não está no ID, desencana dele. No script eu tenho um código para ele me mostrar tudo o que está gravado na conexão e está tudo OK. Ele carrega todos os campos com os respectivos valores, por isso tenho certeza que o campo "login" está vazio.Para você ver, quando chamo IsEmpty(RSclientes("login")) ele retorna falso, ou seja para o ASP tem algo lá. Quando chamo Len(RSclientes("login")) ele não retorna nada!!! Nem "0" !!!Como eu disse, para o ASP esse campo não é nem igual nem diferente de nada ("")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse script funciona pois você está trabalhando com variáveis e não com campos dentro de um objeto.A conexão e o db estão OK pois como te disse consigo ver todas as informações do objeto e elas estão corretas. Acho que o problema é que o ASP deve alocar algum valor para um campo vazio dentro de um objeto e não sabemos que valor é esse.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, desencana. Vou tentar resolver esse vodu de outro jeito.Valeu a Força!!Precisando disponha.Abraços,Manga

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.