Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описываются причины, по которым может появиться сообщение об ошибке движка печати Crystal Print Engine Error 515 при печати отчетов в Microsoft Dynamics SL, и способы устранения этой проблемы.
Применимо к: Microsoft Dynamics SL
Исходный номер базы знаний: 873549
Симптомы
При печати отчетов в Microsoft Dynamics SL вы получите следующее сообщение об ошибке:
Ошибка обработчика печати кристалла 515 — ошибка в формуле
Решение
Примечание.
Прежде чем следовать инструкциям в этой статье, убедитесь, что у вас есть полная резервная копия базы данных, которую можно восстановить, если возникла проблема.
Причина и разрешение 1
Эта проблема возникает, когда запись в таблице BATCH содержит пустые значения в одном или обоих из следующих полей:
- BaseCuryID
- CuryID
Чтобы устранить эту проблему, заполните один или оба поля. Для этого выполните следующие шаги:
Используйте анализатор sql query или SQL Server Management Studio для доступа к соответствующей базе данных приложения, а затем выполните следующую инструкцию, чтобы определить записи в таблице BATCH с пустыми значениями в поле BaseCuryID или в поле CuryID :
SELECT status,* from BATCH where BaseCuryID = '' or CuryID = ''
Примечание.
- В этом утверждении необходимо использовать две пары одиночных кавычек.
- Не беспокойтесь о пакетах, создаваемых этим запросом, если эти пакеты имеют состояние "V" или "D".
Используйте значения в поле BatNbr для определения номеров пакетов. Используйте значение в поле "Модуль" для определения модуля. Определите, является ли валюта базовой или иностранной валютой. Поле BaseCuryID определяет базовую валюту, а поле CuryID определяет базовую валюту или иностранную валюту.
Используйте следующую инструкцию, чтобы обновить записи в таблице BATCH. Убедитесь, что вы включили соответствующий идентификатор валюты для поля BaseCuryID и для поля CuryID :
UPDATE BATCH SET BaseCuryID = 'BBB', CuryID = 'CCC' where BatNbr = 'XXXXXX' and Module = 'YY'
Примечание.
В этом утверждении BBB представляет соответствующий базовый идентификатор валюты, CCC представляет соответствующий базовый или иностранный идентификатор валюты, XXXXXX представляет соответствующий номер пакета, а YY представляет соответствующее двухбуквенное сокращение модуля.
Причина и разрешение 2
Эта проблема возникает при печати отчетов управления заказами или отчетов о покупке. Чтобы устранить эту проблему, запустите процесс установки рабочей станции управления заказами, чтобы убедиться, что установка рабочей станции управления заказами завершена. Для этого выполните следующие шаги:
- В списке модулей выберите "Управление заказами".
- В области "Управление заказами" выберите OM Workstation Install в разделе "Процессы".
- Нажмите кнопку "Начать".
- Повторите этот процесс для всех рабочих станций.
Примечание.
Если вы продолжаете получать сообщение об ошибке, см. раздел «Причина и разрешение 6».
Причина и разрешение 3
Эта проблема возникает при печати счетов на экране "Счета" (40.680.00), а неправильная версия файла Crufladg.dll находится в папке OM.
Убедитесь, что версия файла Crufladg.dll в папке OM правильна. Для этого выполните следующие шаги:
Используйте проводник Windows, чтобы найти все вхождения файла Crufladg.dll. Этот файл должен находиться в следующих трех расположениях:
Solomon IV\OM
Winsys\Register
Winnt\System32 or Windows\System32
Изучите даты, размеры и версии файлов Crufladg.dll. Все три Crufladg.dll файлы должны иметь одну и ту же дату изменения, размер файла и тот же номер версии.
Если файл Crufladg.dll имеет дату 5.21.99 или номер версии 4.01, замените этот файл более поздней версией файла.
Причина и разрешение 4
Эта проблема возникает, когда файл U2lsol4.dll отсутствует, поврежден или неправильно. Чтобы устранить эту проблему в Microsoft Solomon 5.5 и более ранних версиях Microsoft Solomon, скопируйте файл U2lsol4.dll в папку Winnt\Crystal
или в папку Windows\Crystal
. Для этого выполните следующие шаги:
- Убедитесь, что все отчеты выдают сообщение об ошибке 515.
- Переименуйте существующие U2lsol4.dll файлы в папке
Winnt\Crystal
или папкеWindows\Crystal
в U2lsol4.old. - Скопируйте файл U2lsol4.dll из
Solomon\Wrkstn\Windows\Crystal
папки в локальнуюWinnt\Crystal
папку или в локальнуюWindows\Crystal
папку. - Повторите попытку печати отчета. Если проблема сохраняется, скопируйте файл U2lsol4.dll из папки
Winnt\Crystal
или из папкиWindows\Crystal
в папкуWinnt\System32
или в папку\Windows\System32
.
Примечание.
Это решение относится только к Microsoft Соломону 5.5 и более ранним версиям Microsoft Соломон.
Причина и разрешение 5
Эта проблема возникает при попытке печати записи или предварительного просмотра записи в отчете " Заказы на покупку" (04.600.00), если поле CuryID или поле BaseCuryID пусто в одной из следующих таблиц:
- PURCHORD
- PURORDDET
- POREQHDR
- POREQDET
Чтобы устранить эту проблему в Microsoft Solomon версии 5.5 и более ранних, обновите таблицу с пустым полем CuryID или пустым полем BaseCuryID. Для этого выполните следующие шаги:
Используйте анализатор SQL query или SQL Server Management Studio для доступа к соответствующей базе данных приложения, а затем выполните следующие инструкции, чтобы определить, пусто ли поле CuryID в одной или нескольких из четырех таблиц, перечисленных ранее в этом разделе:
SELECT CuryID, BaseCuryID, PONbr, * from PURCHORD where CuryID in ('', '2345') or BaseCuryID in ('', '2345') SELECT CuryID, BaseCuryID, PONbr, * from PURORDDET where CuryID in ('', '2345') or BaseCuryID in ('', '2345') SELECT CuryID, BaseCuryID, ReqNbr, * from POREQDET where CuryID in ('', '2345') or BaseCuryID in ('', '2345') SELECT CuryID, BaseCuryID, ReqNbr, * from POREQHDR where CuryID in ('', '2345') or BaseCuryID in ('', '2345')
Примечание.
В каждом из этих утверждений необходимо использовать две пары одинарных кавычек.
Если возвращаются записи, используйте следующие инструкции обновления для заполнения поля CuryID :
UPDATE PURCHORD SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and PONbr = 'XXXXXX' UPDATE PURORDDET SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and PONbr = 'XXXXXX' UPDATE POREQDET SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and ReqNbr = 'XXXXXX' UPDATE POREQHDR SET CuryID = 'YYY', BaseCuryID = ('ZZZ') where (CuryID in ('', '2345') or BaseCuryID in ('', '2345')) and ReqNbr = 'XXXXXX'
Примечание.
- В каждом из этих утверждений необходимо использовать две пары одинарных кавычек.
- В каждом из этих заявлений YYY представляет правильный идентификатор иностранной валюты, ZZZ представляет правильный идентификатор базовой валюты, а XXXXXX представляет соответствующий номер заказа на покупку для записи, которую вы определили на шаге 1.
Чтобы устранить эту проблему в Microsoft Solomon 6.0 и более поздних версиях, обновите таблицу с пустым полем CuryID. Для этого выполните следующие шаги:
Используйте анализатор SQL query или SQL Server Management Studio для доступа к соответствующей базе данных приложения, а затем выполните следующие инструкции, чтобы определить, пусто ли поле CuryID в одной или нескольких из четырех таблиц, перечисленных ранее в этом разделе:
SELECT CuryID, PONbr, * from PURCHORD where (CuryID in ('', '2345') SELECT CuryID, PONbr, * from PURORDDET where (CuryID in ('', '2345') SELECT CuryID, ReqNbr, * from POREQDET where (CuryID in ('', '2345') SELECT CuryID, ReqNbr, * from POREQHDR where (CuryID in ('', '2345')
Примечание.
В каждом из этих утверждений необходимо использовать две пары одинарных кавычек.
Если возвращаются записи, используйте следующие инструкции обновления для заполнения поля CuryID :
UPDATE PURCHORD SET CuryID = 'YYY' where (CuryID in ('', '2345') UPDATE PURORDDET SET CuryID = 'YYY' where (CuryID in ('', '2345') UPDATE POREQDET SET CuryID = 'YYY' where (CuryID in ('', '2345') UPDATE POREQHDR SET CuryID = 'YYY' where (CuryID in ('', '2345')
Примечание.
В каждом из этих утверждений необходимо использовать две пары одинарных кавычек.
Причина и разрешение 6
Эта проблема возникает, когда файл Crufladg.dll не зарегистрирован. Чтобы устранить эту проблему, вручную зарегистрируйте файл Crufladg.dll. Для этого выполните следующие шаги:
- Используйте проводник Windows, чтобы найти файл Crufladg.dll на рабочей станции.
- Щелкните правой кнопкой мыши на файл, наведите указатель мыши на "Открыть с помощью", а затем выберите "Другое".
- Просмотрите локальный диск. Как правило, диск C. Выберите Regsvr32.exe в
\Winnt\System32
папке или Regsvr.exe в папке\Windows\System
. - Нажмите кнопку "Открыть".
- Нажмите кнопку "ОК". Сообщение указывает, успешно ли зарегистрирован файл.
Причина и разрешение 7
Эта проблема возникает при печати отчетов с определенной рабочей станции. Чтобы устранить эту проблему в Microsoft Соломон 5.5 и более ранних версиях Microsoft Соломон, выполните следующие действия.
- Чтобы удалить программу Microsoft Соломон IV, используйте кнопку "Добавить или удалить программы " на панели управления.
- Переименуйте папку
Winnt\Crystal
. - Переустановите программу Клиента Microsoft Solomon IV.
Примечание.
Это решение относится только к Microsoft Соломону 5.5 и более ранним версиям Microsoft Соломон.
Причина и разрешение 8
Эта проблема возникает, когда имя принтера слишком длинное. Чтобы устранить эту проблему, измените имя принтера по умолчанию, чтобы оно содержало менее 25 символов.
Причина и разрешение 9
Эта проблема возникает при обновлении с Microsoft Соломон IV 4.21 с Crystal Reports 6.0 до Microsoft Соломон 5.5 с Crystal Reports 8.5. В этом случае сообщение об ошибке ссылается на функцию суммирования RT. Устранить проблему можно так:
- Используйте функции общей суммирования, включенные в Crystal Reports 8.5, чтобы пересмотреть поле формулы.
- Следуйте указаниям в статье c2002613 в Базе знаний Crystal, чтобы установить правильные DLL-файлы.
Контактные данные сторонних организаций предоставлены в этой статье с целью помочь пользователям получить необходимую техническую поддержку. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не гарантирует точность этих сторонних контактных данных.
Причина и разрешение 10
Эта проблема возникает, когда файлы отсутствуют в локальной папке Crystal. Чтобы устранить эту проблему в Microsoft Соломон 5.5 и более ранних версиях Microsoft Solomon, определите количество файлов в локальной папке Crystal, а затем замените папку, если необходимо. Для этого выполните следующие шаги:
- Используйте проводник Windows или мой компьютер, чтобы найти локальную папку Winnt или локальную папку Windows.
- Щелкните правой кнопкой мыши папку "Кристалл" и выберите пункт "Свойства".
- Обратите внимание на количество файлов в этой папке. Для Microsoft Соломон 5.5, если папка содержит менее 129 файлов, переименуйте или удалите папку Crystal.
- На сервере найдите папку установки Соломона.
- Откройте папку Wrkstn\Windows, а затем скопируйте папку Crystal в локальную папку Winnt или Windows.
Примечание.
- Это решение относится только к Microsoft Соломону 5.5 и более ранним версиям Microsoft Соломон.
- Если ошибка сохраняется, см. раздел "Причина и разрешение 7 ".
Дополнительные сведения
Продукты сторонних производителей, обсуждаемые в этой статье, выпускаются компаниями, не связанными с Microsoft. Корпорация Майкрософт не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.