Este es un script que en base a reportes e informes provenientes del programa SAP Business One, genera un archivo .txt formateado y listo para enviar a ARBA (Agencia de Recaudación Provincia de Buenos Aires). El programa consiste, básicamente, en una conexión con diferentes consultas a la base de datos enlazada a nuestra cuenta de SAP Business One. Consultas con las cuales obtendrá los datos necesarios para completar el archivo que luego será enviado a ARBA. Este script sigue en desarrollo constante.
Este proyecto nace a partir de que en la empresa donde comencé a trabajar el primero de febrero de este año, se utiliza SAP Business One para la generación de los documentos de transporte, y a pesar de ser configurado una y otra vez, muchas veces tiene errores a la hora de crear los documentos, ya sea por falta o cruce de datos y por lo tanto, en una empresa donde se hacen tantos envíos por día y necesita del correcto funcionamiento de los eslabones, supone una enorme pérdida de tiempo (Y por lo tanto dinero).
COT significa “Código de Operación de Traslado o Transporte”. Es un régimen de información sobre el traslado o transporte de bienes en el territorio de la Ciudad Autónoma de Buenos Aires.
La Agencia de Recaudación Provincia de Buenos Aires (ARBA) es una entidad autárquica de derecho público en el ámbito de la provincia de Buenos Aires, Argentina, que tiene por objeto la recaudación de impuestos provinciales.
El COT debe ser obtenido por los sujetos obligados a emitir comprobantes (facturas, remitos, guías o documentos equivalentes) que respalden el traslado y entrega de bienes (productos primarios o manufacturados), en forma previa al traslado o transporte de la mercadería, con origen y/o destino en esta jurisdicción.
_Las siguientes instrucciones te permitirán obtener una copia del proyecto en funcionamiento en tu máquina local para propósitos de desarrollo y pruebas.
_Para que este script funcione vas a necesitar de:
- SAP Business One - Es de donde saldrán los informes con los que se generará el archivo
- HanaDB Client - Cliente/tecnología de la base de datos.
- Editor de texto - En mi caso utilicé Visual Studio Code
- Librería DBApi - Más precisamente
hdbcli
- Librería mechanize - Necesaria para automatizar el proceso de subida de archivos a la web de ARBA
- Librería xml.etree - Necesaria para procesar la respuesta de ARBA
- Gestor de base de datos - En mi caso utilicé SquirrelSQL
Las mayores complicaciones pueden surgir a la hora de instalar las librerías, ya que las demás cosas necesarias poseen interfaces gráficas para realizar cada instalación. Si sos un usuario que ya tiene experiencia con la programación e instalación de librerías, podés avanzar con el resto del readme.
- Librerías de Python
pip install dbapi
pip install hdbcli
pip install requests
pip install mechanize
Lo utilizado para construir este pequeño proyecto
- Python 3.8 - Lenguaje de programación
Si querés contribuir con este proyecto, no dudes en hacer una pull request
. Todas las ideas y sugerencias son bienvenidas!
📱 En Twitter soy akalautaro
💻 por akalautaro