User Answers

You should use Locate:

Set tRegEx = "<[^>]*>"
Set htmlSnippet = "<h1>Hello1</h1><h1>Hello2</h1>"
Set regex=##class(%Regex.Matcher).%New(tRegEx)
set regex.Text = htmlSnippet
while regex.Locate() {
    write "Found ",regex.Group," at position ",regex.Start,!

Also it's not possible to parse generic HTML with regular expressions ( Limited subset of HTML -- maybe.

Reason for "0.001005933" being string is not that it is less than 1, but that it's not in a canonical form.

That is -- it has integer zero before decimal point.

Put '+' before expression:

USER>Set MsgDT = "20180405000000001005933"

USER>Set MsgDTH = + $ZTH(($E(MsgDT,9,10)_":"_$E(MsgDT,11,12)_":"_$E(MsgDT,13,14)_"."_$E(MsgDT,15,23)),1)



Both Caché and InterSystems IRIS support ODBC. So you can connect to them from PHP via ODBC.

Jimmy, what version do you use? Try to upgrade to latest available version -- 2018.1.2 for Caché, perhaps this error is fixed there.


can you please provide provide SQL generated by the Entity Framework that is not valid and error that is generated.


Log that you provided spans from March 19th 09:35 to March 20th 14:43.

Depending on moments when application was unavailable you need to look in different records of csp.log

For example,

1) Exception caught in f:csp: c0000005:4600
c0000005 is the code for an access violation.

I would advise to you to try installing latest release version of CSP Gateway, or if this error still appears there, contact InterSystems Worldwide Response Center to fix this error.