Click or drag to resize
TopicaBasicService

[This is preliminary documentation and is subject to change.]

The TopicaBaisc web service contains web methods that can be used for evaluating TopicaBasic expressions. This service can be invoked from javascript and from Aspx code files.

Evaluate method

Evaluate a TOPICAbasic expression and return outcome as object.

C#
public object Evaluate(string config, Guid sessionGuid, string topicaBasic, string keyValuePairs)
EvaluateWithContext method

Evaluate a TOPICAbasic expression and return outcome as object.

C#
public object EvaluateWithContext(string config, Guid sessionGuid, string topicaBasic, string keyValuePairs, string orgUnit, string employee, string patient, string record, string parentRecord, string form)
Using TopicaBasicService web service - Evaluate method example (javascript)

C#
// Evaluate method example

...
<asp:ScriptManager runat="server" ID="ScriptManager">
    <Services>
        <asp:ServiceReference Path="~/Webservices/TopicaBasicService.asmx" />
    </Services>
</asp:ScriptManager>
...


<script type="text/javascript">

var configurationName = GetParameterFromQueryString('config');
var sessionGuid = GetParameterFromQueryString('sessionguid');
var topicaBasic = 'cstr(cint(param1)+cint(param2)/cdbl(param3)) + "\"';
var parameters = new Array();
parameters["param1"] = 7;
parameters["param2"] = 8;
parameters["param3"] = 1.7;

// 
// The javascript method Evaluate is part of the Topica framework.
// 
Evaluate(sessionGuid, topicaBasic, parameters, configurationName, resultCallback, errorCallback);

function resultCallback(result) {
    // Handle result
    alert("Expression evaluated successfully. Result : " + result);
}

function errorCallback(result) {
    // Handle error
    alert("Expression evaluation failed. Result : " + result);
}

</script>