2005 услуг по созданию отчетов SQL Server - как обработать пустые отчеты

Ваш код выглядит хорошо. Я просто заменил твой код своим ключом API, и все заработало (см. Ниже).

Можете ли вы более подробно рассказать о браузере, в котором появляется ошибка? Я попробовал последние версии Chrome и Firefox, и проблем нет.

"use strict";

(function() {
  var url = "http://api.openweathermap.org/data/2.5/weather?q=London,England";
  var apiKey = "4ff5002c91520701ec111b6082de9387"; // This key might expire soon.
  var httpRequest;
  makeRequest();

  // create and send an XHR request
  function makeRequest() {
    httpRequest = new XMLHttpRequest();
    httpRequest.onreadystatechange = responseMethod;
    httpRequest.open('GET', url + '&appid=' + apiKey);
    httpRequest.send();
  }
  // handle XHR response
  function responseMethod() {
    if (httpRequest.readyState === 4) {
      console.log(httpRequest.responseText);
    }
  }
})();

5
задан Dustin Brooks 4 February 2009 в 13:28
поделиться

4 ответа

Я полагаю, что ответ не, по крайней мере, не из поля. Не должно быть трудно записать Ваше собственное расширение доставки, учитывая образец расширения доставки печати, включенный в RS.

1
ответ дан 15 December 2019 в 06:38
поделиться

Да, я не думаю, что это возможно. Вы могли использовать свойство "NoRows" своей таблицы для отображения сообщения, когда никакие данные не возвращаются, но это не препятствовало бы отчету быть присоединенным. Но по крайней мере когда они открыли файл Excel, он мог распечатать Ваше пользовательское сообщение вместо пустого документа.

1
ответ дан 15 December 2019 в 06:38
поделиться

Я имел успех с использованием Управляемой данными Подписки и таблицы, содержащей моих подписчиков с управляемым данными запросом подписки, бывшим похожим на это:

SELECT * FROM REPORT_SUBSCRIBERS WHERE EXISTS (SELECT QUERY_FROM_YOUR_REPORT)

В настройках доставки получатель является столбцом данных, содержащим мои адреса электронной почты.
Если внутренний запрос не возвратит строк, то никакие электронные письма не будут посланы.


В Ваших целях можно использовать в своих интересах, "Включают Отчет" и настройки предоставления "Комментария".
Я предполагаю, что управляемый данными запрос подписки как это будет работать на Вас:

SELECT 'person1@domain.com; person2@domain.com' AS RECIPIENTS,
CASE WHEN EXISTS (REPORT_QUERY) THEN 'TRUE' ELSE 'FALSE' END AS INCLUDE_REPORT,
CASE WHEN EXISTS (REPORT_QUERY) THEN 'The report is attached' ELSE 'There was no data in this report' END AS COMMENT

Затем используйте те столбцы в соответствующих полях при конфигурировании настроек доставки для подписки.

0
ответ дан 15 December 2019 в 06:38
поделиться

Нашел это где-то еще ...

У меня есть чистое решение этой проблемы, единственная обратная сторона - то, что системный администратор должен создавать и поддерживать расписание. Попробуйте выполнить следующие действия:

  1. Создайте подписку на отчет со всеми необходимыми получателями.

  2. Настройте подписку на запуск еженедельно во вчерашний день (т. Е. Если сегодня вторник, выберите понедельник) с расписанием, начинающимся с сегодняшнего дня и прекращающимся на сегодняшнюю дату. По сути, это расписание никогда не будет выполнено.

  3. Откройте вновь созданное задание в SQL Management Studio, перейдите к шагам и скопируйте строку SQL (она будет выглядеть примерно так: EXEC ReportServer.dbo.AddEvent @ EventType = '

1
ответ дан 15 December 2019 в 06:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: