Error "Infracción de la restricción PRIMARY KEY 'PK##0671112'" al realizar la rutina de cierre de fin de año en General Ledger
En este artículo se proporciona una solución para el problema por el que no se puede realizar la rutina de cierre de fin de año en General Ledger en Microsoft Dynamics GP debido al error "PK##0671112" de infracción de la restricción PRIMARY KEY .
Se aplica a: Microsoft Dynamics GP
Número de KB original: 950019
Síntomas
Al intentar realizar la rutina de cierre de fin de año en General Ledger en Microsoft Dynamics GP, recibe el siguiente mensaje de error:
[Microsoft] [Odbc SQL Server Driver][SQL Server]Infracción de la restricción PRIMARY KEY "PK##0671112". No se puede insertar una clave duplicada en el objeto '##0671112'
Causa
Las transacciones de cierre de fin de año contienen una moneda que no está asignada a una cuenta.
Solución
Para resolver este problema, asigne la moneda a la cuenta adecuada. Para ello, siga estos pasos:
Haga que todos los usuarios salgan de Microsoft Dynamics GP.
Restaure una copia de seguridad de la base de datos de la empresa que se realizó antes de intentar realizar la rutina de cierre de fin de año de General Ledger.
Inicie la Consola de administrador de soporte técnico, el Analizador de consultas de Microsoft SQL o SQL Server Management Studio. Para ello, use uno de los métodos siguientes en función del programa que esté usando.
Método 1: Para SQL Server motor de escritorio
Si usa SQL Server motor de escritorio (también conocido como MSDE 2000), inicie la Consola de administrador de soporte técnico. Para ello, seleccione Inicio, Todos los programas, Consola de administrador de Microsoft y, después, Consola de administrador de soporte técnico.
Método 2: para SQL Server 2000
Si usa SQL Server 2000, inicie el Analizador de consultas SQL. Para ello, seleccione Inicio, Todos los programas, Microsoft SQL Server y, a continuación, Analizador de consultas.
Método 3: para SQL Server 2005
Si usa SQL Server 2005, inicie SQL Server Management Studio. Para ello, seleccione Inicio, Todos los programas, Microsoft SQL Server 2005 y, a continuación, seleccione SQL Server Management Studio.
Ejecute el siguiente script en la base de datos de la empresa:
Select CURNCYID FROM GL20000
Anote todas las monedas mostradas en la columna CURNCYID .
Inicie Microsoft Dynamics GP e inicie sesión como usuario
'sa'
.En el menú Tarjetas , seleccione Financiero y, a continuación, seleccione Cuenta.
En el campo Cuenta , escriba el número de cuenta de ganancias retenidas.
Seleccione Moneda.
En la ventana Seleccionar monedas de cuenta, active las casillas id. de moneda que anotó en el paso 5.
Realice la rutina de cierre de fin de año en General Ledger.
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de