InterSystems Developer Community é uma comunidade de 26,077 desenvolvedores incríveis
Somos um local onde os programadores do InterSystems IRIS aprendem e compartilham, permanecem atualizados, crescem juntos e se divertem!

Eu estava enfrentando o mesmo problema que o Jerry enfrentou ao conectar o IRIS ao SQL Server. Minha conexão ODBC está configurada para autenticar via autenticação do Windows.

Configure IRIS ODBC connection with Windows authentication using a

Como eu resolvi isso?

0 0
0 23

Olhando para o meu banco de dados, vejo que tenho um ^rINDEXSQL muito grande! Por que isso? 😬

Na página de SQL do Management Portal, em "SQL Statements", vejo um botão 'Clean stale' – o que ele faz? 🤔

Na lista de Statements, alguns têm um valor em 'Location' e outros não. Como isso acontece? 🤨

0 0
0 23

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?

0 0
0 23
Olá e Bem-vindos a recapitulação do canal da Comunidade de Desenvolvedores no YouTube de Março de 2025.
InterSystems Global Summit
By Andreas Dieckow, Amy Farley
By Timothy Leavitt, Gerrit Henning, Stephan du Plooy
By Keren Skubach, Vic Sun, Steve Mallam
FHIR Object Model
By Patrick Jamieson, Jaideep Majumdar
"Code to Care" vídeos
Is your data ready for AI?
By Don Woodlock, Head of Global Healthcare Solutions, InterSystems
Energy Consumption for AI
By Jessica Jowdy, Manager of Healthcare Sales Engineering, InterSystems
0 0
0 23

Motivação

Eu não conhecia ObjectScript até começar meu novo emprego. Objectscript não é exatamente uma linguagem de programação jovem. Comparada a C++, Java e Python, a comunidade não é tão ativa, mas estamos empenhados em tornar este lugar mais vibrante, não estamos?

Notei que alguns dos meus colegas acham complicado entender as relações de classes nesses projetos enormes. Não existe nenhuma ferramenta moderna de diagrama de classes fácil de usar para ObjectScript.

Trabalhos Relacionados

Eu testei trabalhos relevantes:

0 0
0 22

Tenho o prazer de anunciar a publicação do gj :: dataLoader, uma nova extensão do VS Code que simplifica a tarefa de carregar dados de arquivos CSV locais em tabelas SQL dos seus servidores InterSystems IRIS.

Aqui está um vídeo introdutório:

https://www.youtube.com/embed/XohVoW5rSy4
[Isso é um link incorporado, mas você não pode ver conteúdo incorporado diretamente no site, porque recusou os cookies necessários para acessá-lo. Para ver o conteúdo incorporado, você precisa aceitar todos os cookies nas suas Definições de cookies]

0 0
0 22

🚀 Um exemplo prático integrando REST, CSV, bancos de dados e serviços SOAP

No dia a dia de qualquer organização, a informação flui entre aplicações, serviços e sistemas muito diferentes entre si. Integrá-los de forma eficiente pode ser um desafio… a menos que você use o InterSystems IRIS.

Neste novo vídeo, eu mostro como construir um fluxo completo de integração combinando múltiplas tecnologias — APIs REST, arquivos CSV, bancos de dados e serviços SOAP — tudo dentro do ambiente visual oferecido pelo motor de interoperabilidade do IRIS.

👉 Você pode assistir ao vídeo aqui:

https://www.youtube.com/embed/82xA51nThqQ?si=CzRfwyLSwcKvOGGH
[Isso é um link incorporado, mas você não pode ver conteúdo incorporado diretamente no site, porque recusou os cookies necessários para acessá-lo. Para ver o conteúdo incorporado, você precisa aceitar todos os cookies nas suas Definições de cookies]

0 0
0 22
Discussão
· Abr. 16, 2025
Code Golf - Cobertura Máxima

Existe uma lista de números de 1 a 190.

ListaCompleta="1,2,3,4,5,6,7,8,9,.....,187,188,189,190"

Existe uma coleção de conjuntos desses valores:

Lista(1)="3,5,6,7,9"
Lista(2)="1,2,6,9"
Lista(3)="5,8,9"
Lista(4)="2,4,6,8"
Lista(5)="4,7,9"

Qual é uma abordagem elegante em ObjectScript para selecionar o menor número de itens da lista

  • Lista(1)
  • Lista(5)
  • Lista(n)

Que, juntos, cobririam o máximo de números possível da ListaCompleta.

Estou interessado na melhor cobertura, e não na eficiência.

0 0
0 22

A auditoria é uma capacidade crítica que garante a segurança do seu servidor e, há algum tempo, incluímos a capacidade de auditar instruções SQL executadas no servidor.

Com a v2024.3 já disponível, estamos fornecendo opções com granularidade mais refinada para definir esses eventos a serem auditados.

0 0
0 21
Artigo
· jan 19 1min de leitura
Importando CSV no CACHÉ

Aqui está um exemplo prático de como importar dados de um arquivo CSV para o Intersystems CACHÉ usando ObjectScript. Supondo que seu arquivo CSV seja simples (por exemplo, separado por vírgulas e com cabeçalhos), você pode usar %Stream.FileCharacter para lê-lo linha por linha e analisar os dados.


ClassMethod ImportCSV(filePath As %String) As %Status {
Set stream = ##class(%Stream.FileCharacter).%New()
Set sc = stream.LinkToFile(filePath)
If 'sc Quit sc

0 0
0 20

Muitas vezes, ao trabalhar com dados FHIR, por exemplo com o IRIS For Health, você vai achar útil criar uma operação FHIR personalizada. O padrão FHIR já vem com um conjunto de operações definidas (como $everything), mas uma operação personalizada é útil quando você precisa criar funcionalidades extras que vão além do conjunto de operações padrão do FHIR.

0 0
0 20

Em sua Produção de Interoperabilidade, você sempre pôde ter uma Business Operation que atua como um cliente HTTP utilizando OAuth 2.0 para autenticação, mas era necessário customizar a Operation para essa metodologia de autenticação. Desde a v2024.3, que foi lançada recentemente, há uma nova capacidade, fornecendo novas configurações para lidar com isso de forma mais fácil.

0 0
0 18

Olá a todos, sou eu novamente para compartilhar o que ando estudando recentemente.😓

Recentemente, estou estudando como configurar a autenticação OAuth2 para o repositório InterSystems FHIR. E descobri que os seguintes artigos são muito bons e fáceis de seguir.😁

SMART on FHIR EHR Launch com IRIS for Health

0 0
0 18

Olá comunidade,

Quero compartilhar minha experiência trabalhando em projetos que lidam com um volume masivo de dados. Ao longo dos anos, tive a oportunidade de lidar com enormes volumes de dados de pacientes, dados de pagadores e logs transacionais enquanto trabalhava na indústria hospitalar. Tive a chance de criar relatórios enormes, que precisavam ser escritos usando lógicas avançadas para buscar dados em múltiplas tabelas, cujos índices não ajudavam a escrever código eficiente.

Aqui está o que aprendi sobre como gerenciar grandes volumes de dados de forma eficiente.

Escolhendo o melhor método de acesso aos dados

Como todos nós da comunidade sabemos, o IRIS oferece múltiplas maneiras de acessar dados. A escolha do método correto depende do requisito.

  • Acesso direto a global: o mais rápido para operações de leitura/gravação em massa. Por exemplo, se eu precisar percorrer índices e buscar dados de pacientes, posso percorrer as globais para processar milhões de registros. Isso economiza muito tempo.
Set ToDate=+H
Set FromDate=+$H-1 For  Set FromDate=$O(^PatientD("Date",FromDate)) Quit:FromDate>ToDate  Do
. Set PatId="" For  Set PatId=$Order(^PatientD("Date",FromDate,PatID)) Quit:PatId=""  Do
. . Write $Get(^PatientD("Date",FromDate,PatID)),!
  • Usando SQL: Útil para relatórios ou necessidades analíticas, embora seja mais lento para conjuntos de dados muito grandes.

1 0
0 18

Meu problema era separar mensagens HL7 por tipo de mensagem. Eu precisava criar várias Operações de Arquivo. Com código personalizado, consegui usar 1 adaptador de arquivo para 1 interface e vários tipos de mensagem. Cheguei a experimentar extrair o MSH-4 do conteúdo bruto para acessar informações dinâmicas adicionais, mas isso pode trazer a necessidade de verificações de erro mais robustas e/ou ações padrão de consulta.

Seguindo a convenção de nomenclatura recomendada de "To_FILE_<IntegrationName>"

0 0
0 18

Quando criamos um repositório FHIR no IRIS, temos um endpoint para acessar informações, criar novos recursos, etc. Mas existem alguns recursos no FHIR que provavelmente não teremos em nosso repositório, por exemplo, o recurso Binary (esse recurso retorna um documento, como um PDF, por exemplo).

Criei um exemplo em que, quando um recurso Binary é solicitado, o endpoint FHIR retorna uma resposta como se ele existisse no repositório.

0 0
0 18

Há um padrão com o qual já me deparei várias vezes em que preciso usar um arquivo ou pasta temporária e que ela seja limpa em algum momento mais tarde.

O natural aqui é seguir os padrões de "Robust Error Handling and Cleanup in ObjectScript" , usando um try/catch/pseudo-finally ou um objeto registrado para gerenciar a limpeza no destrutor. %Stream.File* também tem a propriedade RemoveOnClose, que vocês podem ativar… mas usem com cuidado, pois podem acabar excluindo acidentalmente um arquivo importante. Além disso, esse indicador é redefinido ao chamar %Save(), então será necessário configurá-lo novamente como 1 depois disso.

Mas existe um caso complicado: imaginem que vocês precisam que o arquivo temporário sobreviva em um nível superior da pilha. Por exemplo:

0 0
0 18