Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/08/2007, 05:02
Avatar de TCL_ZIP
TCL_ZIP
 
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 21 años, 3 meses
Puntos: 4
Reduccion de lineas/optimización de codigo

Mi duda es sobre como puedo reducir el numero de lineas de 2 arrays, ya que por lo visto, el internet explorer me peta cuando hay tantas lineas y no es capaz de llegar a leer mis arrays. mi codigo es el siguiente:

Quitando el ASP
Código PHP:
var componentes_array = new Array();
var 
componentes_proveedores = new Array();

componentes_array["identificador1"]= "Descripción 1" ;
componentes_proveedores["identificador1"]= "segundocodigo1" ;
componentes_array["identificador2"]= "Descripción 2" ;
componentes_proveedores["identificador2"]= "segundocodigo2" ;
componentes_array["identificador3"]= "Descripción 3" ;
componentes_proveedores["identificador3"]= "segundocodigo3" ;
componentes_array["identificador4"]= "Descripción 4" ;
componentes_proveedores["identificador4"]= "segundocodigo4" ;
' Asi hasta 30.000 registros (contando los que hay como 4)
function describir(id) {
 return (componentes_array[id] == undefined) ? "No existe dicho componente" : componentes_array[id];
}
function proveedor(id){
 document.forms['
form1']['PROVEEDOR].value componentes_proveedores[id];

Con codigo asp(original)
Código PHP:
var componentes_array = new Array();
var 
componentes_proveedores = new Array();
<%
While ((
Repeat1__numRows <> 0) AND (NOT componentes.EOF))
%>

componentes_array["<%=(Replace(componentes.Fields.Item("CODART").Value, chr(34), "'") )%>"]= "<%=(Replace(" "&componentes.Fields.Item("DESCRIP").Value, chr(34), "'") )%>" ;
componentes_proveedores["<%=(Replace(componentes.Fields.Item("CODART").Value, chr(34), "'") )%>"]= "<%=(componentes.Fields.Item("CODPRO").Value)%>" ;

<% 
  Repeat1__index=Repeat1__index+1
  Repeat1__numRows=Repeat1__numRows-1
  componentes.MoveNext()
Wend
%>

function describir(id) {
 return (componentes_array[id] == undefined) ? "No existe dicho componente" : componentes_array[id];
}
function proveedor(id){
 document.forms['
form1']['PROVEEDOR].value componentes_proveedores[id];


que son llamadas desde estos 2 botones:
Código PHP:
<button type="button" onclick="COMPOPRODDESC.value = describir(COMPOPRODID.value)" >obtener descripción </button
        <
button type="button" onclick="proveedor(COMPOPRODID.value)" >proveedor</button

Me interesaria optimizar la distribución de las arrays, haciendo una array bidimensional envez de 2 arrays, o nose :S el echo es que en firefox me funciona perfectamente pero en ie, me da errores de sintaxis en una linea que se genera, que claramente no tiene:

componentes_array["5029766769988"]= " UPG AFTER EFFECTS STD V7UPG STD-STD SP" ;

en el contexto:
Código PHP:
componentes_array["5029766769926"]= " AFTER EFFECTS STD V7RET                              SP" ;
componentes_proveedores["5029766769926"]= "6" ;



componentes_array["5029766769988"]= " UPG AFTER EFFECTS STD V7UPG STD-STD                      SP" ;
componentes_proveedores["5029766769988"]= "6" ;



componentes_array["5029766770083"]= " AFTER EFFECTS PB 7 WIN INGLES" 
la linea pertenece a la linea: 81.928

P.D.:Ya tuve que ampliar el aspbuffer para poder ejecutar el escript, y en total contiene: 153.161 lineas