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 pyRPA --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.1.tar.gz (46.8 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.1-py3-none-any.whl (63.7 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for nsj_automacoesempresas-2.2601.0.1.tar.gz
Algorithm Hash digest
SHA256 e5286180da9fb2fd5781014f166d647308b9f63effee5ff92fd4c9475900f35b
MD5 7cccaed7a33575e40f521b0a472e7c86
BLAKE2b-256 fc5436dbd0ff18473ee3275d26ff9c795a6410bf842faeada24a93739d7102bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsj_automacoesempresas-2.2601.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3426affa5ea16f9bb408745bfd97e725156c12a28b35fdb4775af7a6bf38c085
MD5 00400c91972da28ceaaf532d784ca3d1
BLAKE2b-256 ffc0986f7661915488a6dc90fd651e57e3c612c2372cef66536b010d26f5c828

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