kostepanych
21.10.2009, 14:30
Доброго времени суток,
Мне нужно проинициализировать ArrayCollection объектами, значения филдов которого получаются через СОАП запросы (функция getUdfValuePrj):
for (var i:int=0; i < data.length; i++)
{
var task:Task=new Task();
task.laborio = getUdfValuePrj(data[i].id, LABORIOUSNESS);
}
tempTaskArray.addItem(task);
Вот инициализация Вэбсервиса:
private function initWebServices(wsdl:String):void
{
_udfWs = new WebService();
_udfWs.wsdl = wsdl;
_udfWs.getTaskUDFValue.addEventListener("result",
getTaskUDFValueResult);
_udfWs.getTaskUDFValue.addEventListener("fault", handleFault);
_udfWs.loadWSDL();
}
Собственно говоря вопрос, какими должны быть функции getUdfValuePrj (для СОАП запроса) и getTaskUDFValueResult (для получения requesta)? Или как это можно сделать по другому?
Пытался сам что-то соображать, получилась такая ересь:
private function getTaskUDFValueResult(event:ResultEvent):
{
_udfValue = event.result as String;
}
private function getUdfValuePrj (taskId:String, udfCaption:String):void
{
_udfValue = "Loading...";
_udfWs.getTaskUDFValue (taskId,udfCaption);
while (_udfValue == "Loading...")
{
}
return _udfValue;
}
Но это: 1) Криво; 2) Не работает.
Мне нужно проинициализировать ArrayCollection объектами, значения филдов которого получаются через СОАП запросы (функция getUdfValuePrj):
for (var i:int=0; i < data.length; i++)
{
var task:Task=new Task();
task.laborio = getUdfValuePrj(data[i].id, LABORIOUSNESS);
}
tempTaskArray.addItem(task);
Вот инициализация Вэбсервиса:
private function initWebServices(wsdl:String):void
{
_udfWs = new WebService();
_udfWs.wsdl = wsdl;
_udfWs.getTaskUDFValue.addEventListener("result",
getTaskUDFValueResult);
_udfWs.getTaskUDFValue.addEventListener("fault", handleFault);
_udfWs.loadWSDL();
}
Собственно говоря вопрос, какими должны быть функции getUdfValuePrj (для СОАП запроса) и getTaskUDFValueResult (для получения requesta)? Или как это можно сделать по другому?
Пытался сам что-то соображать, получилась такая ересь:
private function getTaskUDFValueResult(event:ResultEvent):
{
_udfValue = event.result as String;
}
private function getUdfValuePrj (taskId:String, udfCaption:String):void
{
_udfValue = "Loading...";
_udfWs.getTaskUDFValue (taskId,udfCaption);
while (_udfValue == "Loading...")
{
}
return _udfValue;
}
Но это: 1) Криво; 2) Не работает.