go to post Kurro Lopez · May 2, 2018 Hi Yuval,Thanks for your comment.The idea of this tip is only copy content from a class to another class, only I want a subgroup of elements. The command %ConstructClone is to clone a class, you have the same class, not a part of it.Best regards
go to post Kurro Lopez · Apr 4, 2018 Hi all,Since I've installed Eclipse instead of Atelier, I'm not able to get to add-in options. It is always greyed.The server is online, I've tried to local and external server, but it doesn't work.This is the version of Eclipse and Atelier pluging installed. Any suggestion is welcome.Best regards,Francisco Lopez
go to post Kurro Lopez · Mar 8, 2018 Registered!!!One question, the webinar will be available in Youtube or other platform afterwards?
go to post Kurro Lopez · Feb 22, 2018 Hi,The usual port is the Web port (default 57772)Please check with your administrator if the credential are correct, if you have any firwall that is closing the connection, etc...Have you checkd if it works with a local instance? (localhost)Best regards
go to post Kurro Lopez · Feb 22, 2018 Yep, that was other problem.I've exported all classes, dropped namespace and database, created all as new namespace and import the classes.Now, the message viewer works (fortunatly it is a DEV environment), compiled all via terminal.However, sometimes the error about SendSuperSession appear intermittently, often when there are some request at the same time
go to post Kurro Lopez · Feb 22, 2018 It seem that works... but sometime I have an error, but I'm not able to check what is happend because the message viewer doesn't display the trace.Always it's displaying an error
go to post Kurro Lopez · Feb 21, 2018 I've solved this problem just adding a Default setting for SendSuperSessionI know, this is not the best way to fix it.. but it works ;)
go to post Kurro Lopez · Feb 21, 2018 Thanks for your easy solution. I'll change my code to improve this.
go to post Kurro Lopez · Jan 25, 2018 Hi, Check the following code: Set tProduction="Demo.HL7.MsgRouter.Production" // Types: // Empty: Retrieve all items // 1: Business Service // 2: Business Process // 3: Business Operation Set tType="1" Set tRS = ##class(%ResultSet).%New("Ens.Config.Production:EnumerateConfigItems") Set tStatus = tRS.%Execute(tProduction, tType) While tRS.%Next(.tStatus) { write tRS.%Get("BusinessType")_" : "_tRS.%Get("ConfigName"),! } II hope it's useful Best regards, Francisco Lopez
go to post Kurro Lopez · Jan 24, 2018 Yep, brace always.Because you will never know if you need to update your condition or chain another. The brace shows what is the scope of the condition, also for loops, for, for each, etc.It is a good practices and it is more readable.As Eduard Lebedyuk has commented, a single IF for use to set a variable, the postconditionals is a good idea, coz you know the condition before to set.
go to post Kurro Lopez · Jan 24, 2018 The idea is to copy only the common properties.If you see the definition of PersonalInfo and NameInfo, both are different classes.The unique union between both classes is Kurro.Utils.FunctionsHe does not know what properties the target class obtained, he only knows his own properties and makes a list of methods to copy from the current class to the target class.This method is compiled, therefore, you need to verify if the destination property exists in the target class at run time. This method is created "on fly" when you create a new instance of this class. Do you know if the property "Name" will be in the object passed as a parameter? Maybe not, so you should check if this property exists in the target.makes sense?I hope I have solved the doubt, or maybe I do not understand your question.
go to post Kurro Lopez · Jan 24, 2018 Hi,I've created this method to check if a property exitsts because the method generator doesn't knows if the property exists in the target class in runtime.If you debug the code you can see the compiled code: zCopyProps(obj) public { If (obj.ExistsProperty("Code")) { set obj.Code=..Code } If (obj.ExistsProperty("DateOfBirthday")) { set obj.DateOfBirthday=..DateOfBirthday } If (obj.ExistsProperty("FirstName")) { set obj.FirstName=..FirstName } If (obj.ExistsProperty("PassportId")) { set obj.PassportId=..PassportId } If (obj.ExistsProperty("SecondName")) { set obj.SecondName=..SecondName } }so, in runtime, there is no a quick way to check if this property exists to prevent an exception error.
go to post Kurro Lopez · Jan 18, 2018 Hi Sam.Why not create a TCP listener Service and link the message to your rule?Using a tool to send HL7 message you can debug your rule. (https://sourceforge.net/projects/hl7inspector/)I use to use HL7 Inspector to send message and I've debugged my code by this way.There is not a direct way to test your code in Studio.Best regards,Francisco López
go to post Kurro Lopez · Jan 11, 2018 Hi Eduard,I tried to do that before, but all CSP pages was displayed, but WebApi didn't work. The problem has been resolved. Please check the other answer.Thanks for your comment
go to post Kurro Lopez · Jan 11, 2018 Thanks Kyle,You are right, Apache send all request to CSP Gateway, but IIS needs to know who to response the request. The answer is "*"
go to post Kurro Lopez · Jan 11, 2018 I've just done a "rubber duck" with myself... when I've wrote the comment, I've realised that the extensión that I have is "*.*", instead of "*", that is the difference.A WebApi hasn't an extensión, therefore it is handler by the CSPms library.I've just changed it and it worksThanks for all
go to post Kurro Lopez · Jan 11, 2018 Hi Alexander,I have the extension *.* to CSPms, instead of each extension (CSP, ZEN, CLS....) and the "Invoke handler only if request is mapped" is unchecked, but still doesn't work