Пакет PurchaseOrderDetail для кубов анализа может загружать не все заказы на покупку

В этой статье описано решение проблемы, из-за которой заказы на покупку могут отсутствовать в кубах анализа для Microsoft Dynamics GP.

Применимо к: Microsoft Dynamics GP
Исходный номер базы знаний: 2851158

Симптомы

Заказы на покупку отсутствуют в кубах анализа для Dynamics GP.

Причина

Это вызвано ошибкой в пакете SSIS PurchaseOrderDetail, который выполняется во время загрузки данных из Dynamics GP в базу данных Data Warehouse analysis Cubes. Ошибка возникает из-за сравнения меток времени в метке времени LastUpdated и LSTEDTDT/CREATDDT/DOCDATE строки подробностей заказа на покупку в базе данных Dynamics GP. Метка времени в значении LastUpdated включает HH:MM:SS, а LSTEDTDT/CREATDDT/DOCDATE — нет. Это различие может привести к тому, что заказы на покупку не будут включены в кубы анализа.

Решение

Чтобы устранить эту проблему, выполните следующие действия.

  1. Откройте SQL Server Business Intelligence Development Studio (BIDS).
  2. Щелкните "Файл", наведите указатель на "Создать", а затем выберите "Проект"....
  3. Нажмите кнопку ОК.
  4. Щелкните правой кнопкой мыши папку "Пакеты служб SSIS" на Обозреватель решений и выберите команду "Добавить существующий пакет".
  5. Выберите хранилище пакетов служб SSIS для расположения пакета.
  6. Введите имя сервера SQL Server, в котором пакеты служб SSIS analysis Cubes находятся в поле "Сервер ".
  7. При необходимости выберите тип проверки подлинности и введите пользователя.
  8. Нажмите кнопку с многоточием рядом с полем "Путь к пакету ".
  9. Разверните MSDB.
  10. Разверните папку служб SSIS analysis Cubes.
  11. Найдите пакет служб SSIS, который заканчивается на PurchaseOrderDetail. Выберите его и нажмите кнопку "ОК".
  12. Нажмите кнопку ОК.
  13. Дважды щелкните пакет SSIS PurchaseOrderDetail в Обозреватель решений области.
  14. Дважды щелкните значок внутри задачи копирования данных из результатов в задачу PendingPurchaseOrders, чтобы открыть эту задачу.
  15. Дважды щелкните значок внутри сущности источника OLE DB.
  16. Скопируйте содержимое раздела текста команды SQL в текстовый редактор, например Блокнот.
  17. В текстовом редакторе замените его функцией Replace select @lastdate = DateUpdated from [DynamicsGPWarehouse].[dbo].[LastUpdated] where CompanyID = @CompID and TableName = 'PurchaseOrderDetail'select @lastdate = convert(char(12),DateUpdated,101) from [DynamicsGPWarehouse].[dbo].[LastUpdated] where CompanyID = @CompID and TableName = 'PurchaseOrderDetail'.
  18. Назад bids и выделите весь текст в разделе текста команды SQL, а затем нажмите клавишу DELETE, чтобы удалить текст.
  19. Скопируйте обновленный текст из текстового редактора в раздел текста команды SQL.
  20. Нажмите кнопку "Анализ запроса ". Если анализ запроса не был выполнен успешно, текст не был обновлен правильно или скопирован обратно. Нажмите кнопку " Отмена" в окне редактора источника OLE DB и повторите шаги 15–20.
  21. Сохраните изменения в пакете Служб SSIS PurchaseOrderDetail в BIDS.
  22. Откройте SQL Server Management Studio и подключитесь к экземпляру служб SSIS, в котором находятся пакеты кубов анализа.
  23. Разверните папку "Хранимые пакеты ".
  24. Разверните MSDB.
  25. Щелкните правой кнопкой мыши папку analysis Cubes SSIS и выберите " Импорт пакета".
  26. Выберите файловую систему для расположения пакета.
  27. Нажмите кнопку с многоточием рядом с путем пакета.
  28. Найдите и выберите файл пакета служб SSIS, сохраненный на шаге 21, а затем нажмите кнопку "Открыть".
  29. Нажмите кнопку ОК.
  30. Нажмите кнопку " Да", чтобы перезаписать.