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

Error de Microsoft VBScript (solo para expertos)

Estas en el tema de Error de Microsoft VBScript (solo para expertos) en el foro de ASP Clásico en Foros del Web. mesale el siguiente error Error de Microsoft VBScript en tiempo de ejecución error '800a0009' El subíndice está fuera del intervalo: '[number: -1]' /ranking/Ranking_Arquitop_Votos.asp, line 236 ...
  #1 (permalink)  
Antiguo 08/01/2003, 04:23
Avatar de Musika  
Fecha de Ingreso: junio-2002
Mensajes: 72
Antigüedad: 22 años
Puntos: 0
Error de Microsoft VBScript (solo para expertos)

mesale el siguiente error

Error de Microsoft VBScript en tiempo de ejecución error '800a0009'

El subíndice está fuera del intervalo: '[number: -1]'

/ranking/Ranking_Arquitop_Votos.asp, line 236


necesito AYUDA URGENTE!!!!
__________________
La mejor forma de enseñar es aprendiendo
------------------------------------------------
Un pokitin de Musika en tu Vida
  #2 (permalink)  
Antiguo 08/01/2003, 04:32
Avatar de Antonito  
Fecha de Ingreso: noviembre-2001
Ubicación: en la red
Mensajes: 446
Antigüedad: 22 años, 6 meses
Puntos: 3
¿Solo expertos? yo no lo soy y me dio ese error al recorrer una matriz, por lo de siempre, el subindice está fuera del intervalo.

No se si es eso, pero seguro que ayuda si pegas el código de la página, o el bucle en el que te da.

Saludos.
  #3 (permalink)  
Antiguo 08/01/2003, 05:00
Avatar de Musika  
Fecha de Ingreso: junio-2002
Mensajes: 72
Antigüedad: 22 años
Puntos: 0
coloco el codigo

<%

Dim NombreMes(13)
NombreMes(1)="Enero"
NombreMes(2)="Febrero"
NombreMes(3)="Marzo"
NombreMes(4)="Abril"
NombreMes(5)="Mayo"
NombreMes(6)="Junio"
NombreMes(7)="Julio"
NombreMes(8)="Agosto"
NombreMes(9)="Setiembre"
NombreMes(10)="Octubre"
NombreMes(11)="Noviembre"
NombreMes(12)="Diciembre"

function DiasDelMes(XMes, XAnio)
if XMes = 4 or XMes = 6 or XMes = 9 or XMes = 11 then
dias = 30
elseif XMes = 2 AND XAnio/4 = int(XAnio/4) then
dias = 29
elseif XMes = 2 then
dias = 28
else
dias = 31
end if
DiasDelMes = dias
end function

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0051)http://www.mipagina.com/ranking_arquitop.html -->
<HTML><HEAD><TITLE>Ranking Arquitop</TITLE>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type><!-- FreeFind No Index Page -->
<META content="MSHTML 5.00.2614.3500" name=GENERATOR>
<STYLE type=text/css>P.indent {
TEXT-INDENT: 0.2in
}
TD.barra {
COLOR: #004085; FONT-FAMILY: Verdana,Arial, Helvetica, Swiss, Geneva, sans-serif; FONT-SIZE: 13pt; FONT-WEIGHT: bold
}
TD.estadistica {
FONT-FAMILY: Verdana, Arial, Helvetica, Swiss, Geneva, sans-serif; FONT-SIZE: 8pt
}
TD.central {
FONT-FAMILY: Verdana, Arial, Helvetica, Swiss, Geneva, sans-serif; FONT-SIZE: 10px
}
TD.menu {
FONT-FAMILY: Verdana, Arial, Helvetica, Swiss, Geneva, sans-serif; FONT-SIZE: 8pt
}
TD.ranking {
FONT-FAMILY: Verdana, Arial, Helvetica, Swiss, Geneva, sans-serif; FONT-SIZE: 10px;
}
A:link {
TEXT-DECORATION: none
}
A:visited {
TEXT-DECORATION: none
}
</STYLE>

<SCRIPT language=JavaScript>
<!--
function MM_swapImgRestore() { //v3.0
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v3.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</SCRIPT>

<SCRIPT language=JavaScript>
function SizeWin() {
open("voto.html", "Sizewindow", "width=500,height=550,scrollbars=yes,toolbar=n o");
}
</SCRIPT>
<!-- NO ME ENCIERRE LA PAGINA -->
<SCRIPT language=JavaScript>
<!--- Se esconde el codigo a navegadores sin JS
if (window != window.top)
top.location.href = location.href;
// -->
</SCRIPT>
<!-- FIN DE NO ME ENCIERRE LA PAGINA --></HEAD>
<BODY bgColor=#fbe0a7 leftMargin=0
onload="MM_preloadImages('graficos/voto3.gif')" topMargin=0 marginheight="0"
marginwidth="0"><!--VENTANITA QUE SE ABRE --COMIENZO-->
<SCRIPT language=JavaScript>
function winopen1() {
msg1=open("mini.htm","Homepage","toolbar=no,locati on=no,directories=no,status=no,menubar=no,scrollba rs=no,resizable=no,copyhistory=no,width=150,height =150");
}
</SCRIPT>
<!--VENTANITA QUE SE ABRE --FIN--><!--TABLA GENERAL --COMIENZO-->
<TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">
<TBODY>
<TR>
<TD align=middle colSpan=3><!-- TABLA DEL BANNER ---INICIO--->
<TABLE border=0 cellPadding=0 cellSpacing=0>
<TBODY>
<TR>
<TD align=middle bgColor=#999999 height=61><A
href="http://www.mipagina.com/"><IMG border=0 height=55
src="http://www.mipagina.com/graficos/logogris.jpg" width=120></A> </TD>
<TD align=right bgColor=#999999 vAlign=top>
<CENTER>
<SCRIPT language=Javascript>
if (! (RN)) {
var RN = new String (Math.random());
var RNS = RN.substring (2, 11);
}
document.writeln('<A HREF="http://banners.konouz.net/cgibin/banners/redirect.cgi/obrasyreformas'+RNS+'">');
document.writeln('<IMG SRC="http://banners.konouz.net/cgibin/banners/getimage.cgi/obrasyreformas'+RNS+'?REGION=obrasyreformas" border=0></A>');
</SCRIPT>
</CENTER></TD></TR>
<TR>
<TD colSpan=2><IMG border=0 height=19
src="http://www.mipagina.com/graficos/navbar_arquitop.gif" useMap=#navbar
width=610> <MAP name=navbar><AREA coords=0,0,47,19
href="http://www.mipagina.com/index.html" shape=RECT><AREA
coords=47,0,102,19 href="http://www.mipagina.com/altas.html"
shape=RECT><AREA coords=102,0,220,19
href="http://www.mipagina.com/ofertasydemandas.html"
shape=RECT><AREA coords=220,0,293,19
href="http://www.mipagina.com/enlaces.html" shape=RECT><AREA
coords=293,0,431,19
__________________
La mejor forma de enseñar es aprendiendo
------------------------------------------------
Un pokitin de Musika en tu Vida
  #4 (permalink)  
Antiguo 08/01/2003, 05:01
Avatar de Musika  
Fecha de Ingreso: junio-2002
Mensajes: 72
Antigüedad: 22 años
Puntos: 0
resto del codigo

href="http://www.mipagina.com/central_de_compras.html"
shape=RECT><AREA coords=431,0,531,19
href="http://www.mipagina.com/publicidad.html"
shape=RECT><AREA coords=531,0,610,19
href="http://www.mipagina.com/contacta.html"
shape=RECT></MAP></TD></TR></TBODY></TABLE><!--TABLA DEL BANNER --FIN--></TD></TR>
<TR>
<TD colSpan=3>&nbsp; </TD></TR>
<TR>
<TD><!--TABLA INFERIOR INSERTADA--COMIENZO-->
<TABLE bgColor=white border=0 cellSpacing=1 width="100%">
<TBODY>
<TR>
<TD><IMG border=0 height=43
src="http://www.mipagina.com/graficos/top_rank_logo.gif" width=234> </TD></TR>
<TR>
<TD class=menu>Ranking | <A
href="http://www.mipagina.com/ranking/que.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Qué es</SPAN></A> |
<A
href="http://www.mipagina.com/ranking/funcionamiento.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Funcionamiento</SPAN></A>
| <A href="http://www.mipagina.com/ranking/normas.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Normas</SPAN></A> |
<A
href="http://www.mipagina.com/ranking/beneficios.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Beneficios</SPAN></A>
| <A
href="http://www.mipagina.com/ranking/rankings_anteriores.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Anteriores</SPAN></A>
| <A href="http://www.mipagina.com/ranking/altas.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Altas</SPAN></A> |
<A href="http://www.mipagina.com/ranking/bajas.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Bajas</SPAN></A> |
<A href="http://www.mipagina.com/ranking/ayuda.html"><SPAN
style="COLOR: blue; TEXT-DECORATION: underline">Ayuda</SPAN></A>
<TD></TD>
<TR>
<TD class=barra><BR>
<P><SPAN style="TEXT-DECORATION: underline"><%Response.Write(nombremes(month((Now)) ) & " - " & Year(Now))%>, por
visitas:</SPAN> </P></TD></TR>
<TR>
<TD class=central>
<br><P><A
href="ranking_arquitop_votos.asp"><SPAN
style="COLOR: brown; TEXT-DECORATION: underline">VER RANKING POR
VOTOS</SPAN></A> </P></TD></TR>
<TR>
<TD class=estadistica>
<TABLE width="100%">
<TBODY>
<TR>
<TD class=menu>
<BR><B>Actualizado</B> en tiempo real (ON-LINE).
<BR>Acceso a estadísticas banners: &nbsp;<A
href="http://cgi.mipagina.com/banner/Audit.pl"
target=principal><IMG border=0 height=14
src="http://www.mipagina.com/graficos/estadisticas.gif" width=14></A>
</P></TD>
<TD>
<TABLE align=right>
<TBODY>
<TR>
<TD align=middle class=menu><A
href="Ranking_Arquitop_Votar.asp"
target=principal><B>Su voto aquí</B></SPAN></A> </TD></TR>
<TR>
<TD align=middle><A
href="Ranking_Arquitop_Votar.asp"
target=principal><IMG border=0 height=28
src="http://www.mipagina.com/graficos/urna.gif"
width=23></SPAN></A>
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD><!-- TABLA DEL RANKING -- COMIENZO -->
<TABLE border=0 cellPadding=2 cellSpacing=2 width="100%">
<TBODY>
<TR>
<TD bgColor=#99ccff class=ranking>&nbsp;<B>Nº</B> </TD>
<TD bgColor=#99ccff class=ranking><A
href="http://www.mipagina.com/ranking/ayuda.html"><IMG
alt="Webs ganadoras" border=0 height=15
src="http://www.mipagina.com/graficos/ranking1.gif" width=15></A> </TD>
<TD bgColor=#99ccff class=ranking>&nbsp;<B>Web</B> </TD>
<TD bgColor=#99ccff class=ranking>&nbsp;<B>Tema</B> </TD>
<TD align=middle bgColor=#99ccff
class=ranking><B>Visitas<BR>mes</B> </TD>
<TD align=middle bgColor=#99ccff
class=ranking><B>Visitas<BR>ayer</B> </TD>
<TD align=middle bgColor=#99ccff
class=ranking><B>Visitas<BR>hoy</B> </TD>
<TD align=middle bgColor=#99ccff class=ranking><B>Media
<BR><%Response.Write(left(nombremes(month(now())-2),3)& ".")%></B> </TD>
<TD align=middle bgColor=#99ccff class=ranking><B>Media
<BR><%Response.Write(left(nombremes(month(now())-1),3)& ".")%></B> </TD>
<TD align=middle bgColor=#99ccff
class=ranking><B>Media<BR><%Response.Write(left(no mbremes(month(now())),3)& ".")%></B> </TD>
<TD align=middle bgColor=#99ccff class=ranking><B>Total</B>
</TD>
<TD align=middle bgColor=#99ccff
class=ranking><B>Fecha<BR>Alta</B> </TD>
<TR>
<TD class=peque colSpan=5>&nbsp; </TD></TR>

<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.open "mipagina.com.sqldatos","qd902","193858"

Set cmd = Server.CreateObject("ADODB.Command")
Set rs = Server.CreateObject("ADODB.Recordset")
cmd.ActiveConnection= conn
cmd.CommandText="SP_EXPO"
'cmd.CommandType=adcmdstoredproc
dias=day(now())
set rs=cmd.Execute (,dias)

On Error Resume Next
rs.MoveFirst
i=1
do while Not rs.eof
%>
<TR VALIGN=TOP>
<TD class=ranking><B>&nbsp;<%Response.Write(i)&"º"%></B></TD>

<%if isnull(rs.Fields("URLDistintivo").Value)then
%> <TD bgColor=#dedddd class=ranking></TD>
<%else
%> <TD bgColor=#dedddd class=ranking><A HREF=<%=Server.HTMLEncode(rs.Fields("URLDistintivo ").Value)%> target="principal"><IMG SRC="http://www.mipagina.com/graficos/ranking1.gif" WIDTH="15" HEIGHT="15" BORDER="0"></A></td>
<%end if
%>

<TD class=ranking><A href=<%=Server.HTMLEncode(rs.Fields("Web").Value)% >
target=principal><SPAN
style="COLOR: blue; TEXT-DECORATION: underline"><%=Server.HTMLEncode(rs.Fields("Titulo" ).Value)%></SPAN></A></TD>
<TD class=ranking><%=Server.HTMLEncode(rs.Fields("Tema ").Value)%></TD>
<TD align=middle bgColor=#dedddd class=ranking><%=Server.HTMLEncode(rs.Fields("Voto s_Mes").Value)%><BR></FONT></TD>
<TD align=middle bgColor=#dedddd class=ranking><%=Server.HTMLEncode(rs.Fields("Voto s_Ayer").Value)%><BR></FONT></TD>
<TD align=middle bgColor=#dedddd class=ranking><%=Server.HTMLEncode(rs.Fields("Voto s_Hoy").Value)%><BR></FONT></TD>
<TD align=middle bgColor=#dedddd class=ranking><%=Server.HTMLEncode(rs.Fields("Voto s_Tres").Value)%><BR></FONT></TD>
<TD align=middle bgColor=#dedddd class=ranking><%=Server.HTMLEncode(rs.Fields("Voto s_Dos").Value)%><BR></FONT></TD>
<TD align=middle bgColor=#a4a4a4 class=ranking><%=Server.HTMLEncode(round(rs.fields ("MediaMes").Value,0))%><BR></FONT></TD>
<TD align=middle bgColor=#dedddd class=ranking><%=Server.HTMLEncode(rs.Fields("Voto s_Total").Value)%><BR></FONT></TD>
<TD align=middle class=ranking><%=Server.HTMLEncode(left(rs.Fields( "FechaAlta").Value,5))%></TD></TR>
</TR>
<%
rs.MoveNext
i=i+1
loop
rs.Close
conn.Close

%>
<TR>
<TD colSpan=5><BR>
<P></P></TD></TR></TBODY></TABLE><!-- TABLA DEL RANKING -- FIN --></TD></TR></TBODY></TABLE><!--TABLA INFERIOR INSERTADA--FIN--></TD></TR>
<TR>
<TD>
<CENTER>
<P><BR>
<a href="http://cgi.mipagina.com/Banner/BannerClick.asp?lugar=Base_arquitop">
<img width="468" height="60" src="http://cgi.mipagina.com/Banner/ServeBanner.asp?lugar=Base_arquitop" border="1">
</a>
</CENTER></P></TD></TR>
<TR>
<TD class="" ?menu?><A
href="http://cgi.mipagina.com/banner/Audit.pl"
target=principal><SPAN style="TEXT-DECORATION: underline"><B>Estadísticas
banners</B></SPAN></A> <BR>
<P><BR></P></TD></TR>
<TR>
<TD class=menu><BR>
<P>© 2000 mipagina.com - Prohibida su reproducción <BR><A
href="mailto:[email protected]"><SPAN id=Web
onmouseout="Web.style.color='blue';" onmouseover="Web.style.color='red';"
style="COLOR: blue">[email protected]</SPAN></A>
</P></TD></TR></TBODY></TABLE><!--TABLA GENERAL---FIN--><BR>
<P></P></BODY></HTML>
__________________
La mejor forma de enseñar es aprendiendo
------------------------------------------------
Un pokitin de Musika en tu Vida
  #5 (permalink)  
Antiguo 08/01/2003, 05:29
Avatar de korev  
Fecha de Ingreso: diciembre-2002
Ubicación: Barcelona
Mensajes: 127
Antigüedad: 21 años, 5 meses
Puntos: 0
Me rindo... ¿cuál es la línea 236?

Cuando copies el código puedes obviar el html y las funciones javascript . Se supone que el error está en el asp, así que el resto no importa mucho. Mejor dar datos concretos que esperar a un experto... en adivinación

Anda, dinos cuál es la línea esa.
__________________
on error... resume next
  #6 (permalink)  
Antiguo 08/01/2003, 05:57
Avatar de Musika  
Fecha de Ingreso: junio-2002
Mensajes: 72
Antigüedad: 22 años
Puntos: 0
%Response.Write(left(nombremes(month(now())-2),3)& ".")%></B> </TD>
__________________
La mejor forma de enseñar es aprendiendo
------------------------------------------------
Un pokitin de Musika en tu Vida
  #7 (permalink)  
Antiguo 08/01/2003, 08:32
 
Fecha de Ingreso: diciembre-2001
Ubicación: Mercedes
Mensajes: 92
Antigüedad: 22 años, 5 meses
Puntos: 0
y si usas la funcion monthname(numero_de_mes)?
te devuelve el nombre del mes, claro en el idioma del sistema.

si no has esto:

<%=month(now()) - 2%> para saber que numero estas enviando a la funcion, seguramente estas mandando un numero fuera del intervalo de la matriz, por ejemplo en enero del 2003 month(now()) es 1 y si le restas 2 es -1. ¿que mes es -1).

Si lo que quieres es saber la cantidad de dias que tiene el mes, yo tengo una funcion para eso:


Function diasDelMes(vMes,vanio)
if vmes = 12 then
vmes = 1
else
vmes = vmes + 1
end if
tmp = "01-" & monthname(vmes) & "-" & vanio
res = day(dateadd("d",-1,tmp))
diasDelMes = res
End Function

le pasas como parametro el n de mes y el anio, y te devuelve la cantidad de dias.

Saludos
  #8 (permalink)  
Antiguo 08/01/2003, 12:46
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Veo un problema y algo que no entiendo para qué lo tenías así:

Problema:

Dim NombreMes(13) está mal. El primer índice de un vector, matriz y esas cosas es el 0. Por lo tanto, para 12 elementos (los meses) vas a contar desde el 0 hasta el 11



Lo que no entiendo:

Response.Write(left(nombremes(month(now())-2),3)& ".")

Qué es todo eso que marqué en negritas?
No se, pero si el objetivo es mostrar los meses de la forma Ene., Feb, Mar., etc, esto te vale:



<%
Dim NombreMes(11) '11, no 13
NombreMes(0)="Enero" '0, no 1 y lo mismo para el resto...
NombreMes(1)="Febrero"
NombreMes(2)="Marzo"
NombreMes(3)="Abril"
NombreMes(4)="Mayo"
NombreMes(5)="Junio"
NombreMes(6)="Julio"
NombreMes(7)="Agosto"
NombreMes(8)="Setiembre"
NombreMes(9)="Octubre"
NombreMes(10)="Noviembre"
NombreMes(11)="Diciembre"

For i = 0 to ubound(NombreMes)

Response.Write(left(nombremes(i),3)& ".<br>")

Next
%>
  #9 (permalink)  
Antiguo 08/01/2003, 13:13
Avatar de Antonito  
Fecha de Ingreso: noviembre-2001
Ubicación: en la red
Mensajes: 446
Antigüedad: 22 años, 6 meses
Puntos: 3
Hola guapa!!!

Hola a todos... ;)

El problema creo yo es que quieren mostrar dos meses antes, por eso lo del -2.

El tema es que el resultado de eso da 0 o 1 porque el mes es enero. y se sale de la matriz a -1....

Creo! no tengo mucha idea!
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 19:06.