I'll be doing my first xml transform soon and I'm hoping to find a good graphical mapping tool to generate the XSLT. Does anyone have any recommendations? I've tried the demo of Altova MapForce and it's exactly what I want but it's super expensive. Working for a non-profit it would be nice if I could find a free or cheap solution.
Is there a public bug tracker? It would be nice to be able to search for existing issues before posting or get the status of an issue. I feel like I'm cluttering the forums.
If you go to your profile and click the "Friends" tab there are 3 sub tabs:
- View All Friends (/friends)
- Your Requests (/friends/pending)
- Friend Requests (/friends/flagged)
For me, the first two tabs are identical. Given the "pending" URL, I'm assuming the second tab is supposed to be pending requests. So that's one issue. I'm not even sure what /flagged is supposed to be, but it lists 4 of my 5 friends. On top of that, the layout is reversed (icons on the right, names on the left).
Here is my original query:
SELECT EventType, InitiatedAt, COUNT(*) as cnt FROM HS_IHE_ATNA_Repository.Aggregation WHERE EventType = 'LOGIN' AND LocalDateTime > '2016-02-16 11:00:00' GROUP BY EventType, InitiatedAt
This gives me data like this:
| LOGIN | %SYSTEM | 69918 |
| LOGIN | OTHER | 39 |
However, I need to get the data back as two columns with all but the last concatenated and delimited, more like this:
| LOGIN;%SYSTEM | 69918 |
| LOGIN;OTHER | 39 |
I tried this:
Error:
[SQLCODE: <-400>:<Fatal error occurred>]
[Cache Error: <<SUBSCRIPT>%0AmEdun+4^%sqlcq.HSREGISTRY.cls966.1 ^||%sql.temp(1,"")>]
[Location: <ServerLoop - Query Fetch>]
[%msg: <Unexpected error occurred: <SUBSCRIPT>%0AmEdun+4^%sqlcq.HSREGISTRY.cls966.1 ^||%sql.temp(1,"")>]
Here is an example of a query that gives the error:
SELECT COUNT(DISTINCT Criteria) as Relevance FROM HS_IHE_ATNA_Repository.Aggregation
WHERE EventType = 'CROSS GATEWAY QUERY'
The content of the actual field is XML, but the query simply returns a number. Here is one that works:
In MSSQL I think you can do something like this:
select *
from HS_IHE_ATNA_Repository.COLUMNS
where TABLE_NAME='Aggregation'
How can I do this in Cache SQL?
[%msg: < Table 'HS_IHE_ATNA_REPOSITORY.COLUMNS' not found>]
I'm writing some custom functions for use in a routing rule. I have a few that are working, but right now I'm trying to use one that has no parameters. Typically this would be a sub instead of a function, but I'm not familiar enough with Cache to know what I need to do here.
Here is the code:
Given the following code:
set tstVar = "Green"
do TestIt()
TestIt() {
write tstVar
}
I get <UNDEFINED>start+4^DeploymentTool *tstVar
I also tried setting the variable outside the start method but that doesn't work either. I realize I could pass tstVar to the TestIt() routine but I'm trying to create a couple variables that will be reused repeatedly so that doesn't really work.
I've searched the ObjectScript reference for any instances of Upper, Lower or Case and the only thing is a case/switch statement. In all the documentation I can only find SQL and Cache Basic references for things like UCASE.
So how do I do this in ObjectScript?
For instance, if (ucase(dtype)="G") { }
I'm planning to have a web-based management and deployment interface. For now I have started writing some .mac scripts. Will I be able to call these from a web page? Or do I just need to start with Zen?
read "Deployment Type? (G)ateway or (I)HE: ", dtype
dataentry ; first data entry routine
if (dtype="G") {
set dtypeFull = "Gateway"
} elseif (dtype="I") {
set dtypeFull = "IHE"
} else {
write !,"Invalid Choice",!
goto selecttype
}
Write !, "Starting ", dtypeFull," deployment..."
This was what I first wrote. Here is the test, first putting in an invalid value:
Deployment Type? (G)ateway or (I)HE: F
Invalid Choice
Deployment Type? (G)ateway or (I)HE: G
Starting Gateway deployment...
|
The minimum interval between invocations of the adapter by the Ensemble framework. For adapters that poll for external events, this is the polling interval. However, most polling adapters will process all inputs immediately if several are detected at one time. This is also the interval at which each Business Service will check for shutdown requests.
|
Is it seconds or what? The default is 15
I'm working on a proposal for a deployment tool development project and I was wondering if anyone had any experience with such a thing.
We use Healthshare and implementations for new clients are tedius and lengthy. Lots of ensemble service, registry value, lookup tables, namespaces and other things have to be created and configured.
I would like to create a Zen or CSP page based deployment tool that can do all this with a few parameters and some custom code.
Has anyone done this? What are some pitfalls you ran into? Any unique ideas you included? Other general thoughts?
I'm designing a workflow for PHR via FTP. What I've done is create a single FTP adapter to pick up files from multiple customers. A router then accesses a lookup table and determines if a particular customer is allowed to send a particular message type to the state. If not, the message doesn't go out. It seems like everyone is against this approach (other than my CEO, thankfully), including Intersystems:
So calling this lookup manually from the console works as expected:
PHR>w ##class(Ens.Util.FunctionSet).Lookup("BlockFeed",key)
1
However, calling it from a method with some concatination to build the key is giving me problems:
{
set k = iParticipant _ "_" _ iFeed
w "Looking up " _ k,!
set x = ..Lookup("BlockFeed",k,"not found")
w "x = " _ x,!
}
Looking up WMMC_IMM
x = not found
Is it just set varName = 1 or is there an actual true/false value?
I'm working on some custom utility functions that I can utilize in Business Rules as well as other places. I saw this line in the docs:
For each function you wish to define, add a class method to your new function set class. There is no support for polymorphism, so to be precise, you must mark these class methods as final.
but I didn't really know what it meant. I didn't run into any problems until I tried calling one of my new methods from another method. Removing the [ Final ] fixed the issue, but I'm guessing that means I can't call them from Business Rules now?
Here is the function I'm writing:
ClassMethod getParticipant(iSendingFacility As %String) As %String [ Final ]
{
set a = $PIECE(iSendingFacility,"^",1)
set b = $PIECE(iSendingFacility,"^",2)
set sc1 = Lookup("ParticipantCodeMap",a)
if sc1 = "" {
set sc1 = Lookup("ParticipantCodeMap",b)
}
q sc1
}
For some reason when I try to run it I get the following error:
set sc1 = Lookup("ParticipantCodeMap",a)
^
<UNDEFINED>
I tried adding the the default parameter in case it's not finding it but it didn't help. What am I missing?
I want to do some logic based on what environment code is running in. I can't find a built-in function to retrieve this so I'd like to write a custom function. Does anyone know of a command that would get the current environment?
I have a routing rule that processes messages from multiple customers. I would like to create some sort of flag or setting that I can toggle to indicate if a given customer is allowed to pass messages through the router. Should I use a registry entry, lookup table or something else? Which can be accessed from a routing rule and how?
I have a service named FTP_In that is of class EnsLib.HL7.Service.FTPService. It picks up files from multiple subfolders and sends them to an EnsLib.HL7.MsgRouter.RoutingEngine. What I want to do is somehow capture the subfolder as a variable for use in the routing rules. Is this possible?
Let's say I have the following files and directory structure on my FTP Server
/incoming/yellow/banana.dat
I want the Routing Rule to be able to send anything that came from the /green/ folder to one operation and from /yellow/ to another.
I created a Zen page with a header. All is good. I then created a new Zen page and during the wizard specified that it was a "subclass of a template page". So now I have Class Custom.App.HomePage Extends Custom.App.TemplateMaster. If I visit HomePage.cls I see the header from the template. However, the HomePage class has no XData Contents section so I have no idea how to actually add content. I tried adding the section but once I do then I don't see the template content anymore.
So, how do I put content in a page that extends another page as a template?
New to CSP and Zen. I've been going through tutorials and have made some progress. Using the "Contacts" tutorial as an example, I'm trying to create a "ViewContact" page. I want this to be linkable so I'm using URI Parameters, which I understand. However, what I'm not sure about is how to retrieve a specific record. Should I use a SQL statement? If so, how?
Let's say I just wanted to display the property "Name" for the contact with ID 12. What would be the best way to do so?