FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Leer etiquetas especificas de un xml - SOLUCIONADO
Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Leer etiquetas especificas de un xml - SOLUCIONADO
Posted: Tue Oct 18, 2022 07:19 PM
Buenas tardes para todos,

En este momento logramos recuperar la informaci贸n de las etiquetas de un archivo xml, recorri茅ndolo todo, pero esta pasando que en algunos casos la informaci贸n viene organizada de manera diferente, el nodo esta, pero en una posici贸n diferente 贸 un nodo cercano tiene el mismo nombre.

Code (fw): Select all Collapse
聽 聽 聽 聽 聽 聽 hFile2 聽 聽:= FOpen( cGRuta ) 
聽 聽 聽 聽 聽 聽 oXmlDoc 聽:= TXmlDocument():New( hFile2 )
聽 聽 聽 聽 聽 聽 oXmlIter := TXmlIterator():New( oXmlDoc:oRoot )
聽 聽 聽 聽 聽 聽 while .T.
聽 聽 聽 聽 聽 聽 聽 聽 oTagActual = oXmlIter:Next()
聽 聽 聽 聽 聽 聽 聽 聽 //msginfo(oTagActual:cName)
聽 聽 聽 聽 聽 聽 聽 聽 If oTagActual != nil

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 if lSig==.T. .and. oTagActual:cName==nil
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 if nPrim==1
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 cText := oTagActual:cData
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 endif
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 nPrim++
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 endif

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 if oTagActual:cName=="cbc:Description"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 lSig := .T.
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 else
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 lSig := .F.
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 endif

聽 聽 聽 聽 聽 聽 聽 聽 Else
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 Exit
聽 聽 聽 聽 聽 聽 聽 聽 Endif
聽 聽 聽 聽 聽 聽 End
聽 聽 聽 聽 聽 聽 FClose( hFile2 )


Puedo recuperar nodos espec铆ficos dentro del xml, sin tener que recorrer todo el archivo?

De antemano gracias
Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM
Re: Leer etiquetas especificas de un xml
Posted: Wed Oct 19, 2022 12:30 AM
Leando prueba a ver si es lo que necesitas:

Code (fw): Select all Collapse
#include "FiveWin.ch"

Function Main()

聽 聽LOCAL cXml, oDoc, oNode, cNode, cNodeOrig
聽 聽LOCAL cFileName := "xmltest.xml"
聽 聽cNode := "OriginalNumber"
聽 聽IF !MsgGet( "Label to search", "Label to search:", @cNode) 
聽 聽 聽 Return
聽 聽endif

聽 聽cNode := AllTrim(cNode)
聽 聽cNodeOrig := cNode

聽 聽oDoc := TXmlDocument():New( cFileName )
聽 聽oNode := oDoc:CurNode

聽 聽IF cNode != NIL
聽 聽 聽 cNode := HB_RegexComp( cNode )
聽 聽ENDIF
聽
聽 聽oNode := oDoc:FindFirstRegex( cNode )
聽
聽 聽MsgInfo(cNodeOrig + ":" + Space(5) + cStr(oNode:cData))

RETURN


Y xmlTest.xml :
Code (fw): Select all Collapse
<PhoneReturn xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ws.cdyne.com/PhoneVerify/query">
聽 聽 <Company>LEVEL 3 COMMUNICATIONS, LLC - </Company>
聽 聽 <Valid>true</Valid>
聽 聽 <Use>Assigned to a code holder for normal use.</Use>
聽 聽 <State>VA</State>
聽 聽 <RC>NRFOLKZON2</RC>
聽 聽 <OCN>8825</OCN>
聽 聽 <OriginalNumber>17575449510</OriginalNumber>
聽 聽 <CleanNumber>7575449510</CleanNumber>
聽 聽 <SwitchName/>
聽 聽 <SwitchType/>
聽 聽 <Country>United States</Country>
聽 聽 <CLLI>NOCLLIKNOWN</CLLI>
聽 聽 <PrefixType>CLEC - (Competitive Local Exchange Carrier)</PrefixType>
聽 聽 <LATA>252</LATA>
聽 聽 <sms>CLEC - (Competitive Local Exchange Carrier)</sms>
聽 聽 <Email/>
聽 聽 <AssignDate>26/09/2005</AssignDate>
聽 聽 <TelecomCity>Norfolk</TelecomCity>
聽 聽 <TelecomCounty>Norfolk city</TelecomCounty>
聽 聽 <TelecomState>VA</TelecomState>
聽 聽 <TelecomZip>23510</TelecomZip>
聽 聽 <TimeZone>EST</TimeZone>
聽 聽 <Lat/>
聽 聽 <Long/>
聽 聽 <Wireless>false</Wireless>
聽 聽 <LRN>7575449510</LRN>
</PhoneReturn>

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: Leer etiquetas especificas de un xml
Posted: Wed Oct 19, 2022 12:25 PM
Hola Cristobal, gracias por responder

Pero no es lo que necesito, ya que se retorna la primera coincidencia que encuentra, lo que necesitamos es podernos referir a un nodo en especifico por ejemplo:
AttachedDocument -> cac:ReceiverParty -> cac:PartyTaxScheme -> cac:TaxScheme -> cbc:ID

Deber铆a devolverme ZZ



Code (fw): Select all Collapse
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<AttachedDocument xmlns="urn:specification:ubl:xsd:AttachedDocument-2" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:cac="urn:specification:ubl:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:specification:ubl:xsd:CommonBasicComponents-2" xmlns:ccts="urn:un:specification:CoreComponentTypeSchemaModule:2" xmlns:ext="urn:specification:ubl:xsd:CommonExtensionComponents-2" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" xmlns:xades141="http://uri.etsi.org/01903/v1.4.1#">
  <cbc:UBLVersionID>UBL 2.1</cbc:UBLVersionID>
  <cbc:CustomizationID>Documentos adjuntos</cbc:CustomizationID>
  <cbc:ProfileID>DIAN 2.1</cbc:ProfileID>
  <cbc:ProfileExecutionID>2</cbc:ProfileExecutionID>
  <cbc:ID>SETP990000066</cbc:ID>
  <cbc:IssueDate>2022-10-18</cbc:IssueDate>
  <cbc:IssueTime>18:36:28-05:00</cbc:IssueTime>
  <cbc:DocumentType>Contenedor de Factura Electr贸nica</cbc:DocumentType>
  <cbc:ParentDocumentID>SETP990000066</cbc:ParentDocumentID>
  <cac:SenderParty>
    <cac:PartyTaxScheme>
      <cbc:RegistrationName>ANTONIO HERNANDEZ </cbc:RegistrationName>
      <cbc:CompanyID schemeAgencyID="195" schemeID="3" schemeName="31">15999999</cbc:CompanyID>
      <cbc:TaxLevelCode listName="48">R-99-PN</cbc:TaxLevelCode>
      <cac:TaxScheme>
        <cbc:ID>01</cbc:ID>
        <cbc:Name>IVA</cbc:Name>
      </cac:TaxScheme>
    </cac:PartyTaxScheme>
  </cac:SenderParty>
  <cac:ReceiverParty>
    <cac:PartyTaxScheme>
      <cbc:RegistrationName>LEANDRO  AREVALO </cbc:RegistrationName>
      <cbc:CompanyID schemeAgencyID="195" schemeID="" schemeName="13">79777777</cbc:CompanyID>
      <cbc:TaxLevelCode listName="48">R-99-PN</cbc:TaxLevelCode>
      <cac:TaxScheme>
        <cbc:ID>ZZ</cbc:ID>
        <cbc:Name>No aplica</cbc:Name>
      </cac:TaxScheme>
    </cac:PartyTaxScheme>
  </cac:ReceiverParty>
  <cac:Attachment>
    <cac:ExternalReference>
      <cbc:MimeCode>text/xml</cbc:MimeCode>
      <cbc:EncodingCode>UTF-8</cbc:EncodingCode>
      <cbc:Description><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?><Invoice xmlns="urn:specification:ubl:xsd:Invoice-2" xmlns:cac="urn:specification:ubl:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:specification:ubl:xsd:CommonBasicComponents-2" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ext="urn:specification:ubl:xsd:CommonExtensionComponents-2" xmlns:sts="dian:gov:co:facturaelectronica:Structures-2-1" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" xmlns:xades141="http://uri.etsi.org/01903/v1.4.1#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:specification:ubl:xsd:Invoice-2     <!-- m --><a class="postlink" href="http://docs.oasis-open.org/ubl/os-UBL-2.1/xsd/maindoc/UBL-Invoice-2.1.xsd">http://docs.oasis-open.org/ubl/os-UBL-2 ... ce-2.1.xsd</a><!-- m -->">
   <ext:UBLExtensions>
      <ext:UBLExtension>
         <ext:ExtensionContent>
            <sts:DianExtensions>
               <sts:InvoiceControl>
                  <sts:InvoiceAuthorization>18760000001</sts:InvoiceAuthorization>
                  <sts:AuthorizationPeriod>
                     <cbc:StartDate>2019-01-19</cbc:StartDate>
                     <cbc:EndDate>2030-01-19</cbc:EndDate>
                  </sts:AuthorizationPeriod>
                  <sts:AuthorizedInvoices>
                     <sts:Prefix>SETP</sts:Prefix>
                     <sts:From>990000000</sts:From>
                     <sts:To>995000000</sts:To>
                  </sts:AuthorizedInvoices>
               </sts:InvoiceControl>
               <sts:InvoiceSource>
                  <cbc:IdentificationCode listAgencyID="6" listAgencyName="United Nations Economic Commission for Europe" listSchemeURI="urn:specification:ubl:gc:CountryIdentificationCode-2.1">CO</cbc:IdentificationCode>
               </sts:InvoiceSource>
               <sts:SoftwareProvider>
                  <sts:ProviderID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="7" schemeName="31">830108049</sts:ProviderID>
                  <sts:SoftwareID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)">2d2a9cda-0738-430f-8ecf-1d01f0297dae</sts:SoftwareID>
               </sts:SoftwareProvider>
               <sts:SoftwareSecurityCode schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)">481f525b5855a1ef44b5eba6d8f955cfec8bcfeda53e86ee87727e8adf8041bed4ad6db4dd0ea2d84f1f3ac0f3540c08</sts:SoftwareSecurityCode>
               <sts:AuthorizationProvider>
                  <sts:AuthorizationProviderID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="4" schemeName="31">800197268</sts:AuthorizationProviderID>
               </sts:AuthorizationProvider>
               <sts:QRCode>NumFac: SETP990000066FecFac: 2022-10-18HorFac: 18:36:28-05: 15999999DocAdq: 79777777ValFac: 1500000.00ValIva: 285000.00ValOtroIm: 0.00ValTolFac: 1785000.00CUFE: 7f18d3d8696630e84611197a12546263256a50ab15af0a8cf82e58520a3462096bdce453677773b6fec39cc488389https://catalogo-vpfe-hab.dian.gov.co/document/searchqr?documentkey=7f18d3d8696630e84611197a12546263256a50ab15af0a8cf82e58520a3462096bdce453677773b6fec39cc488389</sts:QRCode>
            </sts:DianExtensions>
         </ext:ExtensionContent>
      </ext:UBLExtension>
   <ext:UBLExtension>
    <ext:ExtensionContent><ds:Signature Id="xmldsig-6bc6408c-e4eb-4209-a573-d53b5139f236">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
<ds:Reference Id="xmldsig-6bc6408c-e4eb-4209-a573-d53b5139f236-ref0" URI="">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>a12VmbwOMb5ky7x25dw0xCffPh+ybEF76H/WBXt85kc=</ds:DigestValue>
</ds:Reference>
<ds:Reference Type="http://uri.etsi.org/01903#SignedProperties" URI="#xmldsig-6bc6408c-e4eb-4209-a573-d53b5139f236-signedprops">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>3SryO7Q8N75SmwGVuH8g76HE5iwsNP5t8PKJlUkV+Tg=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue Id="xmldsig-6bc6408c-e4eb-4209-a573-d53b5139f236-sigvalue">
fuH0CJQU4kCtawNiXM5ekQElNQC/bt3nghdHFFng4FIDg7QMhVARr5UmTF0jtcUp3IoOU9S3DM45
ZTgsGnjqQqkh38LXdqZf1HSyq4eNZWZiskIYHRYNFYDskLQwnMPL84uc3S+NsXjrvb/Y+I7iD+o8
R9EcmLzS0SlFe7M6raaE7384D/atu/cDcow2VLInuIz56Vp5fSNK115Kc17O4qx363LJOgVx8Gh3
jsihkzaperHU5OcLGOawxEaHEmaT74B0jFoK0y3GNWtJq+PPJAcG9cXUjDxhcVBWzGmOcJQMMdET
64qeZE6txe3TEHcc0qBQkJXrOwMp6mQ15Mp9wA==
</ds:SignatureValue>
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>
MIIHBDCCBOygAwIBAgIKEDzAiDXgy0+TZzANBgkqhkiG9w0BAQsFADCBhjEeMBwGCSqGSIb3DQEJ
ARYPaW5mb0Bnc2UuY29tLmNvMSUwIwYDVQQDExxBdXRvcmlkYWQgU3Vib3JkaW5hZGEgMDEgR1NF
MQwwCgYDVQQLEwNQS0kxDDAKBgNVBAoTA0dTRTEUMBIGA1UEBxMLQm9nb3RhIEQuQy4xCzAJBgNV
BAYTAkNPMB4XDTIyMTAxODE5NDAxNFoXDTIzMTAxODE5NDAxNFowgdkxEjAQBgNVBAkMCUNSIDMg
NiA1ODEjMCEGA1UEDQwaRkVQTiBHU0UgQ0wgNzcgNyA0NCBPRiA3MDExKTAnBgNVBAMMIE1BTlVF
TCBBTlRPTklPIEhFUk5BTkRFWiBDQVRBw5FPMREwDwYDVQQFEwgxNTkyNTc4MzEVMBMGA1UECAwM
Q1VORElOQU1BUkNBMRMwEQYDVQQHDApGQUNBVEFUSVZBMQswCQYDVQQGEwJDTzEZMBcGCisGAQQB
pGYBAwIMCTE1OTI1NzgzMzEMMAoGA1UEKQwDQy5DMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEA3xgWliakKmEkF5X1udXvni/lp1/RsQEMEKFRlzMqlpX45eLQoUuCiat/W+674/rmIb/U
rHWSqVnzCcoeFkvIn5BqSdNa0Z9AKlb1SB6w84XQYhYWY9zrQv71KOZK3HnRVvcrwT+sITCHv58I
9G2Ozdgo7+md7sCPm3McAGhbfNLkoTzepZdVr7w7lYIieShuqCYjZxypDis81dyNERab4qE5CBeW
rM8APYNO1+De4drUeqDSiskkCCDGDlZGIgZut3QigfZ9TBPFp0C5zaOCS8nCj5ufZHWbkQU5GGwv
nKb4ffi5WbOfURGYN6RmTp70HtGHG9RwbcXe0CWevpxrYwIDAQABo4ICHTCCAhkwDAYDVR0TAQH/
BAIwADAfBgNVHSMEGDAWgBRBvNQ5eLiDoxcaCJqpuAQCCS3YmTBoBggrBgEFBQcBAQRcMFowMgYI
KwYBBQUHMAKGJmh0dHBzOi8vY2VydHMyLmdzZS5jb20uY28vQ0FfU1VCMDEuY3J0MCQGCCsGAQUF
BzABhhhodHRwczovL29jc3AyLmdzZS5jb20uY28waQYDVR0RBGIwYIETaHltcGx1c0BvdXRsb29r
LmNvbYZJaHR0cHM6Ly9nc2UuY29tLmNvL2RvY3VtZW50b3MvY2VydGlmaWNhY2lvbmVzL2FjcmVk
aXRhY2lvbi8xNi1FQ0QtMDAxLnBkZjCBgwYDVR0gBHwwejB4BgsrBgEEAYHzIAEEDTBpMGcGCCsG
AQUFBwIBFltodHRwczovL2dzZS5jb20uY28vZG9jdW1lbnRvcy9jYWxpZGFkL0RQQy9EZWNsYXJh
Y2lvbl9kZV9QcmFjdGljYXNfZGVfQ2VydGlmaWNhY2lvbl9WMTQucGRmMCcGA1UdJQQgMB4GCCsG
AQUFBwMCBggrBgEFBQcDBAYIKwYBBQUHAwEwNQYDVR0fBC4wLDAqoCigJoYkaHR0cHM6Ly9jcmwy
LmdzZS5jb20uY28vQ0FfU1VCMDEuY3JsMB0GA1UdDgQWBBRS5TVulE6QvuOZQRytxHAHy286XjAO
BgNVHQ8BAf8EBAMCBPAwDQYJKoZIhvcNAQELBQADggIBAFV34nwZUaku49+TR0JGyRBbA/Meso77
6QGEH7G2/km92dbLipUl7eFzJG9e2TUBVHlNn6bfqVdErRr2RxNa0kpHjHPu5p1euLViJHOt44yF
GN4KUr4hMyjlo8bSCyuiq50c7Lda59zYHntdQKJgnpz/Xln6fjSAL1o6EJKbSp54FTy4WLcpWv3c
xaep5SsC4xo3JRgvi09AcacxBXnv3S7QWQ4yzPbfQftMODL685eCAEHhaKiqMYuEA4TerPicI7mq
rGmrLPNUXccZm7AHAOyhS4TNcWGYHZRr3bxrE40HZ0JxDbUKPaQA61pgt4KeUCDg+7Bf3BkDTIWQ
/qTcP08nTA7nXzb8sITUKrt6cJguUIiS5rnuqevfLFasoKcf111oidPbRbYEcV5UD5NWT38ajNsM
uOzS0Dd4L1XFnW2wM6uDct9RxkddJ+BbqocrOgFdXvhzS4g0Rd+0nOnjxlhEdflyl1G8teNYzVua
zAy/pRsIU8R3mdRKF9NMBSn47g1tc9BGU4kOQhoQYlAlTlEPPDRpV+j/d/wsGJhHfwT4CvWLvc9T
e6FbmhVW9ADFm+BDjUJ8U20zWUiHp0i+9I+utYBbZdO+bCPM6QodbpVAx3cSb8A3vz0kPD/pylMr
0V1RfAosgRnxgwrmRTkjc3Eiyefke9sqJMFRwcHlqnSs
</ds:X509Certificate>
<ds:X509SubjectName>name=C.C,1.3.6.1.4.1.4710.1.3.2=159999993,c=CO,l=BOGOTA,st=CUNDINAMARCA,serialNumber=15999999,cn= ANTONIO HERNANDEZ ,description=FEPN GSE CL 77 7 44 OF 701,street=CR 77 89 5595</ds:X509SubjectName>
<ds:X509IssuerSerial>
<ds:X509IssuerName>c=CO,l=Bogota D.C.,o=GSE,ou=PKI,cn=Autoridad Subordinada 01 GSE,1.2.840.113549.1.9.1=info@gse.com.co</ds:X509IssuerName>
<ds:X509SerialNumber>76678541768228611265383</ds:X509SerialNumber>
</ds:X509IssuerSerial>
</ds:X509Data>
</ds:KeyInfo>
<ds:Object><xades:QualifyingProperties Target="#xmldsig-6bc6408c-e4eb-4209-a573-d53b5139f236"><xades:SignedProperties Id="xmldsig-6bc6408c-e4eb-4209-a573-d53b5139f236-signedprops"><xades:SignedSignatureProperties><xades:SigningTime>2022-10-18T18:36:29.812-05:00</xades:SigningTime><xades:SigningCertificate><xades:Cert><xades:CertDigest><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><ds:DigestValue>g7NGL433yIL62BNmBwEz4nwl/M73p+LnAuPoTuUsyqk=</ds:DigestValue></xades:CertDigest><xades:IssuerSerial><ds:X509IssuerName>c=CO,l=Bogota D.C.,o=GSE,ou=PKI,cn=Autoridad Subordinada 01 GSE,1.2.840.113549.1.9.1=info@gse.com.co</ds:X509IssuerName><ds:X509SerialNumber>76678541768228611265383</ds:X509SerialNumber></xades:IssuerSerial></xades:Cert><xades:Cert><xades:CertDigest><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><ds:DigestValue>cJkByR2PspLbgbcEiwsG5aKqFFl9ysTfvmvdkEnY4gE=</ds:DigestValue></xades:CertDigest><xades:IssuerSerial><ds:X509IssuerName>c=CO,o=GSE,ou=PKI,cn=Autoridad Raiz GSE,1.2.840.113549.1.9.1=info@gse.com.co</ds:X509IssuerName><ds:X509SerialNumber>287858738846225454503326</ds:X509SerialNumber></xades:IssuerSerial></xades:Cert><xades:Cert><xades:CertDigest><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><ds:DigestValue>fBylUTEuoC7x1jpPVlTQP9BPbzJ8ji4DUhoiaXq3mEM=</ds:DigestValue></xades:CertDigest><xades:IssuerSerial><ds:X509IssuerName>c=CO,o=GSE,ou=PKI,cn=Autoridad Raiz GSE,1.2.840.113549.1.9.1=info@gse.com.co</ds:X509IssuerName><ds:X509SerialNumber>106864729177600983785696</ds:X509SerialNumber></xades:IssuerSerial></xades:Cert></xades:SigningCertificate><xades:SignaturePolicyIdentifier><xades:SignaturePolicyId><xades:SigPolicyId><xades:Identifier>https://facturaelectronica.dian.gov.co/politicadefirma/v2/politicadefirmav2.pdf</xades:Identifier><xades:Description>Pol铆tica de firma para facturas electr贸nicas de la Rep煤blica de Colombia</xades:Description></xades:SigPolicyId><xades:SigPolicyHash><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><ds:DigestValue>dMoMvtcG5aIzgYo0tIsSQeVJBDnUnfSOfBpxXrmor0Y=</ds:DigestValue></xades:SigPolicyHash></xades:SignaturePolicyId></xades:SignaturePolicyIdentifier><xades:SignerRole><xades:ClaimedRoles><xades:ClaimedRole>supplier</xades:ClaimedRole></xades:ClaimedRoles></xades:SignerRole></xades:SignedSignatureProperties></xades:SignedProperties></xades:QualifyingProperties></ds:Object>
</ds:Signature></ext:ExtensionContent>
   </ext:UBLExtension>
</ext:UBLExtensions>
   <cbc:UBLVersionID>UBL 2.1</cbc:UBLVersionID>
   <cbc:CustomizationID>10</cbc:CustomizationID>
   <cbc:ProfileID>DIAN 2.1: Factura Electr贸nica de Venta</cbc:ProfileID>
   <cbc:ProfileExecutionID>2</cbc:ProfileExecutionID>
   <cbc:ID>SETP990000066</cbc:ID>
   <cbc:UUID schemeID="2" schemeName="CUFE-SHA384">7f18d3d8696630e84611197a12546263256a50ab15af0a8cf82e58520a3462096bdce453677773b6fec39cc488389</cbc:UUID>
   <cbc:IssueDate>2022-10-18</cbc:IssueDate>
   <cbc:IssueTime>18:36:28-05:00</cbc:IssueTime>
   <cbc:DueDate>2022-10-18</cbc:DueDate>
   <cbc:InvoiceTypeCode>01</cbc:InvoiceTypeCode>
   <cbc:Note/>
   <cbc:TaxPointDate>2022-10-18</cbc:TaxPointDate>
   <cbc:DocumentCurrencyCode>COP</cbc:DocumentCurrencyCode>
   <cbc:LineCountNumeric>1</cbc:LineCountNumeric>
      <cac:OrderReference>
      <cbc:ID/>
   </cac:OrderReference>
   <cac:DespatchDocumentReference>
      <cbc:ID/>
   </cac:DespatchDocumentReference>
   <cac:ReceiptDocumentReference>
      <cbc:ID/>
   </cac:ReceiptDocumentReference>
   
   <cac:AccountingSupplierParty>
      <cbc:AdditionalAccountID schemeAgencyID="195">2</cbc:AdditionalAccountID>
      <cac:Party>
         <cbc:IndustryClassificationCode>6910</cbc:IndustryClassificationCode>  
         <cac:PartyName>
            <cbc:Name> ANTONIO HERNANDEZ </cbc:Name>
         </cac:PartyName>
         <cac:PartyName>
            <cbc:Name>Establecimiento Principal</cbc:Name>
         </cac:PartyName>
         <cac:PartyName>
            <cbc:Name> ANTONIO HERNANDEZ </cbc:Name>
         </cac:PartyName>
         <cac:PhysicalLocation>
            <cac:Address>
               <cbc:ID>11001</cbc:ID>
               <cbc:CityName>BOGOTA</cbc:CityName>
                <cbc:PostalZone>253051</cbc:PostalZone>
               <cbc:CountrySubentity>CUNDINAMARCA</cbc:CountrySubentity>
               <cbc:CountrySubentityCode>25</cbc:CountrySubentityCode>
               <cac:AddressLine>
                  <cbc:Line>CR 77 89 5595</cbc:Line>
               </cac:AddressLine>
               <cac:Country>
                  <cbc:IdentificationCode>CO</cbc:IdentificationCode>
                  <cbc:Name languageID="es">Colombia</cbc:Name>
               </cac:Country>
            </cac:Address>
         </cac:PhysicalLocation>
         <cac:PartyTaxScheme>
            <cbc:RegistrationName> ANTONIO HERNANDEZ </cbc:RegistrationName>
            <cbc:CompanyID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="3" schemeName="31">15999999</cbc:CompanyID>
            <cbc:TaxLevelCode listName="48">R-99-PN</cbc:TaxLevelCode>
            <cac:RegistrationAddress>
               <cbc:ID>11001</cbc:ID>
               <cbc:CityName>BOGOTA</cbc:CityName>
               <cbc:CountrySubentity>CUNDINAMARCA</cbc:CountrySubentity>
               <cbc:CountrySubentityCode>25</cbc:CountrySubentityCode>
               <cac:AddressLine>
                  <cbc:Line>CR 77 89 5595</cbc:Line>
               </cac:AddressLine>   
               <cac:Country>
                  <cbc:IdentificationCode>CO</cbc:IdentificationCode>
                  <cbc:Name languageID="es">Colombia</cbc:Name>
               </cac:Country>
            </cac:RegistrationAddress>
            <cac:TaxScheme>
               <cbc:ID>01</cbc:ID>
               <cbc:Name>IVA</cbc:Name>
            </cac:TaxScheme>
         </cac:PartyTaxScheme>
         <cac:PartyLegalEntity>
            <cbc:RegistrationName> ANTONIO HERNANDEZ </cbc:RegistrationName>
            <cbc:CompanyID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="3" schemeName="31">15999999</cbc:CompanyID>
            <cac:CorporateRegistrationScheme>
               <cbc:ID>SETP</cbc:ID>
               <cbc:Name>990000066</cbc:Name>
            </cac:CorporateRegistrationScheme>
         </cac:PartyLegalEntity>
         <cac:Contact>
            <cbc:Telephone>8902777</cbc:Telephone>
            <cbc:ElectronicMail>elcorreo@tudominio.com</cbc:ElectronicMail>
         </cac:Contact>
      </cac:Party>
   </cac:AccountingSupplierParty>
   <cac:AccountingCustomerParty>
      <cbc:AdditionalAccountID>2</cbc:AdditionalAccountID>
      <cac:Party>
         <cac:PartyIdentification>
            <cbc:ID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="" schemeName="13">79777777</cbc:ID>
         </cac:PartyIdentification>
         <cac:PartyName>
            <cbc:Name>LEANDRO  AREVALO </cbc:Name>
         </cac:PartyName>
         <cac:PhysicalLocation>
            <cac:Address>
               <cbc:ID>25754</cbc:ID>
               <cbc:CityName>SOACHA</cbc:CityName>
                <cbc:PostalZone>000000</cbc:PostalZone>
               <cbc:CountrySubentity>Cundinamarca</cbc:CountrySubentity>
               <cbc:CountrySubentityCode>25</cbc:CountrySubentityCode>
               <cac:AddressLine>
                  <cbc:Line>CL 77 88 99</cbc:Line>
               </cac:AddressLine>
               <cac:Country>
                  <cbc:IdentificationCode>CO</cbc:IdentificationCode>
                  <cbc:Name>COLOMBIA</cbc:Name>
               </cac:Country>
            </cac:Address>
         </cac:PhysicalLocation>
         <cac:PartyTaxScheme>
            <cbc:RegistrationName>LEANDRO  AREVALO </cbc:RegistrationName>
            <cbc:CompanyID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="" schemeName="13">79777777</cbc:CompanyID>
            <cbc:TaxLevelCode listName="48">R-99-PN</cbc:TaxLevelCode>
            <cac:RegistrationAddress>
               <cbc:ID>25754</cbc:ID>
               <cbc:CityName>SOACHA</cbc:CityName>
               <cbc:CountrySubentity>Cundinamarca</cbc:CountrySubentity>
               <cbc:CountrySubentityCode>25</cbc:CountrySubentityCode>
               <cac:AddressLine>
                  <cbc:Line>CL 77 88 99</cbc:Line>
               </cac:AddressLine>   
               <cac:Country>
                  <cbc:IdentificationCode>CO</cbc:IdentificationCode>
                  <cbc:Name languageID="es">COLOMBIA</cbc:Name>
               </cac:Country>
            </cac:RegistrationAddress>
            <cac:TaxScheme>
               <cbc:ID>ZZ</cbc:ID>
               <cbc:Name>No aplica</cbc:Name>
            </cac:TaxScheme>
         </cac:PartyTaxScheme>
         <cac:PartyLegalEntity>
            <cbc:RegistrationName>LEANDRO  AREVALO </cbc:RegistrationName>
            <cbc:CompanyID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="" schemeName="13">79777777</cbc:CompanyID>
            <cac:CorporateRegistrationScheme>
               <cbc:Name/>
            </cac:CorporateRegistrationScheme>
         </cac:PartyLegalEntity>
         <cac:Contact>
            <cbc:Telephone>3003957875</cbc:Telephone>
            <cbc:ElectronicMail>leandro111@hotmail.com</cbc:ElectronicMail>
         </cac:Contact>
      </cac:Party>
   </cac:AccountingCustomerParty>
   <cac:TaxRepresentativeParty>
      <cac:PartyIdentification>
         <cbc:ID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)" schemeID="" schemeName="13">79777777</cbc:ID>
      </cac:PartyIdentification>
      <cac:PartyName>
         <cbc:Name>LEANDRO  AREVALO </cbc:Name>
      </cac:PartyName>
   </cac:TaxRepresentativeParty>
   <cac:PaymentMeans>
      <cbc:ID>1</cbc:ID>
      <cbc:PaymentMeansCode>ZZZ</cbc:PaymentMeansCode>
      <cbc:PaymentDueDate>2022-10-18</cbc:PaymentDueDate>
      <cbc:PaymentID>Contado</cbc:PaymentID>
   </cac:PaymentMeans>
   <cac:PaymentTerms>
      <cbc:ReferenceEventCode>1</cbc:ReferenceEventCode>
      <cac:SettlementPeriod>
         <cbc:DurationMeasure unitCode="DAY">0</cbc:DurationMeasure>
      </cac:SettlementPeriod>
   </cac:PaymentTerms>

      <cac:TaxTotal>
      <cbc:TaxAmount currencyID="COP">285000.00</cbc:TaxAmount>
      <cbc:RoundingAmount currencyID="COP">0.00</cbc:RoundingAmount>
      <cbc:TaxEvidenceIndicator>false</cbc:TaxEvidenceIndicator>
         <cac:TaxSubtotal>
            <cbc:TaxableAmount currencyID="COP">1500000.00</cbc:TaxableAmount>
            <cbc:TaxAmount currencyID="COP">285000.00</cbc:TaxAmount>
            <cac:TaxCategory>
               <cbc:Percent>19.00</cbc:Percent>
               <cac:TaxScheme>
                  <cbc:ID>01</cbc:ID>
                  <cbc:Name>IVA</cbc:Name>
               </cac:TaxScheme>
            </cac:TaxCategory>
         </cac:TaxSubtotal>
      </cac:TaxTotal>   
   <cac:LegalMonetaryTotal>
      <cbc:LineExtensionAmount currencyID="COP">1500000.00</cbc:LineExtensionAmount>
      <cbc:TaxExclusiveAmount currencyID="COP">1500000.00</cbc:TaxExclusiveAmount>
      <cbc:TaxInclusiveAmount currencyID="COP">1785000.00</cbc:TaxInclusiveAmount>
      <cbc:AllowanceTotalAmount currencyID="COP">0.00</cbc:AllowanceTotalAmount>
      <cbc:ChargeTotalAmount currencyID="COP">0.00</cbc:ChargeTotalAmount>
      <cbc:PrepaidAmount currencyID="COP">0.00</cbc:PrepaidAmount>
      <cbc:PayableRoundingAmount currencyID="COP">0.00</cbc:PayableRoundingAmount>
      <cbc:PayableAmount currencyID="COP">1785000.00</cbc:PayableAmount>
   </cac:LegalMonetaryTotal>
         
   <cac:InvoiceLine>
      <cbc:ID>1</cbc:ID>
      <cbc:InvoicedQuantity unitCode="94">1.00</cbc:InvoicedQuantity>
      <cbc:LineExtensionAmount currencyID="COP">1500000.00</cbc:LineExtensionAmount>
      <cac:PricingReference>
            <cac:AlternativeConditionPrice>
                <cbc:PriceAmount currencyID="COP">1500000</cbc:PriceAmount>
                <cbc:PriceTypeCode>03</cbc:PriceTypeCode>
            </cac:AlternativeConditionPrice>
       </cac:PricingReference>
        <cac:AllowanceCharge>
            <cbc:ID>1</cbc:ID>
            <cbc:ChargeIndicator>false</cbc:ChargeIndicator>
            <cbc:AllowanceChargeReason>Descuento</cbc:AllowanceChargeReason>
            <cbc:MultiplierFactorNumeric>0.00</cbc:MultiplierFactorNumeric>
            <cbc:Amount currencyID="COP">0.00</cbc:Amount>
            <cbc:BaseAmount currencyID="COP">1500000.00</cbc:BaseAmount>
        </cac:AllowanceCharge>
      <cac:TaxTotal>
         <cbc:TaxAmount currencyID="COP">285000.00</cbc:TaxAmount>
         <cbc:RoundingAmount currencyID="COP">0.00</cbc:RoundingAmount>
         <cbc:TaxEvidenceIndicator>false</cbc:TaxEvidenceIndicator>
         <cac:TaxSubtotal>
            <cbc:TaxableAmount currencyID="COP">1500000.00</cbc:TaxableAmount>
            <cbc:TaxAmount currencyID="COP">285000.00</cbc:TaxAmount>
            <cac:TaxCategory>
               <cbc:Percent>19.00</cbc:Percent>
               <cac:TaxScheme>
                  <cbc:ID>01</cbc:ID>
                  <cbc:Name>IVA</cbc:Name>
               </cac:TaxScheme>
            </cac:TaxCategory>
         </cac:TaxSubtotal>
      </cac:TaxTotal>
      <cac:Item>
         <cbc:Description>PRIMER ARTIUCLO</cbc:Description>
         <cac:SellersItemIdentification>
            <cbc:ID>0001</cbc:ID>
         </cac:SellersItemIdentification>
         <cac:StandardItemIdentification>
            <cbc:ID schemeAgencyName="195" schemeID="999">0001</cbc:ID>
         </cac:StandardItemIdentification>
      </cac:Item>
      <cac:Price>
         <cbc:PriceAmount currencyID="COP">1500000.00</cbc:PriceAmount>
         <cbc:BaseQuantity unitCode="94">1.00</cbc:BaseQuantity>
      </cac:Price>
   </cac:InvoiceLine>
    
  </Invoice>]]></cbc:Description>
    </cac:ExternalReference>
  </cac:Attachment>
  <cac:ParentDocumentLineReference>
    <cbc:LineID>1</cbc:LineID>
    <cac:DocumentReference>
      <cbc:ID>SETP990000066</cbc:ID>
      <cbc:UUID schemeName="CUFE-SHA384">7f18d3d8696630e84611197a12546263256a50ab15af0a8cf82e58520a3462096bdce453677773b6fec39cc488389</cbc:UUID>
      <cbc:IssueDate>2022-10-18</cbc:IssueDate>
      <cbc:IssueTime>18:36:28-05:00</cbc:IssueTime>
      <cbc:DocumentType>ApplicationResponse</cbc:DocumentType>
      <cac:Attachment>
        <cac:ExternalReference>
          <cbc:MimeCode>text/xml</cbc:MimeCode>
          <cbc:EncodingCode>UTF-8</cbc:EncodingCode>
          <cbc:Description><![CDATA[<?xml version="1.0" encoding="utf-8" standalone="no"?><ApplicationResponse xmlns:cac="urn:specification:ubl:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:specification:ubl:xsd:CommonBasicComponents-2" xmlns:ext="urn:specification:ubl:xsd:CommonExtensionComponents-2" xmlns:sts="dian:gov:co:facturaelectronica:Structures-2-1" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns="urn:specification:ubl:xsd:ApplicationResponse-2">
  <ext:UBLExtensions>
    <ext:UBLExtension>
      <ext:ExtensionContent>
        <sts:DianExtensions>
          <sts:InvoiceSource>
            <cbc:IdentificationCode listAgencyID="6" listAgencyName="United Nations Economic Commission for Europe" listSchemeURI="urn:specification:ubl:gc:CountryIdentificationCode-2.1">CO</cbc:IdentificationCode>
          </sts:InvoiceSource>
          <sts:SoftwareProvider>
            <sts:ProviderID schemeID="4" schemeName="31" schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)">800197268</sts:ProviderID>
            <sts:SoftwareID schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)">...</sts:SoftwareID>
          </sts:SoftwareProvider>
          <sts:SoftwareSecurityCode schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)">...</sts:SoftwareSecurityCode>
          <sts:AuthorizationProvider>
            <sts:AuthorizationProviderID schemeID="4" schemeName="31" schemeAgencyID="195" schemeAgencyName="CO, DIAN (Direcci贸n de Impuestos y Aduanas Nacionales)">800197268</sts:AuthorizationProviderID>
          </sts:AuthorizationProvider>
        </sts:DianExtensions>
      </ext:ExtensionContent>
    </ext:UBLExtension>
    <ext:UBLExtension>
      <ext:ExtensionContent><ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="Signature-371c4611-5bc8-4c16-831e-de1e98856ffb"><ds:SignedInfo><ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /><ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /><ds:Reference Id="Reference-7f33ab62-b494-4c55-8d4a-d9952c86bbd5" URI=""><ds:Transforms><ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></ds:Transforms><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><ds:DigestValue>mE/ZF9YUPsGUe66shZ32WpLK/llOsNaA6roG/8x6TKg=</ds:DigestValue></ds:Reference><ds:Reference Id="ReferenceKeyInfo" URI="#Signature-371c4611-5bc8-4c16-831e-de1e98856ffb-KeyInfo"><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><ds:DigestValue>PrepUaFy7H92x2CNN149ez6aIr1vXJpPxeUFp5gFxjQ=</ds:DigestValue></ds:Reference><ds:Reference Type="http://uri.etsi.org/01903#SignedProperties" URI="#xmldsig-Signature-371c4611-5bc8-4c16-831e-de1e98856ffb-signedprops"><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><ds:DigestValue>IEYbQ7H+znnvVlxfiXmfcyg5oBNo+DVdraPh5CWv5Zw=</ds:DigestValue></ds:Reference></ds:SignedInfo><ds:SignatureValue Id="SignatureValue-371c4611-5bc8-4c16-831e-de1e98856ffb">TL8lkEHdiY1f2PvDx4Nl//euR4UvnGLmExQuT6AjH7hRWtqSP8j9ArBzE8KaFQhED7ufjqchZrq5I8NS0uwUMoFQ4a9GYv5SgCBf5XlP1cwSTd6Qi5csfrniBNMS3ngoXSdctdWEgwC8itXQp5IZVTJo+niJyubZboYoD14Pf1zYtLhfebEokip2S+r4R0aGHNf/D214aLb3ajLMaMeQdJG9EV9868KzdKEntgI+6B4hZDWSNUv2oh4Q6jbe/lyVmiwmfPVX8fQddlN0+kb/dYhK5ZzgenptmLznwguIvWsV5R1mtBM+vHKVvPxRczwCTAa7D7Apmc459RYdHStDzw==</ds:SignatureValue><ds:KeyInfo Id="Signature-371c4611-5bc8-4c16-831e-de1e98856ffb-KeyInfo"><ds:X509Data><ds:X509Certificate>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</ds:X509Certificate></ds:X509Data><ds:KeyValue><ds:RSAKeyValue><ds:Modulus>i/+fddBQbuWMCkXqYdPBJFTobo06mrTxvutKkNe0RJveG1SnKq15nvBft2h4nZF5EzPBKGKS3IWgsgmAd3yABhtvlOVoKxNFS3CWxO2oyyQ3ahuueWLA8tKeP/9M20/tWXT7T6FY5aaH4272BKiyYIzHnqPD43obZ5b1osLj0OPGbfkPi9gvVn6sinSeEZ0WXvDa1lrBB0q+wszmfT2lims0akoAzKgpU6yxQkRBQuPFPv9Wqgy6Ze1AtURpuX+Qyk4vZNonQjx7+IW2Z8v0htT9Yy8TpSK2r85wFYPs2V9IjCstZ49NXHKMoY5TLja9NZLPokIrlQV+aSiK8ojp0w==</ds:Modulus><ds:Exponent>AQAB</ds:Exponent></ds:RSAKeyValue></ds:KeyValue></ds:KeyInfo><ds:Object Id="XadesObjectId-f1b383a7-345c-44b3-8ecf-24008863e33d"><xades:QualifyingProperties xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" Id="QualifyingProperties-dbcc9341-f3df-46bd-9250-88cf37ba0c3a" Target="#Signature-371c4611-5bc8-4c16-831e-de1e98856ffb"><xades:SignedProperties Id="xmldsig-Signature-371c4611-5bc8-4c16-831e-de1e98856ffb-signedprops"><xades:SignedSignatureProperties><xades:SigningTime>2022-10-18T18:36:33+00:00</xades:SigningTime><xades:SigningCertificate><xades:Cert><xades:CertDigest><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><ds:DigestValue>lOUQ66ufnUv0tTTWSw3IIIHw1AQvFSKUURutt0ZErm4=</ds:DigestValue></xades:CertDigest><xades:IssuerSerial><ds:X509IssuerName>C=CO, L=Bogota D.C., O=GSE, OU=PKI, CN=Autoridad Subordinada 01 GSE, E=info@gse.com.co</ds:X509IssuerName><ds:X509SerialNumber>199839390723768342225486</ds:X509SerialNumber></xades:IssuerSerial></xades:Cert></xades:SigningCertificate><xades:SignaturePolicyIdentifier><xades:SignaturePolicyId><xades:SigPolicyId><xades:Identifier>https://facturaelectronica.dian.gov.co/politicadefirma/v2/politicadefirmav2.pdf</xades:Identifier><xades:Description /></xades:SigPolicyId><xades:SigPolicyHash><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><ds:DigestValue>dMoMvtcG5aIzgYo0tIsSQeVJBDnUnfSOfBpxXrmor0Y=</ds:DigestValue></xades:SigPolicyHash></xades:SignaturePolicyId></xades:SignaturePolicyIdentifier><xades:SignerRole><xades:ClaimedRoles><xades:ClaimedRole>supplier</xades:ClaimedRole></xades:ClaimedRoles></xades:SignerRole></xades:SignedSignatureProperties><xades:SignedDataObjectProperties><xades:DataObjectFormat ObjectReference="#Reference-7f33ab62-b494-4c55-8d4a-d9952c86bbd5"><xades:MimeType>text/xml</xades:MimeType><xades:Encoding>UTF-8</xades:Encoding></xades:DataObjectFormat></xades:SignedDataObjectProperties></xades:SignedProperties></xades:QualifyingProperties></ds:Object></ds:Signature></ext:ExtensionContent>
    </ext:UBLExtension>
  </ext:UBLExtensions>
  <cbc:UBLVersionID>UBL 2.1</cbc:UBLVersionID>
  <cbc:CustomizationID>1</cbc:CustomizationID>
  <cbc:ProfileID>DIAN 2.1</cbc:ProfileID>
  <cbc:ProfileExecutionID>2</cbc:ProfileExecutionID>
  <cbc:ID>15423410</cbc:ID>
  <cbc:UUID schemeName="CUDE-SHA384">81e8eb9f01fb64962fbbebc9a19673d3e5ab04709c66b565d994a97d5f871c515226d94637088239630e26c6b454fb6d</cbc:UUID>
  <cbc:IssueDate>2022-10-18</cbc:IssueDate>
  <cbc:IssueTime>18:36:33-05:00</cbc:IssueTime>
  <cac:SenderParty>
    <cac:PartyTaxScheme>
      <cbc:RegistrationName>Unidad Especial Direcci贸n de Impuestos y Aduanas Nacionales</cbc:RegistrationName>
      <cbc:CompanyID schemeID="4" schemeName="31">800197268</cbc:CompanyID>
      <cac:TaxScheme>
        <cbc:ID>01</cbc:ID>
        <cbc:Name>IVA</cbc:Name>
      </cac:TaxScheme>
    </cac:PartyTaxScheme>
  </cac:SenderParty>
  <cac:ReceiverParty>
    <cac:PartyTaxScheme>
      <cbc:RegistrationName> ANTONIO HERNANDEZ </cbc:RegistrationName>
      <cbc:CompanyID schemeID="3" schemeName="31">15999999</cbc:CompanyID>
      <cac:TaxScheme>
        <cbc:ID>01</cbc:ID>
        <cbc:Name>IVA</cbc:Name>
      </cac:TaxScheme>
    </cac:PartyTaxScheme>
  </cac:ReceiverParty>
  <cac:DocumentResponse>
    <cac:Response>
      <cbc:ResponseCode>02</cbc:ResponseCode>
      <cbc:Description>Documento validado por la DIAN</cbc:Description>
    </cac:Response>
    <cac:DocumentReference>
      <cbc:ID>SETP990000066</cbc:ID>
      <cbc:UUID schemeName="CUFE-SHA384">7f18d3d8696630e84611197a12546263256a50ab15af0a8cf82e58520a3462096bdce453677773b6fec39cc488389</cbc:UUID>
    </cac:DocumentReference>
    <cac:LineResponse>
      <cac:LineReference>
        <cbc:LineID>1</cbc:LineID>
      </cac:LineReference>
      <cac:Response>
        <cbc:ResponseCode>0000</cbc:ResponseCode>
        <cbc:Description>0</cbc:Description>
      </cac:Response>
    </cac:LineResponse>
    <cac:LineResponse>
      <cac:LineReference>
        <cbc:LineID>2</cbc:LineID>
      </cac:LineReference>
      <cac:Response>
        <cbc:ResponseCode>SinC贸digo</cbc:ResponseCode>
        <cbc:Description>La validaci贸n del estado del RUT pr贸ximamente estar谩 disponible.</cbc:Description>
      </cac:Response>
    </cac:LineResponse>
    <cac:LineResponse>
      <cac:LineReference>
        <cbc:LineID>3</cbc:LineID>
      </cac:LineReference>
      <cac:Response>
        <cbc:ResponseCode>SinC贸digo</cbc:ResponseCode>
        <cbc:Description>La validaci贸n del estado del RUT pr贸ximamente estar谩 disponible.</cbc:Description>
      </cac:Response>
    </cac:LineResponse>
  </cac:DocumentResponse>
</ApplicationResponse>]]></cbc:Description>
        </cac:ExternalReference>
      </cac:Attachment>
      <cac:ResultOfVerification>
        <cbc:ValidatorID>Unidad Especial Direcci贸n de Impuestos y Aduanas Nacionales</cbc:ValidatorID>
        <cbc:ValidationResultCode>002</cbc:ValidationResultCode>
        <cbc:ValidationDate>2022-10-18</cbc:ValidationDate>
        <cbc:ValidationTime>18:36:28-05:00</cbc:ValidationTime>
      </cac:ResultOfVerification>
    </cac:DocumentReference>
  </cac:ParentDocumentLineReference>
</AttachedDocument>
Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: Leer etiquetas especificas de un xml
Posted: Wed Oct 19, 2022 02:26 PM
Hola,

Algo rapido puede ser esto, aunque lo ordoxo es usar funciones que convierten el xml en json:

Code (fw): Select all Collapse
FUNCTION BuscaId(cXml)
Local nAt, nPos1, nPos2, cId
nAt:= At("<cac:TaxScheme>", cXml)
cXml:= SubStr(cXml, nAt)
nPos1:= At("<cbc:ID>", cXml)
nPos2:= At("</cbc:ID>", cXml
IF nPos1 = 0 .OR. nPos2 = 0
聽 聽ERROR_("No encontrado !!", cXml, nPos1, nPos2)
ELSE
聽 聽cId:= SubStr(cXml, nPos1, nPos2- nPos1)
ENDIF
RETURN cId

Salu2
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: Leer etiquetas especificas de un xml
Posted: Wed Oct 19, 2022 04:35 PM
Code (fw): Select all Collapse
// \SAMPLES\LEANDRO4.PRG

#Include "FiveWin.ch"

STATIC oWnd

MEMVAR wTEXTO

FUNCTION Main()

   LOCAL cXml, cRetID

   cXml   := MemoRead( "LEANDRO.XML" )

   cRetID := BuscaId( cXml )

   XBrowse( cRetID )

RETURN NIL

FUNCTION BuscaId( cXml )

   LOCAL nAt, nPos1, nPos2, cId

   nAt   := At("<cac:TaxScheme>", cXml)
   cXml  := SubStr(cXml, nAt)
   nPos1 := At( "<cbc:ID>",  cXml )
   nPos2 := At( "</cbc:ID>", cXml )

   IF nPos1 = 0 .OR. nPos2 = 0

      MsgStop( "No encontrado !!", cXml, nPos1, nPos2 )

   ELSE

      cId := SubStr( cXml, nPos1, nPos2 - nPos1 )

   ENDIF

RETURN( cId )

// Fin


Regards, saludos.
Jo茫o Santos - S茫o Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM
Re: Leer etiquetas especificas de un xml
Posted: Thu Oct 20, 2022 01:58 AM
Leandro mira si esto te funciona:

Code (fw): Select all Collapse
#include "FiveWin.ch"

PROCEDURE Main()
聽 聽LOCAL oNode
聽 聽LOCAL cFileName := "_Leandro.xml"
聽 聽LOCAL cPath 聽 聽 := ""

聽 聽cPath := "AttachedDocument -> cac:ReceiverParty -> cac:PartyTaxScheme -> cac:TaxScheme -> cbc:ID"
聽 聽 聽oNode := SearchPathXml( cFileName , cPath )
聽 聽xBrowse(oNode, oNode:cName + " 聽: 聽" + cStr(oNode:cData))

聽 聽cPath 聽:= "AttachedDocument -> cac:ParentDocumentLineReference -> cac:DocumentReference -> cbc:ID"
聽 聽 聽oNode := SearchPathXml( cFileName , cPath )
聽 聽xBrowse(oNode, oNode:cName + " 聽: 聽" + cStr(oNode:cData))

聽 聽cPath 聽:= "AttachedDocument -> cac:ReceiverParty -> cac:PartyTaxScheme -> cbc:RegistrationName"
聽 聽 聽oNode := SearchPathXml( cFileName , cPath )
聽 聽xBrowse(oNode, oNode:cName + " 聽: 聽" + cStr(oNode:cData))

聽 聽cPath 聽:= "AttachedDocument -> cac:SenderParty -> cac:PartyTaxScheme -> cbc:RegistrationName"
聽 聽 聽oNode := SearchPathXml( cFileName , cPath )
聽 聽xBrowse(oNode, oNode:cName + " 聽: 聽" + cStr(oNode:cData))

return nil
//-----------------------------------------------------//

Function SearchPathXml( cFileName , cPath )
聽 聽LOCAL oDoc, oNode, aNodes
聽 聽LOCAL cPath2 := "/" + StrTran( cPath , " -> " , "/" )

聽 聽aNodes := HB_ATokens(cPath , " -> ")
聽
聽 聽oDoc := TXmlDocument():New( cFileName )
聽 聽oNode := oDoc:CurNode

聽 聽oNode := oDoc:FindFirst( ATAIL(aNodes) )

聽 聽DO WHILE oNode != NIL

聽 聽 聽 if HB_ISOBJECT(oNode)
聽 聽 聽 聽 聽if oNode:Path() == cPath2 
聽 聽 聽 聽 聽 聽 exit
聽 聽 聽 聽 聽endif 
聽 聽 聽 else
聽 聽 聽 聽 聽exit
聽 聽 聽 endif

聽 聽 聽 oNode := oDoc:FindNext()

聽 聽ENDDO

Return(oNode)

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: Leer etiquetas especificas de un xml
Posted: Thu Oct 20, 2022 12:21 PM

Gracias a todos por la ayuda :D

Amigo Carlos muchas gracias, era exactamente lo que busc谩bamos.

Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]

Continue the discussion