SQL Server Error 515 - no se puede insertar el valor Null valor aparece en GL.

Se aplica a: Dynamics SL 2011Microsoft Dynamics SL 2011 Service Pack 1Microsoft Dynamics SL 7.0 Service Pack 2

Contenido de TechKnowledge


POSIBLES CAUSAS:


1. se produce en General Ledger contabilizar transacciones (01.520) si contabilizar en una cuenta con un estado de cuenta inactiva. Vea la solución 21476.


2. se produce en General Ledger liberar lotes de contabilidad general (01.400). Los campos no están completamente llenos cuando el lote se muestra en la pantalla de transacciones de diario (01.010). Consulte resolución 1532.


3. se produce en liberar lotes de contabilidad general (01.400) con la información opcional que hace referencia a 'Sub'. CpnyID en la tabla GLTRAN no se llena. Vea la solución 11929.


4. se produce en contabilizar transacciones (01.520) cuando hay un LedgerID incorrecta en GLTRAN. Vea la solución 17549.


5. se produce en contabilizar transacciones (01.520) si el tipo de cuenta es incorrecto. Vea la solución 21434.


6. se produce al liberar un lote de asignación de Contabilidad General en Solomon IV versión 4.21 Service Pack 1. No se produce en las versiones posteriores.


7. se produce la liberación de un inJournal de lote transacciones (01.010) con la información opcional que hace referencia a Sub cuando no han sido establecidas las transacciones de varias empresas incluidas en el área de detalle, pero las relaciones de empresas vinculadas en varias empresas intercompañía cuenta/Sub mantenimiento (13.260) para el módulo de contabilidad general. Consulte resolution27142.


Resolución 1532 - extractos de los registros GLTRAN y el lote utilizando el analizador de consultas.

PASOS DE CORRECCIÓN:


1. Haga una copia de seguridad de la base de datos, que puede restaurarse en caso de que se produzca una pérdida de datos no deseados.


2. obtener acceso a la base de datos de aplicación apropiada mediante el analizador de consultas.


3. sumar los importes de débito y de crédito del registro GLTRAN mediante las instrucciones siguientes:


Seleccione SUM(CrAmt) de GLTRAN donde BatNbr = 'XXXXXX' y módulo = 'Aa'


Seleccione SUM(DrAmt) de GLTRAN donde BatNbr = 'XXXXXX' y módulo = 'Aa'


Seleccione SUM(CuryCrAmt) de GLTRAN donde BatNbr = 'XXXXXX' y módulo = 'Aa'


Seleccione SUM(CuryDrAmt) de GLTRAN donde BatNbr = 'XXXXXX' y módulo = 'Aa'


(donde XXXXXX es el número de lote y AA aplicable = el módulo aplicable)


4. Compruebe que la suma de la CrAmt y la suma de lo DrAmt son iguales para el Control Total del lote. Además, compruebe que la suma de la CuryCrAmt y la suma de lo CuryDrAmt son iguales para el Control Total del lote. Para probar esto, utilice el modo de inicializar para cambiar el módulo General Ledger Journal Transactions (01.010) para el módulo adecuado y abra el lote. El Control Total del lote debe ser igual a la suma del suma de débitos y créditos.


5. suma los importes de débito y de crédito de la sección de registran mediante las instrucciones siguientes donde XXXXXX = el número de lote y AA aplicables = el módulo aplicable: seleccione SUM(CtrlTot) de lote donde BatNbr = 'XXXXXX' y el módulo = 'Aa' Seleccionar SUM(CrTot) de lote donde BatNbr = 'XXXXXX' y el módulo = 'Aa' Seleccionar SUM(DrTot) de lote donde BatNbr = 'XXXXXX' y módulo = 'Aa' Seleccionar SUM(CuryCtrlTot) de lote donde BatNbr = 'XXXXXX' y módulo = 'Aa' Seleccionar SUM(CuryCrTot) de lote donde BatNbr = 'XXXXXX' y el módulo = ' AA ' SELECT SUM(CuryDrTot) de lote donde BatNbr = 'XXXXXX' y módulo = 'Aa'


6. Compruebe que la suma de la CrTot y la suma de lo DrTot son iguales a los CrAmt y DrAmt de la tabla GLTRAN. Además, compruebe que la suma de la CuryCrTot y la suma de lo CuryDrTot son iguales a los CuryCrAmt y CuryDrAmt de la tabla GLTRAN.


7. Si todo parece estar en equilibrio, compruebe que no existen registros que faltan en GLTRAN. Cada transacción en el lote debe liberarse, la columna registrado debe ser 'U' sin contabilizar, etc.. Actualizar los registros que faltan.


Nota: Si el problema se produjo durante el registro, ejecute el proceso Registrar transacciones contables en General (01.520) otra vez. Si sigue sin funcionar correctamente, consulte Sub-resolución 3010.


Resolución 11929 - Compruebe la CompanyID en las tablas por lotes y GLTRAN.

PASOS DE CORRECCIÓN:


1. Haga una copia de seguridad de la base de datos, que puede restaurarse en caso de que se produzca una pérdida de datos no deseados.


2. con el analizador de consultas, ejecute la siguiente instrucción para comprobar que es correcto CpnyID en la tabla de proceso por lotes:


Seleccionar * desde lote donde BatNbr = 'XXXXXX' y módulo = 'LM'


(donde XXXXXX es el número de lote correspondiente)


3. Si la CpnyID es correcta, ejecute la siguiente instrucción:


ACTUALIZACIÓN por lotes SET CpnyID = 'Aaaa' where BatNbr = 'XXXXXX' y el módulo = 'LM'


(donde XXXXXX es el correspondiente número de lote y aaaa es el ID de compañía correspondiente)


4. ejecute la siguiente instrucción para comprobar que es correcto CpnyID en la tabla GLTRAN:


Seleccionar * desde GLTRAN donde BatNbr = 'XXXXXX' y módulo = 'LM'


(donde XXXXXX es el número de lote correspondiente)


5. Si el CpnyID no es correcta, ejecute la siguiente instrucción:


UPDATE GLTRAN SET CpnyID = 'Aaaa' where BatNbr = 'XXXXXX' y módulo = 'LM'


(donde XXXXXX es el correspondiente número de lote y aaaa es el ID de compañía correspondiente)


Resolución 17549 - corregir el campo LedgerID en la tabla GLTRAN mediante el analizador de consultas.

PASOS DE CORRECCIÓN:


1. Haga una copia de seguridad de la base de datos, que puede restaurarse en caso de que se produzca una pérdida de datos no deseados.


2. con el analizador de consultas, acceso a la base de datos de aplicación apropiada.


3. ejecute la siguiente consulta:


Seleccionar * desde GLTRAN donde BatNbr = 'AAAAAA' y módulo = 'MM'


(donde 'AAAAAA' = el número de lote de contabilidad apropiado y = 'MM' el módulo correspondiente)


4. Si LedgerID no es correcta, ejecute la siguiente consulta:


UPDATE GLTRAN SET LedgerID = 'XXXXXXXXXXX' where BatNbr = 'AAAAAA' y LedgerID = 'xxxxxxxxxx' y módulo = 'MM'


(donde 'XXXXXXXXXXX' = el LedgerID correcto, 'AAAAAA' = el adecuado GL batch number, 'xxxxxxxxxx' = el LedgerID incorrecta y = 'MM' el módulo correspondiente)


5. acceso General Ledger registrar transacciones (01.520) y contabilizar el lote.


Resolución 21434 - el campo AcctType en las tablas de ACCTXREF ACCOUNTand mediante el analizador de consultas de actualización

1. acceso General Ledger GL Setup (01.950) - gráfico de orden Acct.


2. tome nota del gráfico de Acct orden seleccionado. Los valores para el campo AcctType en las tablas cuenta y ACCTXREF que se corresponden con el orden de COA constará de un carácter numérico y un carácter alfanumérico. A menudo son como sigue:


Activo pasivo de 1A 2L 3I ingresos gastos 4E


PASOS DE CORRECCIÓN:


1. Haga una copia de seguridad de la base de datos, que puede restaurarse en caso de que se produzca una pérdida de datos no deseados.


2. Abra el analizador de consultas, inicie sesión en el servidor adecuado y elija la base de datos de aplicación.


3. ejecute la siguiente instrucción de SQL para comprobar el valor del campo AcctType en la tabla cuenta:


SELECT AcctType, * de cuenta donde Acct = 'XXXXXX'


(donde 'XXXXXX' = el número de cuenta afectado)


4. ejecute la siguiente instrucción si AcctType no está lleno o es incorrecto:


UPDATE cuenta SET AcctType = 'Aa' donde Acct = 'XXXXXX'


(donde 'Aa' = un valor basado en el orden seleccionado en la configuración de contabilidad | Gráfico de Acct orden como se indicó en el paso 2 de comprobación).


5. Seleccione la base de datos del sistema y ejecute la instrucción siguiente para comprobar el campo AcctType en ACCTXREF:


SELECT AcctType, * desde ACCTXREF donde Acct = 'XXXXXX' y CpnyID = 'aaaa'


(donde 'XXXXXX' = el número de cuenta y 'aaaa' afectado = el ID de compañía correspondiente)


6. ejecute la siguiente instrucción si AcctType no está lleno o es incorrecto:


UPDATE ACCTXREF SET AcctType = 'Aa' donde Acct = 'XXXXXX' y CpnyID = 'aaaa'


Resolución 21476 - comprobar que las cuentas tienen un estado de cuenta de activo en General contabilidad plan de mantenimiento de cuentas (01.260).

PASOS DE CORRECCIÓN:


1. vaya al gráfico de Contabilidad General de mantenimiento de cuentas (01.260).


2. Seleccione el número de cuenta apropiado.


3. Compruebe que el estado de la cuenta está activa.


Resolución 27142 - relaciones para crear todas las combinaciones de cuentas/subcuentas que se utilizará para cada compañía en varias empresas intercompañía Acct/Sub mantenimiento (13.260).

NOTAS:


1. los campos siguientes se utilizan en empresas vinculadas Acct/Sub mantenimiento (13.260) para designar diferentes cuentas/subcuentas se utilizan para las transacciones de empresas vinculadas.


>>-se utiliza para introducir información de vencimiento desde la empresa.


Id. de compañía - clave única utilizada para identificar cada empresa en el sistema; se utiliza al especificar la información de la empresa en las transacciones.


Módulo: dos caracteres código de módulo. Si debe utilizarse la misma cuenta y subcuenta para todos los módulos, seleccionar todo, en caso contrario, seleccione el módulo específico desde el cuadro de lista desplegable.


Pantalla - siete caracteres de código para la pantalla. Si es la misma cuenta y subcuenta que se utilizará para todas las pantallas de los módulos especificar todos, en caso contrario, introduzca el número de pantalla específicos, es decir, 03010.


Cuenta - la transacción de empresa vinculadas está vencido desde.


Sub - subcuenta la transacción de empresa vinculadas está vencido desde.


>> a - usar para escribir información de la empresa debido a.


Id. de compañía - clave única utilizada para identificar cada empresa en el sistema; se utiliza al especificar la información de la empresa en las transacciones.


Cuenta - cuenta la transacción de empresa vinculadas es de vencimiento.


Sub - subcuenta la transacción de empresa vinculadas es de vencimiento.


2. diferentes cuentas o subcuentas no se utiliza para la misma relación entre empresa y la misma pantalla de datos de origen.


Sub-resolución 3010 - actualizar el registro de lotes o GLTRAN utilizando el analizador de consultas para corregir el valor CuryID.

PASOS DE COMPROBACIÓN:


1. Inicie sesión en la base de datos de aplicación apropiada mediante el analizador de consultas y ejecute la siguiente instrucción:


Seleccione CuryID, * de GLTRAN donde BatNbr = 'XXXXXX' y módulo = 'Aa'


(donde XXXXXX es el número de lote y AA = el módulo del lote)


2. comparar los valores de GLTRAN CuryID con el CuryID en el registro por lotes mediante la siguiente instrucción SQL:


CuryID SELECT de lote donde BatNbr = 'XXXXXX' y el módulo = 'Aa' (donde XXXXXX es el número de lote y AA = el módulo de la sección)


Nota: Esto debería devolver sólo un registro.


3. Si el valor difiere de la GLTRANs o si aparece un valor null, continúe con los pasos de corrección.


PASOS DE CORRECCIÓN:


1. Haga una copia de seguridad de la base de datos, que puede restaurarse en caso de que se produzca una pérdida de datos no deseados.


2. actualizar el registro por lotes o GLTRAN con la siguiente instrucción:


CuryID establecido de actualización por lotes (GLTRAN) = 'XXXX' where BatNbr = 'AAAAAA' y el módulo = 'ZZZZ' y CuryID = 'xxxx' (donde XXXX = el CuryID correcto, AAAAAA = el número de lote, ZZ = el módulo y xxxx = el CuryID incorrecta)




Este artículo fue ID:126851 de documento de TechKnowledge