Entradas

Arreglos - Vectores

Imagen
Los arreglos son un conjunto de datos del mismo tipo . Así de simple se puede describir que es un arreglo, describir las propiedades y los diferentes procesos que puedes aplicar sobre un vector es un poco más complejo más no difícil, solo se requiere leer un poco y practicar... en serio, PRACTICAR !. Un vector es un arreglo unidimensional para explicarlo de una manera gráfica podría decirse que es unidimensional porque en una sola columna están agrupados los elementos. Yo definiría 2 propiedades importantes en un vector: Tipo, Tamaño o longitud . Tipo : Corresponde al tipo de datos que se agrupara en el array: string, int, double, char, objetos, etc.. Longitud : Se refiere al tamaño del array , osea cuantos elementos contendrá. tipo[] identificador = new tipo[n]; En C# la instancia a un vector se realiza de la misma forma independientemente del tipo de dato. La imagen de la izquierda representa dos formas en las que se puede declarar e inicializar un array . Los pu

Diferencias entre un CSD y una FIEL

En México el Servicio de administración Tributaria (SAT) es el responsable de aplicar la legislación fiscal a personas físicas y/o morales con la finalidad de cumplir con sus contribuciones. Persona física: Cualquier persona con capacidad de contraer obligaciones. Persona moral: Organización compuesta por personas físicas o morales que persiguen un objetivo en común. Certificado de Sello Digital Un CSD es un archivo electrónico compuesto por tres elementos que conforman una unidad. Con este documento el SAT garantiza su vinculación con el contribuyente. Es utilizado por el emisor de la factura para firmar el comprobante, esta firma o sello se registra en el atributo cfdi:Comprobante.Sello formando parte de un mecanismo de seguridad para respaldar la integridad y veracidad de los datos registrados en el comprobante. Componentes: Archivo con extensión .cer: representa la parte publica del certificado, contiene información del propietario y de la entidad emisora del certif

Cómo leer un certificado X509

Imagen
Un certificado digital es un archivo que suele tener una serie de datos para identificar a una persona u organización en Internet . "Un certificado digital o certificado electrónico es un fichero informático firmado electrónicamente por un prestador de servicios de certificación, considerado por otras entidades como una autoridad para este tipo de contenido, que vincula unos datos de verificación de firma a un firmante." Wikipedia, Certificado digital Atributos de un certificado Datos del propietario del certificado CN: Nombre. E: Email. T: Localidad ST: Provincia de residencia. O: Organización a la que pertenece. OU: Unidad organizacional. C: País. STREET: Dirección postal. ALL: Nombre completo. Datos del emisor del certificado CN: Nombre. E: Email. T: Localidad. ST: Provincia de residencia. O: Organización. OU: Unidad organizacional. C: País. STREET: Dirección postal. ALL: Nombre completo Serial: Número de serie del certificado. Los

Validación Xml tipo CFDI contra su XSD en C#

Imagen
En esta publicación validaremos un CFDI "Comprobante Fiscal Digital por Internet" utilizado en la facturación en México, implementado por el SAT. Este tipo de XML es sencillo ya que quien este relacionado con este tema sabre que existen muchos nodos y atributos que se pueden implementar en este contexto dependiendo del tipo de comprobante y/o la obligación fiscal con  la que se requiere cumplir. La estructura de un CFDI la pueden consultar en la documentación oficial proporcionada por el SAT. Enlace al final de la publicación. Si aún no estan muy inmersos en el tema de los XML aquí dejo dos enlaces con información muy básica relacionada con: Lectura de archivos XML Escritura de archivos XML Figura 1: CFDI 3.3 Ejemplo Descripción del proceso El CFDI de la Figura 1 es la estructura de un comprobante de tipo Egreso que contiene los datos básicos para la generación de un comprobante de este tipo. Como podrán observar algunos atributos del nodo cfdi:Compr

Manejo de strings

Imagen
El manejo de string en la programación es muy pero, muy frecuente; desde mostrar un simple mensaje hasta realizar validación de caracteres o algún análisis sintáctico. En esta publicación mostrare el uso básico de algunos métodos que trabajan sobre cadenas de caracteres. Figura 1: Manejo de strings . IsNullOrWhiteSpace:  Método disponible a partir del Framework 4.0 , indica si la cadena con la que se este trabajando representa un valor null , una cadena vacía o simplemente esta formada por espacios. El método devuelve un valor True si cumple con alguna de las 3 características  antes mencionadas. Length: L ongitud de la cadena expresada en el número de caracteres que conforman el  dato. Contains: Indica si la cadena origen contiene uno o varios de los caracteres especificados, el método devuelve un valor True si se cumple el enunciado. Replace: Remplaza uno o varios caracteres especificados sobre una cadena origen y devuelve una nueva cadena. IndexOf: O osición en la q