go to post Vic Sun · Jun 11, 2020 You can find a bunch of examples of using SetValueAt around the community, but based on what you said yes that seems right.
go to post Vic Sun · Jun 11, 2020 Hello Viroj, You need to pass the value and path into the first and second parameters of SetValueAt respectively. Check out the following example:Using Code and SetValueAt
go to post Vic Sun · Jun 9, 2020 Hi Tim, Maybe you could try enabling tracing to get more information on what is happening.
go to post Vic Sun · Jun 8, 2020 Glad you were able to figure this out. As an additional note, the syntax Kevin suggested is a bit unusual as it is concatenating parenthetical sections. It shouldn't be necessary to do that - when you try to concatenate "(1)" you are just concatenating "1". The following both work identically: msg.GetValueAt("PIDgrpgrp(1).ORCgrp(1).OBXgrp(*)")msg.GetValueAt("PIDgrpgrp("_(1)_").ORCgrp("_(1)_").OBXgrp("_("*")_")")
go to post Vic Sun · Jun 4, 2020 How exactly is this looping code being implemented? If I try msg.GetValueAt("OBX(*)") on an ADT_A01 for example I am able to count the OBXs. If your counter is not getting populated it suggests to me that the message's doctype may not be set or you might be using an HL7 schema that doesn't match the virtual property path.
go to post Vic Sun · Jun 4, 2020 Hello Stuart, Your elseif appears to have a typo of obxIndex: elseIF GetValueAt("OBX("_obxndex_"):3.1") = "SARD" { Besides that, you can use * to count fields rather than loop through and manually count them. Hope that helps.
go to post Vic Sun · Jun 3, 2020 Hi Scott, When I try and save a rule set with improper syntax it ends up saving but not compiling, which also removes the existing int code. The problem is "caught" in that a warning is shown, though it doesn't prevent you from proceeding. My guess at the rationale would be to not blow away any incomplete work - it would be a bit of an odd restriction if you could only save a rule set if the code was valid. When the compile fails the existing compiled code is removed, so the rule set is unusable.
go to post Vic Sun · Jun 3, 2020 Hi Scott, Can you reproduce the compilation error not getting caught on save? When I try to save with a syntax error the rule set still saves, it does throw compilation errors however. Can you describe in more detail where the misplaced { was? Re: your second question I'm not certain, but if the class failed to compile I'm not sure what kind of behavior we would expect from trying to use the rule set. Perhaps this is related to the particular state your environment was in.
go to post Vic Sun · Jun 2, 2020 Hello Yone, While you can probably figure out a way to code this in a transform, I think it would me more straightforward and legible to write a custom utility function and put your looping logic there. Ensemble Utility Functions
go to post Vic Sun · May 27, 2020 %ALL should cover everything from the Caché side so I suspect an OS permissions difference. Is the task doing anything that requires OS permissions (this could include writing to an output file)? Do the Caché OS user and the OS user corresponding to your account differ? What other differences could you think of between the two users? Without looking around your system I think it will be tough to troubleshoot this, so I'd recommend reaching out to the WRC. Also, you probably already know this, but 2012 is quite an old version - I'd definitely recommend upgrading if possible.
go to post Vic Sun · May 27, 2020 Hello István, You can find in the docs the following: Using the Task Manager "If the chosen user is disabled, the task is suspended until the user is enabled and the task is resumed manually. This does not apply to built-in System tasks, which run even when the chosen user is disabled." While the system tasks will still work while assigned to run as the disabled _SYSTEM user, it might be a good idea to set them to another user with similar permissions for clarity's sake. The necessary resources for a task are totally dependent on what the task needs to do.
go to post Vic Sun · May 26, 2020 Unfortunately, I'm not aware of anything built-in that can enforce the schema - I think it would be difficult to have this as a preset option because it wouldn't be able to match all use cases. Of course, the ideal would be for the upstream to conform, but that isn't always an option. I think this will have to be a custom solution, though maybe somebody else can weigh in with some option I've missed. Perhaps somebody has come up with something clever to leverage the schema.
go to post Vic Sun · May 26, 2020 DefCharEncoding is a setting for HL7 services that you would add the ! to in order to enforce a particular encoding. If MSH:18 is blank then whatever encoding is in DefCharEncoding will be used, whether or not you use ! for the setting. ! in the message in MSH:18 would probably trigger an error as ! doesn't represent a valid encoding.
go to post Vic Sun · May 26, 2020 Hi Cedric, It sounds like you are adjusting the messages to have ! in the MSH:18 field. Unless I'm misunderstanding, that seems like a misinterpretation of the DefCharEncoding documentation, which I will include here: Default Char Encoding Normally the encoding found in MSH:18 is used, but an "!" at the start of the DefCharEncoding setting will forcibly use whatever encoding you specify. Hope that helps.
go to post Vic Sun · May 26, 2020 Hi Elisha, The general method for handling incoming too-long fields would be the validation setting, which can send a message to the bad message handler to be treated as needed: Validation Validating Fields "Test that field sizes in the message conform to the schema." In your case if you know what fields need to be truncated it should be really easy to use a DTL to truncate those fields. Hope that helps!
go to post Vic Sun · May 13, 2020 Hey Murillo, I'm not sure how the SOAP stuff you describe works into the standard Ensemble machinery, and understanding what globals/data are not being purged might be useful to provide further guidance. However, the purge you mention is intended for the activity monitor, and is not the main purge task which is just Ens.Util.Tasks.Purge. See the following docs: Purging Production Data Monitoring Activity Volume
go to post Vic Sun · May 11, 2020 Hi Laura, I don't really have an answer but maybe you can include some pseudo-code or sample code for people to try to reproduce the behavior you're describing. I have an idea of what you're doing from your description but the specifics could be important.
go to post Vic Sun · May 7, 2020 I think the WRC should be able to help out with this - definitely seems like an odd issue worth investigating.
go to post Vic Sun · May 7, 2020 Hi Russell, Can you share more of how you're trying to use %Net.SSH.Session and where exactly the error is coming up? Your version information may be useful as well.