Biographie de l'utilisateur
404 bio introuvable
Membre depuis le Déc 21, 2017
Publications:

Bonsoir Julia,

Si vous renvoyez toujours le json avec la liste tPrinter complète, le plus simple serait de faire un clear de la liste et la recharger, ex : 

 

ClassMethod TestUpdate() As %Status
{
	Set tSC = $$$OK
	
	Set json = {
		"NomPoste":"Poste",
		"tPrinter":
		[
			{
				"NomService":"Petite",
				"NomImprimante":"EPFR_12"
			},
			{
				"NomService":"Grande",
				"NomImprimante":"modif"
			}
		]
	}
	
	Set id = 1 
	
	Set tSC = ..UpdatePoste(id, json)
		
	Return tSC
}



ClassMethod UpdatePoste(id As %Integer, json As %DynamicObject) As %Status
{
	Set poste = ##class(Epc.conf.poste).%OpenId(id, , .tSC)
	
	If $$$ISERR(tSC) Return tSC
	
	Do poste.tPrinter.Clear() ; supprime le contenu actuel de la liste tPrinter
	
	Do poste.%JSONImport(json)
	
	Set tSC = poste.%Save()
		
	Return tSC
}

Est-ce que cela peut vous aider ?

Bonjour @Pierre LaFay , je profite de cet article pour partagé un problème que nous avons tout récemment rencontré.  le paramètre MAXLEN comme ci-dessous: 

Property PropertyName As %String (MAXLEN = "");

signifie "pas de limite", c'est à dire la longueur max d'une chaine.

Via le JDBC, ce MAXLEN="" ne semble pas interprété comme en ObjectScript, vous pouvez donc aussi avoir des données tronquées.  Dans ce cas d'utilisation, il vaut mieux utiliser un MAXLEN avec une grande valeur (ex : MAXLEN = 3000000) que "".  Il s'agit probablement que d'un petit bug au niveau du driver, j'ouvrirai peut être un WRC à ce sujet prochainement.

Merci pour cette notification @Adeline Icard ,

Je viens juste de finir une série de mise à jour en version 2023.1.3 😅

Je ne sais pas dans quelle mesure nous pourrions être exposé à cette memory leak et vais conseiller d'attendre une version 2023.1.4 pour les systèmes de production dans l'attente d'en savoir plus.

Edit: Comme c'est limité à AIX, pas d'impact de mon coté.

Applications Open Exchange:
Certifications et badges Credly:
Badges Global Masters:
Abonnements: