ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Campos com atributo - XML[Resolvido]

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Sáb Jul 09, 2016 10:42 am    Assunto: Campos com atributo - XML[Resolvido] Responder com Citação

Pessoal, preciso acessar o conteúdo de um campo com atributo, estou fazendo desta forma mas não consegui resultado:

for i := 0 to NodeInfAdic.ChildNodes.Count -1 do
begin

if NodeObsCont.ChildNodes['xTexto'].GetAttributeNS('xCampo', '') = 'CANHOTO2' then
begin
DataEm:= copy(NodeObsCont.ChildNodes['xTexto'].Text,9,2) + '.';
DataEm:= DataEm + copy(NodeObsCont.ChildNodes['xTexto'].Text,12,2) + '.';
DataEm:= DataEm + '20' + copy(NodeObsCont.ChildNodes['xTexto'].Text,15,2);
showmessage('teste');
end;

end;

o looping esta ok, mas não estou conseguindo filtrar oque preciso, se alguém souber como selecionar um campo com atributo, desde já agradeço.


Editado pela última vez por LPalandi em Seg Jul 11, 2016 11:47 am, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
johnny-walker
Moderador
Moderador


Registrado: Sábado, 4 de Outubro de 2003
Mensagens: 10653
Localização: Contagem/MG - BRAZIL

MensagemEnviada: Sáb Jul 09, 2016 6:33 pm    Assunto: Responder com Citação

Poste o xml que talvez eu possa ajudar.


bye
_________________
P.O.W.E.R B.Y D.E.L.P.H.I
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Dom Jul 10, 2016 12:13 pm    Assunto: Responder com Citação

Este nó esta no node pai, preciso pegar o conteúdo que esta com atributo "CANHOTO2" conforme abaixo:

-<infAdic>

<infCpl>Observações do Contribuinte</infCpl>
+<obsCont>
<xTexto>2007.73 05/02/16 A PRAZO : 31 *B 07.298.275/0001-00 </xTexto>
</obsCont>
+<obsCont>
+<obsCont>

</infAdic>
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Dom Jul 10, 2016 12:24 pm    Assunto: Responder com Citação

observação:

não esta aparecendo os tributos na postagem, são estes:

xCampo = "CANHOTO1

xCampo = "CANHOTO2

xCampo = "CANHOTO3

....
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Seg Jul 11, 2016 9:21 am    Assunto: Responder com Citação

Bom dia,

Tente postar novamente o XML ou edite o post anterior, mas antes de enviar selecione o CheckBox "Desativar HTML nesta mensagem" que fica acima do botão "Enviar".


Editado pela última vez por imex em Ter Mar 21, 2023 3:17 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Seg Jul 11, 2016 10:16 am    Assunto: Responder com Citação

Bom dia Imex,

por favor, preciso do conteúdo que esta dentro de -<obsCont xCampo="CANHOTO2"><xTexto>.

+<cobr>
-<infAdic>
<infCpl>Observações do Contribuinte</infCpl>
+<obsCont xCampo="CANHOTO1">
-<obsCont xCampo="CANHOTO2">
<xTexto>2007.73 05/02/16 A PRAZO : 31 *B 07.298.275/0001-00 </xTexto>
</obsCont>
+<obsCont xCampo="CANHOTO4">
+<obsCont xCampo="CANHOTO5">
+<obsCont xCampo="KM">
</infAdic>
</infNFe>
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Seg Jul 11, 2016 10:49 am    Assunto: Responder com Citação

Experimente fazer uns testes dessa forma:

Código:
for i := 0 to NodeInfAdic.ChildNodes.Count - 1 do
    if NodeInfAdic.ChildNodes[i].NodeName = 'obsCont' then
        with NodeInfAdic.ChildNodes[i] do
            if Attributes['xCampo'] = 'CANHOTO2' then
                ShowMessage(ChildNodes['xTexto'].Text);


Espero que ajude
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
LPalandi
Novato
Novato


Registrado: Quarta-Feira, 16 de Mai de 2012
Mensagens: 82

MensagemEnviada: Seg Jul 11, 2016 11:36 am    Assunto: Responder com Citação

Imex, funcionou redondinho, foi de grande ajuda, muitíssimo obrigado.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB