Hi
I have created a web page using Microsoft WebMatrix.
I am having a problem passing a value to a variable.
I would like to pass to the company variable.
From my function RequestInformation() I would like to do something like company = result["AbEntry"]["Data"][
"0"]["Full
Name"]
Is this possible or is there another way I can do this?
@using WebMatrix.Data;
@{
Page.Title = "Sage info";
var company = "";
var db = Database.Open("Sage200Demo
");
var selectQueryString = "SELECT * FROM SLCustomerAccount where CustomerAccountNumber = '" + company + "'";
}
<!DOCTYPE html>
<html>
<head>
<title>Sage info</title>
<style>
table, th, td {
border: solid 1px #bbbbbb;
border-collapse: collapse;
padding: 2px;
}
</style>
</head>
<body>
<script type="text/javascript" src="../../ClientScript/jq
uery/jquer
y.js"></sc
ript>
<script type="text/javascript" src="../../ClientScript/Ma
xPage/maxi
mizer.Even
ts.js"></s
cript>
<script type="text/javascript" src="../../ClientScript/jq
uery/jquer
y.js"></sc
ript>
<script type="text/javascript" src="../../ClientScript/Ma
xPage/maxi
mizer.Foll
owingTabMa
nager.js">
</script>
<script type="text/javascript">
var tab = new maximizer.FollowingTab();
//Subscribe to parentRecordChange event and define event handler
tab.on("parentRecordChange
", function (event) {
//Get the current entry key
var entryKey = event.data.key;
localStorage['SelectedKey'
] = event.data.key;
RequestInformation()
//document.getElementById(
'myField')
.value = entryKey;
//Update the text in the tab
alert("The record has changed. The new record key is: " +
event.data.key);
//Dismiss the loading indicator
parent.$page.FollowingWind
ow.ontablo
adend();
});
//Announce to the Following Tab Manager that the tab is ready
tab.start();
function getURLParameter(parameterN
ame) {
var queryString = window.location.search.sub
string(1);
var urlParameters = queryString.split('&');
for (var i = 0; i < urlParameters.length; i++) {
var param = urlParameters[i].split('='
);
if (param[0] == parameterName) {
return decodeURIComponent(param[1
]);
}
}
}
urlMaximizerWebDataAPI = "
http://" + window.location.host + "/maximizerwebdata/Data.sv
c/json/";
function callMaximizerApi(baseUrl, methodName, parameters) {
//creating the return variable
var returnValue = '';
//creating the type of the request
var httpRequest = new XMLHttpRequest();
try {
//Openning the request using the provided variables
httpRequest.open('POST', urlMaximizerWebDataAPI + methodName,
false);
httpRequest.onreadystatech
ange = function () {
if (httpRequest.readyState == 4 && httpRequest.status == 200) {
//if is everything OK with the server's answer then set the result value returnValue
returnValue = JSON.parse(httpRequest.res
ponseText)
;
}
};
httpRequest.setRequestHead
er('Conten
t-Type', 'text/plain');
httpRequest.send(JSON.stri
ngify(para
meters));
return returnValue;
}
catch (err) {
alert(err);
}
};
function RequestInformation() {
//separating the string
var maxWebDataURL = getURLParameter("WebAPIURL
");
var getTokenURL = getURLParameter("GetTokenU
RL");
var identityToken = getURLParameter("IdentityT
oken");
//asking the token based on the identityToken
$.ajax({
url: getTokenURL,
type: 'POST',
dataType: 'json',
contentType: 'application/json;charset=
utf-8',
cache: false,
async: true,
data: JSON.stringify({ 'IdentityToken': identityToken }),
success: function (resultJSON) {
localStorage['CurrentUserK
ey'] = resultJSON.d;
},
error: function (resultJson) {
}
});
//after received the token lets build the request for READ the AbEntry information
var currentUserToken = localStorage['CurrentUserK
ey'];
var informationRequest = {
"Token": currentUserToken,
"AbEntry":{
"Scope":{
"Fields":{
"FullName": 1,
"Phone":1,
"Email": 1
}
},
"Criteria": {
"SearchQuery": {
"$EQ":{
"Key": localStorage['SelectedKey'
]
}
}
}
}
};
//after build the form, lets call the api and save the result in a variable
var result = callMaximizerApi(urlMaximi
zerWebData
API, "AbEntryRead", informationRequest);
alert(result["AbEntry"]["D
ata"]["0"]
["FullName
"]);
}
</script>
<h1>sage info</h1>
<table>
<thead>
<tr>
<th>AccountBalance</th>
</tr>
</thead>
<tbody>
@foreach (var row in db.Query(selectQueryString
))
{
<tr>
<td>@row.AccountBalance</t
d>
</tr>
}
</tbody>
</table>
<script>
document.write(company);
</script>
</body>
</html>