Ir para conteúdo

POWERED BY:

Arquivado

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

Bins

Manipulando Matrizes

Recommended Posts

Saudações colegasTenho uma dúvida sobre arrays que está tirando meu sono....Seguinte, estou interagindo um sistema em ASP com um webservice usando SOAP. Eu mando as informações utilizando umas funções predefinidas, e ele retorna os dados na forma de MATRIZESPrimeiro eu fiz isso:Dim teste2()Matriz=soapclient.readpersonalinfo(teste)Isso deu erro (Type Mismatch)Então eu fiz assim e funcionouSet teste2=soapclient.readpersonalinfo(teste)Só que ai vem o problema. Se eu fizerx=teste2.item(1).text ou x=teste2.item(2).textEle retorna o conteudo do primeiro e do segundo campos da Matriz. Mas, e seu eu quiser saber qual o nome destes campos? O que eu tenho que fazer?Este webservice tem um manual que tem exemplos de conexao usando o PHP :-(, tem um tal de print_r que pega a matriz e imprime o nome do campo e o conteúdo...Continuando com a pergunta, dependendo do que você quer fazer ele retorna um conjunto de registros também usando matrizes, como eu posso criar e acessar uma matriz composta de várias linhas e colunas?Valeu pela ajuda. :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem você sabe como esta matriz é formatada, se tem tantas colunas e tal, assim ficaria mais facil de usar os indices pra varrer a matriz...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas o problema é que determinadas funções retornam um recordset, está é a minha dúvida. Se por exemplo ele retornar um recordset de 10 linhas, utilizando os indices das colunas posso puxar os dados de qualquer campo da primeira linha, o problema é, como "mudar de linha", eu não sei fazer isso... :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

em se tratando de recordset a matriz será bidimencional, então você deve passar não apenas um indice mas 2, existem exemplos deste uso com matrizes mas falando sobre getrows, mas é semelhante

Compartilhar este post


Link para o post
Compartilhar em outros sites

basta você passar o nome da matriz seguido de sua coluna e linha, ou seja :para uma tabela que tenha apenas nome e telefone, você faz um recordset e joga numa matriz, você pega assimFOR I = 0 to Ubound(matriz,2) 'aqui dois é justamente de duas dimensoesresponse.write "Nome = " & matriz(0,I)response.write "Telefone = " & matriz(1,I)NEXTveja que os indices começam de zero...

Compartilhar este post


Link para o post
Compartilhar em outros sites

basta você passar o nome da matriz seguido de sua coluna e linha, ou seja :para uma tabela que tenha apenas nome e telefone, você faz um recordset e joga numa matriz, você pega assimFOR I = 0 to Ubound(matriz,2) 'aqui dois é justamente de duas dimensoesresponse.write "Nome = " & matriz(0,I)response.write "Telefone = " & matriz(1,I)NEXTveja que os indices começam de zero...

Complementando a resposta do nosso amigo!!Maximo de Colunas:
variavel = ubound(vetor, 1)
Maximo de Linhas:
variavel = ubound(vetor, 2)
Percorrendo Vetor:
For C = 0 To UBound(vetor, 1)For L = 0 To UBound(vetor, 2) Response.Write(vetor(C, L) & "<br>")NextNext
Abraços!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigos,

 

tenho uma outra dúvida...

eu estou usando matriz, porém eu gostaria de incluir um valor nesta matriz manualmente entenderam ?

 

por exemplo,

eu vou testar se os dados que pedi no query existem, se não existem vou adicionar como valor da matriz no local da noticia: NENHUMA NOTICIA CADASTRADA

 

portanto qdo eu pedir para exibir a matriz(0,0) ele vai mostrar esta mensagem.

 

podem me ajudar ?

 

obrigado

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

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.