In a new rule I configured for a route, I have no constraint configured (so I assume it should pass everything), but I am getting an error that states "Constraints for rule failed".... ?
The .NET Core Identity model has an IPasswordHasher<> interface for for
- Hashing a password so that it can be stored in a database
- Verifying a provided plain-text password matches a previously stored hash.
I am getting invalid password errors during the login process when the .NET Core Identity model computes a hash from a plain text input and compares it to a password hash value I've returned from Caché. The default hashing algorithm is PBKDF2 with HMAC-SHA256, 128-bit salt, 256-bit subkey, and 10,000 iterations (detailed article on .NET Core Identity PasswordHasher). The algorithm Caché uses is probably different which may be why I am getting errors.
Our team is reworking an application to use REST services that use the same database as our current ZEN application. One of the new REST endpoints uses a query that ran very slowly when first implemented. After some analysis, we found that an index on one of the fields in the table greatly improved performance (a query that took 35 seconds was now taking a fraction of a second).
We saw this improvement on our development system and our test system. However, when we moved the code to the production system, the query still took “forever”. What went wrong?
- We checked that the code was properly
(Originally posted by @Ben Spead on June 25, 2014)
This code snippet generates a list of Ensemble Lookup Tables and Schema documents in the user's current namespace. Run the code by running the class method "test":
Class benspead.EnsTablesSchema
{
classmethod test() {
If ##class(%Dictionary.CompiledClass).%ExistsId("Ens.Util.LookupTableDocument") {
// only supported in Ensemble 2012.1+
Write !,!,"Exporting Ensemble Lookup Tables..."
Set sc = $$$OK
Set rs = ##class(%ResultSet).%New("Ens.Util.LookupTableDocument:List")
Do rs.Execute()
While rs.Next() {
Set item=rs.Data("name")
Write "document found: "_ item,!
}
Do rs.Close()
Set rs=""
}
If ##class(%Dictionary.CompiledClass).%ExistsId("EnsLib.HL7.SchemaDocument") {
Write !,!,"Exporting Ensemble HL7 Schemas..."
Set sc = $$$OK
Set rs = ##class(%ResultSet).%New("EnsLib.HL7.SchemaDocument:List")
Do rs.Execute()
While rs.Next() {
Set item=rs.Data("name")
Continue:$listfind($lb("2.1.HL7","2.2.HL7","2.3.HL7","2.4.HL7","2.5.HL7","2.6.HL7","2.7.HL7","2.3.1.HL7","2.5.1.HL7","2.7.1.HL7","ITK.HL7")
,item)
Write "document found: "_ item,!
}
Do rs.Close()
Set rs=""
}
}
}
Here's a link to the code on GitHub: https://github.com/intersystems-community/code-snippets/blob/master/src/cls/benspead/EnsTablesSchema.cls
Hi Community!
Enjoy watching the new video on InterSystems Developers YouTube, recorded by @Joel Solon, InterSystems Senior Technical Trainer:
Hello!
My goal is to serve files using REST classes only (no filesystem should be used), and I am a halfway far from it.
What I am succeeded in, is serving character files (html/css/javascript/etc) using the next approach:
I have created store procedure using management portal.
how to alter or modify SP using SQL in management portal.
Please refer below screen.
.png)
Hi Developers!
Here is a new release of InterSystems Open Exchange - InterSystems applications gallery!
What's new?
- Github Integration is improved;
- Better application update mechanism;
- UI/UX enhancements.
See the details below.
I have set up a process to produce a daily file to be submitted to another system and this is working (using EnsLib.RecordMap.Operation.FileOperation). However, the file needs to have a header line added each time it is created so it can be processed by the down stream system. Looking though EnsLib.RecordMap.Operation.FileOperation and EnsLib.File.OutboundAdapter, I can't see where I can do this easily. Any suggestions?
Thanks
Has anyone used Cache \ DeepSee for graphical curve fitting and data reduction using Cubic Spline and/or 5 PL for complex curve fitting
Hi,
I am trying to create a new report on Trakcare. I created a class file and corresponding crystal report . It works fine and data is populating when I try to run on crystal environment. But when I make a setup on Trakcare and click on print option, I am getting an error on print history " VB error in tkCrystalJob] Error number[-2147417848] Method '~' of object '~' failed [at line 421]". If I click on print preview option its going to empty browser. Inorder to setup new report, already made set up on report manager and menu manager.
Can anyone have any idea abt this error?
Thanks
I'm a DBA and support Caché databases on AIX. I coded shell scripts for monitoring journaling status, databases size, license end date.
We recently got a new instance of Caché on Windows. I'm just curious to know whether anyone coded database monitoring scripts on Windows using PowerShell or any other scripting language.
If yes, please share the details.
Thanks & Regards,
Bharath Nunepalli.
I have a colleague that is trying to eliminate any HL7 transactions that have admit date/time of midnight from going to an downstream system within a routing rule. I have tried several different iterations of code trying to figure this out just in the routing editor. Without having to write an object script function is this possible?
.png)
((HL7.{PV1:AssignedPatientLocation.PointofCare}="D3")||(HL7.{PV1:AssignedPatientLocation.PointofCare}="D4"))&&(SUBSTRING(HL7.{PV1:AdmitDateTime.Time},9,12)!=0000)
Thanks
Scott Roth
Hi, I am trying to get my values into a mySQL DB but for some reason it doesnt seem to go into the DB. I do not get any errors. Would appreciate some guidance on this.
ClassMethod Orders(pRequest As EnsLib.HL7.Message) As %String [ Final ]
{
/
s pidSeg = pRequest.FindSegment("PID")
s mrn = $p(pidSeg.GetValueAt(3),"^",1)
s obrSeg = pRequest.FindSegment("OBR")
s obrdate = obrSeg.GetValueAt(6)
s obrdesc = $p(obrSeg.GetValueAt(4),"^",2)
s obrstat1 = $p(obrSeg.GetValueAt(40),"^",2)
s obrstat2 = $p(obrSeg.GetValueAt(40),"^",3)
s obrstatus = obrstat1_" "_obrstat2
s orcSeg = pRequest.FindSegment("ORC")
s consulta
Hi Community!
Two more new videos are already on InterSystems Developers YouTube Channel:
1. Machine Learning - How it Works - Part 1
I have global with binary data, structured like:
^a(1)=<binary>
^a(2)=<binary>
^a(n)=<binary>
What could be easiest way to read it via Stream interface? I.e. to pass an adapter to a function expecting Stream?
Hi
I am trying to upload a file to a ftp site using following code. Problem is file is getting upload but there is no data. Can you plz advise where I am getting lost. Also my files are with big data, 2+ GB, as far as know this ftp upload will not effect on my cache.dat size. Plz correct if my understanding is not correct.
Set ftp = ##class(%Net.FtpSession).%New() set sc = ftp.Connect("myFtpServer","myUserID","myPswd") Set filestream = ##class(%Library.FileCharacterStream).%New() Set sc = filestream.LinkToFile("\Temp\GaganTest") set newname = "PrintWaitDetail-14936.xls" Set sc =
Hi Developers!
InterSystems IRIS stores everything in globals and if we use ObjectScript classes to persist data class documents globals it uses in storage. But if you use globals for calculations, temporary storages, for special indexes or for some other purposes - how do you document it?
Possible options which come to my mind:
1. Macro
#define Array ^MyGlobalusage:
s $$$Array(1)=12. Class parameter
Parameter Array ="^MyGlobal";Usage:
s @(..#Array)@(1)=13. Documentation comment
Just document it to have it in a class documentation
/// ^MyGlobal is used to store my dataWhat do you do?
Hi ,
I would like to know if there is possibility to disconnect child from parent in Parent/child relation and move child to Other Parent?
Object Synchronization is a feature that has been around for a while, since Caché days, but I wanted to explore a bit more how it works. I've always thought that database automatic synchronization is complex by nature but, for some particular scenarios shouldn't be so hard. So I considered a very simple use case (OK, perhaps the typical one, I'm not discovering anything... but if it's common and it works, it's good
). You can download from GitHub and compile it into your system, generate sample data and play a bit with it. It's done for InterSystems IRIS but it also should work in last
Hi all,
One of the most useful features for me in IRIS was the queue page. From there, I could see how the different elements (BS, BP & BO) from a production were behaving, thanks to the possibility of auto-refresh every second. Great thing.
But we have updated to 2019.1 and this possibility is gone... we need to refresh manually! So, is there any way to set a parameter somewhere to have the queues status refreshed automatically?
Thanks a lot.
I have two local instances:
- IRIS for Windows (x86-64) 2018.1.2 (Build 626_3U) Wed Jun 12 2019 19:07:59 EDT
- IRIS for Windows (x86-64) 2019.1 (Build 510U) Thu Mar 14 2019 14:13:37 EDT
I'm using Java Gateway to talk to external system.
Both instances are using the same:
- jar
- generated class
- java version
They are calling the same method with this java signature:
package isc.rabbitmq;
public class API {
public void sendMessage(byte[] msg) throws Exception {}
}On the InterSystems IRIS side I'm calling it like this:
set sc = ##class(%Net.Remote.Service).OpenGateway(gatewayName, .gatewayConfig)
set scHi,
Is there any way to set environment variables in Linux from Cache?
I see a way to get an environment variable with: $system.Util.GetEnviron()
Essentially I am converting from VMS (DCL) to Linux.
In VMS we used $ZF(-1,"SETSYM") in Cache to a value and then interpreted that value in a DCL procedure.
Actually, I think I should just explained the need. We are writing linux scripts that call cache routines and we would like to pass back a value indicating failure or success to be handle it in the linux script. Right now we are writing out a log file, opening it and searching for a string.
The newer dynamic SQL classes (%SQL.Statement and %StatementResult) perform better than %ResultSet, but I did not adopt them for some time because I had learned how to use %ResultSet. Finally, I made a cheat sheet, which I find useful when writing new code or rewriting old code. I thought other people might find it useful.
First, here is a somewhat more verbose adaptation of my cheat sheet:
|
1
|
%ResultSet::%New()
|
%SQL.Statement::%New()
|
|---|---|---|
|
2 |
Call the Prepare() instance method |
Call the %Prepare() instance method |
|
3 |
Previous step returns status; check that |
Previous step returns status; check that |
|
4 |
I have a list property that I query from the database to get the values contained in that list using $LISTFROMSTRING() when the list is returned the list values contain a rectangle like character similar to when you copy past something to the Terminal and it has a preceding space .The problem is I need to compare those values to other values and they do not match because of this value I have tried to use $EXTRACT(value,*W) and *P but this is not striping the preceding character how do I get rid of this character any ideas please.
the values returned from the Database ![]()
here is what I have tried
In Cache for UNIX (Red Hat Enterprise Linux for x86-64) 2018.1.2 (Build 309U) Mon Mar 4 2019 15:07:46 EST
I have a master record that has a relationship to a table with multiple transactions, and the transaction table has a relationship to another transaction table with multiple other transactions.
IE Item to Physcal to Physical Report
Item Master:
Relationship PhysicalRecord As User.pytrn [ Cardinality = many, Inverse = ItemRecord ];
First transaction table
Relationship ReportRecords As User.pyrpt [ Cardinality = many, Inverse = PhysicalRecord ];
Relationship ItemRecord As User.immst [ Cardinality
SQLCONNECT1 = tableUsers
SQLCONNECT2=tableLogEntries
select * from tableusers u, tablelogentries e where e.userid = u.userid
I keep getting the error References to an SQL Connection must constitute a whole subquery
Hi Community!
New "Coding Talk" video is already on InterSystems Developers YouTube:
How to Submit Your InterSystems Solution, Connector or Library to Open Exchange
The message viewer can resend messages but it is not suitable for resending a large number of messages (>100). For that, you should use Cache Object Script code such as the following:
{
ClassMethod Resend()
{
//Resend all messages sent from 'FromComponent' to 'ToComponent' between 2016-06-15 and 2016-06-20
&sql(DECLARE C1 CURSOR FOR
SELECT ID INTO :id FROM Ens.MessageHeader
WHERE SourceConfigName='FromComponent' AND TargetConfigName='ToComponent'
AND TimeCreated BETWEEN '2016-06-15' AND '2016-06-20')
&sql(OPEN C1)
&sql(FETCH C1)
set tSC = $$$OK
while (S
Hello All,
I need some help:
I would like to create Web Application using our ZEN with Cache DB so please guide me.
1.What is difference between zen page and zen application.
2.what is the difference between Client Method and server Method then where to use it.
Thanks.

