Syntax
Public Function UpdatePosition (AccountID As Long, TicketID As Integer, Lot As Double, Price As Double, BuySell As Integer, Interest As Double, Optional Note As String = "", Optional UserDefinedDate As String = "") As String
Description
The UpdatePosition operation is used to edit the given position number which belongs to the given account number.
Request Parameters
Name |
Description |
Required |
AccountID |
- Account number to update the opened position for
- Type : Long
- Default : None
- Constraints : Must be valid account Id and accessible by logged in dealer
|
Yes
|
TicketID |
- The opened position number to be updated.
- Type : Integer.
- Default : None.
- Constraints : Must be valid account. Id and accessible by logged in dealer
|
Yes |
Lot |
- new Lots value
- Type : Double
- Default : none
|
Yes |
Price |
- New open position price
- Type : Double
- Default : None
|
Yes |
BuySell |
- The new position type
- Type : Integer
- Default : none
- Can be one of the following:
1 : for buy type -1 : for sell type
|
Yes |
Interest
|
- Updated interest value
- Type : Double
- Default : None
|
Yes |
Note |
- Custom String used to mark the updated position.
- Type : String
- Default : “”
|
No |
UserDefinedDate |
- The Updated Trade open time
- Type : String
- Default : “” which means now
- Constraints : must be in format (“DD/MM/yyyy HH:mm:ss”)
|
No |
Response Elements
Name |
Description |
Result |
The operation return the updated position ticket number in case success , otherwise an explicit error code is returned
|
Sample
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>UpdatePosition</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<script >
$(document).ready(function () {
var urlStr = "http://173.249.35.43/webtrader/webservice.svc";
jQuery.support.cors = true;
$("#progress").ajaxStart(function () { $(this).css("display", "block"); });
$("#progress").ajaxComplete(function () { $(this).css("display", "none"); });
$("#resultAction").ajaxError(function (result) { $(this).html('An error occured'); });
function onSuccessResultOrder(dataResult) {
var result = eval(dataResult);
var rst = ""
//if result[6]=1 , then Open Position has been done
if (result > 0) {
rst += "The position has been updated successfully!: </br>" ;
rst += "Ticket ID:" + result ;
$("#resultAction").html(rst);
}
//if result[6]=2 , then pending order has been done
else {
var rst = "http://www.hybrid-solutions.com/support/index.php?/Knowledgebase/Article/View/1964"
$("#resultAction").html("Error Code : " + result + "<br/>" + " for more details see the follwing link: " + rst);
}
}
function onSuccessResult(response) {
response = eval('(' + response + ')')
if (response.UserId == -1 || response.UserId == -207) {
$("#resultData").html("Invalid username or password");
}
else if (response.UserId == -231) {
$("#resultData").html("You must have at least one account");
}
else if (response == null || response == "" || response.UserId < 0) {
$("#resultData").html("Error while login.Please try later");
}
else {
$("#resultData").html("SuccessResult ... UserId is :" + response.UserId);
}
}
function onErrorResult(result) {
alert('Service call faild : ' + result.status + ' ' + result.statusText);
}
$("#btnLogin").click(function () {
$.getJSON(urlStr + "/BackofficeLogin?username=" + $("#txtusername").val() + "&password=" + $("#txtpassword").val() + "&callback=?" , onSuccessResult);
});
$("#btnAction").click(function () {
$.getJSON(urlStr + "/UpdatePosition?AccountID=" + $("#txtAccountID").val() + "&TicketID=" + $("#txtTicketID").val() + "&Lot=" + $("#txtLot").val() + "&Price=" + $("#txtPrice").val() + "&BuySell=" + $("#txtBuySell").val() + "&Interest=" + $("#txtInterest").val() + "&Note=" + $("#txtNote").val() + "&UserDefinedDate=" + $("#txtDefinedDate").val() + "&callback=?", onSuccessResultOrder);
});
});
</script>
<body>
<table border="1px">
<tbody>
<tr>
<td>
Username: <input type="text" id="txtusername" value=""/>
password: <input type="text" id="txtpassword" value=""/>
<button id="btnLogin"> Login </button>
</td>
</tr>
<tr><td>
AccountID : <input type="text" id="txtAccountID" value ="" />
TicketID : <input type="text" id="txtTicketID" value ="" />
Lot : <input type="text" id="txtLot" value ="" />
Price :<input type="text" id="txtPrice" value ="" /></td>
</tr>
<tr>
<td>BuySell :<input type="text" id="txtBuySell" value ="" />
Interest :<input type="text" id="txtInterest" value ="" />
Note :<input type="text" id="txtNote" value ="" />
UserDefinedDate :<input type="text" id="txtDefinedDate" value ="" />
</tr>
<tr>
<td><button id="btnAction"> Update Position </button></td>
</tr>
</tbody>
</table>
<div id="resultData"> </div>
<div id="resultAction"> </div>
<div style="display:none" id="progress">Loading ... </div>
</body>
</html>
See Also
VertexFX Backoffice WCF Service Index
|