Se um dos seus pacotes no OEX recebe uma avaliação, você é notificado pelo OEX apenas sobre o seu próprio pacote.
A classificação reflete a experiência do avaliador com o status encontrado no momento da avaliação.
É como uma fotografia instantânea e pode já ter mudado desde então.
As avaliações feitas por outros membros da comunidade são marcadas com * na última coluna.
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.
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.
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.
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.
Se você gostou do que viu, por favor apoie esta ferramenta no Developer Tools 2025 contest. A votação se encerra à meia-noite (EDT) no domingo, dia 3.
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.
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.
Você está curioso para saber como executar scripts Python diretamente no terminal do InterSystems IRIS ou Caché? 🤔
Boa notícia: é fácil! 😆
O IRIS oferece suporte ao Embedded Python, permitindo que você use Python de forma interativa dentro do terminal do IRIS.
Como acessar o Shell do Python?
Para iniciar o shell do Python a partir do terminal do IRIS, basta executar o seguinte comando:
do##class(%SYS.Python).Shell()Esse comando abre um shell interativo do Python dentro do terminal do IRIS. A partir daí, você pode escrever e executar código Python como faria em um ambiente Python normal.
Fazendo Profiling de Documentos CCD com o CCD Data Profiler da LEAD North
Já abriu um CCD e foi recebido por uma parede de XML confuso? Você não está sozinho. Apesar de ser um formato essencial para a troca de dados clínicos, os CCDs são notoriamente densos, verbosos e pouco amigáveis à leitura humana. Para desenvolvedores e analistas que tentam validar sua estrutura ou extrair informações significativas, navegar por esses documentos pode parecer mais arqueologia do que engenharia.
Apresentando o CCD Data Profiler
Meu IRIS Haiku:
Store all things with care
Interoperability
IRIS unites usOlá, desenvolvedores!
Observando a avalanche de ferramentas para desenvolvedores movidas por IA e baseadas em vibe-coding que vêm surgindo quase todo mês, com recursos cada vez mais interessantes, eu fiquei me perguntando se seria possível aproveitá-las com o InterSystems IRIS. Pelo menos para construir um frontend. E a resposta é: sim! Pelo menos com a abordagem que eu segui.
Aqui está minha receita para construir a interface via prompting conectada ao backend IRIS:
Talvez isso já seja bem conhecido, mas quis compartilhar para ajudar.
Considere que você tem as seguintes definições de classes persistentes:
Uma classe Invoice (Fatura) com uma propriedade de referência para Provider (Prestador de serviço):
Olá desenvolvedores. Só quero compartilhar com vocês uma descoberta que pode salvar alguns minutos importantes da sua vida como desenvolvedor com o InterSystems IRIS.
Mas!
Deveria funcionar; você implantou a API REST corretamente e tudo está no lugar.
O que poderia dar errado?
Público-alvo
- Pessoas interessadas em explorar novos usos para Generative AI.
- Desenvolvedores e analistas que buscam uma forma rápida de lidar com o operador Pattern Match.
Em ObjectScript e SQL, esse operador costuma ter um formato bastante denso visualmente.
Exemplo:
if booking?2A1"-"1(1"CARD",1"RAD")1.5NSELECTDISTINCT PatientRef
FROM APPOINTMENT.BOOKING
WHERE Active='Y'AND
LocationCode %PATTERN '2A1"-"1(1"CARD",1"RAD")1.5N'Desafio
Usar Generative AI para ajudar a criar e modificar códigos de pattern match a partir de descrições em linguagem natural.
Se você está migrando do Oracle para o InterSystems IRIS — como muitos dos meus clientes — pode se deparar com padrões específicos de SQL do Oracle que precisam ser adaptados.
Veja esse examplo:
SELECT (TO_DATE('2023-05-12','YYYY-MM-DD') - LEVEL + 1) AS gap_date
FROM dual
CONNECT BY LEVEL <= (TO_DATE('2023-05-12','YYYY-MM-DD') - TO_DATE('2023-05-02','YYYY-MM-DD') + 1);
No Oracle:
Rúbrica de FAQ InterSystems
Para habilitar a funcionalidade de Interoperabilidade após criar um namespace, use o método EnableNamespace da classe %EnsembleMgr:
do ##class(%EnsembleMgr).EnableNamespace()
Por muito tempo, eu quis aprender o framework Django, mas sempre surgia algum projeto mais urgente que acabava tomando prioridade. Como muitos desenvolvedores, eu uso Python para projetos de machine learning, mas quando comecei a aprender programação para web, o PHP ainda dominava. Então, quando precisei escolher um framework mais robusto para criar aplicações web e publicar meu trabalho de machine learning, acabei voltando para o PHP. Durante um tempo, utilizei o framework Laravel para construir meus sites, e foi com ele que conheci o padrão Model-View-Controller (MVC) moderno de programação
O IRIS oferece suporte nativo para transformações CCDA e FHIR, mas o acesso e a visualização desses recursos exigem tempo considerável de configuração e conhecimento do produto. O aplicativo IRIS Interop DevTools foi desenvolvido para preencher essa lacuna, permitindo que implementadores comecem a utilizar e visualizar imediatamente as capacidades de transformação embutidas no produto.
Além do ambiente de transformação IRIS XML, XPath e CCDA, o pacote Interop DevTools agora inclui:
Depois que implementamos um novo container baseado em containers.intersystems.com/intersystems/irishealth:2023.1 esta semana, percebemos que nosso FHIR Repository começou a responder com um Erro 500. Isso aconteceu devido a violações de PROTECT no novo namespace e banco de dados HSSYSLOCALTEMP utilizado por essa versão dos componentes FHIR do IRIS for Health.
Apresento o FHIRCraft, uma ferramenta leve para gerar recursos FHIR sintéticos.
Talvez vocês estejam pensando:
“Mas... já não existe o Synthea, que gera um monte de recursos FHIR?”
Exatamente — e foi justamente por isso que criei este aplicativo.
O FHIRCraft foi desenvolvido para gerar recursos FHIR mais simples, pequenos e focados. Diferente do Synthea, ele não pretende simular prontuários clínicos completos nem fluxos assistenciais. É pensado para quem está começando com FHIR, quer fazer testes de forma progressiva ou explorar como funciona um recurso específico de forma isolada.
Você já editou arquivos no VS Code, mas precisou verificar um valor global ou executar alguns comandos do ObjectScript? Agora você pode, sem necessidade de configuração! Se você tem vscode-objectscript extension version 2.10.0 ou posterior e estiver conectado ao InterSystems IRIS 2023.2 ou posterior, agora você pode abrir uma conexão de terminal com seu servidor, independentemente de onde ele esteja localizado.
Existem três maneiras de abrir este novo terminal:
Ao usar o InterSystems IRIS como mecanismo de interoperabilidade, todos sabemos e amamos como é fácil usar o Message Viewer para revisar rastreamentos de mensagens e ver exatamente o que está acontecendo em sua produção. Quando um sistema lida com milhões de mensagens por dia, você pode não saber exatamente por onde começar sua investigação.
Ao longo dos meus anos apoiando as produções da IRIS, muitas vezes me peguei investigando coisas como...
- Que tipo de rendimento esse fluxo de trabalho tem?
- Onde está o gargalo?
- Quais são meus erros mais comuns?
Rubrica de perguntas frequentes da InterSystems
Os mapas de registros são usados para mapear com eficiência arquivos contendo registros delimitados ou registros de largura fixa para classes de mensagens usadas pela função de interoperabilidade e para mapear arquivos de classes de mensagens da função de interoperabilidade para arquivos de texto.
As definições de mapeamento do mapa de registros podem ser criadas usando o Portal de Gerenciamento, e também fornecemos um assistente de registro CSV que permite definir durante a leitura de um arquivo CSV.
Participei do concurso InterSystems Women’s Health FHIR porque adorei o desafio de aprender uma tecnologia nova para mim. Eu queria desenvolver um aplicativo que recebesse dados de um dispositivo móvel como meu Fitbit ou Smart Watch. Não tive acesso a esses dados, exceto quando baixei uma planilha (arquivo CSV) mostrando meus passos diários e dados de sono. Vi no iris-fhir-template que ele importou alguns dados do paciente para um servidor FHIR. Eu descobri como usar uma transformação de dados para transformar um registro de um arquivo delimitado em dados FHIR que eu poderia armazenar no
Rubrica de perguntas frequentes da InterSystems
No Linux, siga as etapas a seguir para excluir uma instância do InterSystems IRIS (doravante denominada IRIS).
(1) Pare a instância IRIS que você deseja desinstalar usando iris stop
# iris stop <instance name>(2) Exclua as informações da instância usando o seguinte comando
# iris delete <instance name>(3) Exclua o diretório de instalação do IRIS usando o comando rm -r
# rm -r <install directory>Além do diretório de instalação, o IRIS também usa (a) e (b) abaixo.
Após dois Webinars locais, focamos no VS Code ["Intro" e "Beyond Basics"; em hebraico], preparei para os participantes alguns links relacionados de recursos relevantes que enviamos como acompanhamento. Compartilhando-os aqui também para o benefício da Comunidade.
É claro que todos vocês são bem-vindos para adicionar mais recursos úteis.
Rubrica de perguntas frequentes da InterSystems
Se vários produtos InterSystems estiverem instalados no mesmo sistema, a versão mais recente do driver ODBC da InterSystems entre os produtos instalados permanecerá registrada no gerenciador de drivers.
Você pode mudar para qualquer driver alterando a entrada de registro abaixo.
Observe que a execução de RegFiles.bat não altera o driver ODBC.
A entrada do registro é a seguinte.
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\InterSystems ODBC35 key Driver
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\InterSystems ODBC35 key SetupOlá pessoal!
O @José Pereira e @Henrique Dias propuseram uma nova forma de visualizar mensagens no IRIS Interoperability em uma atualização recente do MessageViewer. Nessa atualização, tentaram dar aos usuários uma visualização baseada em um diagrama de sequência UML. Você pode obter mais informações no artigo anterior.
Eu escrevi um tutorial passo a passo no repositório qewd-howtos sobre como você pode escrever aplicativos da web Node.js de última geração de várias páginas usando o QEWD-Up WebSocket/REST api back-end integrado com um framework da web como NuxtJS e Vue.js. Em particular com o mais recente framework NuxtJS/Vue.js , escrever aplicativos da web torna-se divertido novamente, permitindo que você escreva seus aplicativos de forma muito eficiente, ocultando todo o código template de você.
O tutorial deve ser muito fácil de fazer em sua máquina de desenvolvimento e consiste em duas partes:
Você já ouviu falar sobre algumas restrições em cookies para rastrear visitantes em seus sites?
Um de nossos clientes me perguntou como saber realmente a contagem de visitantes.
Seu site funciona no framework WordPress, hospedado na clássica hospedagem NAMP.
Eles podem ver algumas estatísticas do Yandex Metrika conter, mas não tínhamos certeza sobre a cobertura completa.
Demos a ele o AWStats, ele pega dados de arquivos de log do Apache na hospedagem.
Mas não havia nenhum filtro de robôs e sistemas de pulsação, como UptimeRobot ou robôs de indexação de motores de busca.