We have a very old green screen application which is currently producing PCL "documents". I want to update this to produce PDFs - are there any shortcuts / tips? I'm aware Zen Reports can allegedly do it, but I want to avoid that route if I can.
Hello,
First sorry for my english :)
I'm looking for a solution to reset the cursor of a query in a csp page.
In my code I do:
<csp:query name="users" classname="UserId" queryname="Find">
<csp:while condition="users.Next()">
...
</csp:while>
And 100 lines after I have to do exactly the same ...
Is it a way to do the while without do the query again ?
Something like users.Reset() ??
Thanks a lot for your help
Sébastien
I experience this constantly with Cache SQL. Especially when querying the ATNA log.
SELECT TOP 400000 * FROM HS_IHE_ATNA_Repository.Aggregation ORDER BY ID DESC
That took 12 seconds. I then upped the number to 500,000 and it took 185 seconds.
Shouldn't the execution time scale proportionately?
If I run the 500,00 query again it takes 2.4 seconds.
How to parse a URL in Caché:
Let's pretend you are working on a project where you may be retrieving a URL for some purpose and you have the need to be easily able to parse apart that URL to get the various components that make up the URL.
Here's how to do that:
Note: This example assumes you have a variable named sURL that contains some url (i.e. http://www.intersys.com/main.csp?QUERY=abc#anchor) and you will be creating an array of the URL component pieces, where the array will be named aComponents.
In your class/routine, add the following code:
Do ##class(%Net.URLParser).Parse(sURL,.aComponents)
I have to connect to an external database and I'd like to use the JDBC SQL Gateway.
I followed this tutorial [1] to create a JDBC SQL Gateway and after configured it works as expected, but I don't know
how use this connection into source code. Maybe these other tutorial is related [2] and [3].
[1] http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY…
[2] https://community.intersystems.com/product-documentation/intersystems-p…
[3]
Hi
I have been working on changing a web application from using %FileBinaryStream to storing and serving the file content from a %Stream.GlobalBinary property, stored in a new database. I have managed to migrate the data across, and have also been able to redirect the stream so that it is being served through the web link. However, the previous method set attributes on the File stream to have the stream be rendered as the original file type through MIME, using this code
do stream.SetAttribute("ContentDisposition","inline; filename="_filecvt)
This method is not supported by
Hi, There
How to use open text file. I have a one file. the file is original file from excels file. After later convert to CSV file.
some cells has include cr+lf control code. If i open and use from cache. reding time,Cache was wrong line feed point.
how do i edit my source code?
==============================================
s infile="c:\csvfile.csv"
o infile:"r"
1 u infile r line i $zeof<0 c infile q
f i=1:1:10 s wd(i)=$p(line,",",i)
g 1
==============================================
maybe I am not looking in the correct spots, but how should one handle an Exception from a SOAP web service within the Business Process Language? For example I am sending a request to a Web Service to try to get information, but the response I am getting is an Exception like "Patient Not Found".
Is there a function I can call to check the response similar to what I do to check a SQL Snapshot to see if it is valued?
Thanks
Scott Roth
Sr. Applications Development Analyst
Information Technology Integration - Interfaces
The Ohio State University Wexner Medical Center
Difference between function , routine and procedure in object script.
I have an operation which calls an external web service, returning a long XML string.
Passing the string into Excel creates a table like this:
Each row above relates to a document on a server. In Ensemble, I need to parse the XML similarly to Excel, where I can loop over each document and take various actions depending on the different values.
I created a BPL to call the operation and return the XML string, which I've converted it to an %XML.TextReader object, and I'm using a While loop to loop through each element.
I put in traces for Name, NodeType, Path and Value and examined the results
Background
Caché 2016.1 introduced some very powerful JSON features. Unfortunately, the syntax used in the 2016.1 release is going to be changed in the 2016.2 release to bring it closer to Caché ObjectScript syntax. This will mean that code that works in 2016.1 may not be forwards compatible. See this announcement and this article for more details about the changes.
In order to try to minimize the volume of code which would not work in future Caché versions, the following recommendations and tools are being used internally within InterSystems for internal application JSON code being written
A beginner’s guide to Exception Handling in RESTful web services. The article gives an example how the various error conditions during processing a service request can be handled.
We expect our client – server communication working in a flawless operational condition, running error free software. But we are prepared to handle exceptions. Are we? So far in the examples of the previous sessions were not. We did not care about exceptions. The result? In any error incident it took ages to figure out what the problem is and more importantly how to fix it.
Remember, REST leans on HTTP.
I can't able to access the management portal in tcp the cache is run on different port no 57812 plz i want immediate rply soon
Hi All,
SPOOLER functionality is support in Cache 16?
Previously we are using cache 5,Now we upgraded cache(cache 16).
Is any changes required in SPOOLER set-up (Cache 16)?
Thanks,
Sansa
This sample class will add parameter DSINTERVAL to each class containing the parameter DSTIME
To execute it from a Terminal :
SAMPLES>d ##class(adm.param).add(,,1)
[SAMPLES] parameter DSINTERVAL=5 added to class DeepSee.Study.CityRainfall (via adm.param)
[SAMPLES] parameter DSINTERVAL=5 added to class HoleFoods.Transaction (via adm.param)
[SAMPLES] parameter DSINTERVAL=5 added to class News.DeepSee.NewsArticle (via adm.param)
DSINTERVAL parameter was added to 3 classes
Class adm.param [ Abstract ]
{
/// this class will add DSINTERVAL parameter to each class containing DSTIME
///I'm trying to read PID-3 and route the message based on if a certain prefix existed, but I keep getting Property Does Not Exist.
I've tried
HL7.(PID:PatientIDInternalID()) Contains "COS"
HL7.(PID:PatientIDInternalID(1)) Contains "COS"
HL7.{PID:PatientIDInternalID()} Contains "COS"
HL7.{PID:PatientIDInternalID(1)} Contains "COS"
This is a 2.3 MDM message. Thanks!
This article gives a brief introduction how a RESTful service consumer and a RESTful service provider exchange data. It is a beginner’s guide. Data is transferred from a consumer to a provider as parameters of the service. Parameters are part of a service request. The result of the service action a response is returned from a provider to a consumer. Both the service request and response are standard HTTP messages. Since HTTP is a flexible standard regarding to the message contents, RESTful services also enjoy the versatility of data transfer methods.
During this session you can learn what
Good Morning and thanks in advance for all replies. I have created a PowerShell script for backing up CACHE and all related files to be run on a nightly basis. My script works as long as the Unknownuser has %all access which is not acceptable in our production environment. I have tried every format I can thank of to get the script to use a specific id with no luck. How can I get this command to run under a specific id?
..\bin\cache -s. -U%SYS "##Class(Backup.General).ExternalFreeze() <d:\backup\login.scr"
The file just has
userid`r`n password`r`n
`r. For a carriage return and a new
Hi!
Sometimes you see that call to DeepSee cube building method:
w ##class(%DeepSee.Utils).%BuildCube("CubeName")does nothing.
Here are my 2 cents on possible reasons.
1. Run DeepSee Reset method in certain Namespace:
NAMESPACE> w ##class(%DeepSee.Utils).%Reset()
and try again.
2. Make sure, that all the indices in your base class for the cube are rebuilt, rebuild them and run it again:
w ##class(%DeepSee.Utils).%BuildCube("CubeName")Hope this will save some time for you, and will be helpful as was to me.
NewBie's Corner Session 27 Traversing A Global with $Order Part 1
Welcome to NewBie's Corner, a weekly or biweekly post covering basic Caché Material.
Traversing A Global
Perhaps the most difficult concept in Caché/MUMPS is its Global Structure. This session and several that follow it deals with the Global Structure. However, just presenting the material will not guarantee your understanding of it. You must experiment with the data and concepts that are presented.
In this session, we are going to create a small Global of three levels deep, and then show the code to Traverse the Global.
The
NewBie's Corner Session 28 Various Methods to Traverse a Global
Welcome to NewBie's Corner, a weekly or biweekly post covering basic Caché Material.
Judging from the number of responses to Session 27 Traversing A Global, developers are passionate about their methods. I am not here to judge the merit of the various methods.
Over the next few pages I will demonstrate a number of methods to Traverse a Global. If you don't already have a favorite they may help you pick one.
I will repeat the method from Session 27 just to have all methods in one post.
There may be variations on these methods and
Is it possible to change date for post, when in time when it was published? I've created a draft some days ago, and when I published it today, it shows that post already 3 days old.
Hello, guys.
I need to copy the text from one stream to another filestream and save it. I am using
do fileStream.CopyFromAndSave(rtn.Code)
However, if "rtn" stream contains Russian characters I get something like "???". Is there any way to convert stream to Unicode? Something like $zc(str, "O", "UTF8") for streams.
Hi all,
This is a real long shot, but does anyone have experience integrating MS wsHttpBinding with a Cache application?
I ask because my project had some initial design discussions for new web service communication and this specification was mentioned.
Thanks.
Hi, Community!
Here is the digest of Articles and Questions published on InterSystems Developer Community in September 2016.
Most viewed
Mirroring 101: a brief guide and FAQ - 238
NewBie's Corner Session 27 Traversing A Global with $Order Part 1 - 214
Cache for Raspberry Pi? - 209
Free Text Search: The Way To Search Your Text Fields That SQL Developers Are Hiding From You!* - 199
REST in Pieces - 196
User authentication using Arduino with RFID - 146
Windows 7 performs shutdown too fast for Cache to close and so it gets forced down - 143
Cache or Caché? - 141
NewBie's Corner Session 28 Various Methods to Traverse a Global - 134
Cache Certification - 128
Most voted
Ensemble and file outbound adapters - a small hint - 11
Free Text Search: The Way To Search Your Text Fields That SQL Developers Are Hiding From You!* - 9
Advanced URL mapping for REST - 6
Windows 7 performs shutdown too fast for Cache to close and so it gets forced down - 6
Featured InterSystems Video: OAuth 2.0 Overview - 6
The Art of Mapping Globals to Classes (2 of 3) - 5
Running HealthShare XSLTs from Terminal - 5
Cache or Caché? - 5
Most commented
NewBie's Corner Session 27 Traversing A Global with $Order Part 1 - 16
question on ExternalFreeze on windows platform -- - 14
Cache or Caché? - 12
Mirroring 101: a brief guide and FAQ - 10
Windows 7 performs shutdown too fast for Cache to close and so it gets forced down - 9
Multiple namespaces in web application - 8
cleaning up CSP sessions (aka where/who/what is the %CSP.Daemon?) - 8
NewBie's Corner Session 28 Various Methods to Traverse a Global - 8
Free Text Search: The Way To Search Your Text Fields That SQL Developers Are Hiding From You!* - 7
Hello, guys.
I found one interesting moment in Cache Object Script. It doesn't have(or at least I didn't find) trimming function. By trimming I mean if a string has some whitespaces/tabs/carriage returns from very beginning or/and from very right, this function removes them.
I have found several workaround ways.
1. Using Cache Basic
ClassMethod TrimCacheBasic(str As %String) As %String [ Language = basic ]{Return Trim(str)}2. Using SQL
ClassMethod TrimSQL(str As %String) As %String
{
set tStatement = ##class(%SQL.Statement).%New()
set tSC = tStatement.%Prepare("SELECT TRIM(?)")I saw someone recently refer to ECP as magic. It certainly seems so, and there is a lot of very clever engineering to make it work. But the following sequence of diagrams is a simple view of how data is retrieved and used across a distributed architecture.
For more more on ECP including capacity planning follow this link: Data Platforms and Performance - Part 7 ECP for performance, scalability and availability
To start
- There are three globals on disk ^A, ^B and ^C.
- Global ^B equals "B"
- There is one Data server and two or more Application servers.
- The diagrams show the cache (global buffers) on
Hi All
I have a question on working with dev and prod environments.
After project is ready and signed, I usually migrate outcome to production using the export tool from the studio.
For changes/adding to existing projects, I exclude the production class (as it has some different values differing the dev from the live) and I add the differences manually afterwards.
My questions on migrating are:
Does anyone has (to share) his/her best practice steps on "migrating dev to prod"?
Does the export action (in management portal) is better to use?
Thanks
Gadi
The article is a step by step guide for beginners to learn how to build a RESTful web service consumer (or client) in Ensemble. The provider can be any RESTful service, but the example is based on the service we made during the previous sessions.
It is more than obvious that many client development environment has programming libraries or containers to build a RESTful client.For example in the earlier sessions we used Java Script to access services.Ensemble as a container also offers client functionality.Let us have a quick list what Ensemble offers.
I'm following the tutorial here. When I try to call the default Test() method I get the following error:
An error occurred with the CSP application and has been logged to system error log (^ERRORS)
I found this document which says I need to make the "Web Application" accessible by running a couple commands. I'm not even sure I created a Web Application. Regardless, I tried a few variants but still get the same error.
Here is the URL for the Service Catalog: /csp/healthshare/mhclib/Custom.MHC.Scott.ServiceTest.cls
I tried different things including these two:

