Buscar en este blog

jueves, 10 de octubre de 2013

CONSTRUIR DTE USANDO CLASE C#

CONSTRUIR DTE USANDO CLASE C#


Bueno mucha gente me ha preguntado cómo puede construir sus dtes utilizando una forma simple y didáctica para realizarlo. Con un poco de paciencia y unos cuantos dolores de cabeza he construido una clase compuesta que permite realizar este trabajo. Les dejo los ejemplos de como funciona. Si alguien esta interesado en ella puede llamarme y charlamos. 

Principios generales

 Esta clase está basada en la posibilidad de serializar un objeto. Utilizando etiquetas de System.Serialization de C#. Este proceso permite transformar un objeto en su representación XML, exponiendo solo los elementos públicos de la misma y ocultando los privados. Particularmente esta clase contiene métodos para serializar, calcular los montos de la totalera, crear el ID del documento.  Los cuales no son visibles al momento de realizar la serializacion.

Primer paso

Primero cree una instancia de la clase y asigne las propiedades básicas del documento a crear, en este caso asigno datos del objeto Dte como la versión, el Id del objeto Documento y Finalmente asigno los datos básicos de la zona de Identificación del documento.




















Segundo paso

Para continuar asignaremos a nuestra clase los valores del emisor, receptor y los totales del documento actual.



























Tercer paso


Ahora lo más importante, es agregar el detalle del documento. Esta operación se realiza de la siguiente forma:



Cuarto paso

Bueno finalmente solo falta serializar el documento para obtener su representación básica en formato XML








El resultado de toda esta operación regresara un archivo físico como el siguiente:












































Calcular los montos


La clase también permite calcular automáticamente los montos de la totalera utilizando un método interno de sumatoria de los valores afectos o exentos según corresponda. Calcula además el monto del IVA y el monto total del documento.










Luego solo debemos asignar el método adecuado:








Lo que dará de resultado lo siguiente:


Totales del documento calculados automaticamente















Nodo TED

Esta clase agrega automaticamente el nodo TED, el cual debe ser timbrado posteriormente por el suario. El resultado de su calculo automatico es el siguiente: