Herramientas Informaticas

Etiqueta: PHP8 Página 5 de 9

Modificar el tiempo de espera de ejecución de Codeigniter 4.5.3

En ciertas ocasiones es necesario correr algunos procesos en nuestro sistema web que demoran un poco mas de tiempo y por la configuración inicial del framework este proceso no finaliza.

Para ello es necesario poder modificar los parámetros de tiempo de ejecución para darle un poco mas de tiempo al programa y finalice correctamente los procesos.

En las primeras versiones de Codeigniter 4 podíamos cambiar el tiempo de ejecución en app/Config/App.php modificando las siguientes variables

    /**
     * --------------------------------------------------------------------------
     * Session Expiration
     * --------------------------------------------------------------------------
     *
     * The number of SECONDS you want the session to last.
     * Setting to 0 (zero) means expire when the browser is closed.
     *
     * @deprecated use Config\Session::$expiration instead.
     */
    public int $sessionExpiration = 72000;

   /**
     * --------------------------------------------------------------------------
     * Session Time to Update
     * --------------------------------------------------------------------------
     *
     * How many seconds between CI regenerating the session ID.
     *
     * @deprecated use Config\Session::$timeToUpdate instead.
     */
    public int $sessionTimeToUpdate = 300000;

    /**
     * --------------------------------------------------------------------------
     * CSRF Expire
     * --------------------------------------------------------------------------
     *
     * The number in seconds the token should expire.
     *
     * @deprecated Use `Config\Security` $expire property instead of using this property.
     */
    public int $CSRFExpire = 720000;

Pero ahora en las versiones nuevas tenemos que modificar en el archivo app/Config/Session.php ya las variables son las siguientes:

    /**
     * --------------------------------------------------------------------------
     * Session Expiration
     * --------------------------------------------------------------------------
     *
     * The number of SECONDS you want the session to last.
     * Setting to 0 (zero) means expire when the browser is closed.
     */
    public int $expiration = 720000;

    /**
     * --------------------------------------------------------------------------
     * Session Time to Update
     * --------------------------------------------------------------------------
     *
     * How many seconds between CI regenerating the session ID.
     */
    public int $timeToUpdate = 300000;

Ya con eso podemos alargar el tiempo de ejecucion del sistema, pero vamos a sacrificar que el sistema deje de estar disponible para otra tarea mientras se este ejecutando tal proceso

Problema con la ejecución de Seeders en Codeignter 4

Una de las ventajas de trabajar en el framework de codeigniter 4 son las migraciones, es decir, en lugar de crear la tabla directamente creamos los archivos de migración y cuando actualicemos los fuentes desde nuestra maquina al servidor basta con correr un php spark migrate y los campos y tablas nuevas se actualizan instantáneamente en servidor de base de datos de nuestro servidor.

En los archivos de base de datos o de migración de de dos tipos que son los siguientes

  • Migration
  • Seeds

Los archivos de migración en resumen es para poner tablas y campos nuevos mientras que los archivos seeds son para insertar datos a la tabla, en nuestro caso permisos, menus ETC

Según teníamos entendido que los seeders se ejecutaban también con el comando de php spark migrate, pero al parecer no se ejecuto en el servidor el motivo era por que tenia errores, pero no los mostro el comando.

Lo que se tuvo que hacer fue correr el siguiente comando

php spark db:seed

A continuación nos solicitara el nombre del archivo seed

CodeIgniter v4.5.1 Command Line Tool - Server Time: 2024-06-24 09:19:25 UTC-07:00

Nombre de semilla :

Le ponemos el nombre de la semilla en nuestro caso es nuestro archivo se llama PermissionNotaCreditoSeeder.phpl a clase se llama igual solo que sin la extension .php quedaria de la siguiente forma y le damos enter en caso de que el archivo contenga un error nos los mostrara, en nuestro caso como todo nos salió bien nos arrojo este mensaje

El contenido del archivo seed era el siguiente

<?php

namespace App\Database\Seeds;

use CodeIgniter\Config\Services;
use CodeIgniter\Database\Seeder;
use Myth\Auth\Entities\User;
use Myth\Auth\Models\UserModel;
use julio101290\boilerplate\Models\MenuModel;

class PermissionNotaCreditoSeeder extends Seeder {

    /**
     * @var Authorize
     */
    protected $authorize;

    /**
     * @var Db
     */
    protected $db;

    /**
     * @var Users
     */
    protected $users;

    //protected $menu;

    public function __construct() {
        $this->authorize = Services::authorization();
        $this->db = \Config\Database::connect();
        $this->users = new UserModel();
    }

    public function run() {

        $this->authorize->createPermission('listaNotaCredito-permission', 'Permiso para la lista de notas de crédito');
        $this->authorize->addPermissionToGroup('listaNotaCredito-permission', 'admin');
        $this->authorize->addPermissionToUser('listaNotaCredito-permission', 1);
        
    }
}

Como recortar silencios incómodos automáticamente en los videos en Windows 10

Dentro del software libre tenemos muchas herramientas que nos permiten realizar nuestro trabajo y en este caso que es la edición de video hay una herramienta hecha en Python que nos permite quitar los silencios en un video, es decir, quitar esas regiones del video en las que no hablamos.

Bien para ello necesitaremos descargar el software jumpcutter que la pueden descargar desde Github, https://github.com/carykh/jumpcutter

Primero necesitaremos tener instalado Python en nuestro Windows 10 para ello solo entramos al CMD y escribimos Python nos mandara a la tienda de Windows y allí solo le damos obtener

Como instalar iReports en Netbeans 20

iReports es una herramienta que nos va ayudar a crear reportes de una manera eficaz, nos puede server tanto para programas hechos en Java y también para PHP aunque necesitaremos tener instalado java

Como instalar Netbeans 20 en Windows 10

Para poder codificar o correr paso a paso el nuestros proyectos hechos en PHP8.2 en nuestro caso es de nuestra preferencias usar Netbeans, para ello vamos a instalar la versión mas reciente al momento que es la 20

En la pagina oficial de apache Netbeans nos da un enlace para descargar un paquete de la comunidad en donde ya viene incluido el jdk

Así que descargamos directamente desde el siguiente enlacen https://github.com/codelerity/netbeans-installers/releases/download/v20-build1/Apache-NetBeans-20.exe

Ejecutamos el archivo y no es mas que dar click en siguiente -> siguiente

Y listo ya tenemos nuestro IDE para desarrollar cómodamente en PHP/Java entre otros lenguajes

Como instalar xDebug en PHP 8.2 Windows 10 2024

Para poder correr el fuente de un proyecto hecho en PHP 8.2 se necesita instalar xDebug, a continuación dejaremos los pasos para instalarlo correctamente

Entramos a la siguiente pagina https://xdebug.org/wizard

Abrimos la consola CMD y escribimos php -i y copiamos y pegamos en el área de texto de la pagina de xdebug y de damos click al boton de analyse my phpinfo() output

Creando CRUD de remolques para la carta porte 3.0 en CodeIgniter 4 #22

Para la carta porte3.0 también requerimos del catalogo de remolques el cual tendrá los siguientes datos.

  • Id
  • idEmpresa
  • Descripcion
  • subtipo Remolque
  • Placa

Agregando campos nuevos para choferes y usarlo en carta porte 3.0 en CodeIgniter 4 #21

En este caso vamos a requerir tres campos mas que son los siguientes

  • tipoFigura
  • RFCFigura
  • numLicencia

Agregando campos nuevos para vehículos y usarlo en carta porte 3.0 en CodeIgniter 4 #20

Para hacer uso de la carta porte necesitaremos extender los campos de la tabla vehículos ya que vamos a necesitar los siguientes campos nuevos

  • permSCT
  • numPermisoSCT
  • configVehicular
  • pesoBrutoVehicular
  • anioModelo
  • aseguraRespCivil
  • polizaRespCivil

Primero creamos el archivo de migración con el siguiente comando

Creando CRUD de ubicaciones para la carta porte 3.0 en CodeIgniter 4 #19

La Carta Porte 3.0 es la versión más reciente del complemento que debe acompañar a los Comprobantes Fiscales Digitales por Internet (CFDI) que amparan el traslado de mercancías en México. Esta versión entró en vigor el 25 de noviembre de 2023 y es obligatoria a partir del 1 de enero de 2024.

La Carta Porte 3.0 tiene como objetivo mejorar la trazabilidad de las mercancías que se transportan en México, así como facilitar el cumplimiento de las obligaciones fiscales de los contribuyentes. Para ello, incluye nuevos campos y requisitos que deben ser proporcionados por los emisores de los CFDI.

Entre los principales cambios que introduce la Carta Porte 3.0 se encuentran los siguientes:

  • La inclusión de nuevos datos sobre el transporte de las mercancías, como el medio de transporte, la ruta y la fecha de salida y llegada.
  • La obligación de identificar al destinatario de las mercancías, incluso si es una persona física.
  • La posibilidad de utilizar un identificador único para el CFDI, lo que facilitará su consulta y verificación.

La Carta Porte 3.0 es un complemento obligatorio para todos los contribuyentes que realicen el traslado de mercancías en México, independientemente de su tamaño o actividad económica. Los contribuyentes que no cumplan con esta obligación podrán ser sancionados por el Servicio de Administración Tributaria (SAT).

A continuación, se presentan algunos ejemplos de los nuevos campos que deben ser proporcionados en la Carta Porte 3.0:

  • Medio de transporte: Se debe indicar el tipo de medio de transporte utilizado para el traslado de las mercancías, como camión, tren, barco o avión.
  • Ruta: Se debe indicar la ruta que se seguirá para el traslado de las mercancías, incluyendo los puntos de origen y destino.
  • Fecha de salida y llegada: Se debe indicar la fecha en que se iniciará y concluirá el traslado de las mercancías.
  • Destinatario: Se debe identificar al destinatario de las mercancías, incluyendo su nombre, RFC y domicilio.
  • Identificador único del CFDI: Se debe proporcionar un identificador único para el CFDI, el cual podrá ser generado por el SAT o por el emisor del CFDI.

Para obtener más información sobre la Carta Porte 3.0, se puede consultar el sitio web del SAT.

Página 5 de 9

Creado con WordPress & Tema de Anders Norén