Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rd111072

[Resolvido] Erro ao Criar array

Recommended Posts

Boa tarde!

 

Estou tentando criar um array a partir de um valor de variável. Mas está dando erro:

 

Erro de compilação do Microsoft VBScript erro '800a0402'

 

Constante inteira esperada

 

/sis-vendedor/COM_Editar2b.asp, line 38

 

dim arrayM(M)

-----------^

 

O script:

 

sqlM ="SELECT MAX(itens) as Maior FROM tab_pedidos where pedido = '"&cod_tabela&"' and excluido = 'no'"	
set rsM = conexaoDB3.execute(sqlM)

itemmax = CINT(rsM("Maior"))
response.Write(itemmax)

M = itemmax

dim arrayM(M)
for i = 0 to M
Response.Write arrayM(i) & "," & vbCrLf
next

Como faço?

Compartilhar este post


Link para o post
Compartilhar em outros sites

dim arrayM

Redim arrayM(M)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tá. Tudo muito bom... Mas como coloco esse array criado dentro do value de um input sem dar :

 

Tipo incompatível

 

Um tipo de dados não identificado foi encontrado.

 

???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta a linha com erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta essa parte do código onde você citou INPUT.

 

Acredito que você esteja dando um response.write em um ARRAY sem informar a posição que deseja acessar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Justamente o que eu citei acima. Você não pode acessar um array dessa forma. Você tem que informar a posição que deseja acessar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então deve usar assim:

<input type="text" name="hiddenc" id="hiddenc" value="<%=join(arrayM,",")%>" />

Compartilhar este post


Link para o post
Compartilhar em outros sites

"Quase"...

 

o resultado no input foi esse;

 

,,,,,,,,,,,,,,,

 

parece que arrayM está vazio. No response fica legal:

 

0 ,1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10 ,11 ,12 ,13 ,14 ,15

 

 

Deve ser por isso:

mv = i

Response.Write arrayM(i) & "," & Mv & vbCrLf

Compartilhar este post


Link para o post
Compartilhar em outros sites

O FOR está errado, deveria ficar assim:

for i = 0 to M
	Mv = i
	arrayM(i) = Mv
next
Por isso o response.write também estava errado, se você olhar no HTML verá que o vetor estava vazio.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.