Herramientas Informaticas

Mes: diciembre 2021

COMO REGRESAR ARCHIVOS DEL CÓDIGO FUENTE A UNA VERSIÓN ANTERIOR

En algunas ocasiones hacemos cambios nuevos en el fuente y el resultado no es satisfactorio, como es el caso de agregarle la función de guardar las imágenes directamente en la base de datos, en nuestro caso el resultado fue que funciono mas lento, ya que no queda de otra que volver a la versión anterior.

Esto no sera problema en nuestro caso ya que manejamos la tecnología GIT, y en nuestro caso con Netbeans sera mucho mas fácil volver a la versión anterior.

Primero listamos los archivos que modificamos que serian los siguientes.

  1. controladores/usuarios.controlador.php
  2. vistas/usuarios.php
  3. vistas/cabezote.php
  4. vistas/menu.php
  5. ajax/usuarios.ajax.php
  6. modelos/usuarios.modelo.php

Buscamos el commit donde no tenia los cambios que no deseamos y le damos click y luego revert y así con todos los archivos que hicimos cambios.

Por ultimo eliminamos el campo archivoFoto de la tabla usuarios con este comando

ALTER TABLE `usuarios` DROP `archivoFoto`;

Y bien seria todo el cambio por hoy les dejo el fuente para que lo puedan descargar y el demo, saludos y espero que les sea de utilidad

Como Instalar firebird en Linux Mint

Introducción

Firebird al igual que MySQL/MariaDB es un administrador de base de datos de código abierto que nos puede servir en los programas que desarrollamos.

Las instrucciones básicas SELECT, INSERT, UPDATE son prácticamente similares, no existes diferencias significativas.

Una de las ventajas con las que cuenta Firebird son sus modos de instalación las cuales pueden ser classic, super classic, super, y embedden, esta ultima viene con una librería para hacer portable la aplicación.

Instalación en Linux Mint 19

Para instalarlo solo hace falta correr el siguiente comando

sudo apt install firebird3.0-server

Nos saldrá la siguiente pantalla

Le damos aceptar

Elegimos una contraseña para el usuario SYSDBA

En nuestro caso le pones admin

Bien ahora en la terminal usaremos la herramienta isql-fb y con ella crearemos la base de datos

sudo isql-fb

Nos arrojara la siguiente salida

Use CONNECT or CREATE DATABASE to specify a database
SQL> 

Ahora procederemos a crear una base de datos, para ello usarmos el comando CREATE DATABASE ‘RUTABASE DE DATOS’; Ejemplo;

CREATE DATABASE '/home/juliocesar/prueba.fdb';

Si nos vamos a la ruta con el explorador de archivos veremos como se ha creado el archivo

Ahora solo falta darle derechos de acceso para poder leer la base de datos en DBEAVER , para ellos abriremos Thunar como administrador le damos propiedades al archivo prueba.fdb y en permisos le damos lectura a otros para que dbeaver nos permina leerlo

Bien ahora lo que sigue es abrirlo en DBEAVER, no mostrare como instalar DBEAVER ya que es muy fácil, mostrare como acceder al archivo de la base de datos.

Primero abrimos DBEAVER y le damos en crear conexión, le ponemos en all “todos” y buscamos firebird

Buscamos el archivo de la base de datos que creamos, en este caso es prueba.fdb, le ponemos la contraseña que en nuestro caso es admin.

Podemos dar click en probar conexión para ver si todo esta correcto

Si todo salio bien ya podremos crear tablas y administrar la base de datos prueba.fdb

Ahora si queremos des-instalar corremos el siguiente comando

sudo apt --purge remove firebird3.0-server

Seguido de este comando para que limpie el residuo y la desinstalacion este completa

sudo apt autoremove

Saludos y esperemos pronto usar las bondades de este administrador de base de datos en sistema hechos en PHP

CAMBIOS EN FACTURACIÓN CFDI 4.0 RESUMEN E INFORMACIÓN TÉCNICA

Conoce los cambios que tendrá la factura electrónica a partir del 1 de enero de 2022 existiendo un periodo de convivencia entre la versión 3.3 y la versión 4.0 que comprende del 1 de enero al 30 de abril de 2022.: 

  • Existirá la versión 4.0.
  • Incluirá de manera obligatoria el nombre y domicilio fiscal del emisor y del receptor.
  • Incluirá campos para identificar las operaciones donde exista una exportación de mercancías.
  • Identificará si las operaciones que ampara el comprobante son objeto de impuestos indirectos.
  • Incorporará nuevos apartados para reportar información respecto de las operaciones con el público en general; así como, aquellas que se realicen a cuenta de terceras personas.

El CFDI que ampara retenciones información de pagos

  • La versión será la 2.0.
  • Incluirá de manera obligatoria el nombre y domicilio fiscal del emisor y del receptor.
  • Permitirá relacionar otros CFDI.

El Complemento para recepción de pagos

  • La versión será 2.0.
  • Se incluyen nuevos campos para identificar sí los pagos de las operaciones que ampara el comprobante son objeto de impuestos.
  • Se incluye un nuevo apartado con el resumen de los importes totales de los pagos realizados expresados en moneda nacional, así como los impuestos que se trasladan.

Actualización al servicio de cancelación de facturas

  • A partir del 2022 será necesario señalar el motivo de la cancelación de los comprobantes.
  • Al seleccionar como motivo de cancelación la clave 01 “Comprobante emitido con errores con relación” deberá relacionarse el folio fiscal del comprobante que sustituye al cancelado.
  • Se actualizan los plazos para realizar la cancelación de facturas

 El contenido de esta página no crea derechos ni obligaciones distintos a los establecidos por las disposiciones fiscales. Es de carácter informativo.

CAMBIOS EN EL NODO COMPROBANTE

En la versión se especificara que es la versión 4.0 en lugar de la 3.5

Se agrega un nuevo atributo Exportación el cual sirve para expresar si el CFDI ampara una operación de exportación, su valor viene de un nuevo catálogo del SAT c_Exportacion

Valores que podrá tener c_Exportacion

  1. No aplica
  2. Definitiva
  3. Temporal

Se validará que el valor de este atributo exista en el catálogo c_Exportacion

En caso de que el tipo de exportación sea Definitiva se deberá capturar el complemento de Comercio Exterior.

Se agrega un nuevo nodo InformacionGlobal el cual sirve para mostrar información de facturas emitidas al público en general, o como dice en la información técnica “Nodo condicional para precisar la información relacionada con el comprobante global”, dentro de este nuevo nodo se incorporan los siguientes atributos:

Periodicidad.-  “Atributo requerido para expresar el período al que corresponde la información del comprobante global” El cual sirve para expresar el periodo al que corresponde la información de la factura global, su valor viene de un nuevo catálogo del SAT c_Periodicidad

Ejemplo de valores a capturar

  1. Diario
  2. Semanal
  3. Quincenal

Se validará que el valor de este atributo contenga un valor del catálogo c_Periodicidad

Se validará que el régimen fiscal sea 621(Incorporación Fiscal) en caso de que la periodicidad sea Bimestral

Meses.- “Atributo requerido para expresar el mes o los meses al que corresponde la información del comprobante global” El cual sirve para mostrar el o los meses a los que corresponde la información de la factura global, su valor viene de un nuevo catálogo del SAT c_Meses

ejemplo de los valores del catálogo c_Meses

  1. Enero
  2. Febrero
  3. Agosto – Septiembre

Se validará que el valor de este atributo contenga un valor del catálogo c_Meses

Se validará que el valor de este atributo tenga un mes único cuando el valor de la Periodicidad sea diferente de Bimestral, en caso contrario deberá tener un valor bimestral como Enero-Febrero.

Año.-  “Atributo requerido para expresar el año al que corresponde la información del comprobante global.” El cual sirve para mostrar el año al que corresponde la información de la factura global.

Se validará que el valor de este atributo sea igual al año en curso o al año inmediato anterior

Cambios en el nodo CfdiRelacionados

El nodo CfdiRelacionados cambia su estructura para poder relacionar múltiples CFDIs (Folios Fiscales) con su diferentes tipos de relación.

Se agrega un nuevo nodo ACuentaDeTerceros “Nodo opcional para registrar información del contribuyente Tercero, a cuenta del que se realiza la operación.”

RfcACuentaTerceros.- Atributo requerido para registrar la Clave del Registro Federal de Contribuyentes del contribuyente Tercero, a cuenta del que se realiza la operación.

Se validará que el RFC se encuentre en la lista LCO (Lista de Contribuyentes Obligados) del SAT

Se validará que el valor de este atributo sea diferente al RFC del Emisor y el RFC del Receptor

NombreACuentaTerceros.- Atributo requerido para registrar el nombre, denominación o razón social del contribuyente Tercero correspondiente con el Rfc, a cuenta del que se realiza la operación.

Se validará que el nombre se encuentre en las listas de RFCs inscritos no cancelados del SAT

Se validará que el nombre coincida con las listas de RFCs inscritos no cancelados del SAT

RegimenFiscalACuentaTerceros.– Atributo requerido para incorporar la clave del régimen del contribuyente Tercero, a cuenta del que se realiza la operación.

Se validará que el valor de este atributo contenga un valor del catálogo c_RegimenFiscal

DomicilioFiscalACuentaTerceros.– Atributo requerido para incorporar el código postal del domicilio fiscal del Tercero, a cuenta del que se realiza la operación.

Se validará que el valor del atributo contenga un valor del catálogo c_CodigoPostal

Se validará que el código postal se encuentre en la lista de RFCs inscritos no cancelados del SAT

Se validará que el código postal pertenezca al nombre asociado con el RFC del Tercero

Cambios al nodo Emisor

El atributo Nombre es requerido

Se validará que el valor de este atributo coincida con el nombre del titular del CSD (Certificado de sello digital).

Se validará que el valor de este atributo no coincida con el nombre del titular del CSD (Certificado de sello digital) cuando exista el atributo FacAtrAdquirente

Se agrega un nuevo atributo FacAtrAdquiriente el cual sirve para expresar el número de operación proporcionado por el SAT para los casos de emisión de CFDI a través de un adquiriente.

Se validará que el número de operación sea válido.

Cambios al nodo Receptor

El atributo Nombre es requerido

Se validará que el nombre se encuentre en las listas de RFCs inscritos no cancelados del SAT

Se validará que el nombre coincida con las listas de RFCs inscritos no cancelados del SAT

Se validará si el nombre es PUBLICO EN GENERAL el RFC deberá ser XAXX010101000

Se validará si el nombre no es PUBLICO EN GENERAL y el RFC es XAXX010101000 XEXX010101000, entonces el nombre no deberá coincidir con las listas de RFCs inscritos no cancelados del SAT

Se agrega un nuevo atributo DomicilioFiscalReceptor “Atributo requerido para registrar el código postal del domicilio fiscal del receptor del comprobante. el cual sirve para especificar el código postal del receptor, su valor viene del catálogo c_CodigoPostal

Se validará que el valor de este atributo contenga un valor del catálogo c_CodigoPostal

Se validará si el nombre es PUBLICO EN GENERAL el valor de este atributo deberá ser igual al valor del atributo LugarExpedicion.

Se validará que el código postal se encuentre en la lista de RFCs inscritos no cancelados del SAT

Se validará que el código postal pertenezca al nombre asociado con el RFC del Receptor

Se agrega un nuevo atributo RegimenFiscalReceptor “Atributo requerido para incorporar la clave del régimen fiscal del contribuyente receptor al que aplicará el efecto fiscal de este comprobante.” el cual sirve para especificar el régimen fiscal del receptor del CFDI, su valor viene del catálogo c_RegimenFiscal.

Se validará que el valor de este atributo contenga un valor del catálogo c_RegimenFiscal

Se validará que el régimen fiscal coincida con el tipo de persona física o moral

Se validará si el RFC del receptor es genérico, en este caso el régimen fiscal deberá ser 616 (Sin obligaciones fiscales)

Se modifica la validación del atributo UsoCFDI, el cual deberá corresponder con el tipo de persona física o moral, adicionalmente se validará que corresponda con un valor del catálogo c_UsoCFDI

Cambios al nodo Conceptos

Se agrega un nuevo atributo ObjetoImp, “Atributo requerido para expresar si la operación comercial es objeto o no de impuesto.” sirve para expresar si la operación es o no objeto de impuestos, viene de un nuevo catálogo del SAT c_ObjetoImp.

Ej. de valores del nuevo catálogo c_ObjetoImp

  1. 01 No objeto de impuesto
  2. 02 Sí objeto de impuesto
  3. 03 Sí objeto de impuesto y no obligado al desglose

Se validará que el valor de este atributo contenga un valor del catálogo c_ObjetoImp

Se validará si el valor de este atributo es igual a Sí objeto de impuesto, entonces deberá existir el nodo hijo Concepto/Impuestos.

Cambios al nodo Impuestos/Traslados/Traslado

Se agrega un nueva atributo Base, sirve para expresar la sumatoria de los importes Base de los conceptos con traslado.

Se validará que este atributo tenga hasta la cantidad de decimales que soporte la moneda

Se validará que el valor de este atributo sea igual al redondeo de la sumatoria de las bases trasladadas de los conceptos agrupados por tipo de impuesto y tasa

Se agrega una nueva regla de validación, si sólo existen conceptos con impuesto de tipo Exento en este nodo solo deberán existir los atributos Base, Impuesto y TipoFactor.

Página 3 de 3

Creado con WordPress & Tema de Anders Norén