Skip to main content

Client em Python desenvolvido para orquestrar cálculos do RPA Nasajon.

Project description

PyRPA

Objetivo

Utilitário para orquestar e gerar automações de execuções do Persona SQL

Configuração

Clonar o repositório e abir o repositório com algum editor, sugerimos o VSCode

Copiar o arquivo .env.dist e renomea-lo para .env

Abrir o terminal e execute os seguintes comandos

python -m venv ./.venv
./.venv/Scripts/Activate.ps1
pip install -r .\requirements.txt

Se usar o VSCode, é recomendado criar um arquivo de execução launch.json, clicando no icone de Run and Debug(icone com um inseto e um play), em seguida em create a launch.json > Python > Python File e use o seguinte conteudo.

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Arquivo Atual",
            "type": "python",
            "request": "launch",
            "program": "__main__.py",
            "console": "integratedTerminal",
            "args": [
                "-d", "integratto",  
                "-u",  "MESTRE", 
                "-p", "999999", 
                ... //demais argumentos
            ],
            "env": {
                "PATH_PERSONACLI": "C:\\Nasajon Sistemas\\Versao2502\\Integratto2\\personacli.exe"
            },
            "justMyCode": false //Informando "false" é possível depurar código que não pertençam ao projeto
        }
    ]
}

IMPORTANTE

Para execução local durante do desenvolvimento, altere o valor do PATH_PERSONACLI no arquivo launch.json, para o caminho do personacli.exe do seu local.

Escopo

Atualmente, o utilitário executa automações de processamento de cálculo de folha de funcionários e envio de eventos ao eSocial

Funcionamento

O utilitário desenvolvido na linguagem Python e funciona através de linha de comando usando a biblioteca argparse.

Execução

Para a execução do utilitário é necessário a passagem de parâmetros:

Conexão

Parâmetro Curto Descrição Obrigatório? Default
--database -d Nome do banco de dados para conexão Sim *
--user -u Usuário para conexão com o banco de dados Não postgres
--password -p Senha para conexão com o banco de dados Não postgres
--host -t IP ou nome do servidor do banco de dados Não localhost
--port -o Porta para conexão com o banco de dados Não 5432

Processo

Parâmetro Curto Descrição Obrigatório?
--rotina -r Código da rotina que seja executada, a rotina é cadastrada no PersonaSQL. Sim
--competencia -c Competência de execução [Necessário para cálculo] Não
--ano -a Ano de execução [Necessário para cálculo] Não
--semana -s Semana de execução Não
--escopo -e Tipo de escopo de execução, atualmente só funciona para uma empresa, então não é obrigatório Não
--faixa -f Informar o código da empresa que será executada Sim

Exemplo

python main.py -d integratto_master -u MESTRE -p 999999 -t localhost -o 5432 -r 001 -c 6 -a 2025 -e EMPRESA -f 01

Algoritmo

Gerar executável

Para compilar um executável do utilitário PyMeuRH, execute o seguinte comando no terminal:

pyinstaller --onefile src\nsj_pyRPA\main.py -n automacoesempresas --icon src\nsj_pyRPA\resources\Persona.ico --noconsole --version-file version_info.txt -p .\src --icon src\nsj_pyRPA\resources\Persona.ico --add-data "src/nsj_pyRPA/resources/Persona.ico;nsj_pyRPA/resources"

Obs: No arquivo version_info.txt contém as informações relacionadas ao versionamento do executável, sempre que for feita uma alteração e em seguida for gerar um novo .exe para subir no instalador, deve-se alterar as informações de versão que existem nesse arquivo, considerando o padrão da Nasajon 2.YYMM.incremental, nos campos filevers, prodvers e ProductVersion.

Adicione o argumento --noconsole para gerar um executável que não abra o terminal, para casos em que aplicações chamaram o utilitário.

Também é possível gerar o executável usando o arquivo build_local.bat para executá-lo será necessário rodar o camanho pelo cmd.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nsj_automacoesempresas-2.2601.0.0.tar.gz (40.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nsj_automacoesempresas-2.2601.0.0-py3-none-any.whl (55.1 kB view details)

Uploaded Python 3

File details

Details for the file nsj_automacoesempresas-2.2601.0.0.tar.gz.

File metadata

File hashes

Hashes for nsj_automacoesempresas-2.2601.0.0.tar.gz
Algorithm Hash digest
SHA256 ac57c98d405a97651a2adb12fad3b4e6f94dbcf1e7f9a59fdddfdade0211f091
MD5 543049aaa7b4518dc830245d17199d2c
BLAKE2b-256 02f27ab88b4a759cfa1ffd9c07db4d2b06153e20b64050b89e58a4282e742116

See more details on using hashes here.

File details

Details for the file nsj_automacoesempresas-2.2601.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for nsj_automacoesempresas-2.2601.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 54a4cf1df0111afd2870ba11d5f41e01fdd53ac281ee47d9e2d018e6e5918450
MD5 64ddbe8b834c5558b9f4f724f1bacf84
BLAKE2b-256 99f0f99451887750b3d26868f1c6221b47c80abb41894dbb6b457977ccf42645

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page