Validación de registros en grupo

07/07/2006 - 13:26 por Santiago Barro | Informe spam
Hola a todos,
estamos desarrollando una aplicación de contabilidad y pensamos utilizar un
procedimiento almacenado para introducir los asientos, que aceptará como
parámetros la cuenta de debe, haber, importe, etc.

Evidentemente cada asiento consta de varios apuntes que se irán insertando
uno después de otro.

La pregunta que nos hacemos es cómo podríamos hacer para que sólo deje
insertar asientos totalmente cuadrados. Es decir, que la suma de debes y
haber sea la misma.
Habíamos pensado el que el procedimiento aceptara una tabla, pero creo que
no es una solución elegante porque se tendría que comprobar cada vez que la
tabla tuviera las columnas correctas y no estaría muy claro qué está
esperando el procedimiento almacenado.

Gracias por vuestra ayuda.

Un saludo
Santiago Barro

Preguntas similare

Leer las respuestas

#6 Alejandro Mesa
08/07/2006 - 03:35 | Informe spam
Pedro,

Puedes empezar por ver los ejemplos que aperecen en los los libros en linea,
bajo el tema "openxml". Tambien puedes buscar algunos ejemplos en la internet.

OPENXML (Transact-SQL)
http://msdn2.microsoft.com/en-us/li...86918.aspx

Use OPENXML to Minimize SQL Server Database Calls
http://www.sql-server-performance.c...penxml.asp

Using OpenXML
http://www.sqlservercentral.com/col...penxml.asp


AMB

"Pedro Echavarria" wrote:

Oye amigo y como se hace eso?

Algun enlace ?


"Alejandro Mesa" wrote in message
news:
> Santiago,
>
> Puedes pasar el asiento como un documento XML (todos sus apuntes como un
> grupo), capturar el asiento y validar que este esta cuadrado. De estar
> cuadrado lo insertas de lo contrario lo rechazas.
>
>
> AMB
>
> "Santiago Barro" wrote:
>
>> Hola a todos,
>> estamos desarrollando una aplicación de contabilidad y pensamos utilizar
>> un
>> procedimiento almacenado para introducir los asientos, que aceptará como
>> parámetros la cuenta de debe, haber, importe, etc.
>>
>> Evidentemente cada asiento consta de varios apuntes que se irán
>> insertando
>> uno después de otro.
>>
>> La pregunta que nos hacemos es cómo podríamos hacer para que sólo deje
>> insertar asientos totalmente cuadrados. Es decir, que la suma de debes y
>> haber sea la misma.
>> Habíamos pensado el que el procedimiento aceptara una tabla, pero creo
>> que
>> no es una solución elegante porque se tendría que comprobar cada vez que
>> la
>> tabla tuviera las columnas correctas y no estaría muy claro qué está
>> esperando el procedimiento almacenado.
>>
>> Gracias por vuestra ayuda.
>>
>> Un saludo
>> Santiago Barro
>>
>>
>>
>>



Respuesta Responder a este mensaje
#7 Santiago Barro
10/07/2006 - 10:51 | Informe spam
Gracias a todos por vuestros consejos.

Supongo que nos decantaremos por la opinión de Maxi, y vamos desarrollar la
lógica desde la capa de negocios y mandar todos los apuntes mediante
transacciones.

Sobre el dejar asientos descuadrados en la base de datos, comparto la
opinión de Tito. Nunca dejaremos bajo ningún concepto el dejar guardar un
asiento descuadrado. Después de comentarlo con varias gestorías han sido
unánimes en esto. Ya creará el propio usuario sus cuentas temporales para
guardar sus asientos incompletos.

Gracias a todos y un saludo
Santiago Barro


"Tito" escribió en el mensaje
news:
La contabilidad por definicion es "cuadre" asi que yo no comparto ese
consejo de que se dejen transacciones descuadradas. Lo que pueden hacer
es usar una cuenta destinada a esto donde se transfiera ese "descuadre"
temporalmente hasta que se corrija definitivamente.

"Jorge Gonzalez" escribió en el mensaje
news:uOr%
Santiago,

Además de los valiosos aporte de Maxi y Alejandro Mesa,

Me gustaría comentarte que una contabilidad que no te deja ingresar
asientos no cuadrados es siempre un poco inflexible. Generalmente el
contador va a querer poder "aprobar" el asiento y es el proceso de
aprobación el que debe garantizar que el asiento esté cuadrado. Todo
proceso de cálculo de saldo luego debe tomar en cuenta sólo los asientos
aprobados. Además es sano tener un proceso de "desaprobación" del asiento
siempre y cuando no se haya ejecutado un proceso de cierre y todas esas
implicaciones contables

saludos
Jorge González
Nicaragua


"Santiago Barro" escribió en el mensaje
news:
Hola a todos,
estamos desarrollando una aplicación de contabilidad y pensamos utilizar
un procedimiento almacenado para introducir los asientos, que aceptará
como parámetros la cuenta de debe, haber, importe, etc.

Evidentemente cada asiento consta de varios apuntes que se irán
insertando uno después de otro.

La pregunta que nos hacemos es cómo podríamos hacer para que sólo deje
insertar asientos totalmente cuadrados. Es decir, que la suma de debes y
haber sea la misma.
Habíamos pensado el que el procedimiento aceptara una tabla, pero creo
que no es una solución elegante porque se tendría que comprobar cada vez
que la tabla tuviera las columnas correctas y no estaría muy claro qué
está esperando el procedimiento almacenado.

Gracias por vuestra ayuda.

Un saludo
Santiago Barro












Respuesta Responder a este mensaje
#8 Maxi
11/07/2006 - 00:34 | Informe spam
Hola, si quieres poner la logica en sql, te recomiendo usar sql2005 y armar
stores con .NET



Salu2

Microsoft MVP SQL Server
www.sqlgururs.org
Email:


"Santiago Barro" wrote in message
news:%236F%23V4$
Gracias a todos por vuestros consejos.

Supongo que nos decantaremos por la opinión de Maxi, y vamos desarrollar
la lógica desde la capa de negocios y mandar todos los apuntes mediante
transacciones.

Sobre el dejar asientos descuadrados en la base de datos, comparto la
opinión de Tito. Nunca dejaremos bajo ningún concepto el dejar guardar un
asiento descuadrado. Después de comentarlo con varias gestorías han sido
unánimes en esto. Ya creará el propio usuario sus cuentas temporales para
guardar sus asientos incompletos.

Gracias a todos y un saludo
Santiago Barro


"Tito" escribió en el mensaje
news:
La contabilidad por definicion es "cuadre" asi que yo no comparto ese
consejo de que se dejen transacciones descuadradas. Lo que pueden hacer
es usar una cuenta destinada a esto donde se transfiera ese "descuadre"
temporalmente hasta que se corrija definitivamente.

"Jorge Gonzalez" escribió en el mensaje
news:uOr%
Santiago,

Además de los valiosos aporte de Maxi y Alejandro Mesa,

Me gustaría comentarte que una contabilidad que no te deja ingresar
asientos no cuadrados es siempre un poco inflexible. Generalmente el
contador va a querer poder "aprobar" el asiento y es el proceso de
aprobación el que debe garantizar que el asiento esté cuadrado. Todo
proceso de cálculo de saldo luego debe tomar en cuenta sólo los asientos
aprobados. Además es sano tener un proceso de "desaprobación" del
asiento siempre y cuando no se haya ejecutado un proceso de cierre y
todas esas implicaciones contables

saludos
Jorge González
Nicaragua


"Santiago Barro" escribió en el mensaje
news:
Hola a todos,
estamos desarrollando una aplicación de contabilidad y pensamos
utilizar un procedimiento almacenado para introducir los asientos, que
aceptará como parámetros la cuenta de debe, haber, importe, etc.

Evidentemente cada asiento consta de varios apuntes que se irán
insertando uno después de otro.

La pregunta que nos hacemos es cómo podríamos hacer para que sólo deje
insertar asientos totalmente cuadrados. Es decir, que la suma de debes
y haber sea la misma.
Habíamos pensado el que el procedimiento aceptara una tabla, pero creo
que no es una solución elegante porque se tendría que comprobar cada
vez que la tabla tuviera las columnas correctas y no estaría muy claro
qué está esperando el procedimiento almacenado.

Gracias por vuestra ayuda.

Un saludo
Santiago Barro

















email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida