Artigo
· Nov. 8 4min de leitura

Usando o Python no InterSystems IRIS – Exportando dados para o Excel

Usando o Python no InterSystems IRIS

Vamos neste breve artigo ver como podemos utilizar o python como linguagem de programação dentro o InterSystems IRIS. Para o nosso exemplo vamos criar um método que exporta os dados de uma tabela do IRIS para um arquivo no formato XLS (MS-Excel). Para isso vamos utilizar a biblioteca pandas do python.

Primeiro, vamos ver a nossa tabela.:

Class Demo.Alunos Extends (%Persistent, %Populate)
{

Property name As %String(MAXLEN = 100);

Property dob As %Date(FORMAT = 4);

Property sex As %String(VALUELIST = ",F,M");

Property course As %String(VALUELIST = ",Engenharia,Arquitetura,Direito,Artes,Letras,Psicologia,Musica");

Property note1 As %Integer(MAXVAL = 10, MINVAL = 0);

Property note2 As %Integer(MAXVAL = 10, MINVAL = 0);

Property debt As %Boolean;

}

Note que estamos utilizando a superclasse %Populate na nossa classe Demo.Alunos. Esta superclasse nos permite popular a nossa tabela com dados que serão criados baseado no tipo de cada propriedade. Para mais detalhes do %Populate veja o link https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls?KEY=GOBJ_populate

Compilada nossa classe, vamos abrir o terminal do Iris e pedir para criar 100 registros na nossa tabela:

Após criar os registros vamos verificar como ficou a nossa tabela. Abra o SQL Explorer no Portal de Administração do IRIS e veja o conteúdo da tabela:

 

Pronto. Temos nossa tabela criada e populada com 100 registros. Agora precisamos ver o python. Veja o link da documentação do IRIS a seguir: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls?KEY=AFL_epython

Este link apresenta a documentação de instalação do python no IRIS para os diversos ambientes, e também o uso do irispip (até o IRIS 2024.1) ou pip (a partir do IRIS 2024.2) para a instalação de pacotes.

Uma vez instalado e configurado o python vamos abrir o shell python a partir do terminal do IRIS apenas para verificar se está tudo ok. Veja a tela a seguir:

Ótimo. Estamos com o ambiente montado e pronto para avançarmos. Vamos agora para o pacote que vamos utilizar, o pandas. Para maiores detalhes sobre este pacote veja o link a seguir: https://pandas.pydata.org/

Instale o pandas no seu ambiente obedecendo a documentação do IRIS. Veja o diretório de instalação dos pacotes e qual utilitário (irispip ou pip) usar (vai depender da sua versão de IRIS).

No meu ambiente (IRIS 2024.1) o comando seria, via shell do Windows, ir para o diretório bin da instalação do IRIS e executar o seguinte comando:

.\irispip install --target c:\InterSystems\IRIS_ISS\mgr\python pandas

No meu exemplo o pacote pandas será instalado em mgr\python da minha instalação de IRIS. Veja o caminho para mgr\python da sua instalação e ajuste o comando.

 Instalado o pandas vamos ao código do nosso método que exporta os dados para o Excel:

Class Python.Exporta [ Abstract ]
{

ClassMethod tabela() As %Status [ Language = python ]
{

              import iris
              import pandas as pd
             
              rs = iris.sql.exec("select * from demo.alunos")
              df = rs.dataframe()

              # Salvar o DataFrame como um arquivo XLS
              caminho_arquivo = 'c:\\temp\\dados.xlsx'
              df.to_excel(caminho_arquivo, index=False)
             
              return True
}

}

Salve e compile a classe. Uma vez criado o código vamos executa-lo via terminal:

 

Pronto. Agora é só ir até o local de criação e abrir a tabela:

 

O código python é bem simples. Primeiro criamos um recordset a partir do comando SQL para recuperar as linhas da nossa tabela. Depois convertemos esse recordset em um dataframe pandas. Então usamos o dataframe para exportar os dados no formato XLS.

Este é um exemplo simples de uso do python. Existem várias bibliotecas úteis prontas e disponíveis para uso.

Até a próxima!

Discussão (0)1
Entre ou crie uma conta para continuar