Foros del Web » Programando para Internet » ASP Clásico »

Problema Con Modificar Datos

Estas en el tema de Problema Con Modificar Datos en el foro de ASP Clásico en Foros del Web. buenas amigos de foros del web....tengo el siguiente problema....tengo una pagina que modifica los datos en base a un numero identificador unico llamado "csr".....y a ...
  #1 (permalink)  
Antiguo 18/11/2007, 19:00
 
Fecha de Ingreso: octubre-2007
Mensajes: 191
Antigüedad: 17 años, 7 meses
Puntos: 0
Problema Con Modificar Datos

buenas amigos de foros del web....tengo el siguiente problema....tengo una pagina que modifica los datos en base a un numero identificador unico llamado "csr".....y a su vez pasa por distintos estados, llamados 'revision', pxr', 'ok', 'entregado'....
entonces la idea mia es que solo deje modificar los datos si el estado no sea entregado....lo he intentado hacer de mil formas.....pero no me resulta.....bueno...la pagina se llama valactual.asp....entonces cuando es llamada...muestra los campos con sus valores ya almacenados y el cliente los modifica...al presionar el boton aceptar.....es mandada a otra pagina llamada actualcorreclie.asp...que procesa los datos y realiza el update....

entonces mi idea seria "bloquear" el acceso a modificar las csr que se encuentren en estado "entregado"
este es el codigo:

Cita:
<%

if Not IsEmpty(Request("csr")) then
csr = Request("csr")
end if

On Error Resume next

Dim Rs, Cnn, strSQL,usuarioconta,fechacuenta,timecuenta,ip,hech o, strSQL2, rs2
set Cnn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
Cnn.Open Session("cnx")

if Err.number <> 0 then
session("ErrorTitle")="Error prueba funka"
session("ErrorText")= "Error de Conexion :" & Err.description
Response.Redirect "onerror.asp"
end if


strSQL = "select * from Tblcliente where csr='" & csr & "'"
rs.Open strSQL, Cnn, 1, 2

If Not rs.EOF then
Dim csr, distribuidor
csr = rs.Fields("csr")
nombre_cliente = rs.Fields("nombre_cliente")
fecha_in= rs.Fields("fecha_in")
artefacto= rs.Fields("artefacto")
serie= rs.Fields("serie")
estado= rs.Fields("estado")
fecha_ret= rs.Fields("fecha_ret")
gtia= rs.Fields("gtia")
tecnico= rs.Fields("tecnico")




Else
csr =""
End If


if rs.EOF then
Response.Write("No hay ningún registro en esta tabla")
else
%>


<%

%>
<font face="Verdana" color="BLACK">
<h2>
<%
Response.Write( "Los Datos del Cliente De CSR: ")
%>
</h2>
<h3>
<%
Response.Write( "<TD><b>" & rs.Fields("csr")& "</b></TD>" ) %>
<b>-</b>
<%
Response.Write( "<TD><b>"& rs.Fields("nombre_cliente")& "</b></TD>" )
%> &nbsp;&nbsp;
<h4>
<%
Response.Write( "Ojo que las fechas NO SE PUEDEN MODIFICAR ")
%>
</h4>
</h3>
</font>
<%
end if
rs.Close
set rs = nothing
Cnn.Close
set Cnn = nothing
%>

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>
<body BACKGROUND ="2.jpg" bgcolor="#000000" text="#000000" vlink="#ffffff" alink="#ffffff">
<script language="javascript">
function nombre1(cadena,obj)
{
opc=false;
if (cadena='%n')
{if (event.keyCode>96 && event.keyCode<123)
opc=true;
}

if (cadena =="%n")
{ if (event.keyCode>64 && event.keyCode <89)
opc=true;
}

if (cadena =="%n")
{ if (event.keyCode>31 && event.keyCode <33)
opc=true;
}
if(opc==false)
{
event.returnValue=false;
}
}

function numero(cadena,obj)
{
opc=false;
if (cadena='%n')
{if (event.keyCode>47 && event.keyCode<58)
opc=true;
}

if(opc==false)
{
event.returnValue=false;
}
}


function guias(cadena,obj)
{
opc=false;
if (cadena =="%g")
{if (event.keyCode>47 && event.keyCode<58)
opc=true;
}

if (cadena='%g')
{if (event.keyCode>44 && event.keyCode<46)
opc=true;
}
if (cadena='%g')
{if (event.keyCode>96 && event.keyCode<123)
opc=true;
}

if (cadena =="%g")
{ if (event.keyCode>64 && event.keyCode <89)
opc=true;
}

if (cadena =="%g")
{ if (event.keyCode>31 && event.keyCode <33)
opc=true;
}




if(opc==false)
{
event.returnValue=false;
}
}


function fecha(cadena,obj)
{
opc=false;

if (cadena='%f')
{if (event.keyCode>46 && event.keyCode<58)
opc=true;
}

if (cadena='%f')
{if (event.keyCode>44 && event.keyCode<46)
opc=true;
}



if(opc==false)
{
event.returnValue=false;
}
}


function envia()
{
alert ('SE VA MODIFICAR LOS DATOS DEL CLIENTE')
document.valactual.action = '/bodega/scripts/actualcorreclie.asp?csr=' + document.valactual.csr.value + '&nombre_cliente='+ document.valactual.nombre_cliente.value + '&artefacto=' + document.valactual.artefacto.value + '&serie='+ document.valactual.serie.value + '&estado='+ document.valactual.estado.value + '&gtia='+ document.valactual.gtia.value + '&tecnico='+ document.valactual.tecnico.value;

document.valactual.method="POST";
document.valactual.submit();
}

</script>


<FORM ACTION='' METHOD='POST' id=valactual name=valactual>
<font face="Verdana" color="BLACK">
<b>
<TABLE BORDER=1 bordercolor="#0000FF" CELLSPACING="1" CELLPADDING="5" WIDTH=402>

<tr>
<td width="386" bgcolor="#FFCC66"><b>Csr :</b>&nbsp; &nbsp;&nbsp; &nbsp;
<input type="text" name="csr" id="csr" size=10 readonly="readonly" Value="<%=csr%>" onKeyPress="numero('%n',this);">
<tr>
<td bgcolor="#FFCC66"><b>Nombre Cliente :</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="nombre_cliente" id="nombre_cliente" size=30 Value="<%=nombre_cliente%>" onKeyPress="nombre1('%n',this);">
</tr>
<tr>




<tr> <td bgcolor="#FFCC66"><b>Artefacto :</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="artefacto" id="artefacto" size=30 Value="<%=artefacto%>" onKeyPress="guias('%g',this);"></td>
<tr> <td bgcolor="#FFCC66"><b>Serie :</b>&nbsp;&nbsp;
<input type="text" name="serie" id="serie" size=15 Value="<%=serie%>" onKeyPress="guias('%g',this);"> </td> </tr>
<tr> <td bgcolor="#FFCC66"><b>Estado :</b>&nbsp;
<select name="estado">
<option selected><%=estado%></option>
<option>REVISION</option>
<option>PXR</option>
<option>SCA</option>
<option>OK</option>
<option>ENTREGADO</option>
<option>ENPROCESO</option>
</select></td> </tr>
<td bgcolor="#FFCC66"><b>Fecha Ingreso:</b> &nbsp; &nbsp;
<input type="text" name="fecha_in" id="fecha_in" size=15 readonly="readonly" Value="<%=fecha_in%>" onKeyPress="fecha('%f',this);"></td>
</tr>

<tr>
<td bgcolor="#FFCC66"><b>Fecha de Status / Retiro :</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="fecha_ret" id="fecha_ret" size=15 readonly="readonly" Value="<%=fecha_ret%>" onKeyPress="fecha('%f',this);">
</tr>


<tr>
<td bgcolor="#FFCC66"><b>Tipo de Garantía:</b>&nbsp;&nbsp;&nbsp;
<select name="gtia">
<option selected><%=gtia%></option>
<option>DG</option>
<option>FG</option>
<option>GE</option>
<option>GTIA TALLER</option>
<option>ENPROCESO</option>
</select></td> </tr>

<tr>
<td bgcolor="#FFCC66"><b>Técnico Asignado :</b>&nbsp;&nbsp;&nbsp;
<select name="tecnico">
<option selected><%=tecnico%></option>
<option>HH</option>
<option>CM</option>
<option>VA</option>
<option>AA</option>
<option>AK</option>
<option>SM</option>
<option>JLV</option>
<option>GP</option>
<option>JD</option>
</select></td> </tr>



</table> <br> <br>
<input type="button" name="grabar" value="Modificar Datos" onclick='envia()'>&nbsp;&nbsp;


<BR> <BR><a href="../menu.asp"> <font face="Verdana" color="BLACK"> Volver A Menu </FONT></a>
</tr> </table> </b>




</center>
</form>
</BODY>
</HTML>
el codigo marcado con rojo es donde hace la consulta para llamar los datos, desplegarlos por pantalla y que el cliente modifique los datos, ademas, si no existe el registro....aparece "no existe el registro"
entonces creo que en esta parte tendria que hacer algo como
select * from tblcliente where csr like 'csr' and estado like 'revision'
y si es correcto.....diga "no se pueden modificar los datos" y de lo contrario...o sea si existe el registro y no se encuentra en revision....permita modificarlo

De antemano muchas gracias
  #2 (permalink)  
Antiguo 21/11/2007, 23:44
 
Fecha de Ingreso: octubre-2007
Mensajes: 191
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: Problema Con Modificar Datos

por favor amigos!!! necesito ayuda !!!!

ya logre hacer que si se intenta modificar los datos y el estado del registro (csr) se encuentra en estado entregado....el navegador redirige a una pantalla que dice "no se pueden modificar datos"
pero no logro hacer que se ejecute bien la segunda consulta...que tiene que seleccionar los datos para mostrarlos en el formulario para poder modificarlos...este es el codigo:

Cita:
<%


if Not IsEmpty(Request("csr")) then
csr = Request("csr")
end if

On Error Resume next

Dim Rs, Cnn, strSQL,usuarioconta,fechacuenta,timecuenta,ip,hech o, strSQL2, rs2
set Cnn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
Cnn.Open Session("cnx")

if Err.number <> 0 then
session("ErrorTitle")="Error prueba funka"
session("ErrorText")= "Error de Conexion :" & Err.description
Response.Redirect "onerror.asp"
end if

usuarioconta=Session("id_usuario")
fechacuenta=date()
timecuenta=time()
ip= Request.ServerVariables("REMOTE_HOST")





strSQL = "select * from Tblcliente"


se_encuentra = False

if se_encuentra then
strSQL=strSQL & " AND estado LIKE '%entregado'"
else
strSQL=strSQL & " WHERE estado LIKE '%entregado'"
se_encuentra=True
end if



if csr <> "" then
if se_encuentra then
strSQL=strSQL & " AND csr LIKE '%"&csr&"'"

se_encuentra=True
end if
end if



rs.Open strSQL, Cnn, 1, 2



If Not rs.EOF then
Response.Write "<SCRIPT LANGUAGE='JAVASCRIPT'>"
Response.Write "window.close()"
Response.Write "</SCRIPT>"
Response.Redirect("../existecsr.asp")



Else

strSQL2 = "select * from Tblcliente where csr='" & csr & "'"
rs.Open strSQL, Cnn, 1, 2



If Not rs.EOF then

csr = rs.Fields("csr")
nombre_cliente= rs.Fields ("nombre_cliente")
fecha_in= rs.Fields("fecha_in")
artefacto= rs.Fields("artefacto")
serie= rs.Fields("serie")
estado= rs.Fields("estado")

fecha_ret= rs.Fields("fecha_ret")

gtia= rs.Fields("gtia")
tecnico= rs.Fields("tecnico")

comentarios= rs.Fields("comentarios")


End If

end if

if not rs.EOF then

%>

<%

%>
<font face="Verdana" color="BLACK">
<h2>
<%
Response.Write( "Los Datos del Cliente De CSR: ")
%>
</h2>
<h3>
<%
Response.Write( "<TD><b>" & rs.Fields("csr")& "</b></TD>" ) %>
<b>-</b>
<%
Response.Write( "<TD><b>"& rs.Fields("nombre_cliente")& "</b></TD>" )
%> &nbsp;&nbsp;

</h3>
</font>
<%
end if
rs.Close
set rs = nothing
Cnn.Close
set Cnn = nothing
%>

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD>
<body BACKGROUND ="2.jpg" bgcolor="#000000" text="#000000" vlink="#ffffff" alink="#ffffff">
<script language="javascript">
function nombre1(cadena,obj)
{
opc=false;
if (cadena='%n')
{if (event.keyCode>96 && event.keyCode<123)
opc=true;
}

if (cadena =="%n")
{ if (event.keyCode>64 && event.keyCode <89)
opc=true;
}

if (cadena =="%n")
{ if (event.keyCode>31 && event.keyCode <33)
opc=true;
}
if(opc==false)
{
event.returnValue=false;
}
}

function numero(cadena,obj)
{
opc=false;
if (cadena='%n')
{if (event.keyCode>47 && event.keyCode<58)
opc=true;
}

if(opc==false)
{
event.returnValue=false;
}
}


function guias(cadena,obj)
{
opc=false;
if (cadena =="%g")
{if (event.keyCode>47 && event.keyCode<58)
opc=true;
}

if (cadena='%g')
{if (event.keyCode>44 && event.keyCode<46)
opc=true;
}
if (cadena='%g')
{if (event.keyCode>96 && event.keyCode<123)
opc=true;
}

if (cadena =="%g")
{ if (event.keyCode>64 && event.keyCode <89)
opc=true;
}

if (cadena =="%g")
{ if (event.keyCode>31 && event.keyCode <33)
opc=true;
}




if(opc==false)
{
event.returnValue=false;
}
}


function fecha(cadena,obj)
{
opc=false;

if (cadena='%f')
{if (event.keyCode>46 && event.keyCode<58)
opc=true;
}

if (cadena='%f')
{if (event.keyCode>44 && event.keyCode<46)
opc=true;
}



if(opc==false)
{
event.returnValue=false;
}
}


function envia()
{
alert ('SE VA MODIFICAR LOS DATOS DEL CLIENTE')
document.valactual.action = '/bodega/scripts/actualcorreclie.asp?csr=' + document.valactual.csr.value + '&nombre_cliente='+ document.valactual.nombre_cliente.value + '&artefacto=' + document.valactual.artefacto.value + '&serie='+ document.valactual.serie.value + '&estado='+ document.valactual.estado.value + '&gtia='+ document.valactual.gtia.value + '&tecnico='+ document.valactual.tecnico.value + '&comentarios='+ document.valactual.comentarios.value ;

document.valactual.method="POST";
document.valactual.submit();
}

</script>

<center>
<FORM ACTION='' METHOD='POST' id=valactual name=valactual>
<font face="Verdana" color="BLACK">
<b>
<TABLE WIDTH=402 BORDER=1 align="center" CELLPADDING="5" CELLSPACING="1" bordercolor="#0000FF">

<tr>
<td width="386" ><b>Csr :</b>&nbsp; &nbsp;&nbsp; &nbsp;
<input type="text" name="csr" id="csr" size=10 readonly="readonly" Value="<%=csr%>" onKeyPress="numero('%n',this);">
<tr>
<td ><b>Nombre Cliente :</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="nombre_cliente" id="nombre_cliente" size=30 Value="<%=nombre_cliente%>" >
</tr>
<tr>




<tr> <td ><b>Artefacto :</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="artefacto" id="artefacto" size=30 Value="<%=artefacto%>" onKeyPress="guias('%g',this);"></td>
<tr> <td ><b>Serie :</b>&nbsp;&nbsp;
<input type="text" name="serie" id="serie" size=15 Value="<%=serie%>" onKeyPress="guias('%g',this);"> </td> </tr>
<tr> <td ><b>Estado :</b>&nbsp;
<select name="estado">
<option selected><%=estado%></option>
<option>REVISION</option>
<option>PXR</option>
<option>SCA</option>
<option>OK</option>
<option>ENTREGADO</option>
<option>EN PROCESO</option>
<option>COTIZACION</option>
<option>DC</option>
</select></td> </tr>
<td ><b>Fecha Ingreso:</b> &nbsp; &nbsp;
<input type="text" name="fecha_in" id="fecha_in" size=15 readonly="readonly" Value="<%=fecha_in%>" onKeyPress="fecha('%f',this);"></td>
</tr>

<tr>
<td ><b>Fecha de Status / Retiro :</b>&nbsp;&nbsp;&nbsp;
<input type="text" name="fecha_ret" id="fecha_ret" size=15 readonly="readonly" Value="<%=fecha_ret%>" onKeyPress="fecha('%f',this);">
</tr>


<tr>
<td ><b>Tipo de Garantía:</b>&nbsp;&nbsp;&nbsp;
<select name="gtia">
<option selected><%=gtia%></option>
<option>DG</option>
<option>FG</option>
<option>GE</option>
<option>GTIA TALLER</option>


</select></td> </tr>

<tr>
<td ><b>Técnico Asignado :</b>&nbsp;&nbsp;&nbsp;
<select name="tecnico">
<option selected><%=tecnico%></option>
<option>HH</option>
<option>CM</option>
<option>VA</option>
<option>AA</option>
<option>AK</option>
<option>SM</option>
<option>JLV</option>
<option>GP</option>
<option>JD</option>
</select></td> </tr>
<tr> <td bgcolor><b>Comentarios :</b>
<input type="text" name="comentarios" id="comentarios" size=30 Value="<%=comentarios%>" ></td> </tr>


</table> <br> <br>
<center> <input type="button" name="grabar" value="Modificar Datos" onclick='envia()'>&nbsp;&nbsp;



</tr> </table> </b>



<hr size=1> <center> <b> <i>

<BR>
<BR>

</form>
</BODY>
</HTML>
el codigo marcado con rojo es la primera consulta....que valida el campo csr y si su estado es 'entregado' redirige a una pantalla que manda el mensaje que no se puede modificar....entonces el codigo marcado con azul es la segunda consulta que no se me quiere ejecutar.....que es la que llama a los campos para llenar el formulario y que el cliente pueda modificar......
De antemano muchas gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:32.