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

Update


renatacm

Pergunta

Oi, pessoal!!!

Novamente estou com problemas no diálogo ASP X ACCESS.

Preciso fazer o seguinte:

O usuário tem uma senha provisória inicial.

Ele entra no sistema e altera a senha.

Posteriormente, em uma determinada situação, o usuário inicial deixa de utilizar o sistema e seu código será utilizado por outro usuário.

O script abaixo se propõe a verificar se o código do usuário existe nas duas tabelas envolvidas e em caso positivo, verifica se o nome é o mesmo: se o nome for diferente, faz o update da tabela de usuários para atualizar o nome do fulano e liberar a senha provisória para o novo fulano.

<!---#include file="dados.asp"--->

<%

SET RSUsuarios1 = Server.CreateObject("ADODB.Recordset")

SQLUsuarios1 = "SELECT * FROM Tab_Usuarios WHERE codigo <> "& Request("imob")&" AND imob='"& Request("imob")&"'"

RSUsuarios1.Open SQLUsuarios1,Conexao,2,3

SQLImoveis1 = "SELECT * FROM Tab_Imoveis WHERE imob='"& Request("imob")&"'"

SET RSImoveis1 = Server.CreateObject("ADODB.Recordset")

SET RSImoveis1 = Conexao.Execute(SQLImoveis1) 

IF NOT RSUsuarios1.EOF THEN

WHILE NOT RSImoveis1.EOF

  WHILE NOT RSUsuarios1.EOF

  IF RSUsuarios1("codigo") = RSImoveis1("imovel_locatario_LC_COD") AND RSUsuarios1("nome") <> RSImoveis1("Imovel_locatario_Nome") THEN

   

    SQLUsuarios4 = "UPDATE Tab_Usuarios SET imob='"&Request("imob")&"', tipo='', codigo="&CInt(RSImoveis1("imovel_locatario_LC_COD"))&", pessoa=1, nome='"&RSImoveis1("Imovel_locatario_Nome")&"', end='', telefone='', cpf_cnpj='"&RSImoveis1("Imovel_locatario_CPF_CNPJ")&"', rg_ie='"&RSImoveis1("Imovel_locatario_RG_IE")&"', data='"&day(now)&"/"&month(now)&"/"&year(now)&"', hora='"&hour(now)&":"&minute(now)&":"&second(now)&"', ip='"&Request.ServerVariables("REMOTE_ADDR")&"', email='', senha='"&RSImoveis1("imovel_locatario_LC_COD")&"', url=''"

    Set RSUsuarios4 = Server.CreateObject("ADODB.Recordset")

    RSUsuarios4.Open Conexao,SQLUsuarios4,3,3

   

    RSUsuarios4.Close

    Set RSUsuarios4 = Nothing   

  END IF

  RSUsuarios1.MoveNext

  WEND

  RSImoveis1.MoveNext 

  RSUsuarios1.MoveFirst

WEND

END IF

RSUsuarios1.Close

Set RSUsuarios1 = Nothing

RSImoveis1.Close

Set RSImoveis1 = Nothing

Conexao.Close

Set Conexao = Nothing

Response.Redirect "grava_usuprop.asp?imob="& Request("imob")

%>

Quando executo esse script, aparece a seguinte mensagem de erro: Tipo de erro:

ADODB.Recordset (0x800A0BB9)

Os argumentos são incorretos, estão fora do intervalo aceitável ou estão em conflito.

/immobile/wizard/grava_usuloc.asp, line 22

A linha 22 é: RSUsuarios4.Open Conexao,SQLUsuarios4,3,3

Já verifiquei se não estava tentando gravar um dado numérico num campo texto ou vice-versa, mas não é isso. Tudo que é texto, está sendo passado como texto e tudo que é numero (apenas os campos código e pessoa) estão sendo passados como número...

Alguém sabe me dizer o que pode estar errado?

Bjocas...

;oÞ

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

<!---#include file="dados.asp"--->

<%

SET RSUsuarios1 = Server.CreateObject("ADODB.Recordset")

SQLUsuarios1 = "SELECT * FROM Tab_Usuarios WHERE codigo <> "& Request("imob")&" AND imob='"& Request("imob")&"'"

RSUsuarios1.Open SQLUsuarios1,Conexao,2,3

SQLImoveis1 = "SELECT * FROM Tab_Imoveis WHERE imob='"& Request("imob")&"'"

SET RSImoveis1 = Server.CreateObject("ADODB.Recordset")

SET RSImoveis1 = Conexao.Execute(SQLImoveis1) 

IF NOT RSUsuarios1.EOF THEN

WHILE NOT RSImoveis1.EOF

  WHILE NOT RSUsuarios1.EOF

  IF RSUsuarios1("codigo") = RSImoveis1("imovel_locatario_LC_COD") AND RSUsuarios1("nome") <> RSImoveis1("Imovel_locatario_Nome") THEN

   

    SQLUsuarios4 = "UPDATE Tab_Usuarios SET imob='"&Request("imob")&"', tipo='', codigo="&CInt(RSImoveis1("imovel_locatario_LC_COD"))&", pessoa=1, nome='"&RSImoveis1("Imovel_locatario_Nome")&"', end='', telefone='', cpf_cnpj='"&RSImoveis1("Imovel_locatario_CPF_CNPJ")&"', rg_ie='"&RSImoveis1("Imovel_locatario_RG_IE")&"', data='"&day(now)&"/"&month(now)&"/"&year(now)&"', hora='"&hour(now)&":"&minute(now)&":"&second(now)&"', ip='"&Request.ServerVariables("REMOTE_ADDR")&"', email='', senha='"&RSImoveis1("imovel_locatario_LC_COD")&"', url=''"

conexao.execute(SQLUsuarios4)

' já q é um update, não tem q abrir nada, e sim executar...

' tenta assim ai, e veja o que dá...  

 

  END IF

  RSUsuarios1.MoveNext

  WEND

  RSImoveis1.MoveNext 

  RSUsuarios1.MoveFirst

WEND

END IF

RSUsuarios1.Close

Set RSUsuarios1 = Nothing

RSImoveis1.Close

Set RSImoveis1 = Nothing

Conexao.Close

Set Conexao = Nothing

Response.Redirect "grava_usuprop.asp?imob="& Request("imob")

%>

ou assim tb..

<!---#include file="dados.asp"--->

<%

SET RSUsuarios1 = Server.CreateObject("ADODB.Recordset")

SQLUsuarios1 = "SELECT * FROM Tab_Usuarios WHERE codigo <> "& Request("imob")&" AND imob='"& Request("imob")&"'"

RSUsuarios1.Open SQLUsuarios1,Conexao,2,3

SQLImoveis1 = "SELECT * FROM Tab_Imoveis WHERE imob='"& Request("imob")&"'"

SET RSImoveis1 = Server.CreateObject("ADODB.Recordset")

SET RSImoveis1 = Conexao.Execute(SQLImoveis1) 

IF NOT RSUsuarios1.EOF THEN

WHILE NOT RSImoveis1.EOF

  WHILE NOT RSUsuarios1.EOF

  IF RSUsuarios1("codigo") = RSImoveis1("imovel_locatario_LC_COD") AND RSUsuarios1("nome") <> RSImoveis1("Imovel_locatario_Nome") THEN

   

    conexao.execute("UPDATE Tab_Usuarios SET imob='"&Request("imob")&"', tipo='', codigo="&CInt(RSImoveis1("imovel_locatario_LC_COD"))&", pessoa=1, nome='"&RSImoveis1("Imovel_locatario_Nome")&"', end='', telefone='', cpf_cnpj='"&RSImoveis1("Imovel_locatario_CPF_CNPJ")&"', rg_ie='"&RSImoveis1("Imovel_locatario_RG_IE")&"', data='"&day(now)&"/"&month(now)&"/"&year(now)&"', hora='"&hour(now)&":"&minute(now)&":"&second(now)&"', ip='"&Request.ServerVariables("REMOTE_ADDR")&"', email='', senha='"&RSImoveis1("imovel_locatario_LC_COD")&"', url=''")

 

  END IF

  RSUsuarios1.MoveNext

  WEND

  RSImoveis1.MoveNext 

  RSUsuarios1.MoveFirst

WEND

END IF

RSUsuarios1.Close

Set RSUsuarios1 = Nothing

RSImoveis1.Close

Set RSImoveis1 = Nothing

Conexao.Close

Set Conexao = Nothing

Response.Redirect "grava_usuprop.asp?imob="& Request("imob")

%>

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