go to post Robert Cemper · Dec 7, 2017 If your connection is not stable enough I'd suggest to take a closer look to good old Shadowing.It's really jungle proof.I used it in past to transfer data from an oil drill platform somewhere out on the ocean over a satellite link with just 64k bd bandwidth without any data loss. And this link was far from whatever you would expect from a wired connection on ground.Shadowing did id with incredible stability and no loss.Cascading of shadowing is also almost unlimited with no issue.
go to post Robert Cemper · Dec 2, 2017 That really sounds like Shadowing or Asynchronous Mirror.All you have to do is map your Globals,.. to a DB to be "exported"http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...teak a look to it.
go to post Robert Cemper · Dec 1, 2017 It's a rare case in combination with %Persistent,but it makes sense also to exclude any class with Property Abstract=1 in your Query
go to post Robert Cemper · Dec 1, 2017 Firefox Quantum 57.0 (64-bit) worked immediatelyChrome Version 62.0.3202.94 (Offizieller Build) (64-Bit) had troubles.
go to post Robert Cemper · Dec 1, 2017 Thanks Stephen,Its the same link but works from course page + in different browser
go to post Robert Cemper · Nov 30, 2017 Example WebService: /// My.SOAPClass My.SOAP Extends %SOAP.WebService [ ProcedureBlock ]{/// Name des WebService.Parameter SERVICENAME = "MyService";/// SOAP Namespace für den WebServiceParameter NAMESPACE = "http://tempuri.org";/// Namespaces von referenzierten Klassen werden in der WSDL verwendet.Parameter USECLASSNAMESPACES = 1;Method GetCustomerInfo(schema1 As My.Schema1) As My.Schema2 [ WebMethod ]{ set max =schema1.MaxResult ,home =schema1.HomeState ,office=schema1.OfficeState ,start =schema1.NameStartswith set:'max max=1 set:office="" office=home set schema2=##class(My.Schema2).%New() ,rs=##class(%ResultSet).%New() ,sql="SELECT top ? %ID FROM Sample.Employee " _"WHERE Home_State = ? " _"AND Office_state = ? " _"AND Name %STARTSWITH ? " ,tSC=rs.Prepare(sql) set:tSC tSC=rs.Execute(max,home,office,start) while rs.Next()&&tSC { set employee=rs.GetObject() ,res=##class(My.Schema2Result).%New() ,res.HomeAddress=employee.Home ,res.OfficeAddress=employee.Office ,res.Name=employee.Name ,res.pid=employee.%Id() do schema2.Results.Insert(res) } quit schema2}}
go to post Robert Cemper · Nov 30, 2017 Example Schema1<?xml version="1.0" encoding="UTF-8"?><s:schema xmlns:s="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"><s:complexType name="Schema1"> <s:sequence> <s:element name="Max_Results"> <s:simpleType> <s:restriction base="s:long"> <s:minInclusive value="1"/> </s:restriction> </s:simpleType> </s:element> <s:element name="Home-State"> <s:simpleType> <s:restriction base="s:string"> <s:maxLength value="2"/> <s:minLength value="2"/> </s:restriction> </s:simpleType> </s:element> <s:element minOccurs="0" name="Office-State" type="s:string"/> <s:element minOccurs="0" name="Name-Startswith" type="s:string"/> </s:sequence></s:complexType></s:schema>
go to post Robert Cemper · Nov 30, 2017 Example Schema2<?xml version="1.0" encoding="UTF-8"?><s:schema xmlns:s="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <s:complexType name="Schema2"> <s:sequence> <s:element minOccurs="0" name="Results" type="ArrayOfSchema2Result"/> </s:sequence></s:complexType><s:complexType name="ArrayOfSchema2Result"> <s:sequence> <s:element maxOccurs="unbounded" minOccurs="0" name="Schema2Result" nillable="true" type="Schema2Result"/> </s:sequence></s:complexType><s:complexType name="Schema2Result"> <s:sequence> <s:element minOccurs="0" name="Home-Address" type="Address"/> <s:element minOccurs="0" name="Office-Address" type="Address"/> <s:element minOccurs="0" name="Person-Name" type="s:string"/> <s:element minOccurs="0" name="Person-ID" type="s:long"/> </s:sequence></s:complexType><s:complexType name="Address"> <s:sequence> <s:element minOccurs="0" name="Street"> <s:simpleType> <s:restriction base="s:string"> <s:maxLength value="80"/> </s:restriction> </s:simpleType> </s:element> <s:element minOccurs="0" name="City"> <s:simpleType> <s:restriction base="s:string"> <s:maxLength value="80"/> </s:restriction> </s:simpleType> </s:element> <s:element minOccurs="0" name="State"> <s:simpleType> <s:restriction base="s:string"> <s:maxLength value="2"/> </s:restriction> </s:simpleType> </s:element> <s:element minOccurs="0" name="Zip"> <s:simpleType> <s:restriction base="s:string"> <s:maxLength value="5"/> </s:restriction> </s:simpleType> </s:element> </s:sequence></s:complexType></s:schema>
go to post Robert Cemper · Nov 30, 2017 You may take this approach:create an object based on Schema1: My.Schema1create an object based on Schema2: My.Schema2HowTo: => XML Schema Wizzard http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...Then you may use this method.Method GetCustomerInfo(schema1 as My.Schema1) As My.Schema2 [WebMethod]My.Schema1 is checked as input parameter according tothe generated classinside your Method you transform it to My.Schema2and return it. The most tricky thing might be how to reply to a request that doesn't match Schema1.
go to post Robert Cemper · Nov 30, 2017 Rebuild takes time - ONCEand gives you the unique chance to fill the created index in contiguous global content blocks.That pays back at ever access by less global pointer blocks whatever storage technology you use.
go to post Robert Cemper · Nov 30, 2017 Nopehttps://learning.intersystems.com/pluginfile.php/15097/mod_resource/cont...Next: Download PDF downloads a html page but with .PDF termination.
go to post Robert Cemper · Nov 29, 2017 I'm not an expert on callout but deep back in history I believe to remember that what ever youtransfer is in wider sense a single item. If string structured by $p() or $lb().You my take a closer look to %XML.SAX.* classes.The highest structure is $LB(). Which is a string under cover.And take care of the 32k limit
go to post Robert Cemper · Nov 28, 2017 Nicole,thanks for your input. I had my experience with CTRL+O by accident just a few minutes before your answer .It would be great if normal OUTLINE could do this as well.
go to post Robert Cemper · Nov 27, 2017 Nicole,thanks for your input. I had my experience with CTRL+O just a few minutes ago by accident.It would be great if normal OUTLINE could do this as well.
go to post Robert Cemper · Nov 27, 2017 so $lb($$$FIXSTR,text) since $L(text) is included there anyhowand $$$FIXSTR tells you that it's < 32
go to post Robert Cemper · Nov 27, 2017 I'd suggest to use $LB() if you are not hit by the LongString limit.why: all packaging, selection,.... is already done and "hard wired" in C++ with $C() you may re-invent $LB() or $Piece() or similar. And you have to do it in COS.Same applies to local array where you may iterate over the structure in COS again.Nothing against COS but C++ (in COS Functions) IS faster
go to post Robert Cemper · Nov 27, 2017 Thank you, Dan!I was pretty sure to miss some cases.SOID is probably the one nobody else would be aware of that it exists.
go to post Robert Cemper · Nov 27, 2017 similar in practice if you run bookkeeping as a service.master has full access and has the responsibility for the content. Using Work classclients have just read access to most fields. Using Client class.I didn't say tax control doesn't see everything. Using Government class