Syntax
Public Function NetOpenPositionsReport(ClientID As Long, AccountType As Integer, SymbolID As Integer, PositionType As Integer, Optional ByVal isPaging As Boolean = False) As String
Description
The NetOpenPositionsReport operation is used to get net open position report that shows the net open position details for all accounts under the given client number.
Request Parameters
Name |
Description |
Required |
ClientID |
- Client identifier to get net open position report for
- Type : Long
- Default : None
- Constraints : Must be valid client Id and accessible by logged in dealer
|
Yes
|
AccountType |
- Type of account that want to get account status report for
- Type : Integer
- Default : none
- Can be one of the following :
1 : Normal Account 2 : Coverage Account
|
Yes |
SymbolID |
- The report will show the transaction for this symbol ID
- Type : Integer
- Default : None
- 0 : means for all Symbol
|
Yes |
PositionType |
- The report will shows the net open position details for this type
- Type : Integer
- Default : None
- Can be one of the following
0 : all 1 : Buy type -1 : sell type
|
Yes
|
isPaging |
- Boolean value which indicate that you are calling NetOpenPositionsReport to get remaining records
- This is useful if you are calling a large amount of data to split the returned data as 3000 rows for each response
- Type : Boolean
- Default : False
- Constraints : on first call must be false and next calls true
|
Conditional if the first ClientID in NetOpenPositionsReport List = -1200
|
Response Elements
Name |
Description |
Result |
The operation returns list of type NetPositionReport, otherwise an explicit error code is returned if ClientID is less than 0 .
The Following are the NetPositionReport data member
- ClientID : Client Identifier
- AccountID : Account Identifier
- BuySell: Balance value
- Amount: 1 : means buy type
-1 : means Sell Type
- SymbolID: net open position Symbol Id
- AvgPrice: average open price
- SymbolName : net open position symbol name
|
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>NetOpenPositionsReport</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 onSuccessResultt(dataResult) {
var result = eval(dataResult);
var rst = ""
if (result[0].ClientID > 0) {
for (var i = 0; i < result.length; i++) {
rst += "AccountID : " + result[i].AccountId + "<br/>"
rst += "BuySell : " + result[i].BuySell + "<br/>"
rst += "Amount : " + result[i].Amount + "<br/>"
rst += "SymbolID : " + result[i].SymbolID + "<br/>"
rst += "SymbolName : " + result[i].SymbolName + "<br/>"
rst += "clientID : " + result[i].ClientID + "<br/>"
rst += "--------------------------------------------------" + "<br/>"
$("#resultAction").html(rst)
}
}
else {
$("#resultAction").html("Error Code : " + result[0].ClientID + "<br/>" );
}
}
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 + "/NetOpenPositionsReport?ClientID="+ $("#txtClientID").val() + "&AccountType=" + $("#txtAccountType").val() + "&SymbolID=" + $("#txtSymbolID").val() + "&PositionType=" + $("#txtPositionType").val()+ "&isPaging=" + $("#txtIsPaging").val() + "&callback=?", onSuccessResultt);
});
});
</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>
ClientID : <input type="text" id="txtClientID" value ="" />
AccountType : <input type="text" id="txtAccountType" value=""/>
SymbolID : <input type="text" id="txtSymbolID" value="0" />
</td>
</tr>
<tr>
<td>
PositionType : <input type="text" id="txtPositionType" value="0"/>
IsPaging : <input type="text" id="txtIsPaging" value="FALSE"/>
<button id="btnAction"> NetOpenPositionsReport </button>
</td>
</tr>
</tbody>
</table>
<div id="resultData"> </div>
<div id="resultAction"> </div>
</body>
</html>
See Also
VertexFX Backoffice WCF Service Index
|