Using the NOAH Web Service



The Noah 4 Web service shows a number of methods that can be accessed through the Web service interface.

The methods handle patient import, patient update, backend initiated transmissions (BesQueries), and web service control.

[ServiceContract(Namespace = "http://himsa.org")]

public interface INoahBusinessIntegrationWebInterface {

[OperationContract]

void ImportPatients(string NoahLocation, string BusinessSystemUserId, string data);



[OperationContract]

void PatientUpdate(string OldBusinessSystemPatientId, string BusinessSystemPatientId);



[OperationContract]

void ImportConfigurationSettings(ConfigurationType cfgType, string data);



          [OperationContract]

          string DoQuery(string BusinessSystemUserId, string data);



          [OperationContract]

          bool CancelJob(string jobid);



          [OperationContract]

          void HaltTransmitter(bool bHalt);



          [OperationContract]

     string GetImageOfData(int datatypecode, int dataformatcode, string publicdata, int height, int

width, int dpi, string imagetype, int regioncode, int languagecode, Property[]

additionalProperties);



          // WSI Conformance Level 2 methods

          [OperationContract]

          int RequestWSIConformanceLevel(int requestlevel);



          [OperationContract]

          bool Resend(string jobid);



          [OperationContract]

          JobStatus[] Status(string jobid);

}



[DataContract]

public class Property {

     [DataMember]

     public string Name;

     [DataMember]

     public string Value;

}

[DataContract]

public class JobStatus {

     [DataMember]

     public string jobid;

     [DataMember] 

     public int pending;

     [DataMember] 

     public int queued;

}



void ImportPatients(string NoahLocation, string BusinessSystemUserId, string data)

Imports the Patient data to the Noah System database. This is done either directly or through the patient resolving screens in Noah, depending on the patient whether it’s new or updated.



void PatientUpdate(string OldBusinessSystemPatientId, string BusinessSystemPatientId)

Changes the BusinessSystemPatientID of the patient identified by OldBusinessSystemPatientID. The new BusinessSystemPatientID must be unique in the Noah Database.

void ImportConfigurationSettings(ConfigurationType cfgType, string data) string DoQuery(string BusinessSystemUserId, string data)

Starts a query job on the Noah Server. The job is executed asynchrony. The data of the query is returned via DataFromNoah() to the back end system.

Parameters:

  • String BusinessSystemUserID is returned in the DataFromNoah() BusinessSystemUserID

  • String data is the query xml, see chapter BESQuery for more

Returns an id of the job, executing the query.



bool CancelJob(string jobid)

Cancels the query job identified by jobid (the returned value from DoQuery()) Parameters:

  • String jobid, the identification of the job to be canceled.

Returns true is the job was found and canceled else



void HaltTransmitter(bool bHalt)

Enables/Disables transmissions (DoQuery and automatic data transmissions) from the NoahServer. Parameters: 

  • Bool bHalt, true stops the transmission, false enables transmissions.



string GetImageOfData(int datatypecode, int dataformatcode, string publicdata, ....)

This is a new method on the INoahBusinessIntegrationWebInterface, which has been implemented with Noah 4.3.