Biographie de l'utilisateur
404 bio introuvable
Membre depuis le Sept 18
Publications:
Réponses:
Bonjour @Lorenzo Scalese,
Merci pour votre réponse, en fait je n'ai pas de d'évènement déclencheur. C'est un appel permanent à une API qui me permet de récupérer un flux json et qui va ensuite déclencher le business process.
Du coup dans la méthode OnProcessInput de Ens.BusinessService, je fais un appel à l'API, je stock le flux json dans un stream que je passe ensuite au SendRequestSync afin d'éxécuter le business process et j'attends en réponse le dernier message du process avant de refaire un appel à l'API et c'est la que cela ne fonctionne pas car je récupère plusieurs fois ce flux json.
Bonjour @Irène Mykhailova ,
Très bien je vous remercie, voici donc l'extrait de code qui me pose soucis.
Method OnProcessInput(pInput As %RegisteredObject, Output pResponse As exparf.msg.dataXML) As %Status
{
set tSC = $$$OK
s tHttpRequest = ##class(%Net.HttpRequest).%New()
set pContainer = ##class(Ens.StreamContainer).%New()
s tHttpRequest.Server = ..Server
s tHttpRequest.ContentType ="application/json"
// set pContainer.Stream = tHttpRequest.HttpResponse.Data
// do pContainer.CopyFrom(tHttpRequest.HttpResponse.Data)
Set jsonObject = [].%FromJSON(tHttpRequest.HttpResponse.Data)
Do ##class(%JSON.Formatter).%New().Format(jsonObject)
set pContainer.Stream = tHttpRequest.HttpResponse.Data
for iTarget=1:1:$L(..TargetConfigNames, ",") {
set tOneTarget=$ZStrip($P(..TargetConfigNames,",",iTarget),"<>W") Continue:""=tOneTarget
$$$TRACE("The target '"_tOneTarget_"' will be called "_$SELECT(..sync=1:"synchronously",..sync=0:"synchronously"))
set tSC1=..SendRequestSync(tOneTarget,pContainer,.pResponse) Set:$$$ISERR(tSC1) tSC=$$$ADDSC(tSC,tSC1)
}
return tSC
}
Abonnés:
Abonnements:
Julia ne s'est encore abonné à personne.
Badges Global Masters:
Julia n'a encore aucun badge Global Masters.
Bonjour @Sylvain Guilbaud
Merci pour cet exemple complet mais je me retrouve avec une erreur "ErrBusinessDispatchNameNotRegistered"