If you're interested in rollback, check this series of articles on deploying with GitLab.
- Log in to post comments
If you're interested in rollback, check this series of articles on deploying with GitLab.
Add a new Business Host. If you want to add several, call CallProductionUpdateAndSaveToClass method once at the end.
Include Ensemble
Class test.prod
{
Parameter DOMAIN = "Ensemble";
/// Add new Business Host.
/// productionName - name of production class
/// name - name of item you want to add
/// class - class name of the item you want to add
/// w $System.Status.GetErrorText(##class(test.prod).add())
ClassMethod add(productionName As %Dictionary.CacheClassname = "isc.py.test.Production", name As %String = "MyOperation", class As %Dictionary.CacheClassname = "isc.py.ens.Operation")
{
Set production = ##class(Ens.Config.Production).%OpenId(productionName)
Set item = ##class(Ens.Config.Item).%New()
Set item.PoolSize = 1
Set item.Name = name
Set item.ClassName = class
Set:item.Name="" item.Name = item.ClassName
Set item.Enabled = $$$YES
Set sc = production.Items.Insert(item)
Quit:$$$ISERR(sc) sc
Set sc = $$$AuditModifyProductionConfig(production.Name,item.Name,$$$Text("Item added to production using generator in " _ $classname()))
Quit:$$$ISERR(sc) sc
Set sc = ##class(EnsPortal.Template.prodConfigSCPage).CallProductionUpdateAndSaveToClass(production,"","SaveProduction")
Quit sc
}
}Can you expose your service as a REST?
Client-side JS is really not suited to working with web services.
@Yuri Marx solution (HandleCorsRequest) would work for REST.
You're correct except it's called a public web server (and not a proxy).
Here are some ideas for contestants:
Also, note that PythonGateway-Template is built upon the Advanced Analytics image, so you can use both IntegratedML and PythonGateway from the same docker image.
Very interesting.
One of our customers is running BPMN processes in Ensemble.
Would like to read about your approach.
%XML.TextReader probably.
%Net.HttpRequest is a correct way to go about it.
Give CSPSystem user access to the database with a REST broker.
Just use a service with EnsLib.File.InboundAdapter.
Do you want to send alerts on all exceptions?
If you have a centralized exception handler, you can write to messages.log from there and send alerts with Log Monitor (or use /alerts endpoint with external monitoring tool).
Use this Task to run Business Service via Task Manager.
Alternatively you can use Ensemble Scheduling.
How many files are there in total?
How many (on average) do you need to process per day?
Still interested.
Thanks for the info.
Does dedicated license server not support application licenses?
@Yuri Marx you can use "@Name" to mention someone.
@Sarvesh Raut is your server available over HTTPS (and call HTTPS endpoints)?
Please post the code of GatewayState method.
Sample Community Adapter for RabbitMQ.
Calling @Luca Ravazzolo
Please file a WRC ticket?
Check AbortMessage method here.
First query your messages to find the correct id set and after that call AbortMessage for each header.
The reason SQL did not work is that your messages are enqueued.
Not really.
Object ByRef means pointer itself may be changed (so we need to pass a pointer to a pointer), which is exactly what happens in this method.
.png)
A more correct qualifier would be Output as old object is always discarded.
But initializing stfp before the call would serve no purpose in this case.
I think contacting the WRC would be a better option at this stage.
1. Install public web server (Windows, Linux).
2. Connect it to InterSystems IRIS.
2. Enable HTTPS there. Easiest way is Let's Encrypt.
Remote path should be just:
set remotePath="/NEW.txt"That said, this error
Ошибка '-2147014836': A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
looks like you don't have the network connectivity. Have you tried to connect with Putty from the same server as Ensemble?
Docs specify that Connect should come before Authentication.
Try this code:
Try {
Set ssh = ##class(%Net.SSH.Session).%New()
Set sc = ssh.Connect(host)
Write:$$$ISERR(sc) "Connect:", $System.Status.GetErrorText(sc),!
Set sc = ssh.AuthenticateWithUsername(username, password)
Write:$$$ISERR(sc) "Auth: ", $System.Status.GetErrorText(sc), !
#dim sftp As %Net.SSH.SFTP
Set sc = ssh.OpenSFTP(.sftp)
Write:$$$ISERR(sc) "SFTP: ", $System.Status.GetErrorText(sc), !
Set sc = sftp.Dir("/", .contents, , $$$YES)
Write:$$$ISERR(sc) "Dir: ", $System.Status.GetErrorText(sc), !
Zwrite contents
//If 'sftp.Disconnect() Write "Failed to logout",!
} Catch ex {
Set sc = ex.AsStatus()
Write "Exception: ", ex.DisplayString(), !
}dc?
Is your app in that Namespace an Interoperability production?
Great reference!