Question
· 23 hr ago

How do I get a Search Table to show up in a different Namespace?

I have a need to create a specific Search Table outside of the EnsLib.HL7.SearchTable specifically for HL7 MFN messages in HealthShare Provider Directory.

Our Code is created in a different namespace then the main HSPD namespace and is mapped within the HSPD namespace mapping. 

I created a copy of EnsLib.HL7.SearchTable, named OSU.HL7.SearchTable what all needs mapped to make this new search table available in HSPD namespace?

If I go to Global within the Custom Code Namespace, I cannot see my new Search Table being created.

What am I missing to make sure that the OSU.HL7.SearchTable available within the main HSPD namespace?

Product version: IRIS 2024.2
$ZV: HealthShare Provider Directory 2024.2.0 Build: 1009 [HealthShare Modules: Core:28.0 + Provider Directory:28.0] - IRIS for UNIX (Red Hat Enterprise Linux 8 for x86-64) 2024.1 (Build 267_2_24113U) Wed Jul 2 2025 16:36:55 EDT [Core:28.0|Provider Directory:28
Discussion (1)2
Log in or sign up to continue

To ensure that the custom OSU.HL7.SearchTable is accessible in your HealthShare Provider Directory (HSPD) namespace:

  1. Namespace Mapping: You need to map the classes, routines, and globals associated with your search table in the HSPD namespace. You can achieve this programmatically using the classes available in %SYS, specifically Config.MapPackages for class or package mapping. For example:

    Set props("Database")="CustomNamespace"
    Do ##class(Config.MapPackages).Create("HSPD", "OSU.HL7.SearchTable", .props)
    

    This command will map the search table in the originating namespace to the HSPD namespace [1].

  2. Creating Global Mappings: You also need to ensure that the required global storage is mapped. This is because global mappings define which database stores the global data accessed by the namespace. The tool Config.MapGlobals allows configuring mappings if needed [2][3].

  3. Ensure Debugging Features: To troubleshoot or confirm mappings, you can log specific queries enabled by the Message Viewer. For HL7 indexing tasks, properties like Show Query in the Message Viewer may help confirm operations and mappings [4].

If you followed the mapping procedure but still can't access it, verify that:
- The namespace has all the necessary roles and privileges to access the mapped configurations.
- Web application-specific settings (if applicable) are correctly configured and point to the namespace that holds the classes [2].

Let me know if additional assistance is required!

Sources: