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

Error al Modificar un campo MEMO

Estas en el tema de Error al Modificar un campo MEMO en el foro de ASP Clásico en Foros del Web. Buenas, este es mi primer mensaje en este foro. La verdad es que no domino mucho el tema de ASP, tan solo lo que me ...
  #1 (permalink)  
Antiguo 08/06/2007, 06:06
Avatar de reivajinidrap  
Fecha de Ingreso: junio-2007
Mensajes: 6
Antigüedad: 17 años
Puntos: 0
Error al Modificar un campo MEMO

Buenas, este es mi primer mensaje en este foro.

La verdad es que no domino mucho el tema de ASP, tan solo lo que me deja hacer el Dreamweaver.

El tema es el siguiente, tengo una pagina con un formulario para modificar los campos de una tabla, pero cuando quiero modificar un campo MEMO me da el siguiente error:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis en la instrucción UPDATE.

/COMUNICACIONES/contactos-modificacion.asp, línea 111

El caso es que agrego ese campo para modificar, es decir lo dejo en ignorar el error no me sale y guarda todo correctamente, no se que es lo que puede ser. Os dejo el codigo de la pagina. Ya, ya se que me vais a decir que si los nombres de los campos están mal, que si tienen acentos y tal y tal, pero es una base de datos que esta ya hecha y no puedo modificarlo sin tener que cambiar todos los formularios, consultas y demas, de todas formas el campo Notas no tiene ningún caracter extraño. Os copio el codigo y gracias de antemano.

Última edición por reivajinidrap; 08/06/2007 a las 06:23
  #2 (permalink)  
Antiguo 08/06/2007, 06:08
Avatar de reivajinidrap  
Fecha de Ingreso: junio-2007
Mensajes: 6
Antigüedad: 17 años
Puntos: 0
Codigo de la Aplicacion

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/contactos_conn.asp" -->
<%
' *** Edit Operations: declare variables

Dim MM_editAction
Dim MM_abortEdit
Dim MM_editQuery
Dim MM_editCmd

Dim MM_editConnection
Dim MM_editTable
Dim MM_editRedirectUrl
Dim MM_editColumn
Dim MM_recordId

Dim MM_fieldsStr
Dim MM_columnsStr
Dim MM_fields
Dim MM_columns
Dim MM_typeArray
Dim MM_formVal
Dim MM_delim
Dim MM_altVal
Dim MM_emptyVal
Dim MM_i

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
MM_abortEdit = false

' query string to execute
MM_editQuery = ""
%>
<%
' *** Update Record: set variables

If (CStr(Request("MM_update")) = "form1" And CStr(Request("MM_recordId")) <> "") Then

MM_editConnection = MM_contactos_conn_STRING
MM_editTable = "Contactos"
MM_editColumn = "CodigoCliente"
MM_recordId = "" + Request.Form("MM_recordId") + ""
MM_editRedirectUrl = "detallecontactos.asp"
MM_fieldsStr = "Empresa|value|web|value|Nombre|value|Apellidos|va lue|email|value|generico|value|generico2|value|fec hanacimiento|value|cargo|value|alias|value|direcci on|value|poblacion|value|cp|value|provincia|value| pais|value|telefono1|value|telefono2|value|telefon o3|value|fax|value|TextNotas|value"
MM_columnsStr = "Empresa|',none,''|WEB|',none,''|Nombre|',none,''| Apellidos|',none,''|E-MAIL|',none,''|emailGENERICO|none,1,0|emailICT|non e,1,0|[Fecha de Nacimiento]|',none,NULL|Cargo|',none,''|Alias|',none,''|Direc ción|',none,''|Poblacion|',none,''|[Codigo Postal]|',none,''|Ciudad|',none,''|Pais|',none,''|Teléfon o1|',none,''|Teléfono2|',none,''|Telefono3|',none, ''|FAX|',none,''|Notas|',none,''"

' create the MM_fields and MM_columns arrays
MM_fields = Split(MM_fieldsStr, "|")
MM_columns = Split(MM_columnsStr, "|")

' set the form values
For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i)))
Next

' append the query string to the redirect URL
If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
End If
End If

End If
%>
<%
' *** Update Record: construct a sql update statement and execute it

If (CStr(Request("MM_update")) <> "" And CStr(Request("MM_recordId")) <> "") Then

' create the sql update statement
MM_editQuery = "update " & MM_editTable & " set "
For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_formVal = MM_fields(MM_i+1)
MM_typeArray = Split(MM_columns(MM_i+1),",")
MM_delim = MM_typeArray(0)
If (MM_delim = "none") Then MM_delim = ""
MM_altVal = MM_typeArray(1)
If (MM_altVal = "none") Then MM_altVal = ""
MM_emptyVal = MM_typeArray(2)
If (MM_emptyVal = "none") Then MM_emptyVal = ""
If (MM_formVal = "") Then
MM_formVal = MM_emptyVal
Else
If (MM_altVal <> "") Then
MM_formVal = MM_altVal
ElseIf (MM_delim = "'") Then ' escape quotes
MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"
Else
MM_formVal = MM_delim + MM_formVal + MM_delim
End If
End If
If (MM_i <> LBound(MM_fields)) Then
MM_editQuery = MM_editQuery & ","
End If
MM_editQuery = MM_editQuery & MM_columns(MM_i) & " = " & MM_formVal
Next
MM_editQuery = MM_editQuery & " where " & MM_editColumn & " = " & MM_recordId

If (Not MM_abortEdit) Then
' execute the update
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close

If (MM_editRedirectUrl <> "") Then
Response.Redirect(MM_editRedirectUrl)
End If
End If

End If
%>
<%
Dim Recordset1__MMColParam
Recordset1__MMColParam = "1"
If (Request.QueryString("CodigoCliente") <> "") Then
Recordset1__MMColParam = Request.QueryString("CodigoCliente")
End If
%>

<%
Dim Recordset1
Dim Recordset1_numRows

Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_contactos_conn_STRING
Recordset1.Source = "SELECT * FROM Contactos WHERE CodigoCliente = " + Replace(Recordset1__MMColParam, "'", "''") + " ORDER BY CodigoCliente ASC"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 3
Recordset1.Open()

Recordset1_numRows = 0
%>
  #3 (permalink)  
Antiguo 08/06/2007, 06:09
Avatar de reivajinidrap  
Fecha de Ingreso: junio-2007
Mensajes: 6
Antigüedad: 17 años
Puntos: 0
Continuacion codigo

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "...">
<html xmlns="...">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
<link href="estilos.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Estilo1 {color: #00FFFF}
body {
background-color: #CCCCCC;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
</head>

<body>
<form ACTION="<%=MM_editAction%>" METHOD="POST" id="form1" name="form1">
<table width="100%" height="100%" border="0">
<tr>
<td><p>&nbsp;</p>
<table width="1040" border="1" align="center" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#00FFFF">
<tr>
<th colspan="8" bgcolor="#0099FF"><div align="center"><strong>Ficha Cliente </strong></div></th>
</tr>
<tr>
<td width="112" bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Codigo de Cliente:</div></td>
<td colspan="7" bordercolor="#0000FF" bgcolor="#00FFFF"><%=(Recordset1.Fields.Item("Codi goCliente").Value)%></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Empresa:</div></td>
<td colspan="5" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="Empresa" type="text" id="Empresa" value="<%=(Recordset1.Fields.Item("Empresa").Value )%>" size="100%" />
</strong></td>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">WEB:</div></td>
<td bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="web" type="text" id="web" value="<%=(Recordset1.Fields.Item("WEB").Value)%>" />
</strong></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Contacto:</div></td>
<td colspan="7" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="Nombre" type="text" id="Nombre" value="<%=(Recordset1.Fields.Item("Nombre").Value) %>" />
</strong><strong>
<input name="Apellidos" type="text" id="Apellidos" value="<%=(Recordset1.Fields.Item("Apellidos").Val ue)%>" size="50" />
</strong>
<div align="right"></div></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">E-MAIL:</div></td>
<td colspan="2" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="email" type="text" id="email" value="<%=(Recordset1.Fields.Item("E-MAIL").Value)%>" />
</strong></td>
<td bordercolor="#0000FF" bgcolor="#00FFFF">E-Mail Gen&eacute;rico:
<label>
<input name="generico" type="checkbox" id="generico" value="1" <%If (CStr(Abs((Recordset1.Fields.Item("emailGENERICO") .Value))) = CStr("1")) Then Response.Write("checked=""checked""") : Response.Write("")%> />
</label></td>
<td colspan="2" bordercolor="#0000FF" bgcolor="#00FFFF">E-Mail ICT:
<label>
<input <%If (CStr(Abs((Recordset1.Fields.Item("emailICT").Valu e))) = CStr("1")) Then Response.Write("checked=""checked""") : Response.Write("")%> name="generico2" type="checkbox" id="generico2" value="1" />
</label></td>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><strong>Fecha de Nacimiento</strong></td>
<td bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="fechanacimiento" type="text" id="fechanacimiento" value="<%=(Recordset1.Fields.Item("Fecha de Nacimiento").Value)%>" />
</strong></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Cargo:</div></td>
<td colspan="3" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="cargo" type="text" id="cargo" value="<%=(Recordset1.Fields.Item("Cargo").Value)% >" />
</strong></td>
<td width="65" bgcolor="#00FFFF"><div align="right">Alias:</div></td>
<td colspan="3" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="alias" type="text" id="alias" value="<%=(Recordset1.Fields.Item("Alias").Value)% >" />
</strong></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Dirección:</div></td>
<td colspan="7" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="direccion" type="text" id="direccion" value="<%=(Recordset1.Fields.Item("Dirección").Val ue)%>" size="125" />
</strong></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Poblacion:</div></td>
<td width="143" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="poblacion" type="text" id="poblacion" value="<%=(Recordset1.Fields.Item("Poblacion").Val ue)%>" />
</strong></td>
<td width="103" bgcolor="#00FFFF"><div align="right">Codigo Postal:</div></td>
<td width="179" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="cp" type="text" id="cp" value="<%=(Recordset1.Fields.Item("Codigo Postal").Value)%>" size="5" />
</strong></td>
<td bgcolor="#00FFFF"><div align="right">Provincia:</div></td>
<td width="139" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="provincia" type="text" id="provincia" value="<%=(Recordset1.Fields.Item("Ciudad").Value) %>" />
</strong></td>
<td colspan="2" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="pais" type="text" id="pais" value="<%=(Recordset1.Fields.Item("Pais").Value)%> " />
</strong></td>
</tr>
  #4 (permalink)  
Antiguo 08/06/2007, 06:10
Avatar de reivajinidrap  
Fecha de Ingreso: junio-2007
Mensajes: 6
Antigüedad: 17 años
Puntos: 0
Codigo de la Aplicacion

<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Teléfono 1:</div></td>
<td bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="telefono1" type="text" id="telefono1" value="<%=(Recordset1.Fields.Item("Teléfono1").Val ue)%>" />
</strong></td>
<td bgcolor="#00FFFF"><div align="right">Teléfono 2:</div></td>
<td bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="telefono2" type="text" id="telefono2" value="<%=(Recordset1.Fields.Item("Teléfono2").Val ue)%>" />
</strong></td>
<td bgcolor="#00FFFF"><div align="right">Telefono 3:</div></td>
<td bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="telefono3" type="text" id="telefono3" value="<%=(Recordset1.Fields.Item("Telefono3").Val ue)%>" />
</strong></td>
<td width="118" bgcolor="#00FFFF"><div align="right">FAX:</div></td>
<td width="138" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="fax" type="text" id="fax" value="<%=(Recordset1.Fields.Item("FAX").Value)%>" />
</strong></td>
</tr>
</table>
<p>&nbsp;</p></td>
<td width="257">&nbsp;</td>
</tr>
<tr>
<td><p>&nbsp;</p>
<table width="1040" border="1" align="center" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#00FFFF">
<tr>
<th colspan="8" bgcolor="#0099FF"><div align="center"><strong>Datos Fiscales </strong></div></th>
</tr>
<tr>
<td width="112" bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Raz&oacute;n Social: </div></td>
<td colspan="5" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="RazonSocial" type="text" id="RazonSocial" value="<%=(Recordset1.Fields.Item("RazonSocial").V alue)%>" size="110" />
</strong></td>
<td width="33" bordercolor="#0000FF" bgcolor="#00FFFF"><div align="right">NIF:</div></td>
<td width="125" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="telefono32" type="text" id="telefono32" value="<%=(Recordset1.Fields.Item("NIF").Value)%>" />
</strong></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Direcci&oacute;n:</div></td>
<td colspan="7" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="DireccionSocial" type="text" id="DireccionSocial" value="<%=(Recordset1.Fields.Item("Domicilio Social").Value)%>" size="110" />
</strong></td>
</tr>
<tr>
<td bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Poblacion:</div></td>
<td width="185" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="PoblacionSocial" type="text" id="PoblacionSocial" value="<%=(Recordset1.Fields.Item("PoblacionDomSoc ").Value)%>" />
</strong></td>
<td width="103" bgcolor="#00FFFF"><div align="right">Codigo Postal:</div></td>
<td width="204" bordercolor="#0000FF" bgcolor="#00FFFF"><strong></strong><strong>
<input name="CPSocial" type="text" id="CPSocial" value="<%=(Recordset1.Fields.Item("CodigoPostalDom Soc").Value)%>" size="5" />
</strong></td>
<td width="65" bgcolor="#00FFFF"><div align="right">Provincia:</div></td>
<td width="168" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="ProvinciaSocial2" type="text" id="ProvinciaSocial2" value="<%=(Recordset1.Fields.Item("CiudadDomSoc"). Value)%>" />
</strong></td>
<td colspan="2" bordercolor="#0000FF" bgcolor="#00FFFF"><strong>
<input name="PaisSocial2" type="text" id="PaisSocial2" value="<%=(Recordset1.Fields.Item("PaisDomSoc").Va lue)%>" />
</strong></td>
</tr>
</table>

<p>&nbsp;</p></td>
<td width="257">&nbsp;</td>
</tr>
<tr>
<td><p>&nbsp;</p>
<table width="1040" border="1" align="center" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF">
<tr>
<td colspan="5" bgcolor="#0099FF"><div align="center"><strong>Otros</strong></div></td>
</tr>
<tr>
<td width="12%" bordercolor="#0000FF" bgcolor="#00FFFF"><div align="center">Cliente:
<input name="cliente" type="radio" value="radiobutton" />
</div></td>
<td width="12%" bordercolor="#0000FF" bgcolor="#00FFFF"><div align="center">Proveedor:
<input name="Proveedor" type="radio" value="radiobutton" />
</div></td>
<td width="12%" bordercolor="#0000FF" bgcolor="#00FFFF"><div align="center">Intermediario:
<input name="intermediario" type="radio" value="radiobutton" />
</div></td>
<td width="12%" bordercolor="#0000FF" bgcolor="#00FFFF"><div align="center">ClientePotencial:
<input name="clientepotencial" type="radio" value="radiobutton" />
</div></td>
<td width="55%" bgcolor="#00FFFF">Notas:</td>
</tr>
<tr>
<td width="12%" bgcolor="#00FFFF"><div align="right">Presentador:</div></td>
<td width="12%" bgcolor="#00FFFF"><strong></strong></td>
<td width="12%" bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Segmento:</div></td>
<td width="12%" bordercolor="#0000FF" bgcolor="#00FFFF"><strong></strong></td>
<td width="55%" rowspan="3" valign="top" bordercolor="#0000FF" bgcolor="#00FFFF"><strong></strong>
<textarea name="TextNotas" cols="100" rows="5" id="TextNotas"><%=(Recordset1.Fields.Item("Notas") .Value)%></textarea></td>
</tr>
<tr>
<td width="12%" bgcolor="#00FFFF"><div align="right">Potencial:</div></td>
<td width="12%" bgcolor="#00FFFF"><strong></strong></td>
<td width="12%" bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Subcuenta</div></td>
<td width="12%" bordercolor="#0000FF" bgcolor="#00FFFF"><strong></strong></td>
</tr>
<tr>
<td width="12%" height="16" bordercolor="#FFFFFF" bgcolor="#00FFFF"><div align="right">Regalo Navidad02</div></td>
<td colspan="3" bordercolor="#0000FF" bgcolor="#00FFFF">&nbsp;</td>
</tr>
</table>
<p align="center">
<input name="button3" type="button" onclick="location='contactos-modificacion.asp?CodigoCliente=<%=(Recordset1.Fiel ds.Item("CodigoCliente").Value)-1%>'" value="Anterior" />
<input name="Guardar" type="submit" id="Guardar" value="Guardar Cambios" />
<input name="button" type="button" onclick="location='detallecontactos.asp?CodigoClie nte=<%=(Recordset1.Fields.Item("CodigoCliente").Va lue)%>'" value="Cancelar" />
<input name="button2" type="button" onclick="location='contactos-modificacion.asp?CodigoCliente=<%=(Recordset1.Fiel ds.Item("CodigoCliente").Value)+1%>'" value="Siguiente" />
</p></td>
<td width="257">&nbsp;</td>
</tr>
</table>







<input type="hidden" name="MM_update" value="form1">
<input type="hidden" name="MM_recordId" value="<%= Recordset1.Fields.Item("CodigoCliente").Value %>">
</form>
<p>&nbsp;</p>

<p>&nbsp;</p>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>
  #5 (permalink)  
Antiguo 08/06/2007, 11:56
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 17 años, 3 meses
Puntos: 88
Re: Error al Modificar un campo MEMO

mucho codigo no es asi?

el caso de todo esto es que se te impide insertar un campo nulo
vease la siguiente pagina

asi que compañero, creo que tendras que mirar primero tu base de datos y chekar que campos has puesto que no se le permita campo NULL o VACIO, de ahi, ya que sepas que campos son, vienes al codigo y en las sentencias UPDATE e INSERTAR, cambias esos valores a 0(cero), para que no te siga dando errores

suerte
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #6 (permalink)  
Antiguo 11/06/2007, 01:46
Avatar de reivajinidrap  
Fecha de Ingreso: junio-2007
Mensajes: 6
Antigüedad: 17 años
Puntos: 0
Re: Error al Modificar un campo MEMO

Muchas Gracias Shiryu_Libra

Voy a comprobarlo
  #7 (permalink)  
Antiguo 11/06/2007, 01:52
Avatar de reivajinidrap  
Fecha de Ingreso: junio-2007
Mensajes: 6
Antigüedad: 17 años
Puntos: 0
Re: Error al Modificar un campo MEMO

Ya lo he solucionado, es curioso, tan solo con poner el campo NOTAS entre corchetes, y se ha solucionado, ya me paso con el campo E-Mail...

Esto de usar una base de datos que no he hecho y que esta muy mal estructurada....

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 15:32.