Conectar ao Banco
database.connectConecta via ODBC (SQL Server, MySQL, PostgreSQL, Oracle) por campos ou string de conexão
Como usar
Conecta a um banco por ODBC (SQL Server, MySQL, PostgreSQL, Oracle e outros), preenchendo servidor, banco e usuário, ou com uma string de conexão. O driver ODBC precisa estar instalado na máquina. A senha vem do cofre; em SQL Server pode usar o usuário do Windows (conexão confiável).
Exemplo: Conecte ao servidor SQL01\ERP, banco Vendas, com conexão confiável, guardando em {connection}.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Forma de conexão * | Opção | Campos (servidor, banco, usuário) | Opções: Campos (servidor, banco, usuário), String de conexão ODBC |
| Driver ODBC * | Texto | ODBC Driver 18 for SQL Server | Nome do driver instalado, sem chaves. Ex.: ODBC Driver 18 for SQL Server, MySQL ODBC 8.0 Unicode Driver, PostgreSQL UnicodeSó quando «Forma de conexão» = «Campos (servidor, banco, usuário)» |
| Servidor * | Texto | | Ex.: localhost\SQLEXPRESS ou servidor,1433Só quando «Forma de conexão» = «Campos (servidor, banco, usuário)» |
| Banco de dados | Texto | | Só quando «Forma de conexão» = «Campos (servidor, banco, usuário)» |
| Conexão confiável (usuário do Windows) | Sim/Não | Não | Trusted_Connection=yes: entra com o usuário do Windows que executa o robô, sem usuário e senhaSó quando «Forma de conexão» = «Campos (servidor, banco, usuário)» |
| Usuário | Texto | | Só quando «Forma de conexão» = «Campos (servidor, banco, usuário)» e «Conexão confiável (usuário do Windows)» = «Não» |
| Senha (cofre) | Credencial do cofre | | Acrescentada à conexão como PWD; nunca fica gravada no projetoSó quando «Conexão confiável (usuário do Windows)» = «Não» |
| Confiar no certificado do servidor | Sim/Não | Não | TrustServerCertificate=yes: necessário no ODBC Driver 18 quando o servidor usa certificado próprio (comum em servidores locais)Só quando «Forma de conexão» = «Campos (servidor, banco, usuário)» |
| String de conexão * | Texto | DRIVER={ODBC Driver 18 for SQL Server};SERVER=;DATABASE=; | Não coloque a senha aqui: use o campo Senha (cofre)Só quando «Forma de conexão» = «String de conexão ODBC» |
| Salvar conexão na variável * | Variável de saída | connection | |
+ − Avançado (2)
| Campo | Tipo | Padrão | Detalhes |
|---|
| Autocommit | Sim/Não | Não | |
| Tempo limite de login | Número | 30 s | |
Resultado: guardado na variável connection (Objeto).
Conectar ao SQLite
database.connect_sqliteConecta a arquivo SQLite local
Como usar
Abre (ou cria) um banco SQLite num arquivo local, sem servidor. Ótimo para controle de estado do robô, filas e histórico.
Exemplo: Conecte a C:\Robos\controle.db para registrar os pedidos já processados.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Arquivo do banco * | Arquivo | | |
| Salvar conexão na variável * | Variável de saída | connection | |
Resultado: guardado na variável connection (Objeto).
Executar Consulta
database.execute_queryExecuta SELECT e retorna resultados
Como usar
Executa um SELECT e guarda as linhas (como dicionários, por padrão). Use ? no SQL e passe os valores em Parâmetros, nunca concatenando texto, para evitar erros e injeção de SQL.
Exemplo: SELECT numero, valor FROM pedidos WHERE status = ? com o parâmetro "Pendente", em {rows}.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
| SQL * | Código | SELECT 1 | |
| Salvar resultado na variável * | Variável de saída | rows | |
+ − Avançado (2)
| Campo | Tipo | Padrão | Detalhes |
|---|
| Parâmetros da consulta (?) | Lista | | Valores ligados aos marcadores ?, na ordem |
| Linhas como dicionários | Sim/Não | Sim | |
Resultado: guardado na variável rows (Lista).
Executar Comando
database.execute_non_queryExecuta INSERT, UPDATE, DELETE
Como usar
Executa INSERT, UPDATE, DELETE ou outros comandos que alteram dados e guarda quantas linhas foram afetadas. Por padrão confirma na hora; desmarque para confirmar junto com outros comandos numa transação.
Exemplo: UPDATE pedidos SET status = ? WHERE numero = ? com "Faturado" e {numero}.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
| SQL * | Código | UPDATE tabela SET coluna = ? WHERE id = ? | |
| Salvar linhas afetadas na variável * | Variável de saída | affected_rows | |
+ − Avançado (2)
| Campo | Tipo | Padrão | Detalhes |
|---|
| Parâmetros da consulta (?) | Lista | | Valores ligados aos marcadores ?, na ordem |
| Confirmar imediatamente | Sim/Não | Sim | |
Resultado: guardado na variável affected_rows (Número).
Executar Procedure
database.execute_procedureChama stored procedure com parâmetros
Como usar
Chama uma stored procedure com argumentos e guarda as linhas que ela devolver. Prefira procedures para regras complexas: o processamento fica no banco.
Exemplo: Execute dbo.sp_FecharPedido com o argumento {numero}.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
| Procedure * | Texto | | Ex.: dbo.usp_nome |
| Argumentos | Lista | | |
| Salvar resultado na variável * | Variável de saída | rows | |
Resultado: guardado na variável rows (Lista).
Iniciar Transação
database.begin_transactionInicia transação
Como usar
Inicia uma transação: as alterações seguintes só valem com Confirmar e podem ser desfeitas com Reverter. Use quando várias alterações precisam acontecer juntas.
Exemplo: Inicie a transação, grave o pedido e os itens, e confirme só se tudo der certo.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
Confirma transação
Como usar
Confirma as alterações feitas desde o início da transação.
Exemplo: Confirme depois de gravar o pedido e todos os itens.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
Reverter
database.rollbackReverte transação
Como usar
Desfaz as alterações feitas desde o início da transação. Normalmente fica na saída "Em caso de erro" de um Tentar / Capturar.
Exemplo: Se a gravação de algum item falhar, reverta para não deixar pedido pela metade.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
Fechar Conexão
database.close_connectionEncerra a conexão
Como usar
Fecha a conexão com o banco. O robô também fecha ao terminar; feche antes em execuções longas.
Exemplo: Feche {connection} depois de importar todos os pedidos.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
Consulta para DataFrame
database.query_to_dataframeResultado da query como Pandas DataFrame
Como usar
Executa um SELECT e guarda o resultado como tabela de dados (DataFrame), pronta para os comandos de Dados ou para exportar para Excel.
Exemplo: SELECT * FROM vw_vendas_mes em {dataframe} e exporte para vendas.xlsx.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
| SQL * | Código | SELECT 1 | |
| Salvar resultado na variável * | Variável de saída | dataframe | |
+ − Avançado (1)
| Campo | Tipo | Padrão | Detalhes |
|---|
| Parâmetros da consulta (?) | Lista | | Valores ligados aos marcadores ?, na ordem |
Resultado: guardado na variável dataframe (Tabela (DataFrame)).
DataFrame para Tabela
database.dataframe_to_tableInsere DataFrame em tabela do banco
Como usar
Grava as linhas de uma tabela de dados (DataFrame) numa tabela do banco, em lotes: acrescentando, substituindo a tabela ou falhando se ela existir.
Exemplo: Acrescente {df_planilha} na tabela staging_pedidos.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
| DataFrame * | Variável | dataframe | |
| Tabela * | Texto | | |
| Se a tabela existir | Opção | Acrescentar linhas | Opções: Acrescentar linhas, Substituir tabela, Falhar |
+ − Avançado (1)
| Campo | Tipo | Padrão | Detalhes |
|---|
| Linhas por lote | Número | 1000 | |
Listar Tabelas
database.list_tablesLista tabelas do banco
Como usar
Lista as tabelas do banco conectado. Útil para conferir a conexão e montar consultas.
Exemplo: Liste as tabelas em {tables} para confirmar que staging_pedidos existe.
Campos
| Campo | Tipo | Padrão | Detalhes |
|---|
| Conexão * | Variável | connection | |
| Salvar resultado na variável * | Variável de saída | tables | |
Resultado: guardado na variável tables (Lista).