Hola, tengo un problema a la hora de recoger unas varibles del cliente desde el servidor. Me seria de gran ayuda si alguien puede darme una solucion xq llevo rompiendome la cabeza toda la semana, he probado infinidad de cosas.
El problema es que he creado un formulario emergente, en que se rellenan 8 campos, el caso es que he conseguido recoger el valor introducido en unas variables del propio cliente, el caso es que no consigo recogerlas en el servidor.
Os pongo el código del evento que lanza el boton del formulario:
function gvenemph_event(form) {
var fields = form.getFieldsArray();
var tipdoc = "";
var fecmov = "";
var delega = "";
var agente = "";
var coment = "";
var terenv = "";
var depart = "";
var almori = "";
var sql3 = "";
for (var name in fields)
{
if (name == "tipdoc")
{
tipdoc = fields [name];
alert("tipdoc:" + tipdoc );
}
if (name == "fecmov")
{
fecmov = fields [name];
alert("fecmov:" + fecmov);
}
if (name == "delega")
{
delega = fields [name];
alert("delega:" + delega);
}
if (name == "almori")
{
almori = fields [name];
alert("almori:" + almori);
}
if (name == "agente")
{
agente = fields [name];
alert("agente:" + agente);
}
if (name == "depart")
{
depart = fields [name];
alert("depart:" + depart);
}
if (name == "coment")
{
coment = fields [name];
alert("coment :" + coment );
}
if (name == "terenv")
{
terenv = fields [name];
alert("TERENV:" + terenv);
}
}
// Esto son unas pruebas que he echo para ver si se creaba bien la
// cadena con los parametros que tengo que enviar a un
// procedimiento PL/SQL.
sql3 += "execute procedure gvenemph_copia(" + <%= isdmbean.getColumnStringValue("cabid")%>;
alert (sql3);
sql3 += ",'" + tipdoc + "'," + LOCALE_dateToMDY(fecmov);
alert (sql3);
sql3 += ",'" + almori + "','" + delega + "','";
alert (sql3);
sql3 += agente + "','" + depart + "','";
alert (sql3);
sql3 += coment + "','" + terenv + "')";
alert (sql3);
// Aqui viene el gran problema:
// Intento recoger esos parametros(la fecha le he puesto yo a mano xq
// da un error de formato que ya me ocupare de el más tarde.
// El caso es que la cadena que envia no recoge nada, recoge todo null.
// Abajo del todo os pongo el error que me da
<%
String sql4 = new String();
String sql5 = new String();
sql4 = request.getParameter("tipdoc") + "', '27-07-2006','" + request.getParameter("almori") + "','" + request.getParameter("delega") + "','" + request.getParameter("agente") + "','" + request.getParameter("depart") + "','" + request.getParameter("coment") + "','" + request.getParameter("terenv");
sql5 = "execute procedure gvenemph_copia(" + isdmbean.getColumnStringValue("cabid") + ",'" + sql4 + "')";
%>
execute_StatementAndRefresh("<%= sql5 %>" , "<%= isdmbean.computeCRC(sql5) %>");
}
//ERROR:
// El error se debe a que el tipo de documento no existe, además de
// que la tabla no admite NULL en la mayoria de los campos que le
// estoy pasando. La fecha, de no se xq yo le paso una por defecto,
// tambien recoge un NULL. Pero entonces daba un error de formato de fecha.
E -746 : Tipo de Documento :[null] inexistente
SQLExceptionInfo: Pool: {1} execute procedure gvenemph_copia(1515,'null', '27-07-2006','null','null','null','null','null','null')
Si alguien pudiera echarme una mano le estaria muy agradecido xq estoy completamente desesperado.
Muchas Gracias de antemano.