Using NoahWebIntegrationGUIStart



It is no longer necessary to configure the Noah client service to use the NoahWebIntegrationGUIStart.dll via NoahConfig.exe.  Since Noah 4.5, the NoahWebIntegrationGUIStart.dll is part of the Noah installation. If the client is using Noah 4.4, it is necessary to copy the dll to all Noah client PCs, that will use this facility. HIMSA has created a program “NoahClientPluginConfig” which can be run and will copy and will register the dll with Noah (available in the SDK)



If you wish to register the dll manually, this is also doable:

Copy the plugin NoahWebIntegrationGUIStart.dll – that can be downloaded from the himsa.com website to the PC.  Then from within the Noah 4 installation folder, start a command prompt to register the dll. NoahConfig.exe enables this configuration: Start a command prompt inside the directory where Noah 4 is installed and type NoahConfig –rncedll = “The full path to the plugin dll surrounded by double quotes” as shown below:



Please observe that the computer must be restarted before this change takes effect.







Please ensure that you are running Noah 4.4 or later, when the configuration of Noah client is made.  Then please restart the PC (or Noah services).



The Himsa plugin is a webservice that defines the following interface:

[WebInvoke(Method = "POST", UriTemplate = "patient/firstlastname",RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]

[OperationContract]

PatientsBespid GetPatientByFirstLastName(string firstname, string lastname);



[WebGet(UriTemplate = "noah4/patient({bespid})")]

[OperationContract]

Patient SetPatientByBESPID(string bespid);



[WebGet(UriTemplate = "noah4/bespid({bespid})")]

[OperationContract]

Patient SetPatientByBESPIDAandStartsGUI(string bespid);



[WebGet(UriTemplate = "noah4", RequestFormat = WebMessageFormat.Json, ResponseFormat

= WebMessageFormat.Json)]

[OperationContract]

StartResult StartsGUI();





The sample code below shows how to call a rest based web service from C#:

private void bntStartNoah_Click(object sender, EventArgs e)

{

//Get method



WebRequest req =

WebRequest.Create(@"http://localhost:8080/NoahWebIntegrationGUIStart/noah4");



req.Method = "GET";



HttpWebResponse resp = req.GetResponse() as HttpWebResponse;

if (resp.StatusCode == HttpStatusCode.OK)

{

using (Stream respStream = resp.GetResponseStream())

{

StreamReader reader = new StreamReader(respStream, Encoding.UTF8);

//Console.WriteLine(reader.ReadToEnd());

LogDataFromNoah("Start Noah", "", resp.StatusCode.ToString(), 0, reader.ReadToEnd());

}

}

else

{

//Console.WriteLine(string.Format("Status Code: {0}, Status

  Description: {1}", resp.StatusCode, resp.StatusDescription));

LogDataFromNoah("Start Noah", "", resp.StatusCode.ToString(), 0,

string.Format("Status Code: {0}, Status Description: {1}", resp.StatusCode,

resp.StatusDescription));

}



}