|
|
#4 |
|
Участник
|
4. Теперь все готово к тестированию.
Создаем файл для загрузки и кладем его на сервер, например, в c:\temp\test.xls Будем его скачивать. 5. Далее нам понадобится VisualStudio. Создаем веб-контрол для веб-парт страницы. Кладем туда кнопку и в обработчике нажатия кнопки пишем код: Код: AxUrlMenuItem getFileUrl = new AxUrlMenuItem("DownloadFile");
getFileUrl.ExtraParams.Add("file", "c:\\temp\\test.xls");
DialogHelper.Navigate(getFileUrl, this);Код: protected void WebPart_ActionMenuItemClicked(object sender, ActionMenuItemEventArgs e)
{
string fileName = string.Empty;
if (e.MenuItem.MenuItemAOTName == "WayBill")
{
fileName = (string)this.RunDatasetMethod("makeWayBill"); // вызов метода, который формирует отчет и кладет файл отчета в папку на сервере
}
if (!string.IsNullOrEmpty(fileName))
{
AxUrlMenuItem getFileUrl = new AxUrlMenuItem("DownloadFile");
getFileUrl.ExtraParams.Add("file", fileName);
DialogHelper.Navigate(getFileUrl, this);
}
}
private object RunDatasetMethod(string methodName, params object[] paramList)
{
object res = null;
try
{
if (paramList.Length > 0)
{
res = this.AxDataSource1.GetDataSet().DataSetRun.AxaptaObjectAdapter.Call(methodName, paramList);
}
else
{
res = this.AxDataSource1.GetDataSet().DataSetRun.AxaptaObjectAdapter.Call(methodName);
}
}
catch (System.Exception ex)
{
AxExceptionCategory exceptionCategory;
if (!AxControlExceptionHandler.TryHandleException(this, ex, out exceptionCategory))
{
// Throw the fatal exception
throw;
}
}
return res;
}Спасибо за внимание! |
|
|
|
| За это сообщение автора поблагодарили: MikeR (5), gl00mie (5), (1). | |
| Теги |
| ax2009, ax2012, enterprise portal, mime types, законченный пример |
|
|
|