Получение данных через http при нажатии на кнопку в карточке

Получение данных через http при нажатии на кнопку в карточке

Получение данных через http при нажатии на кнопку в карточке.

Таблица:
image001.png

Кнопка:
image003.png

image005.png

В редакторе сценария карточки имеем следующий код:
public override void OnInit()
{
  var action = _card.GetAction("HTTP");
action.Execute += HTTP_Execute; 

}
 
void HTTP_Execute(object sender, EventArgs e) 

  
{
int resultCode;
string resultData;
var Row = _card.CurrentRow;
string url="http://192.168.99.90:10080/data/getdata/?ProviderName=WorkProvider_Table_5019852410&Param1=5...;
if (Cx.Client.HTTPUtils.HTTPUtils.ExecHTTPQuery(
url, 
"GET", 
Cx.Client.HTTPUtils.HTTPEncoding.UTF8,
null,
null,
100000,
null,
null,
out resultCode, 
out resultData
))
{
try
{
var jsonSerializer = new System.Web.Script.Serialization.JavaScriptSerializer();
dynamic parsedData = jsonSerializer.DeserializeObject(resultData);
var array = parsedData["result"]["Data"] as System.Collections.Generic.IEnumerable<object>;
if (array != null)
{
foreach (var recObj in array)
{
var rec = recObj as System.Collections.Generic.IDictionary<string, object>;
string phone = Convert.ToString(rec["phone1"]);
                                                                                                string id = Convert.ToString(rec["ID"]);
                                                                                                Row["one"] = phone;
                                                                                                Row["two"] = id;
System.Windows.Forms.MessageBox.Show(phone);
System.Windows.Forms.MessageBox.Show(id);

}
}
}
catch (Exception exception)
{
System.Windows.Forms.MessageBox.Show(exception.Message);
Cx.Client.Utils.ExceptionManager.HandleException("Dialog scenario parsing error", exception, true);
}  
}

}


Полученный Json , который вернул запрос : http://192.168.99.90:10080/data/getdata/?ProviderName=WorkProvider_Table_5019852410&amp;Param1=5...

{
"result": {
"ProviderName": "WorkProvider_Table_5019852410",
"RecordCount": 1,
"Parameters": {
"Param1": "5019852414"
},
"Fields": [
{
"FieldName": "ID",
"DataType": "System.Int64"
},
{
"FieldName": "State",
"DataType": "System.Int32"
},
{
"FieldName": "phone1",
"DataType": "System.String"
}
],
"Data": [
{
"ID": "5019852414",
"State": "null",
"phone1": "84955555555"
}
],
"Result": "1"
}
}

В результате при нажатии на кнопку HTTP в карточке кампании получим:
image007.png
image009.png
image011.png
image013.png      


Нашли ошибку?
Выделите текст, нажмите Ctrl + Enter

Сообщение об ошибке

Адрес страницы *
Ошибочный текст *
Комментарий *
Защита от автоматического заполнения

Введите символы с картинки*

Дополнить статью

Адрес *
Ваше ФИО
Ваш Email
Текст дополнения *

Попробовать InfinitySmart бесплатно

Зарегистрируйтесь, чтобы получить доступ
к бесплатной версии на 14 дней

Заказ презентации

После отправки запроса наш менеджер свяжется с вами для демонстрации системы, рассчитает ее стоимость, ответит на вопросы