#InterSystems IRIS

2 Seguidores · 952 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. 9, 2025 3m read

Rubrica InterSystems FAQ

Você pode verificar o espaço em disco a qualquer momento usando a classe utilitária do sistema: SYS.Database e a consulta: FreeSpace.

Aqui está como testar no terminal IRIS (vá para o namespace %SYS e então execute):

zn "%SYS"
set stmt=##class(%SQL.Statement).%New()
set st=stmt.%PrepareClassQuery("SYS.Database","FreeSpace")
set rset=stmt.%Execute()
do rset.
0
0 46
Artigo Heloisa Paiva · Set. 6, 2025 1m read

Rubrica InterSystems FAQ

O mirror sincroniza apenas arquivos de banco de dados.

Para sincronizar outros arquivos necessários para sua aplicação (arquivos CSP, imagens, documentos, etc.) entre os dois servidores que compõem o conjunto de espelhamento, siga uma das seguintes abordagens:

  1. Coloque esses arquivos em um disco compartilhado, usando um NAS ou dispositivo similar.
  2. Ou use um software de sincronização de arquivos para sincronizá-los entre os dois servidores.
0
0 28
Artigo Robert Cemper · Set. 5, 2025 4m read

O artigo foi motivado pelo 2025 September Article Bounty
********************************************************

O princípio do Docker é simplesmente convincente para mim.

  • Obtenha uma área restrita onde você pode brincar e tentar o que quiser/precisar fazer.
  • Depois de terminar, você pode descartá-la sem deixar rastros em seu ambiente de trabalho.

Essa foi a base técnica que me permitiu executar cerca de 700 revisões no OEX 
quase sem efeitos colaterais  (exceto aqueles causados por mim mesmo).

Para iniciantes, vou começar com o IRIS puro, sem *health, *ML, *whatever.

0
0 40
Artigo Heloisa Paiva · Ago. 21, 2025 4m read

O artigo do August Article Bounty sobre Global Masters, e um dos tópicos propostos me pareceu bastante interessante para uso futuro em minhas aulas. Então, é isso que eu gostaria de dizer aos meus alunos sobre tabelas no IRIS e como elas se correlacionam com o modelo de objeto.

Primeiro, o InterSystems IRIS possui um modelo de dados unificado. Isso significa que, ao trabalhar com dados, você não está preso a um único paradigma. Os mesmos dados podem ser acessados e manipulados como uma tabela SQL tradicional, como um objeto nativo, ou até mesmo como um array multidimensional (um global). Isso significa que, ao criar uma tabela SQL, o IRIS cria automaticamente uma classe de objeto correspondente. Ao definir uma classe de objeto, o IRIS a torna automaticamente disponível como uma tabela SQL. Os dados em si são armazenados apenas uma vez no eficiente motor de armazenamento multidimensional do IRIS. O motor SQL e o motor de objeto são simplesmente diferentes "lentes" para visualizar e trabalhar com os mesmos dados.

Primeiro, vamos ver a correlação entre o modelo relacional e o modelo de objeto:

Relacional Objeto
Tabela Classe
Coluna Propriedade
Linha Objeto
Chave primária Identificador de objeto

Nem sempre é uma correlação de 1:1, já que você pode ter várias tabelas representando uma classe, por exemplo. Mas é uma regra geral.

1
1 71
Artigo Heloisa Paiva · Set. 4, 2025 2m read

Rubrica InterSystems FAQ

No InterSystems IRIS, você pode criar tabelas vinculadas usando comandos, ao invés de usar o caminho System Explorer > SQL > Wizard > Linked Tables do Portal de Administração:

Para criar uma tabela vinculada, use o método CreateLinkedTable da classe  %SYSTEM.SQL.Schema. Veja a documentação da classe para detalhes.

Para executar, siga os passos:

set sc = $SYSTEMSQL.Schema.
0
0 26
Anúncio Danusa Calixto · Set. 2, 2025

Tenho o prazer de anunciar o lançamento de tree-sitter-objectscript, uma nova gramática de código aberto para tree-sitters que oferece suporte de primeira classe a ObjectScript para editores modernos. Se você viu a prévia na READY '25, ficará feliz em saber que ela já está disponível no Github:

https://github.com/intersystems/tree-sitter-objectscript

O que ela Fornece?

  • Análise Rápida & Precisa: Uma gramática poderosa para ObjectScript, permitindo análise de sintaxe em tempo real, destaque inteligente e edição estrutural em editores de código modernos.
  • Reconhecimento Poliglota: Arquivos .
0
0 46
Artigo Larissa Prussak · Ago. 29, 2025 1m read

InterSystems FAQ rubric

Existem dados, como registros de log de execução, que você pode não querer que voltem ao estado anterior mesmo se ocorrer um rollback durante uma transação.
Esse requisito pode ser atendido colocando esses dados no banco de dados IRISTEMP, que não sofre rollback.

Temporary Globals and the IRISTEMP Database

Ao mapear para esse banco as entidades de tabela que você não deseja que sofram rollback, é possível manter as informações após a reversão.

No entanto, o conteúdo desse banco será apagado quando o IRIS for reiniciado.

0
0 29
Artigo Larissa Prussak · Ago. 29, 2025 1m read

Como parte de um projeto técnico recente de documentação para otimizar a busca, precisei usar Embedded Python no meu código ObjectScript.
O principal obstáculo foi passar uma lista do Python, criada em um método de classe Python, para um método ObjectScript.

Enviar a lista por referência para o método Python, preenchê-la com o método Insert(), e retornar a referência para o método ObjectScript resultava em uma lista do tipo %SYS.Python. Esse processo era simples, mas pouco eficiente.

0
0 42
Artigo Larissa Prussak · Ago. 29, 2025 1m read

InterSystems FAQ rubric

Por padrão, a ordem das colunas em uma tabela é determinada automaticamente pelo sistema.
Para alterar a ordem, defina explicitamente a ordem de cada propriedade utilizando a palavra-chave SqlColumnNumber ao definir a classe.

Exemplo:

Property Name As %String [SqlColumnNumber = 2];

Consulte a documentação abaixo.

SqlColumnNumber

Se você deseja alterar o nome da tabela SQL, especifiqueSqlTableName. Se você deseja alterar o nome da coluna (nome do campo), especifiqueSqlFieldName.

Ambos se aplicam apenas a classes persistentes.

0
0 23
Artigo Heloisa Paiva · Ago. 25, 2025 3m read

Ao começar a usar o InterSystems IRIS ou Cache, os desenvolvedores frequentemente se deparam com três conceitos principais: Objetos Dinâmicos, Globals e Tabela Relacional. Cada um tem seu papel na construção de soluções escaláveis e fáceis de manter. Neste artigo, vamos percorrer exemplos de código práticos, destacar as melhores práticas e mostrar como esses conceitos se conectam.

1. Trabalhando com Objetos Dinâmicos

Objetos dinâmicos (%DynamicObject e %DynamicArray) permitem que os desenvolvedores manipulem estruturas semelhantes a JSON diretamente no ObjectScript.

0
0 59
InterSystems Oficial Danusa Calixto · Ago. 11, 2025

Olá Comunidade! 

🚨 Estima-se que até 44% da população da América Latina conviva com condições graves de saúde sem diagnóstico.

Entre elas, a MASH - uma condição hepática progressiva e silenciosa - e a inflamação sistema, que pode representar um fator de risco cardiovascular significativo. Ambas seguem subdiagnosticadas, com consequências potencialmente fatais.

De 5 a 7 de setembro, o Einstein Hospital Israelita sedia, pela primeira vez no Brasil, por meio da Eretz.

1
0 73
Artigo Heloisa Paiva · Ago. 15, 2025 4m read

Este ótimo artigo despertou recentemente algumas discussões privadas, e eu gostaria de compartilhar algumas reflexões próprias a partir dele.
A preocupação central se resume a: Por que precisamos de regras ou convenções de codificação, afinal? O que aconteceu com a maravilhosa era do programador-artista renascentista, trilhando seu próprio caminho, antes de ser substituído pelo artesão e agora (ainda pior) pela IA?
Resumindo, há alguns motivos pelos quais padrões e diretrizes de codificação são úteis — e o programador-artista renascentista não desapareceu totalmente.

0
0 23
InterSystems Oficial Danusa Calixto · Ago. 13, 2025

Olá Comunidade! 

Este é um desafio técnico aberto a todos os participantes do hackathon MIT Hacking Medicine:

Melhor Uso do GenAI com a Busca Vetorial da InterSystems

Ao encarar seu desafio na área da saúde neste fim de semana, pense em como a IA Generativa pode aumentar a eficácia e a inteligência da sua solução.

Siga os passos do repositório GitHub do InterSystems IRIS Vector Search para começar.

Os mentores da InterSystems estarão no local para ajudar você a começar e implementar.

Esperamos por vocês 😉

1
0 51
Artigo Heloisa Paiva · Ago. 11, 2025 4m read

O Guia do Mochileiro do Object Script

O Object Script é nossa linguagem de programação principal no ambiente InterSystems IRIS. Ele também oferece recursos modernos que o tornam poderoso para desenvolvedores.

Para iniciantes, adotar boas práticas de programação desde o início é fundamental para escrever um código de fácil manutenção, eficiente, escalável e claro, seguindo as melhores práticas

Este guia apresenta dicas essenciais para ajudar desenvolvedores “novatos” em ObjectScript a escreverem um código melhor e compreenderem alguns recursos da linguagem.

0
0 60
Anúncio Danusa Calixto · Ago. 8, 2025

Usuários do framework %UnitTest agora podem obter informações de cobertura de teste dentro do VS Code combinando a versão mais recente (v2.0.0) da extensão InterSystems Testing Manager com a impressionante Test Coverage Tool de @Timothy.Leavitt.

Acima, você pode ver o painel Cobertura de Teste, que movi para a barra lateral secundária à direita para que possa ser explorado mais facilmente em conjunto com o Explorador de Testes à esquerda.

Observe como a execução de teste mais recente (de todos os testes unitários da Ferramenta de Cobertura de Teste) cobriu o método BitValue de TestCoverage.

0
0 57
Artigo Larissa Prussak · Ago. 5, 2025 1m read

Revisando meus pacotes publicados, identifiquei um bug sério na IRIS Native API.

Existe um método em %Net.DB.Iris chamado function().
Ele é equivalente ao comando ObjectScript $$label^routine(param).
Isso funcionava bem há 2 anos, quando publiquei meus pacotes de extensões para linha de comando.
Agora, está quebrado há pelo menos 1 ano e gera o erro <PROTECT>.

Identifiquei o problema em ObjectScript, Java, Python e Node.js.
Foi registrado como WRC# 1002589.

Para todos os 4 casos, também verifiquei uma solução alternativa:
Em vez de chamar uma Function do ObjectScript, você deve chamar um ClassMethod.

1
0 47
Artigo Larissa Prussak · Jul. 24, 2025 2m read

Se você está investigando Globals estruturadas complexas, isso pode facilmente se tornar um exercício cansativo de digitação.
Diferente do Global Explorer no System Management Portal, o Global-Inspector permite um tipo de navegação aprofundada (drill-down), permitindo explorar nível por nível dos subscritos. Você também tem a opção de visualizar o conteúdo armazenado ou mostrar apenas a estrutura de subscritos. Globals que armazenam tabelas SQL podem não ser tão interessantes, mas no espaço SYSTEM, você encontrará verdadeiras árvores com ramos e ramificações completamente diferentes.

2
0 46
Artigo Henry Pereira · Ago. 3, 2025 5m read

artisan cover

Se você já viu um artesão em ação — seja um ceramista moldando o barro até virar arte ou um luthier transformando madeira bruta em um violão extraordinário — sabe que a mágica não está nos materiais, e sim no cuidado, na técnica e no processo. Tenho uma guitarra feita por um luthier que me inspira todos os dias. Mas, vou confessar, criar algo assim é um talento que não tenho.

Por outro lado, no digital, vejo muita gente esperando essa mesma “mágica” de uma IA generativa.

2
0 43
Artigo Heloisa Paiva · Ago. 2, 2025 3m read

Documentos Word são amplamente utilizados no mercado. Os usuários frequentemente criam contratos, memorandos, currículos, relatórios, análises e outros documentos que podem exigir dados de ou capturados pelo InterSystems IRIS. No entanto, o IRIS não possui uma API, SDK, biblioteca ou adaptador para isso. Essa limitação não existe mais. 

A nova biblioteca Open Exchange iris4wordd (https://openexchange.intersystems.com/package/iris4word)oferece um SDK ObjectScript onde o desenvolvedor passa qualquer %DynamicObject como parâmetro, um arquivo de template Word e, em seguida, recebe um documento pronto, com a estrutura e formatação definidas em seu template.


0
1 41
Artigo Heloisa Paiva · Jul. 31, 2025 2m read

Se você trabalha com Produções, destacar as conexões entre Business Hosts é um recurso muito conveniente, permitindo aos desenvolvedores obter uma representação visual do fluxo de dados.

Esse recurso funciona por padrão com todos os Business Hosts do sistema. Se um usuário escreve seus próprios Business Services, Processes ou Operations, ele deve implementar o método OnGetConnections para que essa funcionalidade funcione com seus Business Hosts personalizados (ou usar as propriedades  Ens.DataType.ConfigNamepara as conexões).
Dito isso, o SMP mostra apenas a primeira camada de conexões do Business Host selecionado. Às vezes, precisamos obter conexões de conexões recursivamente para construir um grafo completo de fluxo de dados. Ou podemos precisar dessas informações de conexão para verificar quais sistemas downstream podem ser afetados por uma mudança upstream.

0
0 35
Artigo Andre Larsen Barbosa · Jul. 30, 2025 3m read

É... Chegou a hora dos testes. Sabemos que em muitas vezes, ela até já passou. Bom, e agora? Consigo reforçar a qualidade do meu desenvolvimento?

A resposta é: SIM. Sim, você consegue. A ferramenta Toolqa busca exatamente isto. É um facilitador. Qual é o seu objetivo? Garantir que as APIS atendam aos requisitos de negócio pré-estabelecidos, e também mantenha-se rígida com as <sarcasm> futuras tentativas frustradas </sarcasm> de acabar com a sua aplicação, site, App ou qualquer outro que utilize-se de sua API.

Agora deve estar se perguntando, mas como é que isto acontece?

0
0 45
Artigo Heloisa Paiva · Jul. 29, 2025 4m read

Agradeço à comunidade por traduzir um artigo anterior para o português!

Estou retribuindo o favor com um novo lançamento do aplicativo de demonstração Pattern Match Workbench.

Suporte Adicionado para Português.

Agora, as legendas, botões, mensagens de feedback e textos de ajuda da interface do usuário estão atualizados para o português.

Além disso, descrições de padrões podem ser solicitadas no novo idioma.

O único Modelo de IA responsável por transformar o comando do usuário em código de correspondência de padrões foi completamente retreinado.

0
0 38
Anúncio Danusa Calixto · Jul. 29, 2025

#InterSystems Demo Games entry


⏯️ Care Compass – Assistente de IA RAG com tecnologia InterSystems IRIS para gerentes de cuidados

O Care Compass é um protótipo de assistente de IA que auxilia assistentes sociais a priorizar clientes por meio da análise de dados clínicos e sociais. Utilizando a Geração Aumentada de Recuperação (RAG) e modelos de linguagem de grande porte, ele gera resumos narrativos de risco, calcula pontuações de risco dinâmicas e recomenda os próximos passos. O objetivo é reduzir as visitas evitáveis ao pronto-socorro e apoiar intervenções precoces e informadas.

Apresentadores:
🗣 @Brad Nissenbaum, Sales Engineer, InterSystems
🗣 @Andrew Wardly, Sales Engineer, InterSystems
🗣 @Fan Ji, Solution Developer, InterSystems
🗣 @Lynn Wu, Sales Engineer, InterSystems

0
0 45