2017-10-03 5 views
0

J'ai besoin d'un appel dans Mirth Connect pour prendre le nombre de paramètres (max 10) du message HL7 entrant et appeler une procédure stockée pour récupérer les données de la base de données SQL . Actuellement, cette procédure stockée est appelée pour chaque message.Comment éviter l'appel de procédure stockée à la base de données SQL de Mirth Connet

Je cherche la meilleure option pour remplacer cet appel de base de données.

+1

Quel est le logiciel de base de données? –

+0

J'ai des données de mappage présentes dans la base de données SQL qui est actuellement récupérée avec l'appel de procédure stockée. –

+0

Essayer de comprendre la question: Vous voulez dire que chaque fois que vous recevez un message en liesse, l'appel db arrive? .. Et vous ne voulez pas que cela se produise? Si oui, quand voulez-vous que l'appel de DB se produise? –

Répondre

0

Il semble que vous souhaitiez retravailler la fonction de votre procédure stockée dans le canal Mirth lui-même. Vous pouvez utiliser le pilote mysql jdbc pour exécuter des requêtes et utiliser javascript pour gérer les résultats et effectuer les mêmes tâches que votre procédure stockée. Espérons que cela aide

var dbConn = DatabaseConnectionFactory.createDatabaseConnection ('com.mysql.jdbc.Driver','jdbc:mysql://localhost:3306/YOURDB','username','password'); 
var query = "SELECT PatientID FROM YOURTABLENAME " + "WHERE Last = '" + $('lname')+ "'"; 
var result = dbConn.executeCachedQuery(query); 

result.next(); 
var patientID = result.getString(1) 
//logger.info(result.getString(1)); 
result.close(); 

var query = "INSERT INTO YOURTABLENAME (id, name) VALUES ('"+patientID+"','"+$('lname')+"')"; 
var result = dbConn.executeUpdate(query); 

dbConn.close();