In a tag-based CSP page, I can define (e.g.):
Is there any way to use this syntax to define an *instance* method (i.e., Method rather than ClassMethod) in the generated class?
InterSystems Caché is a multi-model DBMS and application server. See more details here.
In a tag-based CSP page, I can define (e.g.):
Is there any way to use this syntax to define an *instance* method (i.e., Method rather than ClassMethod) in the generated class?
Has anyone had success with passing in a collections property within a SOAP request to a Soap Service in Ensemble? Please reply with how you set up that collections property. I am able to successfully send a SOAP request correctly containing the elements of the collection property to Cache, as seen in a custom soap log file which I am using to troubleshoot. But the collection property in the Ensemble request is not getting serialized, meaning MyContainers has nothing.
My.Request consists of a property, MyContainers, which can have 0 or more Containers (My.
As you know ObjectScript has neither FOREACH system command nor system function.
But it has a wide room for creativity.
The task is to loop over a global or local array and do something FOR EACH element.
There are 2 possible solutions:
Reviewing a client console log, I am finding the message:
Terminal disconnect: The specified network name is no longer available.
This message is repeated in the log dozens of times per day over the last month. The client has not raised a concern and our monitoring has not detected any issues with client ops. The client is not aware of any recent changes with their apps. I am not familiar with this message and whether this message is benign or whether there is any action required,
You can use the system routine ^DBSIZE to estimate the backup file size (see also Note 1).
^DBSIZE estimates the file size of full, cumulative, and differential backups of the databases selected in the database backup list.
The database backup list is created from [System Administration] > [Configuration] > [Database Backup] > [Database Backup List] in the Management Portal.
.png)
For more information, please refer to the document below.
Estimate backup size with ^DBSIZE [IRIS]
Estimate backup size with ^DBSIZE
An execution example is as follows.
Several steps should be done in order to secure the connection through xDBC clients to an IRIS Server instance using TLS. Most of the information can be obtained from the documentation about TLS on IRIS here, about configuring the security layer for encrypted connections. In the next paragraphs we will cover an step-by-step guide on how to configure and test the connection using SQL Clients apps using ODBC and JDBC.
Is there any ObjectScript or a basic function that takes a string and separates it into words + punctuation/spaces array/list? Just not to reinvent the wheel. Say, process "It is a test, after all" into "It", space, "is", space, "a", space, "test", ", ", "after", space, "all". Or something to that effect.
Effective May 16, documentation for versions of InterSystems Caché® and InterSystems Ensemble® prior to 2017.1 will only be available in PDF format on the InterSystems documentation website. Local instances of these versions will continue to present content dynamically.
In this article I'll cover testing and debugging Caché web applications (mainly REST) with external tools. Second part covers Caché tools.
You wrote server-side code and want to test it from a client or already have a web application and it doesn't work. Here comes debugging. In this article I'll go from the easiest to use tools (browser) to the most comprehensive (packet analyzer), but first let's talk a little about most common errors and how they can be resolved.
Hi,
I have created two CSP pages. One is the Login page and the other page show the patient details from the database.
I want to set the session dynamically just after the successful login and after login it will be redirected to the Patient Details page. If session timeout, then wants to redirect back to the login page.
Thanks in advance.
Vinay Purohit
Hi everyone,
I'm currently developing a TCP inbound Service to read some XML sent from a TCP Operation that uses EnsLib.TCP.CountedOutboundAdapter.
1) I have tried EnsLib.TCP.Inbound adapter but that gives this error:
ERROR <Ens>ErrException: <METHOD DOES NOT EXIST>zinitConfig+7 ^Ens.Host.1 *%New,EnsLib.TCP.InboundAdapter -- logged as '-'
number - @'
Set ..Adapter = $classmethod(..#ADAPTER,"%New")'
Due to this, the adapter is unable to start listening for incoming connections.
2) When I use
This is a rather personal view of the history before Caché.
It is in no sense meant to compete with the excellent books from Mike Kadow discussed in an earlier article.
We have different histories and so this is meant to create a different perspective of the past.
The whole story started in 1966 at MGH (Mass.General Hospital) on a PDP-7 Ser.#103
with 8K of memory (18-bit words) [ today = 18K byte ] as a spare system.
"Serial Number 103 - was located in the basement of the now demolished Thayer Building,
currently [2014] the site of the Cox Cancer Center at MGH.
Migrating data to another system takes two steps.
To migrate the class definition to another system, export it to a file in XML format or UDL format (extension .cls).
The export procedure in Studio is as follows.
Tools > Export
> Select multiple classes you want to migrate with the [Add] button
> Check [Export to local file]
> Confirm that the file type is XML, enter a file name, and click [OK].
After this, import the exported XML and UDL files in the studio on another system. The import procedure in Studio is as follows.
How to translate below code from C to COS?
void encode_value (unsigned char value, unsigned char *tx)
{
tx [1] = ((value & 0xf0) >> 4) + 0x20;
tx [0] = (value & 0x0f) + 0x20;
}
unsigned char decode_value (unsigned char *rx)
{ unsigned char temp_value = 0; temp_value = (rx [1] - 0x20) << 4;
return (temp_value + rx [0] - 0x20);
}
InterSystems has corrected a defect that can cause corruption of databases and journal files on AIX systems with IBM POWER8 or later POWER processors. This defect can be triggered only when database or journal encryption is in use.
Deltanji 7.1 is now available.
Key updates include:
* Interoperability Production component driver included, for customers who have purchased the add-on. You can watch a short demo of it here.
* Implement multi-select delete of objects and components
* Add setting to give a passable Beyond Compare launch command line
* Support simplified Locations & Routes diagram
For more information, read the release notes here >> https://bit.ly/3mHyJHc
Please get in touch with support@georgejames.com for your release kit.
The update is also available for Serenji debugger users on VS Code, which has the Deltanji solo edition embedded. Simply update the Serenji extension to version 3.2.3 or later and load the server-side code.
Hello,
I have a form from named otpForm from where I post data to actionCheck.csp and redirect it to another csp file cmain.csp after form post and the redirect is not working. I tried to debug and check the value in the cmain.csp but noticed that redirec t is not working.
Do you know if window.location.href = "cmain.csp"; is working with CSP?
Can someone guide me what to do here please
Thank you
Here is what I did:
//post and redirect form data
<script type="text/javascript">
jQuery(document).
When you install an IRIS or Caché instance on Windows Server, you'll usually need to install it under a specific user account that has network access permissions. This is very handy when you needs to access network resources for creating files or directly accessing printers.
TL;DR: see key takeaways at the bottom!
When you need to change the Windows user account the IRIS/Caché service is running as, you can configure (after installation):
<install-dir>\bin\IRISinstall.Hi
Did any one encountered such error while saving an object?
What does it mean & how to over come it.
Thanks Simcha
ERROR #5034: Invalid status code structure
Hi all.
I have a process/operation within Ensemble that grabs a PDF from a webservice, and then saves it to an external location. All is well, except I am noticing that a lot of .Stream files are being stored on the Cache Server.
Does anyone know what causes these to be stored and what would trigger their removal? Would I be right to assume these would be removed if I ran Ens.Util.Tasks.PurgeMessageBank and the creation dates fell within the purge range?
Edit: I answered my own question on if the purge would clear them out. The answer is yes.
In this article, we will introduce how to deal with the situation: "I accidentally deleted a global!"
Backup files and journals are used to recover specific globals that have been accidentally deleted. Restoration is performed by specifying conditions and restoring journal records using the ^ZJRNFILT utility In this way, you can apply a point-in-time backup of the database up to and including deleting a specific global for journal records that contain deletions.
Let's supposed somebody updates routines via %RCOPY or %RI, the really old-style hardcore way which still works. Does that leave any log traces in Journaling or system globals, as of when exactly did it happen or what was the IP address of the machine changes came from? I am aware only of the Date Modified changes as seen when opening the file.
The ID of the last updated record can be obtained using the SQL function LAST_IDENTITY().
* This function can be used with embedded SQL or ODBC but not with Dynamic SQL, SQL Shell, or the Management Portal's SQL interface.
Here's an example of usage with simple Embedded SQL:
hi,I meet a problem,i want to move huge data from ensemble to oracle.it`s about 3years business data.i have tried some case!
1.
i parse the data one by one,and translate it into inser or update sql statement then write to Oracle,it·s most slowly,and take more disk space。
2.save the data to a new table,and then use dbeaver transport data to oracle。
3.user linktable. save object as insert,but,i can·t user %openid method.
hope to find a high-efficiency way!
Hi
I've got a string variable which I need to convert into a XML one.
My main goal here is to use the XML bit I've extracted from a HTML file in a message I need to pass over to an operation.
I'm doing the following which always errors
classMethod WriteNodes(myfile As %String)
{
Set status=##class(%XML.TextReader).ParseString(myfile,.reader)
....
Any easy way of making this happen?
Kind regards
Looking at the documentation, I see that the global ^ROUTINE brings the information and code of the .INT version of the routines. However, I would like to know where the equivalent information of the .MAC version is, as I did not find any reference to this in the documentation.
Some information in the .MAC version are hidden or already converted into the .INT version, and I would like to have access to this information through the system, and not just opening the routine in the studio.
During a migration from a rather old Caché Version (2016.1) to IRIS
I met the problem to migrate Streams.
The difference in the storage Global is minimal
It's not a big effort to do it manually for a few streams.
But for some thousand streams I hope there is a tool already available.
But where?
In the documentation Data Types | Caché SQL Reference | Caché & Ensemble 2018.1.4 – 2018.1.8 (intersystems.com)
it says that "by default, Caché establishes a system-wide ODBC VARCHAR maximum length of 4096; this ODBC maximum length is configurable"
Per instructions, I went to SMP -> System -> Configuration -> General SQL Settings, where most of the fields from $SYSTEM.SQL.CurrentSettings()
appear. That one does not.
How does one change it, and can it be increased?
Thanks!
[Cross-posted from https://groups.google.com/g/intersystems-public-cache/c/eRFeORb_sb0]
Hi,
we get HL7 MDM messages with embedded PDF documents that are Base64 encoded. When the embedded PDF document exceeds the size of 3.6 MB the following error occurs:
FEHLER <Ens>ErrBPTerminated: BP Main HL7 MDM # wird wegen folgenden Fehlers beendet: FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1
> FEHLER #5002: Caché-Fehler: <MAXSTRING>zgetAtFromArray+46^EnsLib.HL7.Segment.1
In other posts I read that you can avoid these errors, if you use the data type %VarString instead of normal %String.
Hello,
I have a question regarding the Intersystems Caché Database and its jdbc driver. I need to set the connection timeout for the database, but I couldn't find any documentation stating that the jdbc driver for Caché supports setting the connection timeout. However, I noticed that the jdbc driver for the Intersystems Iris Database appears to support this feature.
My question is, can I use the Iris jdbc driver to set the connection timeout for the Caché Database?
The jdbc driver I use: cache-jdbc-2.0.0.jar
Thank you for your help.
Best regards,
Kalle