go to post Christopher Kennedy · Aug 24, 2022 Time zone is an environment level variable. The intersystems data server response is at the application level, so likely returning gmt is correct. The application can adjust based on the environment (geolocation).
go to post Christopher Kennedy · May 12, 2020 Mr Cemper, Thank you again for your prompt and informative response. I was able to resolve this issue with 2 simple steps: 1. add a self signed cert to the windows server 2016 IIS Manager virtual site; and 2. specify the $domain.$tld in the https url. Previously, I only had $site. And yes, you are correct again, the code I sent you is actually the asmx file which I import to ScriptLink to create the available objects from the WSDL response. The wsdl xml is generated by the web server in response to the application level wsdl import so that I do not need to see the wsdl xml. I realized all too late that this thread should never had been posted on the InterSystems site. My new wsdl import which is working is: https://$site.$domain.$tld/$virtualServer/$WS.asmx. Where the asmx is what I sent you. Think of asmx as pseudo xml. Microsoft claims it is an xml format, but obviously we know it is not. Thank you again for your prompt advise and assistance, Chris
go to post Christopher Kennedy · May 9, 2020 Thank you Robert for your prompt response, below is my wsdl, please review and provide further advise. Thank you Chris <%@ WebService Language="C#" CodeBehind="ESPFormsWS.asmx.cs" Class="SSMHAWS.ESPFormsWS" %>
go to post Christopher Kennedy · Nov 14, 2019 Hi Mike, While I'm not total familiar with the syntax for your ~/.{{tcsh,bash}rc|profile|...} it seems to me that the end should be: <Location>CSP On SetHandler csp-handler-sa</Location> as opposed to: <Location />CSP On SetHandler csp-handler-sa</Location> Minor I know, and if it html syntax likely doesn't matter at all. Still if it is in fact a {u,li}nix resource file, syntax would be important. Chris
go to post Christopher Kennedy · Oct 28, 2019 Cursors work, but are needlessly complex imo. I liked RCemper's pure sql solution. Another (better) approach is to do your calculation on the application server to save the cpu on the data server for serving the data.
go to post Christopher Kennedy · Oct 28, 2019 drop table if exists [stair];create table [stair] ( [purse] integer);insert into [stair] (purse) values(9);insert into [stair] (purse) values(2);insert into [stair] (purse) values(7);--++++++declare cursorA cursor for select purse from [dbo].[stair]declare @col integerdeclare @tot integeropen cursorAset @tot = 0fetch next from cursorA into @colwhile @@FETCH_STATUS=0begin set @tot = @tot + @col; print convert(varchar,@col) + ', ' + convert(varchar,@tot); fetch next from cursorA INTO @col;endclose cursorA;deallocate cursorA;drop table [stair];
go to post Christopher Kennedy · Oct 17, 2019 Excellent answer. Regarding the nuance of temporal types, something to think about: what would be the value of a time stamp field in any database without a corresponding date field and if the c# objects implement the database interface, then the C# objects would also have a valid date.
go to post Christopher Kennedy · Sep 12, 2019 Hi Praj, In the past, the following has worked for me using Intersystems Cache ODBC interface: {fn CONCAT(string-expression1,string-expression2)}Hopefully this helps.Chris Kennedy