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

Exibir mensagem de alerta em caso de duplicidade de registro


fabio_rita

Pergunta

Olá pessoal

Conto mais uma vez com a ajuda de vocês!!!

Tenho uma pagina que realiza uma inserção de dados num banco SQL.

O problema é que em caso de duplicidade, não sei como interromper o processo de inserção e exibir uma mensagem de alerta ao usuario, permitindo corrigir os dados digitados.

Mais uma vez obrigado

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/con_operacao.asp" -->
<%
Dim rs_vrp__MMColParam
rs_vrp__MMColParam = "nome_do_usuario"
If (session("MM_Username") <> "") Then 
  rs_vrp__MMColParam = session("MM_Username")
End If
%>
<%
Dim MM_editAction
MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))
If (Request.QueryString <> "") Then
  MM_editAction = MM_editAction & "?" & Server.HTMLEncode(Request.QueryString)
End If

' boolean to abort record edit
Dim MM_abortEdit
MM_abortEdit = false
%>
<%
' IIf implementation
Function MM_IIf(condition, ifTrue, ifFalse)
  If condition = "" Then
    MM_IIf = ifFalse
  Else
    MM_IIf = ifTrue
  End If
End Function
%>
<%
If (CStr(Request("MM_insert")) = "form_inserir") Then
  If (Not MM_abortEdit) Then
    ' execute the insert
    Dim MM_editCmd

    Set MM_editCmd = Server.CreateObject ("ADODB.Command")
    MM_editCmd.ActiveConnection = MM_con_operacao_STRING
    MM_editCmd.CommandText = "INSERT INTO dbo.tb_dados (rgi, grupo, cod_atc, endereco, numero, complemen, nome, telefone, vrp, cod_altitude) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" 
    MM_editCmd.Prepared = true
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 5, 1, -1, MM_IIF(Request.Form("rgi"), Request.Form("rgi"), null)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 5, 1, -1, MM_IIF(Request.Form("grupo"), Request.Form("grupo"), null)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param3", 5, 1, -1, MM_IIF(Request.Form("cod_atc"), Request.Form("cod_atc"), null)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param4", 201, 1, 30, Request.Form("endereco")) ' adLongVarChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param5", 201, 1, 5, Request.Form("numero")) ' adLongVarChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param6", 201, 1, 10, Request.Form("complemen")) ' adLongVarChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param7", 201, 1, 40, Request.Form("nome")) ' adLongVarChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param8", 201, 1, 13, Request.Form("telefone")) ' adLongVarChar
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param9", 5, 1, -1, MM_IIF(Request.Form("vrp"), Request.Form("vrp"), null)) ' adDouble
    MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param10", 5, 1, -1, MM_IIF(Request.Form("cod_altitude"), Request.Form("cod_altitude"), null)) ' adDouble
    MM_editCmd.Execute
    MM_editCmd.ActiveConnection.Close

    ' append the query string to the redirect URL
    Dim MM_editRedirectUrl
    MM_editRedirectUrl = "cad_cliente.asp"
    If (Request.QueryString <> "") Then
      If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0) Then
        MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
      Else
        MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
      End If
    End If
    Response.Redirect(MM_editRedirectUrl)
  End If
End If
%>
<%
Dim rs_vrp
Dim rs_vrp_cmd
Dim rs_vrp_numRows

Set rs_vrp_cmd = Server.CreateObject ("ADODB.Command")
rs_vrp_cmd.ActiveConnection = MM_con_operacao_STRING
rs_vrp_cmd.CommandText = "SELECT * FROM tb_administracao, tb_vrp WHERE tb_administracao.usuario = ? and tb_administracao.codatc = tb_vrp.cod_atc ORDER BY tb_vrp.nome" 
rs_vrp_cmd.Prepared = true
rs_vrp_cmd.Parameters.Append rs_vrp_cmd.CreateParameter("param1", 200, 1, 255, rs_vrp__MMColParam) ' adVarChar

Set rs_vrp = rs_vrp_cmd.Execute
rs_vrp_numRows = 0
%>
<%
Dim rs_altitude
Dim rs_altitude_cmd
Dim rs_altitude_numRows

Set rs_altitude_cmd = Server.CreateObject ("ADODB.Command")
rs_altitude_cmd.ActiveConnection = MM_con_operacao_STRING
rs_altitude_cmd.CommandText = "SELECT * FROM dbo.tb_altitude" 
rs_altitude_cmd.Prepared = true

Set rs_altitude = rs_altitude_cmd.Execute
rs_altitude_numRows = 0
%>
<%
Dim rs_dados__MMColParam
rs_dados__MMColParam = "nome_do_usuario"
If (session("MM_Username") <> "") Then 
  rs_dados__MMColParam = session("MM_Username")
End If
%>
<%
Dim rs_dados__MMColParam2
rs_dados__MMColParam2 = "1"
If (Request.Form("vrp") <> "") Then 
  rs_dados__MMColParam2 = Request.Form("vrp")
End If
%>
<%
Dim rs_dados
Dim rs_dados_cmd
Dim rs_dados_numRows

Set rs_dados_cmd = Server.CreateObject ("ADODB.Command")
rs_dados_cmd.ActiveConnection = MM_con_operacao_STRING
rs_dados_cmd.CommandText = "SELECT a.nome, rgi, grupo, endereco, numero, v.nome, complemen, nomecli, d.telefone, altitude, v.cod_vrp FROM tb_administracao a  join  tb_dados d  on d.cod_atc = codatc join tb_vrp v on v.cod_vrp = d.cod_vrp join tb_altitude t on t.cod_altitude = d.cod_altitude WHERE a.usuario = ? and v.cod_vrp = ?" 
rs_dados_cmd.Prepared = true
rs_dados_cmd.Parameters.Append rs_dados_cmd.CreateParameter("param1", 200, 1, 255, rs_dados__MMColParam) ' adVarChar
rs_dados_cmd.Parameters.Append rs_dados_cmd.CreateParameter("param2", 5, 1, -1, rs_dados__MMColParam2) ' adDouble

Set rs_dados = rs_dados_cmd.Execute
rs_dados_numRows = 0
%>
<%
Dim Repeat1__numRows
Dim Repeat1__index

Repeat1__numRows = -1
Repeat1__index = 0
rs_dados_numRows = rs_dados_numRows + Repeat1__numRows
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script src="js/pcc.js" type=text/javascript></script>
<link rel="stylesheet" type="text/css" href="css/style.css" media="screen" />
<title>Consulta Pressão VRP</title>

</head>

<body>

<div id="conteudoadm2">

  <h3>Cadastro de Cliente</h3>

<form action="cad_cliente.asp" method="post" id="form_selecao">  
  <table width="555" border="0">
  <tr>
    <td width="169"></td>
    <td width="376" align="right"><label>VRP: <select name="vrp" id="vrp">
      <%
While (NOT rs_vrp.EOF)
%>
      <option value="<%=(rs_vrp.Fields.Item("cod_vrp").Value)%>" <%If (Not isNull((rs_vrp.Fields.Item("cod_vrp").Value))) Then If (CStr(rs_vrp.Fields.Item("cod_vrp").Value) = CStr((rs_vrp.Fields.Item("cod_vrp").Value))) Then Response.Write("selected=""selected""") : Response.Write("")%> ><%=(rs_vrp.Fields.Item("nome").Value)%></option>
      <%
  rs_vrp.MoveNext()
Wend
If (rs_vrp.CursorType > 0) Then
  rs_vrp.MoveFirst
Else
  rs_vrp.Requery
End If
%>
                  </select></label><input type="submit" name="ok_atualizar" id="ok_atualizar" value="Enviar" /></td>
  </tr>
</table>
    </form>
    
  <hr />
    

    <form ACTION="<%'=MM_editAction%>" METHOD="POST" name="form_inserir" id="form_inserir" onsubmit="return valida_enviar(this)">
      <table class="tabelas" width="553" border="0">
                <tr>
                    <td width="276"><label>RGI: <input name="rgi" type="text" id="rgi" size="10" maxlength="10" /></label></td>
                    <td width="103"><label>Grupo: <input name="grupo" type="text" id="grupo" size="2" maxlength="2" /></label></td>
                    <td colspan="2"></td>
                </tr>
                <tr>
                    <td><label>Endere&ccedil;o: <input name="endereco" type="text" id="endereco" size="30" maxlength="30" /></label></td>
                    <td><label>Numero: <input name="numero" type="text" id="numero" size="5" maxlength="5" /></label></td>
                    <td colspan="2"><label>Comple.: <input name="complemen" type="text" id="complemen" size="10" maxlength="10" /></label></td>
                </tr>
                <tr>
                    <td colspan="2">Nome: 
                      <label>
                        <input name="nome" type="text" id="nome" size="40" maxlength="40" />
                    </label></td>
                    <td colspan="2"><label>Telefone: <input name="telefone" type="text" id="telefone" size="13" maxlength="13" />
                  </label></td>
                </tr>
                <tr>
<td colspan="2"><label>Altitude: <select name="cod_altitude" id="cod_altitude">
                        <%
While (NOT rs_altitude.EOF)
%>
                        <option value="<%=(rs_altitude.Fields.Item("cod_altitude").Value)%>" <%If (Not isNull((rs_altitude.Fields.Item("cod_altitude").Value))) Then If (CStr(rs_altitude.Fields.Item("cod_altitude").Value) = CStr((rs_altitude.Fields.Item("cod_altitude").Value))) Then Response.Write("selected=""selected""") : Response.Write("")%> ><%=(rs_altitude.Fields.Item("altitude").Value)%></option>
                        <%
  rs_altitude.MoveNext()
Wend
If (rs_altitude.CursorType > 0) Then
  rs_altitude.MoveFirst
Else
  rs_altitude.Requery
End If
%>
                  </select></label></td>
                    <td width="83" align="center"><label>
                    <input name="adicionar" type="image" id="adicionar" title="adicionar" src="images/plus_16.png" alt="Adicionar"/>
                  </label></td>
                    <td width="73" align="center">&nbsp;</td>
                </tr>
      </table>
      <input type="hidden" name="MM_insert" value="form_inserir" />
      <input type="hidden" name="hiddenField" id="hiddenField" />
    </form>

<hr />

  <div id="excluir">
  <% 
While ((Repeat1__numRows <> 0) AND (NOT rs_dados.EOF)) 
%>
      <form ACTION="<%=MM_editAction%>" METHOD="post" name="form_excluir" id="form_excluir" onsubmit="return verify()">

      <table class="tabelas" width="553" border="0">
                <tr>
                    <td width="276"><label>RGI: <%=(rs_dados.Fields.Item("rgi").Value)%></label></td>
                    <td width="103"><label>Grupo: <%=(rs_dados.Fields.Item("grupo").Value)%></label></td>
                    <td colspan="2"><!-- <label>ATC: <input name="cod_atc" type="text" id="cod_atc" size="3" maxlength="3" /></label> --></td>
                </tr>
                <tr>
                    <td><label>Endere&ccedil;o: <%=(rs_dados.Fields.Item("endereco").Value)%></label></td>
                    <td><label>Numero: <%=(rs_dados.Fields.Item("numero").Value)%></label></td>
                    <td colspan="2"><label>Comple.: <%=(rs_dados.Fields.Item("complemen").Value)%></label></td>
                </tr>
                <tr>
                    <td colspan="2">Nome: <%=(rs_dados.Fields.Item("nomecli").Value)%></td>
                    <td colspan="2"><label>Telefone: 
                  <%=(rs_dados.Fields.Item("telefone").Value)%></label></td>
                </tr>
                <tr>
                    <td colspan="2"><label>Altitude: <%=(rs_dados.Fields.Item("altitude").Value)%></label></td>
                    <td width="83" align="center"><label><a href="atualizacliente.asp?rgi=<%=(rs_dados.Fields.Item("rgi").Value)%>">Editar</a>
    </label></td>
                  <td width="73" align="center"><label>
      <input type="image" name="lixeira" id="lixeira" src="images/trash_16.png" title="excluir"/>
    </label></td>
                </tr>
        </table>

      <input type="hidden" name="MM_delete" value="form_excluir" />
      <input name="MM_recordId" type="hidden" value="<%=(rs_dados.Fields.Item("rgi").Value)%>" />      
  </form>
        <% 
  Repeat1__index=Repeat1__index+1
  Repeat1__numRows=Repeat1__numRows-1
  rs_dados.MoveNext()
Wend
%>
    
  </div>

</div>

</body>
</html>
<%
rs_vrp.Close()
Set rs_vrp = Nothing
%>
<%
rs_altitude.Close()
Set rs_altitude = Nothing
%>
<%
rs_dados.Close()
Set rs_dados = Nothing
%>

Link para o comentário
Compartilhar em outros sites

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