Syndicate content 0  

Hello,

When we need to create a utf-8 encoded XML file, we use the Charset property of %XML.Writer:

set writer=##class(%XML.Writer).%New()
set writer.Charset="UTF-8"

How can we create regular txt files with such encoding?

Our Cache Installations are 8 bit and not unicode.

Thanks,

Nael Naser eldeen

0 10
1 3.5K

Terminal scripts can be used to run pre-designed commands on the terminal, like a batch file. You can write anything that can be executed on terminal, like for loop, if else and so on, inside Terminal scripts. In this article, I will show you how to call Terminal scripts, how to use parameters in Terminal scripts and how to avoid session disconnected when running Terminal scripts. If you have any information about how to use Terminal scripts or you have any feedback, please feel free to leave a comment.

4 6
2 3.4K
Article
· Apr 17, 2017 4m read
Debugging Web

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.

16 2
5 3.5K

You have a global ^CODE("TNO","BIO",291,"AKI") that may or may not exist. On the data side of the global ref it can have a boolean value of 0 (false) or 1 (true) and this global is wrapped up in a Caché class accessible from myobject.AKI property. At the object level, how do you check whether the property is defined ie. is there a $DATA equivalent for Cache Object properties? Also, how would you kill /null the property as opposed to making the value 0 (false) or an empty string?

0 10
0 3.5K

Hi Developers!

Often when we develop some library, tool, package, whatever on InterSystems ObjectScript we have a question, how we deploy this package on the target machine?

Also, we often expect that some other libraries already installed, so our package depends on them, and often on some particular version of it.

When you code on javascript, python, etc the role of packages deployment with dependency management takes package manager.

So, I'm pleased to announce that InterSystems ObjectScript Package Manager available!

13 19
4 3.1K
Article
· Jun 12, 2023 3m read
LangChain fixed the SQL for me

This article is a simple quick starter (what I did was) with SqlDatabaseChain.

Hope this ignites some interest.

Many thanks to:

sqlalchemy-iris author @Dmitry Maslennikov

Your project made this possible today.

The article script uses openai API so caution not to share table information and records externally, that you didn't intend to.

A local model could be plugged in , instead if needed.

9 7
3 3.4K

Hi Community!

We'd like to invite you to join our next contest to share your FHIR knowledge:

🏆 InterSystems IRIS for Health Contest: FHIR for Women's Health 🏆

Submit an application that uses InterSystems FHIR or InterSystems Healthcare Interoperability!

    Duration: November 14 - December 4, 2022

    Prizes: $13,500!

    >> Submit your application here <<

    7 7
    0 3.4K

    I cannot connect to Cache from node.js

    I have installed in Windows 10 the following: CACHE 2016, node.js v 4.4.7 and express .

    - where can I get cache.node? The link in the Intersystmes documentation http://globalsdb.org/downloads/ doesn't work. I found cache0100.node and cache0120.node in my Cache instance's \bin directory. But I am not sure if I can use them or not.

    - how to install cache.node ? Where do I place it exactly?

    1 12
    1 3.5K

    I'm trying to convert a CSV inbound to an HL7 MFN^M16 outbound. I know I'm using book information as the CSV but I don't think that matters. Please let me know if that's incorrect.

    My service is reading the file in just fine and when I don't have a DLT transformer the raw message passes through to outbound file folder just fine. However, when I include a basic DLT that simply copies a couple of fields over I get the "Ens.StreamContainer" error. Everything also seems to be good in the Record Mapper.

    0 4
    0 3.4K

    I am trying to connect to an external SFTP. They have our public key and I have the private key which is password protected. I have the credentials set to the sftp username and the password to the private key.

    If I set the private key only, I get a username/password error connecting. If I set both the public and private key files, I get the error below:

    ERROR #7510: SSH Error '-19': SSH Error [80101013]: Callback returned error [80101013] at Session.cpp:418,0

    0 4
    0 3.4K
    Article
    · Aug 31, 2023 5m read
    PDF Compression Using Ghostscript

    Introduction.

    Have you ever felt like your PDF files take up too much space on your server? As you collect more and more of these files, you might run into storage issues that can be costly to solve. But what if there was a way to shrink the size of these PDFs by 50% to 70% without compromising the document's visual clarity.

    Today, we're going to explore a solution for this problem that I really like: GhostScript.

    1 0
    0 3.4K

    Hy.

    I set up cache in container, which is working fine. But when accessing managment portal the default user was alway Unknown user and no username or password were required. So i disabled the Unknow user in the Security section, but now i keep getting an error access denid.

    0 9
    0 3.4K

    Developing a Full-Stack JavaScript web app with Caché requires you to bring together the right building blocks. In the previous part, we created a basic front-end React application. In the second part of this article series I will show how to choose the right back-end technology for your application. You will see Caché allows you to use many different approaches to link your front-end to your Caché server, depending on your application's needs. In this part we will set up a back-end with Node.js/QEWD and CSP/REST. In the next part we will enhance our basic web app and connect it to Caché using these technologies.

    5 12
    1 3.1K

    Full-Stack JavaScript development allows you to create state-of-the-art applications with Caché. With any (web) app you build nowadays, one has to make a lot of architectural decisions and you want to make the right ones. With the Node.js connector available for Caché, you can create a very powerful server side application server, allowing you to use the latest JavaScript technology and frameworks client- and server-side.

    With all these new technologies, the most important is to integrate them in the most efficient way and to create a very productive development experience. This article willl get you started step-by-step with Node.js technology.

    9 13
    1 3.1K
    Set httprequest=##class(%Net.HttpRequest).%New()
    	Set httprequest.Server="www.intersystems.com"
    	Do httprequest.Get("/")
    	Do httprequest.HttpResponse.OutputToDevice()
    	Do httprequest.Get("/cache/")
    	Do httprequest.HttpResponse.OutputToDevice()

    The above is the code which i found in this link http://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?P...

    0 5
    0 3.4K

    Often InterSystems technology architect team is asked about recommended storage arrays or storage technologies. To provide this information to a wider audience as reference, a new series is started to provide some of the results we have encountered with various storage technologies. As a general recommendation, all-flash storage is highly recommended with all InterSystems products to provide the lowest latency and predictable IOPS capabilities.

    The first in the series was the most recently tested Netapp AFF A300 storage array. This is middle-tier type storage array with several higher models above it. This specific A300 model is capable of supporting a minimal configuration of only a few drives to hundreds of drives per HA pair, and also capable of being clustered with multiple controller pairs for tens of PB's of disk capacity and hundreds of thousands of IOPS or higher.

    3 0
    0 3.3K

    Hi,

    My doubt is about the SQL Query in Caché:

    I don't want to take all results from the table and orgainze them manually, for example: I have a table with 50 records, but I only want to select 10 records, being from tenth until the twentieth and this without knowing their IDs.

    So, how can I do this, without losing performance, there is any way?

    1 8
    1 3.3K

    In this article, I would like to talk about the spec-first approach to REST API development.

    While traditional code-first REST API development goes like this:

    • Writing code
    • REST-enabling it
    • Documenting it (as a REST API)

    Spec-first follows the same steps but reverse. We start with a spec, also doubling as documentation, generate a boilerplate REST app from that and finally write some business logic.

    This is advantageous because:

    • You always have relevant and useful documentation for external or frontend developers who want to use your REST API
    • Specification created in OAS (Swagger) can be imported into a variety of tools allowing editing, client generation, API Management, Unit Testing and automation or simplification of many other tasks
    • Improved API architecture. In code-first approach, API is developed method by method so a developer can easily lose track of the overall API architecture, however with the spec-first developer is forced to interact with an API from the position if API consumer which usually helps with designing cleaner API architecture
    • Faster development - as all boilerplate code is automatically generated you won't have to write it, all that's left is developing business logic.
    • Faster feedback loops - consumers can get a view of the API immediately and they can easier offer suggestions simply by modifying the spec

    Let's develop our API in a spec-first approach!

    13 6
    10 3.2K

    One of the great availability and scaling features of Caché is Enterprise Cache Protocol (ECP). With consideration during application development distributed processing using ECP allows a scale out architecture for Caché applications. Application processing can scale to very high rates from a single application server to the processing power of up to 255 application servers with no application changes.

    9 6
    2 3.2K

    Created by Daniel Kutac, Sales Engineer, InterSystems

    Part 3. Appendix

    InterSystems IRIS OAUTH classes explained

    In the previous part of our series we have learned about configuring InterSystems IRIS to act as an OAUTH client as well as authorization and authentication server (by means of OpenID Connect). In this final part of our series we are going to describe classes implementing InterSystems IRIS OAuth 2.0 framework. We will also discuss use cases for selected methods of API classes.

    The API classes implementing OAuth 2.0 can be separated into three different groups according to their purpose. All classes are implemented in %SYS namespace. Some of them are public (via % package), some not and should not be called by developers directly.

    7 0
    3 3.3K