Hola, tengo un inconveniente al recorrer un ciclo For con nodos de un factura XML.
Utilicé «archivo XML a diccionario» y la variable quedaria asi…
dicc_xml:{‘cfdi:Comprobante’: {‘@xmlns:cfdi’: ‘http://www.sat.gob.mx/cfd/3’, ‘@xmlns:implocal’: ‘http://www.sat.gob.mx/implocal’, ‘@xmlns:xsi’: ‘http://www.w3.org/2001/XMLSchema-instance’, ‘@Certificado’: ‘MIIFyjCCA7KgAwIBAgIUMzAwMDEwMDAwMDA0MDAwMDI0NTAwDQYJKoZIhvcNAQELBQAwggErMQ8wDQYDVQQDDAZBQyBVQVQxLjAsBgNVBAoMJVNFUlZJQ0lPIERFIEFETUlOSVNUUkFDSU9OIFRSSUJVVEFSSUExGjAYBgNVBAsMEVNBVC1JRVMgQXV0aG9yaXR5MSgwJgYJKoZIhvcNAQkBFhlvc2Nhci5tYXJ0aW5lekBzYXQuZ29iLm14MR0wGwYDVQQJDBQzcmEgY2VycmFkYSBkZSBjYWRpejEOMAwGA1UEEQwFMDYzNzAxCzAJBgNVBAYTAk1YMRkwFwYDVQQIDBBDSVVEQUQgREUgTUVYSUNPMREwDwYDVQQHDAhDT1lPQUNBTjERMA8GA1UELRMIMi41LjQuNDUxJTAjBgkqhkiG9w0BCQITFnJlc3BvbnNhYmxlOiBBQ0RNQS1TQVQwHhcNMTkwNjE3MjIzNzI2WhcNMjMwNjE3MjIzNzI2WjCB8TEoMCYGA1UEAxMfRVNDVUVMQSBXSUxTT04gRVNRVUlWRUwgUyBERSBDVjEoMCYGA1UEKRMfRVNDVUVMQSBXSUxTT04gRVNRVUlWRUwgUyBERSBDVjEoMCYGA1UEChMfRVNDVUVMQSBXSUxTT04gRVNRVUlWRUwgUyBERSBDVjElMCMGA1UELRMcRVdFMTcwOTA0NVUwIC8gS0FITzY0MTEwMUIzOTEeMBwGA1UEBRMVIC8gS0FITzY0MTEwMUhOVExLUzA2MSowKAYDVQQLEyFFU0NVRUxBIFdJTFNPTiBFU1FVSVZFTCBTQSBERSBDViAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCLj3cfTdaZZ9jG6QuPrLPdDz5195DtZGJAyexmk76Fg33M4iFbSM3RInG8XHyDeCNzKgSKqOVBiE/qMxiSMkIWbvJ5q+6Jt2CUSGzKQPiHmrTv3HGlxTdmc2AYOmE8+kg5lyUqX79Km+iV39qg6pzYfZq/sZF4DGtExWTnfrQqS1ZFlmT7Ol32lHjNp+PA4r1NCO8q2usgQJJb55rqLrJ20c+vIDfwXh7AcmFxeXNgWtduMWfLADnk9Lv0pyhJC0qU6BPA5XFH8HJBa52i3Cxx9Uv5ZYYjGvrC1SJviqD5Yoxo5DqyeOj5BTqX05ZGgNhAxLVHfcPQTFh6el3hid8DAgMBAAGjHTAbMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgbAMA0GCSqGSIb3DQEBCwUAA4ICAQDPV6N6o+2U36FhExy2C8nmQyFAsxKw9TO5GSsc/dNVYrq6kd86vZvjryO4knSwTFa2S06Trw4FpIJB4/gBp3I5wp0cxKZNrtzjD28yGqD69b/bj7qDkksQt8TmC/wnDidNK8HaZmDu1keeDtWGT4+ZbINXfynvME5uh+xpvJDk46xfpDOUqC8f2k19yGhLjGxOfjnm62MFG63rW7n35WEMGvFCJfxNMIFJP/ynNPedxjoYiStk0jBlNvRj3KbOBnfSycfMOcksrU7PEGzCQCtSGDosLOTEBS35d0Z3PXraasASY6egQwwt4FP5bRR+8+Ij8Kg2ldhhvbQBeXFvwHRT6sLXxOz7lF4sOnvpCWAJAXtEWnxEbrCg+Ii74o1E9X3lCxJ9keTiL+luX3CK0GbeaMVdJEBGykTRecUhyuyYgfMDKbce1wO6MHyuFRx6etkSwqeoPQp1tIovFwsWUiIPDUWV2bO7c5+sOiAX8lzt5eM1eC46lqhQCATFGi3PvyTBhNLPY+AHJQIWqBKQWXMtJl//HysPDADsLXehjP8ebRss9TqXlM8viKen3gu3PiR2cujqGvpaD6YlVckHd49KEwKU6reEsoeA/LVonMjsL2qMR9IqfFm7QtIS8fJCmKWjbXdwDAI0AtBeUmPbsGXdOJcwlYY6mXeJAk5ORrqpBQ==’, ‘@CondicionesDePago’: ‘todas’, ‘@Fecha’: ‘2019-10-07T09:00:00’, ‘@Folio’: ‘1898533’, ‘@FormaPago’: ’01’, ‘@LugarExpedicion’: ‘00000’, ‘@MetodoPago’: ‘PUE’, ‘@Moneda’: ‘MXN’, ‘@NoCertificado’: ‘30001000000400002450’, ‘russellotz’: ‘S8vZYeiQtgawVseo5Eg1j1p1TEFn52baMTcLXN5ApApcRB1uyTNvv97XQTSNtHNScB3vvNSQ5j2TXWF3bo/ymgFcJUREK5Eq0+jo1WfyvSrv9hq/6wsQhLqac2xr4N6IlAHMEPcOrKiGUxVCPdqmPl6beP8VXUg37Q22r6Sdb7LviGK8M4udmaHkXfzVi4EdnXIDl3Y24N250C8/BPV29J3rOshs4y/Zimz5SoI7VUj5PMJ2gizZyM9v41bWxG1R8hd12hSixroUm0VoZO5yrPhrW8B3X6b1skYjSyLnoXyNx0EBS+yYhRnWtWPrzXjH04PL+M7QbBW/sO+oG7Kvmg==’, ‘@Serie’: ‘FACTURAS’, ‘@SubTotal’: ‘17587.57’, ‘@TipoCambio’: ‘1’, ‘@TipoDeComprobante’: ‘I’, ‘@Total’: ‘20049.82’, ‘@Version’: ‘3.3’, ‘@xsi:schemaLocation’: ‘http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv33.xsd http://www.sat.gob.mx/implocal http://www.sat.gob.mx/sitio_internet/cfd/implocal/implocal.xsd’, ‘cfdi:Emisor’: {‘@Nombre’: ‘FORMAS DIGITALES, S.A. DE C.V.’, ‘@RegimenFiscal’: ‘601’, ‘@Rfc’: ‘EWE1709045U0’}, ‘cfdi:Receptor’: {‘@Nombre’: ‘C1’, ‘@Rfc’: ‘XAXX010101000’, ‘@UsoCFDI’: ‘G03’}, ‘cfdi:Conceptos’: {‘cfdi:Concepto’: {‘@Cantidad’: ‘1’, ‘@ClaveProdServ’: ‘48101519’, ‘@ClaveUnidad’: ‘H87’, ‘@Descripcion’: ‘Hornos de pizza para uso comercial’, ‘@Importe’: ‘17587.5700’, ‘@Unidad’: ‘Pieza’, ‘@ValorUnitario’: ‘17587.5700’}}, ‘cfdi:Complemento’: {‘implocal:ImpuestosLocales’: {‘@TotaldeRetenciones’: ‘0.00’, ‘@TotaldeTraslados’: ‘2462.25’, ‘@version’: ‘1.0’, ‘implocal:TrasladosLocales’: {‘@ImpLocTrasladado’: ‘ENVIO’, ‘@Importe’: ‘2462.25’, ‘@TasadeTraslado’: ‘14.00’}}}}}
Necesito los datos que están dentro de ‘cfdi:Concepto’ y utilizo el siguiente For que devuelve cero.
+ Variable: concepto
+Iterable: {dicc_xml}[‘cfdi:Comprobante’][‘cfdi:Conceptos’][‘cfdi:Concepto’]
Pero si utilizo «asignar variable» y como dato envio lo mismo ({dicc_xml}[‘cfdi:Comprobante’][‘cfdi:Conceptos’][‘cfdi:Concepto’]) si me devuelve correctamente la informacion.
A que se debe????
Gracias
Tengo la version 2020.12.30. Y estoy haciendo un bot XML guiandome del video Modulo ReadXML, Certificacion Nivel 2 (https://academy.rocketbot.co/cursos/rocketbot-suite-level-2-2/lecciones/modulo-readxml/)
Y con este «asignar variable» me muestra los datos correctamente, por eso no entiendo porque no funciona en el For
En el log
Hola, este es el error que figura
Hola Gisel Sanchez,
El ciclo for de rocketbot itera usando index, y un diccionario no se puede iterar con index, sino con clave, por lo tanto no puedes colocar un diccionario directamente en el comando, lo que puedes hacer es colocar todo lo que tienes en el for, dentro de lo siguiente
list(todo_lo_del_for.items())
Hola Gisel, como estas?
Que version de rocketbot estas usando?
Puedes mostrar las imagenes por separado para que se puedan agrandar o insertar un enlace a las mismas.
Que es lo que quieres hacer exactamente?