Find

Digest
· Jun 3

恭喜获奖者!InterSystems 2025开发者竞赛——FHIR和数字医疗健康互操作性

Hi 开发者们!

我们来宣布 InterSystems 2025开发者竞赛:FHIR和数字医疗健康互操作性的优胜者! 

感谢我们的参赛者,我们收到了 11份应用! 🔥 

我们来宣布这些优胜者吧!

专家提名奖(Experts Nomination)

🥇第一名 - 5,000 美元 获奖项目 FHIRInsight app,开发者 @José Pereira, @Henry Pereira@Henrique Dias

🥈 第二名 - 2,500 美元 获奖项目 iris-fhir-bridge app,开发者@Muhammad.Waseem 

🥉 第三名 - 1,000 美元 获奖项目 health-gforms app,开发者@Yuri.Gomes

🏅 第四名 - 500 美元  获奖项目 fhir-craft app,开发者@Laura.BlázquezGarcía 

🏅 第五名 - 300 美元 获奖项目 CCD Data Profiler app,开发者@Landon.Minor  

🌟 $100  获奖项目 IRIS Interop DevTools app,开发者@Chi.Nguyen-Rettig 

🌟 $100  获奖项目 hc-export-editor app,开发者@Eric.Fortenberry

🌟 $100  获奖项目 iris-medbot-guide app,开发者 @shan yue

🌟 $100  获奖项目 Langchain4jFhir app,开发者@ErickKamii

🌟 $100  获奖项目 ollama-ai-iris app,开发者@Oliver.Wilms 

社区提名奖(Community Nomination)

🥇 第一名 - 1,000 美元 获奖项目 iris-medbot-guide app,开发者@shan yue

🥈第二名 - 600 美元 获奖项目 FHIRInsight app,开发者@José Pereira, @Henry Pereira@Henrique Dias

🥉第三名 - 300 美元 获奖项目 FhirReportGeneration app,开发者@XININGMA

🏅 第四名-200 美元  获奖项目 iris-fhir-bridge app,开发者@Muhammad.Waseem 

🏅 第五名-100美元  获奖项目 fhir-craft app,开发者@Laura.BlázquezGarcía

向获奖者表示最诚挚的祝贺!

一起来期待下次竞赛吧!

Question
· Jun 3

the cache studio appear unrecoverable error when I use ctrl +o quick open cls file

Content of log file as following:

Windows:  6.2.9200, SP 0.0, Product Type 1
Process:   D:\DHC\DEVSOFTWARE\ENSEMBLE\BIN\CSTUDIO.EXE
Version 2016.2.3.907
Module:  C:\WINDOWS\SYSTEM32\MSVCR120.dll
Date Modified:  05/24/2017
Exception Code:  C0000005
Read Address:  00791000
Instruction:  F3 A5 FF 24 95 50 F4 FA 73 8B 44 8E FC 89 44 8F
Registers:
EAX: 1228C068  EBX: 004C0048  ECX: 002C3C38  EDX: 00000002
ESI: 00791000  EDI: 1291CFD8  ESP: 0019E7F0  EBP: 0019E814
EIP: 73FAF66C  EFlags: 00010216
Call Stack:
73FA0000  C:\WINDOWS\SYSTEM32\MSVCR120.dll
  +0000F66C  Exception Offset
0B660000  D:\DHC\DEVSOFTWARE\ENSEMBLE\BIN\TNodes.dll
  +000114BE  (1168B9E0, 0, FFFFFFFF, 0, BFA7B2C)
00400000  D:\DHC\DEVSOFTWARE\ENSEMBLE\BIN\CSTUDIO.EXE
  +000CE71A  (7F9278, BFA7B2C, 19E8FC, 41242CF9, 19EFAC)
  +00014E6E  (41242C51, 111, 19EFAC, 1, 838C10)
  +0000F087  (0, 54B226EF, 0, 0, 19E9D0)
54970000  C:\WINDOWS\SYSTEM32\mfc120.dll
  +001B28F7  (1, 54B4AD61, 0, 3A, 0)
  +001DA2DF  (1, 549A332C, 0, 0, 0)
  +00235AA5  (1, 0, 0, 0, 19EFAC)
  +002351AF  (1, 109090A, FB5A226, 19EFAC, 19EFAC)
  +0023512A  (111, 1, 109090A, 19EB30, 0)
  +0023370A  (111, 1, 109090A, FB5A3DA, 111)
  +0023392C  (19EFAC, 2A814A6, 111, 1, 109090A)
  +00133A96  (2A814A6, 111, 1, 109090A, FB5A47E)
77090000  C:\WINDOWS\System32\USER32.dll
  +0004157B  (2A814A6, 111, 1, 109090A, 2A814A6)
  +00037C5A  (54AA3A62, 2A814A6, 111, 1, 109090A)
  +00038B89  (54AA3A62, 0, 111, 1, 109090A)
  +00035ECD  (14B65C0, 0, 109090A, 0, 1A60984)
  +0003A632  (2A814A6, 111, 1, 109090A, D)
  +0002B6FE  (2A814A6, 811700, 19EFAC, 19EFAC, 4F056E)
54970000  C:\WINDOWS\SYSTEM32\mfc120.dll
  +0024875A  (2A814A6, 811700, 811700, 19EE28, 54BA7F10) 

1 Comment
Discussion (1)1
Log in or sign up to continue
Question
· Jun 3

Proxy reverse to inside HTTP internal port 57772

Is a layer before the internal HTTP of Caché/IRIS, such as a Reverse Proxy or API Gateway, a good option?

Example: I have an API using %CSP.REST, and I am using the internal port for development. But for production and approval, I put a reverse proxy using NGINX. Is this recommended? Is it an alternative?

Diagram.

3 Comments
Discussion (3)2
Log in or sign up to continue
Job
· Jun 3

InterSystems HealthShare developer interoperability Developer/Lead

Summary:

 

Duties and Responsibilities:

Design and implement healthcare data integration solutions using the InterSystems platform /HealthShare platform, ensuring data interoperability across various healthcare systems.

Develop and maintain data mappings and transformations to ensure accurate data exchange between systems, leveraging IRIS API’s, HL7, FHIR, and other healthcare data standards.

Build and maintain interfaces to connect health information systems, including clinical applications, EHR, and other healthcare data sources.

Work closely with cross-functional teams, including developers, business analysts, and healthcare professionals, to gather requirements, design solutions, and implement integrations.

Create and maintain comprehensive documentation for integration solutions, including interface specifications, data mappings, and test plans.

Identify opportunities to improve integration processes and solutions, contributing to the overall efficiency and effectiveness of healthcare data exchange.

Education and Skills:

  • Experience with interoperability tools (like InterSystems), such as NextGen Mirth or "Availity" or "Infor" or "IRIS" or Cloverleaf or Rhapsody or Ensemble etc.
  • Experience and expertise with InterSystems IRIS, InterSystems HealthShare.
  • Familiarity / Experience working with Medical Claims data
  • Experience with Amazon Web Services (AWS).
  • Experience developing Continuous Integration / Continuous Delivery (CI/CD).
  • Knowledge and understanding of agile methodologies

Please send your profile to : Antony.Jackson@infinite.com 

antonyjacks@gmail.com

Discussion (0)1
Log in or sign up to continue
Question
· Jun 3

What's this odd behavior with "select count()" and a Unique Index?

Hello,

I have a class with a "Unique" index (pxfactidIndex) on a %Numeric property (pxfactid) (partially-edit code snippet below):

Property pxfactid As %Library.Numeric(MAXVAL = 9223372036854775807, MINVAL = -9223372036854775808, SCALE = 0) [ SqlColumnNumber = 7 ];
Index pxfactidIndex On pxfactid [ Unique ];
Storage Default
{
<Data name="FactDefaultData">
<Value name="1">
<Value>pysubjectid</Value>
</Value>
...
<Value name="6">
<Value>pxfactid</Value>
</Value>
...
</Data>
<DataLocation>^CRMBI.FactD</DataLocation>
<DefaultData>FactDefaultData</DefaultData>
<ExtentLocation>^CRMBI.Fact</ExtentLocation>
<ExtentSize>3521840</ExtentSize>
<IdFunction>sequence</IdFunction>
<IdLocation>^CRMBI.FactD</IdLocation>
<Index name="DDLBEIndex">
<Location>^CRMBI.FactI.2</Location>
</Index>
<Index name="IDKEY">
<Location>^CRMBI.FactD</Location>
</Index>
<Index name="pxfactidIndex">
<Location>^CRMBI.Fact.4</Location>
</Index>
...
<IndexLocation>^CRMBI.FactI</IndexLocation>
<Property name="%%ID">
<AverageFieldSize>4.99</AverageFieldSize>
<Histogram>$lb(.06666666666666666667,1,0,$lb(27673,228574,456707,618301,892202,1107091,1405679,1604163,1738513,2015749,2270724,2530345,2830827,3047237,3296375,3504324),$lb(1,0,0,0,0,1,1,1,0,1,1,1,0,1,1),$lb(842479159,926299955,842544439,842151989,875902519,875902519,909195315,909195315,943272498,943272498,825307191,825243440,875574582,875574582,909128753,909128753,926103605,825701176,842019125,808531255,842477623,842477623,892547123,892547123,942878776,842543920,858797111,808728370,842610227,842610227,892351539,859123764))</Histogram>
<Selectivity>1</Selectivity>
</Property>
<Property name="pxfactid">
<AverageFieldSize>9.99</AverageFieldSize>
<Histogram>$lb(.06666666666666666667,1,0,$lb(-8377896048695389137,-7487164305435710908,-6406061662044370629,-5112561079609519767,-4588722295094185245,-4512887624516713113,-3293381287254976544,-1753938466698510428,-1561375857877981192,-211989232600898713,2857966673366783778,4457490938253726327,5246678144060189771,6591622321393794159,8944949574919674333,8944949574921469469),$lb(1,1,1,1,3,1,1,2,1,0,0,0,0,0,11),$lb(758657847,942880567,926169143,926169143,909389878,909389878,892416306,892416306,875903032,943208242,825374776,875901234,858929459,858929459,825701683,926233401,892743987,825570865,842084665,758264113,842544439,842544439,875836727,875836727,892482614,892482614,909457713,909457713,943273012,825833015,842085430,943273012))</Histogram>
<Selectivity>0.0000283942484610317%</Selectivity>
</Property>

I see the following odd behavior when counting how many records have that property set to null:

  • The first query (17) returns the number of records in the table. The 2nd query (18) returns what I expect: all records have non-null values for that "pxfactid" property. However, when I run the 3rd query (19) which counts all records with non-null values in that field, I get a much smaller, unexpected, number.

  • The 4th query (20) counts the number of records in a subquery that returns all non-null values for that property in the table and returns the expected number that matches the total number of records in the table.

Does anyone have any idea of what type of coding error would produce the odd behavior seen in query 19 (wrong number of records with non-null values in that indexed property)?

Note that the values in that field have a large range; here's a sample of some of them:

Thanks

8 Comments
Discussion (8)4
Log in or sign up to continue