Check out PythonGateway project.
- Log in to post comments
Check out PythonGateway project.
Done. Check isc.xades package.
It sets object id directly instead of setting oref.
Consider these 2 classes:
Class Person Extents %Persistent {
Property EmployedAt As Company;
}
Class Company Extends %Persistent {
}Usually you assign Company to Person this way:
set person = ##class(Person).%New()
set companyId = 123
set company = ##class(Company).%OpenId(companyId)
set person.EmployedAt = companyBut with PropertySetObjectId you can expedite things
set person = ##class(Person).%New()
set companyId = 123
do person.EmployedAtSetObjectId(companyId)
The main advantage is that company object doesn't have to be opened.
No.
Yes
That's explicit if you code it.
By default PropertyGet() method exists, but hidden - it's an implicit getter.
Getters defined via SQLComputeCode work for both SQL and objects iirc.
Are you talking about implicit or explicit getters?
Please elaborate.
No, this approach would go to the global.
Is it Xades?
I've done Xades signing, but not with RSA algorithms. Still, might be useful for you. Drop me your GitHub username if you need the code.
To add Xades support I used a reference implementation in .Net - read the Xades docs on how it's supposed to work, then decompiled .Net libraries to see how it all actually works, and recreated it in ObjectScript.
There's an autogenerated method GetStored for each property which wraps direct global access:
write ##class(Ideal.StoredData).StringDataGetStored(Id)You can read more about autogenerated methods in this article.
This is possible:
Class MyClass As %Persistent {
Method SaveToNs(Namespace = {$namespace}) As %Status
{
new $namespace = ""
set $namespace = Namespace
quit:'##class(%Dictionary.CompiledClass).%ExistsId(..%ClassName(1)) $$$ERROR($$$GeneralError, "Class is undefined in: " _ Namespace)
set sc = ..%Save()
quit sc
}
}What's the use case?
You can't pass object via JOB command.
Are you sure about:
Property PatientId As %Stream.FileCharacter;
Property PatientName As %Stream.FileCharacter;Both of these fields are less than 3 641 144 characters in size, so
Property PatientId As %VarString;
Property PatientName As %VarString;Would probably work.
You can add ToStream() method to your class to provide serialization, if you need to (Or just add JSON or XML adaptors to generate XML or JSON (de)serializations automatically).
What do you mean not getting called?
Is the child process created (check with $zchild/$test)?
Does it start work (set some global in the beginning)?
EnableNamespace creates new DBs?
Not exactly what you asked for, but MONLBL utility has a web interface.
FOR CE ONLY.
I recommend creating non-production namespace with one database and calling
set sc = ##class(%EnsembleMgr).EnableNamespace(namespace, 1)
You mean these categories?

Fell free to use them as extensively as you want. There's absolutely no effect on performance.
Here's callout library for Windows and Linux to set environment variables for a current process.
Set any environment variable you want.
Here's callout library for Windows and Linux to set environment variables for a current process.
Thank you, Stuart!
I need to run Ensemble Service with special environment variables set, so it's current process for me.
You can use Apache POI library (or call PS, but cursory googling shows that Word is a requirement via COM objects) for example to get this information. As for how explorer gets doc info - I have honestly no idea.
It's not a file property. Docx is just a zip archive, inside it is docProps/app.xml file. Here's how it looks like:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Properties>
<TotalTime>4</TotalTime>
<Pages>8</Pages>
<Words>1882</Words>
<Characters>10731</Characters>
<Application>Microsoft Office Word</Application>
<Lines>89</Lines>
<Paragraphs>25</Paragraphs>
<CharactersWithSpaces>12588</CharactersWithSpaces>
</Properties>Explorer reads the app.xml file and gets information from it.
You can do the same I suppose, here's an article on that.
In your case you don't want to unpack the whole docx, check this unzip implementation for ObjectScript.
Fastest (and in non-prod environments easiest) way to save every global would be:
Docker for windows allows switching between Linux containers and native Windows containers; if you want to use Linux containers (i.e. IRIS), make sure you enabled that mode
See this section in the documentation.
What's VB got to do with this?