Anúncio Danusa Calixto · Abr. 13

Olá Comunidade,

Preparar-se para os exames de Certificação da InterSystems exige mais do que ler a documentação. Requer prática focada e alinhada aos objetivos reais do exame. Se você pretende validar sua experiência em HL7, SQL, Administração de Sistemas ou Desenvolvimento, uma preparação estruturada pode fazer toda a diferença.

🧑‍🏫 Plataforma de preparação para exames

A plataforma oferece um amplo conjunto de questões práticas mapeadas para as áreas de certificação, juntamente com explicações detalhadas das respostas que remetem à documentação relevante.

0
0 12
Anúncio Danusa Calixto · Abr. 10

Olá Comunidade,

Estamos muito animados em compartilhar que acabamos de lançar um novo tutorial gratuito e interativo, desenvolvido especialmente para aqueles que são novos no InterSystems IRIS e buscam uma introdução clara e prática aos seus conceitos principais.

🧑‍🏫 Modelos de Dados do InterSystems IRIS 🧑‍💻

0
0 13
Anúncio Danusa Calixto · Abr. 9

Olá Comunidade,

Temos o prazer de convidá-lo(a) a participar da criação da próxima geração de ferramentas de desenvolvimento ObjectScript. Estamos trabalhando em um Assistente de Codificação ObjectScript com Inteligência Artificial, projetado especificamente para desenvolvedores IRIS. Não se trata de uma IA genérica adaptada para ObjectScript, mas sim de uma solução construída do zero para compreender as peculiaridades do ObjectScript, as APIs do IRIS, os processos de interoperabilidade e os fluxos de trabalho reais de desenvolvedores.

Para garantir que criemos algo realmente útil, precisamos da sua opinião.

👉 Pesquisa para Desenvolvedores do Agente de Codificação ObjectScript 👈

0
0 10
Artigo Evandro Wendt · Abr. 3 2m read

Motivação

Por que precisamos disso?

  1. Falta de Contexto Compilado: As ferramentas de IA veem apenas o código-fonte; elas não sabem como a rotina compilada final realmente é.

  2. Alucinação de Macros: Como a IA não vê nossos arquivos#includeou macros do sistema, ela frequentemente os “inventa”, desperdiçando tempo durante a depuração.

  3. Lacuna na Documentação: A otimização de lógica mais profunda frequentemente exige compreender macros internas que não estão totalmente documentadas publicamente.

0
0 13
Artigo Evandro Wendt · Abr. 2 2m read

Trabalhar com arquivos geralmente começa de forma simples: abrir o arquivo, ler e processar. Essa abordagem funciona perfeitamente, até que o arquivo seja um Excel.

Uma Suposição Comum

À primeira vista, um arquivo Excel (.xlsx) parece apenas mais um arquivo de dados, linhas, colunas e valores. Nada incomum. Portanto, é natural assumir que ele pode ser lido da mesma forma que um arquivo .txt ou .csv. Mas é aí que as coisas começam a dar errado.

Por que arquivos Excel se comportam de forma diferente

A principal diferença está em como os dados são armazenados:

-> .txt / .

0
0 18
Artigo Evandro Wendt · Abr. 2 2m read

Se você tem mensagens de longa duração, aqui está um código simples para capturá-las. Você também pode usar o Queue Wait Alert para obter o mesmo resultado, embora este código consiga capturar até mesmo uma única mensagem ativa com a fila vazia. Ele também varre todos os namespaces sem modificar a produção, podendo ser usado para depuração.

Include Ensemble

Class User.LongMessagesTask Extends %SYS.Task.Definition
{

Parameter TaskName = "Long running messages";

Property LongRunningMessageThreshold As %Integer(MINVAL = 1) [ InitialExpression = 60 ];

Method OnTask() As %Status
{
	set ts = $zdatetime($NOW(0),3,1)
	set ns = ""
	while 1 {
		// Iterate namespaces
		set ns = $o($$$EnsJobMonitorRoot(ns))
		quit:ns=""
		
		set job =""
		while 1 {
			// Iterate jobs
			set job = $o($$$EnsJobMonitorRoot(ns, job))
			quit:job=""
			
			// Get business host name
			set bh = $o($$$EnsJobMonitorRoot(ns,job,""))
			
			// Get the time of the last state change
			set lastActivity = $$$EnsJobMonitorRoot(ns,job,bh,"%LastActivity")
			
			// Get active message, if any - bh can be just idling
			set active = $d(^[ns]Ens.ActiveMessage(job),messageid) // From $$$EnsActiveMessage
			if active {
				set time = $system.SQL.Functions.DATEDIFF("s", lastActivity,  ts)
				if time > ..LongRunningMessageThreshold {
					set text = $$$FormatText("Long running message %1, in ns: %2, BH: %3, processing since %4, for %5 seconds", messageid, ns, bh, lastActivity, time)
					// For debug
					// write text, !
					do ##class(%SYS.System).WriteToConsoleLog(text)
				}
			}
		}
	}
	quit $$$OK
}

}
0
0 7
Artigo Evandro Wendt · Mar. 31 1m read

A versão 2026.1 acabou de ser lançada como GA, e um dos recursos que estou ansioso para usar é o DTL Explainer.

Ele permite que você pegue uma Transformação de Dados (Data Transformation) e, com um clique, obtenha uma descrição em linguagem humana da transformação (que você também pode usar como base para a Descrição do DTL).

Para DTLs complexos, especialmente aqueles que você não escreveu ou que escreveu há muito tempo, isso permite obter uma compreensão clara e rápida do que está acontecendo.

0
0 16