Mensaje de error "Comillas sin cerrar después de la cadena de caracteres" al ejecutar el saldo de prueba histórico antiguo para la administración de proveedores en Microsoft Dynamics GP
En este artículo se proporciona una solución a un error que se produce al ejecutar el informe De saldo de evaluación histórico antiguo para la administración de proveedores.
Se aplica a: Microsoft Dynamics GP
Número de KB original: 2580792
Síntomas
Al ejecutar el informe De saldo histórico de evaluación anterior para la administración de pagaderos, recibe uno de los siguientes mensajes de error:
Mensaje de error 1 (para la nota de crédito)
[Microsoft] [Odbc SQL Server Driver][SQL Server]Line 1: Sintaxis incorrecta cerca de 'XXXXX'.[ Microsoft][ODBC SQL Server Driver][SQL Server]Comillas sin cerrar antes de la cadena de caracteres ' y DocumentType=5'.
Mensaje de error 2 (para el pago)
[Microsoft] [SQL Native Client] [SQL Server]sintaxis incorrecta cerca de 'S'[Microsoft][SQL Native Client][SQL Server] Comillas sin cerrar después de la cadena de caracteres 'y DocumentType = 6'
Le sigue el siguiente mensaje:
El proceso almacenado pmHistoricalAgedTrialBalance devolvió los resultados siguientes: DBMS: 105, Microsoft Dynamics GP: 0
Causa
Estos errores se deben a un problema conocido en Microsoft Dynamics GP en el que se escribe un abono o un documento de pago manual con un apóstrofo en el campo Número de vale .
Solución
Use uno de los métodos siguientes para resolver este problema:
Solución 1
Ejecute este script en SQL en la base de datos de la empresa para buscar cualquier número de vale, números de documento o identificador de proveedor con un solo apóstrofo en él, que el proceso lee como una cita sin cerrar. Es probable que los resultados del número de cupón (CONTRLNUM) sean la cláusula , pero el número de documento y el identificador de proveedor también se agregan al script y pueden ser o no un problema:
SELECT * FROM PM00400 WHERE CNTRLNUM LIKE '%''%' or DOCNUMBR LIKE '%''%' or VENDORID LIKE '%''%'
Para los resultados devueltos por el script anterior, ejecute el script "ALL Payables" para cada resultado devuelto anteriormente. (Como el problema es más que probable un número de vale, ya que es un campo editable para el usuario. Compruebe la configuración de los proveedores para asegurarse de que no tiene un apóstrofo en el número de vale predeterminado siguiente).
Nota:
Si no tiene este script, es posible que desee abrir un caso de soporte técnico para obtener ayuda para obtener este script e identificar todas las tablas en las que puede encontrarse este documento.
Corrija manualmente el número de vale con una instrucción "update" directa en SQL para todas las tablas devueltas por el script "TODOS los pagaderos" para quitar el apóstrofo único de un número de vale y número de documento Asegúrese de escribir el campo para que sea exactamente igual en todos los campos o tablas en los que lo cambie. (Si el problema está con el identificador de proveedor, no siga estos pasos. Puede usar la herramienta modificadora de proveedor en PSTL para cambiar un identificador de proveedor).
Si necesita ayuda, puede abrir un caso de soporte técnico para obtener más ayuda. Para comunicarse con el Servicio al Cliente por teléfono, llame al 888-477-7877.
Más información
Para evitar que este problema se produzca en el futuro, puede bloquear el campo Número de vale para evitar que los usuarios modifiquen el número de vale. Para ello, siga estos pasos:
Seleccione Microsoft Dynamics GP, seleccioneHerramientas deMicrosoft Dynamics GP>> Configurar >proveedoresde> compra.
Desmarques la opción Invalidar número de asiento en entrada de transacción y, a continuación, seleccione Aceptar.