Resumen
Este artículo describe las razones que puede recibir el mensaje de error 515 de Error de motor de impresión de Crystal cuando imprime informes en Microsoft Dynamics SL. También se describen formas de resolver este problema.
Síntomas
Cuando imprime informes en Microsoft Dynamics SL, recibe el siguiente mensaje de error:
Error del motor de impresión de Crystal 515 - Error en la fórmula
Solución
Nota: Antes de seguir las instrucciones de este artículo, asegúrese de que tiene una copia de seguridad completa de la base de datos que pueda restaurar si surge algún problema.
Pantalla de facturas (40.680.00) y una versión incorrecta del archivo Crufladg.dll está en la carpeta OM.
Compruebe que la versión del archivo Crufladg.dll en la carpeta OM es correcta. Para ello, siga estos pasos:
Campo CuryID o BaseCuryID en blanco . Para ello, siga estos pasos:
Campo CuryID . Para ello, siga estos pasos:
Causa y solución 1
Este problema se produce cuando el registro de la tabla BATCH contiene valores en blanco en uno o ambos de los siguientes campos:- BaseCuryID
- CuryID
- Utilice el analizador de consultas SQL o SQL Server Management Studio para tener acceso a la base de datos de aplicación apropiada y, a continuación, ejecute la instrucción siguiente para identificar los registros de la tabla BATCH que tienen valores nulos en los campos BaseCuryID o en el campo CuryID :Notas:
SELECT status,* from BATCH where BaseCuryID = '' or CuryID = ''
- En esta declaración, debe utilizar dos pares de comillas simples.
- No se preocupe acerca de los lotes generados por esta consulta si dichos lotes tienen un estado de "V" o "d".
- Utilice los valores en el campo BatNbr para determinar los números de lote. Utilice el valor en el campo de módulo para determinar el módulo. Determinar si la divisa es la divisa base o una moneda extranjera. El campo BaseCuryID identifica la divisa base y el campo CuryID identifica la divisa base o una moneda extranjera.
- Utilice la instrucción siguiente para actualizar los registros de la tabla de proceso por lotes. Asegúrese de incluir el identificador de moneda apropiado para el
BaseCuryID campo y para el campo CuryID :Nota: En esta declaración, BBB representa el ID de moneda base apropiada, CCC representa la base adecuada o ID de moneda extranjera, XXXXXXrepresenta el número de lote adecuado y aarepresenta la abreviatura del módulo de dos letras correspondiente.UPDATE BATCH SET BaseCuryID = 'BBB', CuryID = 'CCC' where BatNbr = 'XXXXXX' and Module = 'YY'
Causa y solución 2
Este problema se produce cuando imprime informes de Order Management o de compras. Para resolver este problema, ejecute el proceso Order Management Workstation Install para comprobar que se ha completado la instalación de estación de trabajo de gestión de pedidos. Para ello, siga estos pasos:- En la lista de módulos , haga clic en Gestión de pedidos.
- En el panel de Administración de pedidos , haga clic en
OM Workstation Install bajo
Procesos. - Haga clic en Iniciar.
- Repita este proceso para todas las estaciones de trabajo.
Causa y solución 3
Este problema se produce cuando imprime facturas desde laPantalla de facturas (40.680.00) y una versión incorrecta del archivo Crufladg.dll está en la carpeta OM.
Compruebe que la versión del archivo Crufladg.dll en la carpeta OM es correcta. Para ello, siga estos pasos:
- Utilice el Explorador de Windows para localizar todas las apariciones del archivo Crufladg.dll. Este archivo debe estar en las tres ubicaciones siguientes:
- IV\OM Salomón
- Winsys\Register
- Winnt\System32 o Windows\System32
- Examine las fechas, tamaños y versiones de los archivos Crufladg.dll. Los tres archivos Crufladg.dll deben tener la misma fecha de modificación, el mismo tamaño de archivo y el mismo número de versión.
- Si el archivo Crufladg.dll tiene una fecha 21/5/99 o un número de versión 4.01, reemplace este archivo con una versión posterior del archivo.
Causa y solución 4
Este problema se produce cuando el archivo U2lsol4.dll es incorrecto, dañado o falta. Para resolver este problema en Microsoft Solomon 5.5 y en versiones anteriores de Microsoft Solomon, copie el archivo U2lsol4.dll a la carpeta Winnt\Crystal o a la carpeta Windows\Crystal. Para ello, siga estos pasos:- Compruebe que todos los informes producen el mensaje de error 515.
- Cambiar el nombre de los archivos U2lsol4.dll existentes en la carpeta Winnt\Crystal o en la carpeta Windows\Crystal a U2lsol4.old.
- Copie el archivo U2lsol4.dll de la carpeta Solomon\Wrkstn\Windows\Crystal a la carpeta local Winnt\Crystal o a la carpeta Windows\Crystal local.
- Intente imprimir de nuevo un informe. Si el problema persiste, copie el archivo U2lsol4.dll de la carpeta Winnt\Crystal o desde la carpeta Windows\Crystal a la carpeta Winnt\System32 o en la carpeta \Windows\System32.
Causa y solución 5
Este problema se produce cuando intenta imprimir o imprimir vista previa de un registro en el informe de Órdenes de compra (04.600.00) si el campo CuryID o BaseCuryID está en blanco en una de las siguientes tablas:- PURCHORD
- PURORDDET
- POREQHDR
- POREQDET
Campo CuryID o BaseCuryID en blanco . Para ello, siga estos pasos:
- Utilice el analizador de consultas SQL o SQL Server Management Studio para tener acceso a la base de datos de aplicación apropiada y, a continuación, ejecute las instrucciones siguientes para determinar si el campo CuryID está en blanco en una o varias de las cuatro tablas que aparecen anteriormente en esta sección:Nota: En cada una de estas instrucciones, debe utilizar dos pares de comillas simples.
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')
- Si se devuelven registros, utilice las siguientes instrucciones update para rellenar el campo CuryID :Notas:
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'
- En cada una de estas instrucciones, debe utilizar dos pares de comillas simples.
- En cada una de estas instrucciones,
YYY representa el identificador de moneda extranjera correcto,
ZZZ representa el identificador de divisa base correcto y
XXXXXX representa el número de orden de compra correspondiente del registro para actualizar que identificó en el paso 1.
Campo CuryID . Para ello, siga estos pasos:
- Utilice el analizador de consultas SQL o SQL Server Management Studio para tener acceso a la base de datos de aplicación apropiada y, a continuación, ejecute las instrucciones siguientes para determinar si el campo CuryID está en blanco en una o varias de las cuatro tablas que aparecen anteriormente en esta sección:Nota: En cada una de estas instrucciones, debe utilizar dos pares de comillas simples.
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')
- Si se devuelven registros, utilice las siguientes instrucciones update para rellenar el campo CuryID :Notas:
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')
- En cada una de estas instrucciones, debe utilizar dos pares de comillas simples.
Causa y solución 6
Este problema se produce cuando el archivo Crufladg.dll no está registrado. Para resolver este problema, registre manualmente el archivo Crufladg.dll. Para ello, siga estos pasos:- Utilice el Explorador de Windows para localizar el archivo Crufladg.dll en la estación de trabajo.
- Haga clic en el archivo, seleccione Abrir cony, a continuación, haga clic en otros.
- Examine la unidad local. Esto suele ser la unidad C. Haga clic ya sea Regsvr32.exe en la carpeta \Winnt\System32 o
Regsvr.exe en la carpeta \Windows\System. - Haga clic en Abrir.
- Haga clic en Aceptar. Un mensaje indica si el archivo se registró correctamente.
Causa y solución 7
Este problema se produce cuando imprime informes desde una estación de trabajo específica. Para resolver este problema en Microsoft Solomon 5.5 y en versiones anteriores de Microsoft Solomon, siga estos pasos:- Utilice la opción Agregar o quitar programas del Panel de Control para desinstalar el programa cliente de Microsoft Solomon IV.
- Cambiar el nombre de la carpeta Winnt\Crystal.
- Vuelva a instalar el programa cliente de Microsoft Solomon IV.
Causa y resolución 8
Este problema se produce cuando el nombre de impresora es demasiado largo. Para resolver este problema, cambie el nombre de impresora predeterminado para que contenga menos de 25 caracteres.Causa y resolución de 9
Este problema se produce cuando se actualiza desde Microsoft Solomon IV 4.21 con Crystal Reports 6.0 a Microsoft Solomon 5.5 con Crystal Reports 8.5. En este caso, el mensaje de error hace referencia a la función de total de RT. Para resolver este problema, siga estos pasos:- Utilice las funciones de totales incluidas con Crystal Reports 8.5 para revisar el cuadro de fórmula.
- Siga las instrucciones en el artículo c2002613 de Crystal Knowledge Base para instalar los archivos DLL correctos. Para ello, visite el siguiente sitio Web de Business Objects:Nota: Aunque este artículo Crystal Knowledge Base hace referencia a Crystal Reports 7.0, los pasos también pueden utilizarse para Crystal Reports 8.5.
Causa y solución 10
Este problema se produce cuando faltan archivos en la carpeta local Crystal. Para resolver este problema en Microsoft Solomon 5.5 y en versiones anteriores de Microsoft Solomon, determine el número de archivos en la carpeta local Crystal y reemplace la carpeta si es necesario. Para ello, siga estos pasos:- Utilice el Explorador de Windows o Mi PC para buscar la carpeta local Winnt o la carpeta local de Windows.
- Haga clic en la carpeta Crystal y, a continuación, haga clic en
Propiedades. - Tenga en cuenta el número de archivos en esta carpeta. En Microsoft Solomon 5.5, si la carpeta contiene menos de 129 archivos, cambie el nombre o elimine la carpeta Crystal.
- En el servidor, busque la carpeta de instalación de Solomon.
- Abra la carpeta Wrkstn\Windows y, a continuación, copie la carpeta Crystal a la carpeta local Winnt o Windows.
Más información
Los productos de terceros que se indican en este artículo están fabricados por compañías independientes de Microsoft. Microsoft no otorga ninguna garantía, implícita o de otro tipo, respecto al rendimiento o confiabilidad de estos productos.