Bonjour à tous,

Je cherche la syntaxe ou le moyen pour utiliser une classe créée dans le Namespace "BNA" (mon application) depuis le Namespace %SYS.

Voici le contexte :

Je dispose d'une application "BNA" contenue dans le NS "BNA", cette application met à disposition une fonctionnalité de création des utilisateurs. Cette fonctionnalité crée à la fois l'utilisateur dans une table de l'application et dans le système Iris.

2 5
0 45

Est-il prévu que LOAD DATA prenne en compte plusieurs formats de DATE/DATETIME avec, par exemple un paramètre de indiquant le format utilisé dans les données sources ?

exemple :

LOAD DATA .../...
USING
{
  "from": {
    "file": {
       "dateformat": "DD/MM/YYYY"
    }
  }
}
2 3
0 51
Question
· Oct 24, 2023
Stream dans un objet dynamique

Bonjour,

J'ai un petit soucis je souhaite renvoyé via une API REST des données IRIS mais j'ai une erreur sur le renvoi de données de type Stream.GlobalBinary, j'essaie de faire un "CopyFrom" via $METHOD mais je récupère un "INVALID OREF" :

2 3
1 44

Est-il possible d'utiliser Django avec InterSystems Iris, dont les classes sont implémentées en ObjectScript ?

Class EpErp.ARTICLES Extends (%Persistent, %JSON.Adaptor, %XML.Adaptor) [ ClassType = persistent, SqlTableName = ARTICLES ]

{

Parameter IDPROPERTY = "IDARTICLES";

Property IDARTICLES As %BigInt [ SqlColumnNumber = 2, SqlFieldName = IDARTICLES ];

Property dhDateCreation As %TimeStamp [ SqlColumnNumber = 3, SqlFieldName = dhDateCreation ];

Property sCode As %String(MAXLEN = 30) [ SqlColumnNumber = 4, SqlFieldName = sCode ];

1 7
0 71
import os

# Récupérer les variables d'environnement
db_host = os.getenv('DB_HOST')
db_port = os.getenv('DB_PORT')
db_namespace = os.getenv('DB_NAMESPACE')
db_username = os.getenv('DB_USERNAME')
db_password = os.getenv('DB_PASSWORD')

# Créer une connexion à la base de données
conn = irisnative.createConnection(db_host, db_port, db_namespace, db_username, db_password)

# Créer une instance IRIS à partir de cette connexion
iris_native = irisnative.createIris(conn)

status = iris_native.classMethodValue('%SYSTEM.OBJ', 'Load', 'Production.cls', 'ck')

if status == 1:
1 4
1 52

Je recherche dans DBeaver un moyen efficace permettant de filtrer les tables systèmes (ex: appartenant à un schéma commençant par "%").

En utilisant un utilisateur possédant le rôle %All, DBeaver nous affiche une longue liste de schémas systèmes, qui nous oblige à descendre la liste avant d'accéder aux tables utilisateurs.

En créant un utilisateur dans IRIS avec des droits restreints permet de réduire cette liste, mais on perd l'intérêt du rôle %All.

1 3
0 105

Bonjour,

Je souhaite faire un appel synchrone d'un process. En entrée je reçois un flux json qui me déclenche mon business process mais tant que ce flux n'est pas analysé je ne souhaite pas récupérer un autre flux json tant que le premier n'est pas terminé.

Pour cela j'ai crée un business Service faisant un appel au targetconfigname, or le SendRequestSync ne fonctionne pas, celui ci a le même comportement que le SendRequestAsync :

1 12
2 57
Question
· Oct 17, 2023
Dézipper avec objectScript

Bonjour,

Je cherche à dézipper un fichier zip que je récupère via HTTP avec ObjectScript.

Je récupère de ma requête HTTP un %Stream.GlobalBinary, et via mon BusinessOperation, je crée le fichier Zip.

J'aimerais savoir s'il y a une méthode pour dézipper directement le %Stream.GlobalBinary et avoir le dossier dézipper en sortie ?

Ou sinon quelle méthode permet de dézipper un fichier Zip en ObjectScript ?

Merci d'avance pour votre aide

1 3
0 39
Question
· Jan 17
Requête LDAP

Bonjour,

je dois faire une requête LDAP pour récupérer des infos sur une équipe spécifique d'employés. J'ai un service custom qui instancie un message de type EnsLib.LDAP.Message.Search avec un filtre correspondant à la recherche et qui le redirige vers une opération de type EnsLib.LDAP.Operation.Standard. Je ne récupérais pas d'erreur mais pas de résultat non plus. J'ai donc créé une opération qui hérite de EnsLib.LDAP.Operation.Standard et j'ai surchargé la méthode pour récupérer qqch. Je récupère ceci :

0 3
1 59

Bonjour à tous,

Nous développons une application avec FrontEnd (angular) et BackEnd (objectscript Iris), nous utilisons l'identification intégrée grâce à la route /login fournie par %CSP.REST. Nous n'utilisons pas IAM, nous attaquons l'API directement.

Nous avons besoin de générer un traitement suite à un login qu'il soit réussi ou non (enregistrement dans une log applicative).

0 0
0 14
Question
· Fév 13
Sécurité du login

Bonjour à tous,

Nous développons une application avec FrontEnd (angular) et BackEnd (objectscript Iris), nous utilisons l'identification intégrée grâce à la route /login fournie par %CSP.REST. Nous n'utilisons pas IAM, nous attaquons l'API directement.

Pour éviter les attaques automatisées, nous avons mis une temporisation sur le login (1s entre chaque tentative). Cela protège donc l'API dans le cadre de son utilisation via l'application.

0 5
0 34

Bonjour,

Je rencontre une situation embarassante avec mon environnement de développement InterSystems IRIS et Visual Studio Code.
Je n'arrive pas à pousser un fichier modifié à dessin, (hors push automatique lors du save) et si quelqu'un à la réponse mille merci.

Contexte :
J'ai une instance IRIS en cours d'exécution sur un serveur.
Mon poste client utilise Visual Studio Code avec l'extension InterSystems ObjectScript.
Je me suis volontairement abstenu d'utiliser Git pour simplifier la problématique.

0 2
0 18
Question
· Nov 16, 2023
Vue SQL vers fichier CSV

Bonjour,

Je dois récupérer quotidiennement la totalité des données d'une vue SQL externe pour générer un fichier csv unique. J'étais partie sur l'utilisation d'un service de type EnsLib.SQL.Service.GenericService mais cela ne me convient pas puisque chaque ligne de résultat de la requête SQL génère un message et une trace différents. Dois-je passer par une table de lien ? Créer un service de toute pièce en implémentant le OnProcessInput() ? Autre ?

Merci par avance pour votre aide.

Bien cordialement,

0 2
1 59
Question
· Déc 11, 2023
Accès refusé

Bonjour,

Je suis en train de faire un test avec django sur notre base de données. Le but étant de créer une API pour voir la réactivité de celle-ci.

J'ai créé le projet sans problème, j'ai réussi à créer les 16 000 lignes de models avec inspect_db. Tout se passait bien jusqu'au moment où j'ai voulu testé mon projet, 'Accès refusé'.

De ce que j'ai pu voir, Il n'y aurait pas d'erreur de code, car les seules erreurs retournées sont les suivantes.

0 3
0 42
Question
· Sept 18, 2023
Appel d'une API REST

Bonjour à tous,

Pour un interop je dois récupérer en entrée un json d'une API REST. J'essaie donc de passer le %Net.HttpRequest or j'obtiens cette erreur :

J'ai mis cette classe en entrée du business process et j'ai un business service qui appel à intervalle régulier ce business process :

0 1
1 47

Bonjour,

Je cherche à faire un systeme de pagination en SQL et je suis tombé sur un article ici https://community.intersystems.com/post/scrollable-resultset-pagination-...

J'ai essayé d'appliquer la solution, mais j'ai un bug assez particulier et je me demandais si quelqu'un pouvait m'éclairer.
Sur mon environnement de dev local aucun soucis, par contre pour la même requete en environnement de preprod j'ai cette erreur:

0 2
0 30

Pour suivre les bonnes pratiques, j'utilise maintenant VSCode en remplacement de studio, toutefois cela me pose quelques problèmes dans la remontée des erreurs de compilation.

Dans les copies d'écran suivantes, j'utilise par erreur un paramètre inexistant : ..#MessageFinessExisting (en fait le paramètre correct est ..#MessageCentreFinessExisting).

0 2
0 25