Самый эффективный способ создавать отчеты каждые 15 минут? - PullRequest
0 голосов
/ 11 ноября 2009

В настоящее время у меня есть сценарий ASP Classic, который запускается каждые 15 минут (с помощью запланированного задания). Задача состоит в том, чтобы открыть Internet Explorer и загрузить ASP страницу создания отчета. Как только страница будет загружена, у меня будет Javascript внизу страницы, отвечающий за закрытие окна IE. Мы часто сталкиваемся с проблемами, когда скрипт по какой-либо причине зависает и не доходит до конца. Таким образом, мы получаем несколько экземпляров IE в конце дня. Однако создание отчета таким способом кажется очень неуклюжим и неестественным. Я использую IIS и переключаюсь на .NET.

Есть ли у кого-нибудь альтернативы?

Спасибо.

Ответы [ 4 ]

3 голосов
/ 11 ноября 2009

Почему бы вам просто не вызвать свою страницу ASP с помощью простого сценария XmlHttpRequest в vbscript вместо запуска Internet Explorer?

Set http = CreateObject("Microsoft.XmlHttp")
http.open "GET", "http://yourserver/yourReportPage.asp", FALSE
http.send ""

Dim content
content = http.ResponseText
set http = nothing

Используйте это вместо вызова IE.

Теперь, возможно, есть лучший способ создания отчетов, но, по крайней мере, так вы избавитесь от страшной автоматизации IE.

2 голосов
/ 11 ноября 2009

Мы используем службы отчетов SQL для этой цели. Раньше у нас была система, очень похожая на вашу, но у нас не было проблем с момента перехода на RS.

1 голос
/ 11 ноября 2009

Должен ли он вызываться через интерфейс HTTP? То есть, вы можете сделать проект командной строки, который делает то же самое? Если вы можете, вы можете легко настроить запланированное задание для вызова приложения командной строки каждые 15 минут.

0 голосов
/ 25 ноября 2009

Кажется, что то, что должно выполняться по регулярному расписанию, будет связано с базой данных. Если это проверить агент SQL Server (предположим, SQL Server) и сохранить результаты в таблицу, которую можно быстро запросить со страницы ASP.

...