Pesquisar

ダイジェスト
· 2025年8月11日
お知らせ
· 2025年8月10日

Key Questions of the Month: July 2025

Hey Community,

It's time for the new batch of #KeyQuestions from the previous month.

For Students, Why the Question is More Important Than the Answer | KQED

Here are the Key Questions of July chosen by InterSystems Experts within all Communities:

📌 Tradução aplicação e dados by @Marcelo Witt (PT)

📌 Rename Iris Instances in Docker (or distinguishing them easily in other ways) by @Thomas Wuppermann (EN)

📌 How get properties of a class, sorted by order in storage by @Corentin Blondeau (EN)

These questions will be highlighted with the #Key Question tag, and their authors will get the Key Question badge on Global Masters.

If you find the key question(s) from other communities interesting, just drop us a line in the comments, and we will translate the question(s) and the accepted answer(s).

Congrats, and thank you all for your interesting questions. Keep them coming!

See you next month😉

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
お知らせ
· 2025年8月9日

Videos for InterSystems Developers, July 2025 Recap

Hello and welcome to the July 2025 Developer Community YouTube Recap.
InterSystems Global Summit
By Jeff Fried, Alki Iliopoulou
By Scott Gnau
By Joe Gallant
By Benjamin De Boe, Fernando Ferreira, Adriano Basques, José Pereira
"Code to Care" videos
Agentic AI in Action: Building a Decision-Making Loop with LLMs
By Don Woodlock, Head of Global Healthcare Solutions, InterSystems
Can Generative AI Fix Bugs?
By Don Woodlock, Head of Global Healthcare Solutions, InterSystems
InterSystems Demo Games
Eliminating Waste in Healthcare Supply Chains
By Georgia Gans, Annie Tong, Boris Mamkin
Care Compass – InterSystems IRIS powered RAG AI assistant for Care Managers
By Brad Nissenbaum, Andrew Wardly, Fan Ji, Lynn Wu
The Ultimate 3D Industrial Simulation powered by a Game Engine with InterSystems IRIS
By Stephan Mohr, Jannis Stegmann, Benjamin Kiwitz, Tuba Incedag
Healthcare AI Agent Platform
By Daniel Cole, Jeff Morgan, Raef Youssef, Jose Ruperez, Harry Tong, Nicholai Mitchko
AI Clinical Trial Platform
By Vic Sun, Mohamed Oukani, Bhavya Kandimalla
ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
記事
· 2025年8月9日 2m read

Deixe um rastro de migalhas de código no ObjectScript

A ObjectScript pode parecer apenas mais uma linguagem de programação, mas aqui está a reviravolta:

Seu código pode viver para sempre (sim, mesmo depois que você tiver passado para outro projeto). É por isso que é importante mantê-lo organizado, fácil de ler e seguro contra bugs misteriosos.

(Um guia para iniciantes para manter seu código limpo, amigável e à prova de futuro)

Bem-vindo à selva do ObjectScript, onde seu código pode ter escopo global e natureza persistente. Vamos manter as coisas limpas, legíveis e resistentes a bugs.

 1️⃣Nomeie como se fosse sério

Variáveis e globais devem ser nomeadas como se tivessem um perfil no LinkedIn.
Pule o x, y, z; use patientID, invoiceTotal, ^MyApp("Users",...).

Set patientID = 1023
Set ^Hospital("Patients",patientID,"Name") = "Marshmallow"

💡 Por que: Quando você revisitar isso em 6 meses, “Marshmallow” ainda fará sentido, ^H(1,"N") não.

 2️⃣ Conscientização sobre o aquecimento global  🌍

Globais são poderosas, mas não jogue dados nelas como se fosse uma cesta de roupa suja.
Prefixe com o nome do seu aplicativo para evitar colisões.
Mantenha a ordem de sua chave lógica: a maior categoria primeiro, os detalhes por último.

Set ^PetStore("Cats","Persian",1,"Name") = "Luna"

💡Dica: Se você não rotularia uma caixa como “Coisas”, não nomeie uma global ^DATA.

 3️⃣ O tamanho do método importa 🐹

Se o seu método for mais longo que a paciência de um hamster, divida-o.
Métodos pequenos e focados são mais fáceis de testar, reutilizar e manter.


ClassMethod GetPatientName(patientID As %Integer) As %String
{
    Quit ^Hospital("Patients",patientID,"Name")
}

 4️⃣ Pegue esses erros sorrateiros 🎣

 

Try {
    Write ^Hospital("Patients",9999,"Name")
}
Catch ex {
    Write "Error: ", ex.DisplayString(), !
}

💡Não deixe seu código ter um ataque de nervos em produção. Embrulhe operações perigosas em Try/Catch.

 5️⃣ Comente como se você se importasse 💌

Comentários são cartas de amor para o seu eu futuro. Mantenha-os curtos, relevantes e atualizados.

// Assign the patients therapy cat
Set ^Hospital("Patients",patientID,"Pet") = "Mittens"

Bons hábitos de codificação vão além de qualquer linguagem de programação; eles são universais. Talvez você seja um campeão de nomes de variáveis claros, um mestre em tratamento de erros sólido como uma rocha, um crente em desenvolvimento orientado a testes, ou você tem um pequeno truque peculiar que faz seu código brilhar. Seja o que for, compartilhe! Publique suas melhores práticas, lições aprendidas ou sabedoria em pequenas porções nos comentários e vamos criar um tesouro de dicas para ajudar tanto iniciantes quanto desenvolvedores experientes a escrever código mais limpo, inteligente e eficiente. 🚀

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください
質問
· 2025年8月9日

Manifest or Class?

I have the unfortunate job of installing IRIS and Healthshare (real Healthshare not Healthconnect) on 16 difference instances (tst, stg, prd with mirrors etc). the Dev was set up manually (mostly by me).

So I decided to create a class that installed the db's, namespaces, mappings and HSREGISTRY options , i then decided an installer manifest was a better idea, I keep changing my mind on which!.  I understanding manifest is "typically" for dockers to create the environment but have seen ISC use them for creating new setups aswell (outside docker)

As such I'm looking for opinions on which is the "best", mainly to stop me from changing my mind every 5 seconds.

Also if anyone has a healthshare (specificially HSREGISTRY configurations items) manifest they'd like to share?

2 Comments
ディスカッション (2)3
続けるにはログインするか新規登録を行ってください