#InterSystems IRIS

2 Seguidores · 941 Postagens

InterSystems IRIS é uma plataforma de dados completa
A InterSystems IRIS oferece tudo que você precisa para capturar, compartilhar, entender e agir com base no ativo mais valioso de sua organização - seus dados.
Como uma plataforma completa, a InterSystems IRIS elimina a necessidade de integração de múltiplas tecnologias de desenvolvimento. As aplicações requerem menos código, menos recursos do sistema e menos manutenção.

Artigo Heloisa Paiva · Set. 12, 2024 4m read

Olá comunidade

Nós experimentamos anteriormente o Python embutido em IRIS; no entanto, eu ainda não tive a oportunidade de implementar IRIS usando Python nativo. Nesse artigo, vou percorrer os passos que eu usei para começar a aprender e implementar IRIS dentro da fonte Python. Eu também gostaria de agradecer @Guillaume Rongier@Luis Angel Pérez Ramos pela ajuda resolvendo os problemas que encontrei durante minha recente instalação PIP de IRIS no Python, que eu habilitei para funcionar adequadamente.

Vamos começar a escrever IRIS em Python.

Em primeiro lugar, você precisa instalar o arq

0
0 65
Artigo Heloisa Paiva · Set. 8, 2024 1m read

Rubrica InterSystems FAQ

Isso pode ser conseguido usando o procedimento CSV() da classe %SQL.Util.Procedures .
Abaixo está o exemplo de uso do código. (Assumindo que o arquivo test.csv está em c:\temp.)

 Set rowtype="Name VARCHAR(50),UID VARCHAR(50), PHONE VARCHAR(50)"
 Set filename="c:\temp\test.csv"
 Set result=##class(%SQL.Statement).%ExecDirect(,"call %SQL_Util.CSV(,?,?)",.rowtype,.filename)
 Set rset =result.%NextResult()
 
 // To display all results, use do rset.%Display()
 While rset.%Next() {
     Write "Name:",rset.%GetData(1)," UID:",rset.%GetData(2)," PHONE:",rset.%GetData(3),!
     }

 Set 
0
0 69
Artigo Heloisa Paiva · Set. 6, 2024 2m read

Incluo esse post para ajudar os usuários de WebTerminal que atualizaram à versão IRIS 2024.2 -- (Build 247U) Tue Jul 16 2024 09:52:30 EDT -- liberada recentemente, ou estão considerando fazê-lo.

Essa versão 2024.2 contém uma mudança (DP-432503) que precisa que o usuário através do qual se conecta inicialmente ao Web Gateway (normalmente CSPSystem) deva ter permissões de leitura (READ) sobre a base de dados em que se encontra a classe de dispatching da aplicação web de tipo REST.

Para os casos em que não for assim, se gera um erro, mas retorna um estado HTTP 404 a quem faz a requisição no lug

0
0 89
Artigo Heloisa Paiva · Set. 4, 2024 7m read

Como parte do concurso IRIS Python 2024, meu colega Damir e eu tivemos uma ideia de onstruir uma plataforma chamada ShelterShare para conectar vítimas e voluntários para requisições de abrigo. Para isso, escolhemos Django como uma framework e procedemos para construir a primeira versão ccom 3 docker containers diferentes, django, iris e nginx, que iriam então utilizar o IRIS puramente como uma máquina de base de dados pelo muito bem composto django_iris (cumprimentos ao Dimitry). Como progredimos rápido, decidimos explorar a opção de rodar ele dentro do mesmo container que o IRIS utilizando o 




0
0 64
Artigo Heloisa Paiva · Set. 2, 2024 5m read

Faz bastante tempo desde a última vez que escrevi uma postagem de atualização do IoP.

image

Então, o que há de novo desde o lançamento da interface de linha de comando IoP?

Dois novos grandes recursos foram adicionados ao IoP:

  • Rebranding: o módulogrongier.pex foi renomeado para iop para refletir o novo nome do projeto.
  • suporte Async: IoP agora suporta funções assíncronas e co-rotinas.

Rebranding

O módulo grongier.pex foi renomeado para iop para refletir o novo nome do projeto.

O módulo grongier.pex ainda está disponível para compatibilidade retroativa, mas será removido no futuro.

suporte Async

O

0
0 56
Artigo Heloisa Paiva · Ago. 31, 2024 5m read

Rubrica InterSystems FAQ 

Os dados dos produtos InterSystems (linha de tabela, instância de objeto) são guardados em variáveis globais.
O tamanho de dados de cada global pode ser obtido clicando nas propriedades da global que você quer ver da página Portal de Adminitração > Sistema > Configuração > Base de dados Local > Globais, então clicando no botão Calcular Tamanho na página de atributos globais que aparece.
Para exibir os tamanhos de globais num namespace, você pode usar ^%GSIZE no terminal
A execução do método é a seguinte:

USER>do ^%GSIZE
 
Directory name: c:\intersystems\ensemble\mgr\user
0
0 70
Artigo Heloisa Paiva · Ago. 29, 2024 1m read

Se você encontrou o problema de que nem todas as linhas do seu resultado estão retornando no seu snapshot, você está no lugar certo.

Ao usar snapshots, existe uma informação não trivial de que eles têm um máximo de linhas que vem por padrão como 250.

Para mudar isso é muito simples. Ao invés de enviar o snapshot como referência direto no seu método de execução de query ou procedure, vamos inicializá-lo antes e definir um valor na propriedade MaxRowsToGet.

Set resultSet = ##class(%ListOfObjects).%New()
Set snapshot = ##class(EnsLib.SQL.Snapshot).%New()
Set snapshot.MaxRowsToGet = 10000Do
0
0 38
Artigo Heloisa Paiva · Ago. 27, 2024 7m read

Tenho orgulho de anunciar o novo lançamento de iris-pex-embedded-python (v2.3.1) com uma nova interface de linha de comando.

Essa linha de comando é chamada iop, de Interoperability On Python.

Primeiro, eu gostaria de apresentar em algumas palavras as maiores mudanças no projeto desde a primeira versão.

Um breve histórico do projeto

A versão 1.0 foi uma prova de conceito para mostrar como a framework de interoperabilidade do IRIS pode ser usada com uma abordagem primeiro python enquanto permanece compatível com qualquer código ObjectScript existente.

O que isso significa? Significa que qualquer desenvolvedor python pode usar a framework de interoperabilidade do IRIS sem ter nenhum conhecimento de ObjectScript.

Exemplo:

from grongier.pex import BusinessOperation

class MyBusinessOperation(BusinessOperation):

    def on_message(self, request):
        self.log.info("Received request")

Incrível, não é?

0
0 68
Artigo Heloisa Paiva · Ago. 25, 2024 1m read

Rubrica do InterSystems FAQ

Aqui, vamos introduzir um código de exemplo para registrar e referenciar agendas de tarefas.

 ①Exemplo de registro de agenda de tarefa

*Crie uma tarefa  para executar ^TEST todos os dias à 1:00 da manhã.

 set task=##class(%SYS.Task).%New()
 set task.Name="MyTask1"
 set task.Description="Execute ^xxx every day at 1:00 AM" // Optional
 set task.NameSpace="USER"
 set task.TimePeriod=0
 set task.DailyFrequency=0
 set task.DailyFrequencyTime=""
 set task.DailyIncrement=""
 set task.DailyStartTime=$ZTimeh("01:00:00")
 set task.DailyEndTime=""
 set task.TaskClass="%SYS.Task.Ru



0
0 57
InterSystems Oficial Danusa Calixto · Ago. 23, 2024

A versão 2024.1.3 do InterSystems IRIS Adaptive Analytics já está disponível na página de Distribuição de Software da InterSystems. Esta versão inclui o AtScale 2024.1.3 e um arquivo UDAF (User Defined Aggregate Function) atualizado. Esta versão inclui os seguintes novos recursos de modelagem e BI:

  • Formatação da saída do cálculo com base no campo de entrada em vez de apenas no formato definido no cálculo. Isso é particularmente útil para cálculos que não podem ter um formato de saída padrão, como crescimento ano a ano em dólares, euros ou tempo.
  • Suporte para as seguintes funções MDX: Dates
0
0 48
Artigo Lealdo Flaminio · Ago. 23, 2024 3m read

Rubica InterSystems FAQ

Use a consulta ErrorList da classe SYS.ApplicationError.

  • Nota 1: Rode no namespace %SYS.
  • Nota 2: Essa é uma utilidade não armazenada, então usamos a classe %ResultSet ao invés de %SQL.Statement.

Um exemplo de execução de comando é o seguinte:

USER>set$namespace="%SYS"   // igual a zn "%SYS"%SYS>set rset=##class(%ResultSet).%New()

%SYS>set rset.ClassName="SYS.ApplicationError"%SYS>set rset.QueryName="ErrorList"// O primeiro argumento da consulta é o nome do namespace, o segundo é a data (no formato MM/DD/AAAA).%SYS>do rset.Execute("USER","08/17/2020"
0
0 81
Artigo Heloisa Paiva · Ago. 21, 2024 29m read

Um experimento sobre como usar a framework LangChain, Busca por Vetor IRIS e LLMs para gerar SQL compatível com IRIS de prompts de usuários.

Esse artigo foi baseado neste notebook. Você pode rodar com um ambiente pronto para uso com esta aplicação no OpenExchange.

Setup

Primeiro, precisamos instalar as livrarias necessárias:

!pip install --upgrade --quiet langchain langchain-openai langchain-iris pandas

Em seguida, importamos os módulos requeridos e definimos o ambiente:

import os
import datetime
import hashlib
from copy import deepcopy
from sqlalchemy import create_engine
import getpass
impo
0
0 67
Artigo Heloisa Paiva · Ago. 19, 2024 1m read

Perguntas Frequentes de InterSystems

Se necessita migrar seu servidor por algum motivo, pode reduzir o trabalho de configuração do novo ambiente. Basta copiar a informação de configuração de seu ambiente prévio ao novo.

Você pode migrar as seguintes informações de configuração.

  • iris.cpf
  • Configuração do SQL gateway 
  • Configuração do  web gateway *Nota 1
  • rotinas de usuário, etc... armazenadas na base de dados IRISSYS *Nota 2
  • Configuração de segurança 
  • Configuração de tarefas

Nota 1: Se foi estabelecida uma senha, só será necessário restabelecê-la manualmente.
Nota 2: As configurações 

0
0 62
Artigo Heloisa Paiva · Ago. 16, 2024 3m read

Rubrica InterSystems FAQ 

Globais temporárias armazenadas nas bases de dados IRISTEMP/CACHETEMP são usadas quando um processo não precisa guardar dados indefinidamente, mas requere a poderosa performance das globais. As bases de dados IRISTEMP/CACHETEMP não são jounralizadas, então usar globais temporárias não cria arquivos de journal.

O sistema usa as bases de dados IRISTEMP/CACHETEMP para armazenamento temporário e estão disponíveis para usuários para o mesmo objetivo.

Para mais informações sobre globais temporárias e a base de dados IRISTEMP, veja o documento a seguir:
Globais Temporárias








0
0 70
InterSystems Oficial Danusa Calixto · Ago. 16, 2024

Alerta: Corrupção do Banco de Dados com Bancos de Dados de Vários Volumes após Truncament

A InterSystems corrigiu um defeito que pode causar corrupção de banco de dados ou erros <DISKHARD> com bancos de dados multivolume em circunstâncias extremamente raras. Somente bancos de dados que foram truncados estão em risco.
 

O defeito existe nos seguintes produtos e em quaisquer ofertas da InterSystems baseadas neles:

  • InterSystems IRIS® – 2024.1, 2024.1.1 e 2024.2
  • InterSystems IRIS® for Health – 2024.1, 2024.1.1 e 2024.2
  • HealthShare® Health Connect – 2024.1, 2024.1.1 e 2024.2

Nenhum produto

0
0 41
InterSystems Oficial Danusa Calixto · Ago. 16, 2024

A primeira prévia para desenvolvedores do InterSystems IRIS 2024.3 e do InterSystems IRIS for Health 2024.3 foi publicada no site de prévia para desenvolvedores do WRC. Os contêineres podem ser encontrados em nosso registro de contêineres e são marcados como última prévia.


Esta é uma versão muito inicial no ciclo de lançamento e não há nenhum recurso digno de “destaque” que esteja completo. Eles começarão a chegar em versões de pré-visualização futuras.
 

A documentação inicial pode ser encontrada nos links abaixo

Disponibilidade e Infor

0
0 32
Artigo Heloisa Paiva · Ago. 15, 2024 11m read

Iris-python-template

Projeto template com vários códigos Python para ser usado com InterSystems IRIS Community Edition com container.

Apresentando:

  • Notebooks
    • Kernel de Python Embutido
    • ObjectScript Kernel
    • Vanilla Python Kernel
  • Python Embutido
    • Exemplo de código
    • Flask demo
  • IRIS Python Native APIs
    • Exemplo de código

2. Tabela de Conteúdos

Notebooks
0
0 90
InterSystems Oficial Danusa Calixto · Ago. 15, 2024

A versão de manutenção estendida 2024.1.1 do InterSystems IRIS, InterSystems IRIS for Health e HealthShare Health Connect já está disponível. Ela fornece correções de bugs para a versão anterior 2024.1.0.

Você pode encontrar as listas de alterações detalhadas/listas de verificação de atualizações nestas páginas

Como obter o softwar

O software está disponível como pacotes de instalação clássicos e imagens de contêiner. Para obter a lista completa de instaladores e imagens de contêiner disponíveis, consulte a p

0
0 51
Anúncio Heloisa Paiva · Ago. 12, 2024

Os lançamentos de 2024.2 do InterSystems IRIS Data PlatformInterSystems IRIS for Health, e HealthShare Health Connect são agora Generally Available (GA), ou geralmente disponíveis.

DESTAQUES DO LANÇAMENTO

2024.2 é um lançamento de Continuous Delivery (CD), ou entrega contínua. Muitas atualizações e melhorias foram adicionadas a esse lançamento:

Melhorando a Experiência do Desenvolvedor

  • Remoção do Studio - 2024.2 instalações de Windows não incluem o IDE Studio, e atualizar uma instância existente remove o Studio do diretório bin dela. Desenvolvedores que desejam continuar usando o Stu
0
0 69
Discussão Heloisa Paiva · Ago. 8, 2024

Hoje teremos um code golf diferente: construir um programa (usando apenas caracteres ASCII imprimíveis, tabs e caractere de nova linha) que imprima exatamente os caracteres no espaço imprimível ASCII (de 32 a 126) que não apaecem no código fonte do seu programa (em qualquer ordem, mas quantas vezes você quiser).

Como sempre o objetivo é produzir o menor código fonte que seja capaz disso.

O meu (admito que não muito bom, mas faz o trabalho!) código:

Classascii.ascii {

ClassMethodascii()
{
    setx="!#$%&'()*+,-./0123456789:;<>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdfghijklmnopqruvwyz{|
0
0 49
Artigo Heloisa Paiva · Ago. 6, 2024 4m read

Desenvolvimento de frontend pode ser uma tarefa muito difícil, especialmente para desenvolvedores focados em backend. Mais cedo na minha carreira, as linhas entre frontend e backend eram borradas, e se experava de todos que conseguissem manejar ambos. CSS em particular era um desafio constante, parecia uma missão impossível.

Apesar de eu aproveitar trabalho de frontend, CSS ainda é um desafio complexo para mim, especialmente porque aprendi por tentativa e erro. O meme do Peter Griffin com dificuldade para abrir persianas captura perfeitamente minha experiência aprendendo CSS Peter Griffin CSS

Porém, hoje, tudo

0
0 100
Artigo Lealdo Flaminio · Jul. 31, 2024 6m read

Coleta de dados

Esse é um guia de instruções passo a passo para criar uma tarefa que coleta dados sobre a base InterSystems e as globais que contem (como se vê no App Open Exchange associado - encontre todo o código relacionado ali)

Termo de responsabilidade: Este software é meramente para fins de TESTE/DEMO. Este código não é suportado pela InterSystems como parte de nenhum produto. InterSystems o fornece como ferramenta de demonstração/teste para um produto e versão específicos. O usuário ou cliente é totalmente responsável pelo mantimento e teste deste software depois da entrega, e a InterS

Recording_2023-05-23_at_2_03_45_PM_AdobeExpress

0
0 54
Artigo Heloisa Paiva · Jul. 18, 2024 3m read

Introdução ao WSGI em IRIS

Com o IRIS 2024+, os usuários podem hospedar aplicações WSGI usando Security.Applications. Por exemplo, um usuário pode fazer algo como o seguinte:

Exemplo funcional mínimo

zn "%SYS"
Kill props
Set props("Description") = "Sample WSGI Application"
Set props("MatchRoles") = ":%All"
Set props("WSGIAppLocation") = "/path/to/flaskapp"
Set props("WSGIAppName") = "myapp"
Set props("WSGICallable") = "app"
Set props("DispatchClass") = "%SYS.Python.WSGI" // importante, se não será reconhecido como uma aplicação CSP
Set sc = ##class(Security.Applications).Create("/flask", .prop
0
0 43
Artigo Heloisa Paiva · Jul. 10, 2024 1m read

Por que usá-la?

Esse app oferece uma interface fácil para analisar armazenamento:

  • Filtro por base de dado (namespace), nome da global, tamanho utilizado ou tamanho alocado;
  • Veja a soma dos tamanhos usado e alocado para os filtros aplicados;
  • Exporte a tabela para JSON, CSV, ou XML.

Como usar

Siga as instruções no arquivo README do repositório GitHub e configure as definições para conectar à sua instância.

Como adaptar às suas necessidades

Já que foi construído com Python e Django, você pode facilmente adicionar métodos de análises específicas em api/methods.py e usar as views

0
0 61
Artigo Heloisa Paiva · Jul. 8, 2024 19m read

Nosso objetivo

Hoje vamos continuar expandindo o último artigo compartilhando informações sobre alguns recursos que adicionamos em nosso portal. Vamos incluir uma pitada de CSS para visualizar os dados disponíveis melhor e exportá-los. Finalmente, estudaremos como adicionar opções de filtros e ordenação. Ao fim deste artigo, você deve ser capaz de exibir esteticamente uma query simples completa.

Anteriormente, em "Um portal para administrar armazenamento feito com Django"...

Vamos voltar de onde paramos antes de seguir o desenvolvimento do portal. Anteriormente, criamos a a base do projeto




0
0 69
Artigo Heloisa Paiva · Jul. 4, 2024 9m read

Integrar aplicações frontend de React com serviços backend como a base de dados IRIS através de APIs REST pode ser uma forma poderosa de contruir aplicações web robustas. No entanto, um obstáculo comum que os desenvolvedores costumam encontrar é o problema de Cross-Origin Resource Sharing (CORS), que pode impedir que o frontend acesse os recursos no backend devido a restrições de segurança impostas pelos navegadores web. Nesse artigo, exploraremos como abordar os problemas de CORS ao integrar aplicações web de React com serviços backend de IRIS.

Criando o esquema

Começamos definindo um esquema

image

0
0 123
Artigo Heloisa Paiva · Jul. 3, 2024 10m read

Nosso objetivo

No último artigo, falamos sobre alguns fatores iniciais do Django. Aprendemos como começar um projeto, garantir que temos todos os requisitos e fazer um CRUD. No entanto, hoje vamos um pouco mais além.

Às vezes precisamos acessar métodos mais complexos, então hoje vamos conectar o IRIS a um ambiente Python, construir algumas funções e exibir seus resultados numa página web. Será similar à última discussão, mas mais adiante para que você possa fazer algo novo, mas não demais para que você se sinta perdido. Nesse projeto, vamos buscar informações sobre as globais em IRIS para ra











0
0 97