Herramientas Informaticas

Autor: juliocesar20200413 Página 1 de 140

Desarrollador web apasionado y gusto por la buena musica

💎 Guía Maestra: Instalación de SAP HANA Client 2.0

Entrada fija

Edición SAP Business One (HANA 2.0 Rev 56)

Esta guía detalla el despliegue del cliente de base de datos, componente esencial para conectar SAP B1, Crystal Reports, Excel y Power BI.


1 Ubicación del Kit de Instalación

En entornos de SAP Business One, el instalador reside dentro de los paquetes de datos del servidor. No busque instaladores genéricos; navegue a la siguiente ruta:

…\HANA 2.0 rev 56\DATA_UNITS\SAP HANA CLIENT 2.0 FOR B1

Dentro encontrará la arquitectura dual de SAP:

  • 📂 NT_X64: Carpeta exclusiva para Windows (64 bits).
  • 📂 LINX64SUSE: Carpeta para servidores Linux/SUSE.

2 Instalación Paso a Paso

  1. Acceda a la carpeta NT_X64.
  2. Localice el ejecutable hdbinst.exe.
  3. Derechos de Administrador: Haga clic derecho y seleccione “Ejecutar como administrador”.
  4. Consola: Presione Enter para aceptar la ruta por defecto C:\hdbclient.

⚠️ Verificación: La instalación finaliza correctamente cuando visualiza el mensaje: Installation done.

3 Configuración del PATH

Para ejecutar herramientas como hdbsql desde cualquier carpeta, configure la variable de entorno:

  • Busque “Variables de Entorno” en el menú Inicio.
  • En Variables del sistema, edite la variable Path.
  • Agregue una nueva línea con: C:\hdbclient.

4 Activación ODBC (64 bits)

Para habilitar la conexión en aplicaciones de terceros:

  1. Abra el Administrador de orígenes de datos ODBC (64 bits).
  2. Vaya a DSN de sistema > Agregar.
  3. Seleccione el controlador HDBODBC.
  4. Configure la IP del servidor y el puerto (ej: 30015).

// Prueba de fuego en CMDhdbsql -n 192.168.X.X:30015 -u SYSTEM -p Password123 "SELECT * FROM DUMMY"

🚀 Troubleshooting Rápido

  • ¿No ve el driver? Instale “Visual C++ Redistributable 2013/2015”.
  • ¿Error -10709? Verifique el Firewall del servidor en el puerto 30015.

Cómo enlazar sucursales locales con SAP Business One usando ODBC (HANA)

Entrada fija

Repositorio: boilerplateservicelayer
Commit documentado: 53bbd3fe03b083957043911f46b59a04e31175f4

Este manual técnico explica cómo enlazar sucursales locales con sucursales de SAP Business One (OBPL) utilizando ODBC (eODBC) sobre SAP HANA, evitando el uso del Service Layer para consultas de alto rendimiento.


¿Qué problema resuelve esta implementación?

En muchos proyectos con SAP Business One, el uso del Service Layer para catálogos o consultas simples introduce latencia innecesaria. Este módulo soluciona ese problema permitiendo:

  • Relacionar sucursales locales con sucursales SAP
  • Consultar la tabla OBPL directamente desde SAP HANA
  • Reducir tiempos de respuesta usando ODBC
  • Eliminar dependencias innecesarias del Service Layer

¿Por qué usar ODBC en SAP Business One?

El uso de ODBC en SAP HANA es ideal para consultas de solo lectura, catálogos y validaciones rápidas.

CaracterísticaService LayerODBC SAP HANA
RendimientoMedioAlto
LatenciaAltaBaja
Ideal paraCRUD complejoCatálogos y consultas
Dependencia SAPAltaMedia

Estructura del módulo de enlace SAP

La solución se divide en cuatro componentes principales:

  1. Tabla de enlace entre sucursal local y SAP
  2. Controlador con consultas ODBC
  3. Vista con DataTables server-side
  4. Formulario con Select2 dinámico

Tabla link_sap_branchoffice

Esta tabla permite mantener la relación entre el sistema local y SAP Business One sin duplicar información de SAP.

CampoDescripción
idID interno
idEmpresaEmpresa local
idBranchOfficeSucursal local
idBranchOfficeSAPSucursal SAP (OBPL.BPLId)
created_atFecha de creación
updated_atFecha de actualización
deleted_atBorrado lógico

Conexión a SAP HANA usando ODBC

La conexión ODBC se realiza directamente contra SAP HANA, lo que permite consultas rápidas y estables.

Conexión ODBC en PHP


$conn = odbc_connect(
    $dataConect['nameODBC'],
    $dataConect['userODBC'],
    $dataConect['passwordODBC']
);

Fijar el schema en SAP HANA


SET SCHEMA "COMPANYDB"

Este paso es obligatorio para evitar errores como invalid table name en SAP HANA.


Consulta optimizada a la tabla OBPL

Para obtener una sucursal SAP se realiza una consulta directa a la tabla OBPL:


SELECT
    "BPLId",
    "BPLName"
FROM OBPL
WHERE "Disabled" <> 'Y'
  AND "BPLId" = ?
  • Consulta directa
  • Sin bucles innecesarios
  • Ideal para formularios y edición

Listado con DataTables server-side

El módulo utiliza DataTables en modo server-side para manejar grandes volúmenes de datos:

  • Paginación eficiente
  • Búsqueda global
  • Ordenamiento dinámico
  • Filtrado por empresa del usuario

Select2 dinámico para sucursales

Sucursal local

Se cargan las sucursales locales vía AJAX usando Select2.

Sucursal SAP (OBPL)

Las sucursales SAP se consultan directamente desde SAP HANA vía ODBC, sin Service Layer.


Beneficios clave de esta arquitectura

  • Mayor rendimiento en SAP Business One
  • Menor latencia en consultas
  • Menos carga en el Service Layer
  • Arquitectura escalable y mantenible

Buenas prácticas recomendadas

  • Usar ODBC solo para consultas de lectura
  • Usar Service Layer para escrituras en SAP
  • Centralizar credenciales ODBC
  • Siempre definir el schema en SAP HANA

Conclusión

Este enfoque permite integrar SAP Business One con sistemas locales de forma eficiente, utilizando ODBC sobre SAP HANA como alternativa rápida y estable al Service Layer.

Ideal para catálogos, validaciones, reportes y sistemas híbridos SAP.

🚀 Guía de Activación CData ODBC SAP BUSINESS ONE

Entrada fija

SAP HANA Driver 2025 | Linux Mint & Ubuntu

Esta guía resuelve el error Could not find a valid license permitiendo la activación del periodo de prueba o licencia comercial.

1. Localizar el Motor de Activación

El driver incluye una utilidad Java específica. En la versión 2025, el archivo clave es:

/opt/cdata/cdata-odbc-driver-for-saphana/lib/cdata.odbcm.saphana.jar

2. Ejecutar el Asistente por Terminal

Usa el siguiente comando para forzar la apertura del gestor de licencias (requiere privilegios de sudo):

sudo java -cp /opt/cdata/cdata-odbc-driver-for-saphana/lib/cdata.odbcm.saphana.jar cdata.odbc.saphana.DriverMain -license

3. Datos de Registro (Modo TRIAL)

Dentro del asistente, completa la información solicitada:

  • 👤 Name: Tu nombre completo
  • 📧 Email: Tu correo electrónico
  • 🔑 Product Key: Escribe TRIAL

Nota: Si tienes una clave comprada, ingrésala en lugar de “TRIAL”.

4. Configuración de Permisos Finales

Es vital copiar la licencia y dar permisos de lectura para que PHP/Apache puedan detectarla:

# Crear carpeta de configuración
mkdir -p ~/.cdata

# Copiar archivo de licencia
sudo cp /opt/cdata/cdata-odbc-driver-for-saphana/lib/CData.ODBC.SAPHANA.lic ~/.cdata/

# Liberar permisos de lectura
sudo chmod 644 ~/.cdata/CData.ODBC.SAPHANA.lic
sudo chmod 644 /opt/cdata/cdata-odbc-driver-for-saphana/lib/CData.ODBC.SAPHANA.lic

📋 Detalles de la Licencia Trial

  • Vigencia: 30 días a partir de la activación.
  • Capacidad: Funcionalidad completa sin límite de registros.
  • Requisito: Requiere Java JRE instalado en el sistema.

Guía generada para Julio César – Linux Mint 22

Conectarse a SAP HANA desde Linux Mint usando CDATA ODBC (Guía Completa)

Entrada fija

Conectar aplicaciones PHP o frameworks como CodeIgniter a SAP HANA desde Linux puede ser un reto, especialmente cuando no se quiere instalar el SAP HANA Client oficial. En esta guía aprenderás paso a paso cómo instalar y configurar CDATA ODBC Driver para SAP HANA en Linux Mint, una alternativa rápida y funcional para entornos de desarrollo.


¿Qué es CDATA ODBC para SAP HANA?

CDATA es un proveedor de drivers ODBC comerciales que permiten conectarse a múltiples bases de datos empresariales, incluido SAP HANA, sin necesidad de instalar clientes pesados de SAP.

Ventajas

  • Instalación sencilla
  • Compatible con PHP, Python y Java
  • Ideal para Linux Mint / Ubuntu
  • No requiere SAP HANA Client

Consideraciones

  • Driver comercial
  • Incluye periodo de prueba (~30 días)
  • Recomendado para desarrollo y pruebas

Requisitos del sistema

  • Linux Mint 22 (64 bits)
  • Acceso a SAP HANA (IP, puerto, usuario y base de datos)
  • Permisos sudo
  • PHP (opcional para pruebas)

1. Instalar dependencias necesarias

sudo apt update
sudo apt install -y unixodbc unixodbc-dev libssl3 libc6

Verifica la instalación:

odbcinst -j

2. Descargar CDATA ODBC Driver para SAP HANA

Descarga el driver desde el sitio oficial:

https://www.cdata.com/drivers/saphana/odbc

Selecciona:

  • Platform: Linux
  • Architecture: 64-bit
  • Technology: ODBC

El archivo descargado tendrá un nombre similar a:

CDataODBCDriverforSAPHANA.tar.gz

3. Descomprimir el instalador

cd ~/Descargas
tar -xvzf CDataODBCDriverforSAPHANA.tar.gz
cd CDataODBCDriverforSAPHANA

4. Instalar el driver CDATA

sudo ./install.sh

El driver se instalará por defecto en:

/opt/cdata/cdata-odbc-driver-for-saphana/

5. Registrar el driver en ODBC

Verifica que la librería exista:

ls /opt/cdata/cdata-odbc-driver-for-saphana/lib/

Debe existir:

libcdataodbcHANA.so

Edita el archivo odbcinst.ini:

sudo nano /etc/odbcinst.ini

Agrega lo siguiente:

[CData SAP HANA ODBC Driver]
Description=CData ODBC Driver for SAP HANA
Driver=/opt/cdata/cdata-odbc-driver-for-saphana/lib/libcdataodbcHANA.so
UsageCount=1

Verifica el registro:

odbcinst -q -d

6. Crear el DSN de conexión

Edita el archivo odbc.ini:

sudo nano /etc/odbc.ini

Ejemplo de conexión para SAP Business One HANA:

[hana_dev]
Driver=CData SAP HANA ODBC Driver
Server=192.168.1.50
Port=30015
User=HANAUSER
Password=MySecurePass123
Database=SBODEV_HANA

7. Probar la conexión ODBC

isql -v hana_dev

Resultado esperado:

Connected!

8. Instalar soporte ODBC para PHP

sudo apt install php-odbc
sudo systemctl restart apache2

Verifica que PHP tenga ODBC habilitado:

php -m | grep odbc

9. Ejemplo de conexión PHP a SAP HANA

<?php

$conn = odbc_connect(
    'hana_dev',
    'HANAUSER',
    'MySecurePass123'
);

if (!$conn) {
    die(odbc_errormsg());
}

echo "Conectado a SAP HANA usando CDATA ODBC";

10. Ejemplo de consulta SAP HANA

$sql = '
    SELECT 
        "DocEntry",
        "DocNum",
        "CardCode",
        "CardName"
    FROM "OPCH"
    LIMIT 10
';

$rs = odbc_exec($conn, $sql);

while ($row = odbc_fetch_array($rs)) {
    print_r($row);
}

Nota: SAP HANA es sensible a mayúsculas y minúsculas, por lo que es obligatorio usar comillas dobles para tablas y campos.


Conclusión

El driver CDATA ODBC para SAP HANA es una excelente alternativa cuando necesitas conectarte rápidamente a SAP HANA desde Linux Mint sin instalar el cliente oficial de SAP.

  • Instalación sencilla
  • Compatible con PHP y CodeIgniter
  • Ideal para desarrollo y pruebas

Esta configuración puede adaptarse fácilmente a entornos productivos ajustando credenciales, seguridad y manejo de conexiones.

Cómo instalar Plex en Linux Mint 22 y solucionar el audio “subido de tono”

Entrada fija

En esta guía aprenderás a transformar tu ordenador con Linux Mint 22 en un servidor multimedia profesional y a corregir el error común de audio acelerado en la TV.


1. Instalación de Plex Media Server

Para asegurar la estabilidad y recibir actualizaciones automáticas, utilizaremos el repositorio oficial de los desarrolladores de Plex.

Paso 1: Preparar el sistema

Abre la terminal e instala las dependencias necesarias con el siguiente comando:

sudo apt update && sudo apt upgrade -y
sudo apt install apt-transport-https curl wget -y

Paso 2: Añadir el repositorio oficial

Ejecuta estos comandos para configurar la llave de seguridad y el repositorio:

# Añadir llave GPG
curl https://downloads.plex.tv/plex-keys/PlexSign.key | gpg --dearmor | sudo tee /usr/share/keyrings/plexserver.gpg > /dev/null

# Añadir fuente de repositorio
echo "deb [signed-by=/usr/share/keyrings/plexserver.gpg] https://downloads.plex.tv/repo/deb public main" | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

Paso 3: Instalar el servidor

sudo apt update
sudo apt install plexmediaserver -y

2. Solución al Audio “Subido de Tono” (Efecto Ardilla)

Si el sonido en tu TV se escucha más agudo de lo normal o acelerado, el problema suele estar en la comunicación entre el servidor y el reproductor. Aquí tienes las soluciones:

Solución A: Desactivar el Passthrough de Audio

Esto suele ocurrir cuando la TV intenta decodificar un formato que no soporta. Para arreglarlo:

  • Abre la App de Plex en tu Smart TV.
  • Ve a Configuración > Audio.
  • Busca la opción Passthrough y selecciona Desactivado (o “None”).

Solución B: Sincronización de Frecuencia en Linux Mint

Si tu servidor está conectado por HDMI, asegúrate de que la frecuencia de salida sea la estándar:

  1. Ve al Menú > Configuración de Sonido.
  2. En la salida HDMI, verifica que esté configurada a 48000 Hz (en lugar de 44100 Hz).

3. Configuración de Permisos y Acceso

Plex necesita permisos para leer tus carpetas de películas. Si no aparecen tus archivos, ejecuta:

sudo chmod -R 755 /ruta/a/tus/peliculas

Para finalizar la configuración, accede vía web desde cualquier navegador de tu red:

http://IP-DE-TU-SERVIDOR:32400/web


Nota: Recuerda que para que los discos duros externos funcionen siempre, deben estar configurados para montarse automáticamente en el inicio del sistema.

Guía: Audio Pro en Linux Mint (Baja Latencia)

Entrada fija

Guía: Audio Pro en Linux Mint (Baja Latencia)

Este manual optimiza PipeWire para trabajar con interfaces Behringer U-Phoria, eliminando el retraso (lag) en el monitoreo de OBS Studio.

1. Preparación de Permisos

Para evitar cortes de audio, tu usuario necesita prioridad de “Tiempo Real” (Realtime).

# Añadir usuario al grupo de audio
sudo usermod -aG audio $USER

# Configurar límites de prioridad
sudo nano /etc/security/limits.d/audio.conf

Asegúrate de que el archivo contenga estas líneas:

@audio – rtprio 95
@audio – memlock unlimited

2. Configuración Maestra de PipeWire

Fijamos el “Quantum” (buffer). Un valor de 64 equivale a una latencia casi inexistente.

mkdir -p ~/.config/pipewire/pipewire.conf.d/
nano ~/.config/pipewire/pipewire.conf.d/latency.conf

Pega este código dentro del archivo:

context.properties = {
    default.clock.rate          = 48000
    default.clock.quantum       = 64
    default.clock.min-quantum   = 32
    default.clock.max-quantum   = 128
}

3. Script de Arranque para OBS

Crea un lanzador para asegurar que OBS siempre inicie con la máxima prioridad.

nano ~/OBS_Rapido.sh

Contenido del script:

#!/bin/bash
# Forzar el motor de audio
pw-metadata -n settings 0 clock.force-quantum 64
# Abrir OBS con latencia forzada
PIPEWIRE_LATENCY="64/48000" obs

No olvides dar permisos de ejecución:

chmod +x ~/OBS_Rapido.sh

4. Configuración en OBS Studio

  • Frecuencia: Ajustes > Audio > General > 48kHz.
  • Dispositivo: Ajustes > Audio > Avanzado > Seleccionar UMC202HD.
  • Monitoreo: Propiedades de audio avanzadas > Monitorización y salida.

Nota importante: Si escuchas “clics” o sonido robótico, aumenta los valores de 64 a 128 en el archivo de configuración y en el script.

Flameshot: la herramienta de capturas de pantalla más potente para Linux

Entrada fija

Guía completa + tutorial de instalación en Linux Mint 22.1

Flameshot se ha convertido en una de las aplicaciones más populares para realizar capturas de pantalla en Linux. Su éxito se debe a su combinación de simplicidad, potencia y herramientas de edición integradas, que lo hacen comparable — e incluso superior — a alternativas como Lightshot en Windows.

A diferencia de muchas aplicaciones tradicionales que solo permiten capturar imágenes, Flameshot integra un editor en vivo, permitiendo señalar, remarcar, difuminar o anotar directamente en la captura antes de guardarla.

En esta guía conocerás qué es Flameshot, sus principales características y cómo puedes instalarlo fácilmente en Linux Mint 22.1.


¿Qué es Flameshot?

Flameshot es una herramienta de captura de pantalla libre, gratuita y multiplataforma. Está desarrollada en Qt, por lo que funciona rápido y tiene un diseño moderno, sin complicaciones.

A diferencia del capturador básico de Mint o GNOME Screenshot, Flameshot se destaca porque:

  • ✏️ Permite editar la captura en el momento, sin abrir programas externos.
  • 🔒 Incluye herramientas de difuminado para datos privados.
  • 📌 Añade flechas, cuadros, texto, líneas y resaltado.
  • 🚀 Se activa con un atajo del teclado, perfecto para capturas rápidas.
  • ☁️ Puede subir capturas a Imgur directamente.
  • ⚙️ Es altamente configurable: colores, atajos, tamaño de pincel, etc.

Por todo esto, Flameshot es la alternativa más sólida a Lightshot en Linux.


Principales características

Edición en vivo

Cuando capturas una parte de la pantalla, apareces directamente dentro del editor. Puedes dibujar, agregar flechas, texto, círculos, resaltar o pixelar.

Captura inteligente

Permite seleccionar exactamente el área que deseas capturar con zoom y guías para precisión milimétrica.

Subir a Imgur

Ideal para compartir capturas rápidamente con amigos, compañeros o clientes.

Personalización completa

Puedes ajustar colores, tamaños de herramientas, teclas, comportamiento del botón derecho, etc.

Compatible con cualquier escritorio

Funciona en Cinnamon, Mate, XFCE, GNOME y KDE.


Cómo instalar Flameshot en Linux Mint 22.1

Existen dos formas fáciles de instalarlo. Te explico ambas.

Método 1: Instalación desde APT (recomendado)

Linux Mint 22.1 permite instalar Flameshot automáticamente desde los repositorios oficiales.

sudo apt update
sudo apt install flameshot

Eso es todo. Con esto ya tendrás Flameshot funcionando.

Método 2: Última versión desde AppImage (opcional)

Si quieres la versión más reciente sin esperar a que Mint actualice su repositorio:

  1. Descarga la AppImage desde la página oficial: https://flameshot.org
  2. Dale permisos de ejecución:
chmod +x Flameshot-*.AppImage
  1. Ejecuta:
./Flameshot-*.AppImage

No necesitas instalar nada más.


Configurar Flameshot como capturador predeterminado (reemplazar Impr Pant)

Linux Mint permite cambiar el comando que ejecuta la tecla ImprPant.

  1. Abre: Menú → Configuración del Sistema → Teclado
  2. Ve a la pestaña: Atajos personalizados
  3. Crea un nuevo atajo:
    • Nombre: Flameshot GUI
    • Comando: flameshot gui
  4. Asigna la tecla Impr Pant o la combinación que prefieras.

Listo: ahora cada vez que presiones ImprPant, se abrirá Flameshot.


Cómo usar Flameshot (guía rápida)

Cuando presionas Impr Pant (o ejecutas flameshot gui):

  1. La pantalla se oscurecerá.
  2. Selecciona el área que quieres capturar.
  3. Te aparecerán las herramientas del lado izquierdo o superior.
  4. Puedes dibujar flechas, escribir texto, resaltar, pixelar o encerrar áreas.
  5. Cuando termines, guarda con Ctrl + S o copia al portapapeles con Ctrl + C.

Conclusión

Si buscas una herramienta profesional, rápida y fácil de usar para capturas de pantalla en Linux, Flameshot es probablemente la mejor opción disponible. Su capacidad de edición instantánea, su integración con atajos y su diseño intuitivo lo convierten en un reemplazo ideal de herramientas como Lightshot.

Si necesitas ayuda extra, puedo explicarte cómo:

  • Configurar la tecla Impr Pant automáticamente.
  • Crear un lanzador en la barra.
  • Hacer que Flameshot inicie al arrancar el sistema.
  • Compararlo con alternativas como Ksnip o Shutter.

Flameshot: la herramienta de capturas de pantalla más potente para Linux

Guía completa + tutorial de instalación en Linux Mint 22.1

Flameshot se ha convertido en una de las aplicaciones más populares para realizar capturas de pantalla en Linux. Su éxito se debe a su combinación de simplicidad, potencia y herramientas de edición integradas, que lo hacen comparable — e incluso superior — a alternativas como Lightshot en Windows.

A diferencia de muchas aplicaciones tradicionales que solo permiten capturar imágenes, Flameshot integra un editor en vivo, permitiendo señalar, remarcar, difuminar o anotar directamente en la captura antes de guardarla.

En esta guía conocerás qué es Flameshot, sus principales características y cómo puedes instalarlo fácilmente en Linux Mint 22.1.


¿Qué es Flameshot?

Flameshot es una herramienta de captura de pantalla libre, gratuita y multiplataforma. Está desarrollada en Qt, por lo que funciona rápido y tiene un diseño moderno, sin complicaciones.

A diferencia del capturador básico de Mint o GNOME Screenshot, Flameshot se destaca porque:

  • ✏️ Permite editar la captura en el momento, sin abrir programas externos.
  • 🔒 Incluye herramientas de difuminado para datos privados.
  • 📌 Añade flechas, cuadros, texto, líneas y resaltado.
  • 🚀 Se activa con un atajo del teclado, perfecto para capturas rápidas.
  • ☁️ Puede subir capturas a Imgur directamente.
  • ⚙️ Es altamente configurable: colores, atajos, tamaño de pincel, etc.

Por todo esto, Flameshot es la alternativa más sólida a Lightshot en Linux.


Principales características

Edición en vivo

Cuando capturas una parte de la pantalla, apareces directamente dentro del editor. Puedes dibujar, agregar flechas, texto, círculos, resaltar o pixelar.

Captura inteligente

Permite seleccionar exactamente el área que deseas capturar con zoom y guías para precisión milimétrica.

Subir a Imgur

Ideal para compartir capturas rápidamente con amigos, compañeros o clientes.

Personalización completa

Puedes ajustar colores, tamaños de herramientas, teclas, comportamiento del botón derecho, etc.

Compatible con cualquier escritorio

Funciona en Cinnamon, Mate, XFCE, GNOME y KDE.


Cómo instalar Flameshot en Linux Mint 22.1

Existen dos formas fáciles de instalarlo. Te explico ambas.

Método 1: Instalación desde APT (recomendado)

Linux Mint 22.1 permite instalar Flameshot automáticamente desde los repositorios oficiales.

sudo apt update
sudo apt install flameshot

Eso es todo. Con esto ya tendrás Flameshot funcionando.

Método 2: Última versión desde AppImage (opcional)

Si quieres la versión más reciente sin esperar a que Mint actualice su repositorio:

  1. Descarga la AppImage desde la página oficial: https://flameshot.org
  2. Dale permisos de ejecución:
chmod +x Flameshot-*.AppImage
  1. Ejecuta:
./Flameshot-*.AppImage

No necesitas instalar nada más.


Configurar Flameshot como capturador predeterminado (reemplazar Impr Pant)

Linux Mint permite cambiar el comando que ejecuta la tecla ImprPant.

  1. Abre: Menú → Configuración del Sistema → Teclado
  2. Ve a la pestaña: Atajos personalizados
  3. Crea un nuevo atajo:
    • Nombre: Flameshot GUI
    • Comando: flameshot gui
  4. Asigna la tecla Impr Pant o la combinación que prefieras.

Listo: ahora cada vez que presiones ImprPant, se abrirá Flameshot.


Cómo usar Flameshot (guía rápida)

Cuando presionas Impr Pant (o ejecutas flameshot gui):

  1. La pantalla se oscurecerá.
  2. Selecciona el área que quieres capturar.
  3. Te aparecerán las herramientas del lado izquierdo o superior.
  4. Puedes dibujar flechas, escribir texto, resaltar, pixelar o encerrar áreas.
  5. Cuando termines, guarda con Ctrl + S o copia al portapapeles con Ctrl + C.

Conclusión

Si buscas una herramienta profesional, rápida y fácil de usar para capturas de pantalla en Linux, Flameshot es probablemente la mejor opción disponible. Su capacidad de edición instantánea, su integración con atajos y su diseño intuitivo lo convierten en un reemplazo ideal de herramientas como Lightshot.

Si necesitas ayuda extra, puedo explicarte cómo:

  • Configurar la tecla Impr Pant automáticamente.
  • Crear un lanzador en la barra.
  • Hacer que Flameshot inicie al arrancar el sistema.
  • Compararlo con alternativas como Ksnip o Shutter.

🚀 Nueva Funcionalidad: Asignación de Productos Internos a Empleados con Control ON/OFF (CodeIgniter 4 + DataTables)

Entrada fija

Hoy quiero compartir una mejora importante implementada en uno de mis módulos de mantenimiento interno: la asignación dinámica de productos internos a empleados, completamente integrada con CodeIgniter 4, DataTables Server-Side y una arquitectura escalable basada en controladores limpios y métodos reutilizables.

Este cambio simplifica el control operativo dentro del sistema y habilita una administración más clara y eficiente entre productos y personal. Aquí te cuento cómo quedó y por qué la solución es tan efectiva.


🎯 ¿Cuál era el objetivo?

Empresas que manejan productos internos suelen tener un problema común:
¿Qué empleados tienen asignado qué producto?

Antes la gestión se hacía de forma manual, lo cual era lento, propenso a errores y nada práctico.

La meta era:

  • ✔ Mostrar todos los empleados
  • ✔ Señalar si tienen o no asignado un producto (ON/OFF)
  • ✔ Permitir activar o desactivar la asignación con un clic
  • ✔ Mantener todo sincronizado con DataTables server-side
  • ✔ Evitar duplicados y mantener la base limpia

🧩 La solución implementada

1. Nueva tabla pivote: productsEmployes

Registra las asignaciones entre productos y empleados.

id | idProduct | idEmploye | created_at | updated_at | deleted_at

Una tabla limpia, auditada y optimizada para relaciones N:N.


2. Endpoint server-side para DataTables

El método ctrDatatableProductsEmployes() hace lo siguiente:

  • 🔹 Recibe el idProduct
  • 🔹 Obtiene automáticamente el idEmpresa del producto
  • 🔹 Lista empleados que pertenecen a esa empresa
  • 🔹 Calcula si cada empleado tiene asignado el producto (ON/OFF)
  • 🔹 Soporta búsqueda, orden y paginación
  • 🔹 Devuelve JSON compatible con DataTables

💡 Resultado: un DataTable rápido, preciso y escalable.


3. Endpoint para alternar asignación ON/OFF

Con el método toggleEmployeProduct() se controla la asignación:

  • ✔ Si la asignación no existe → se inserta
  • ✔ Si ya existe → se elimina
  • ✔ Respuesta JSON simple y rápida

Todo esto sin recargar página, con una UX fluida y sin duplicados.


4. Interfaz visual con botones ON/OFF

En la vista se implementaron botones:

  • 🟢 ON en verde
  • 🔴 OFF en rojo

Cada clic es enviado por AJAX y la tabla se actualiza automáticamente.


🔥 ¿Qué beneficios aporta?

  • ✔ Velocidad operativa: Asignaciones con un solo clic.
  • ✔ Cero duplicados: El sistema valida antes de insertar o eliminar.
  • ✔ Escalable: Lista para ampliarse sin cambiar la base.
  • ✔ UX intuitiva: Interfaz clara y visual.
  • ✔ Integración CI4: Arquitectura limpia y mantenible.

🌟 Conclusión

Este módulo transforma la manera de gestionar productos internos en las empresas. Lo más importante: queda construido sobre una arquitectura clara, modular y fácil de extender, ideal para cualquier sistema administrativo o ERP desarrollado en PHP/CodeIgniter.

Si deseas ver el código completo, la arquitectura o adaptarlo a tu proyecto, puedo ayudarte a integrarlo o extenderlo.

Actualización del Catálogo de Productos – Versión v1.1.2

Entrada fija

Formal y claro (ideal para changelog o documentación técnica)

  1. Se agregó la opción de subcategoría para una mejor organización de los productos.
  2. Se incorporó la funcionalidad de subcategorías para catalogar los productos de forma más precisa.

Añadido formulario de captura.

  • Nuevo: formulario para registrar datos.
  • Implementado formulario de entrada de información.


Se agregó el catálogo de campos extra de producto, que permite agregar campos personalizados al catálogo de productos en caso de que falte alguno.


En el catálogo de productos se agregó un nuevo botón azul con el símbolo “+”. Al hacer clic, se mostrarán los campos personalizados disponibles para capturar. En caso de que ya existan datos registrados, estos se visualizarán automáticamente.

🧭 Tutorial: Crear un Hotspot Wi-Fi Estable en Linux Mint 22.1 XFCE

Entrada fija

✅ Probado en Mint 22.1 XFCE
🔧 Compatible con tarjetas que soporten modo “AP”
📶 Ideal para compartir Internet de Ethernet o Wi-Fi


🧩 1️⃣ Verificar compatibilidad de tu tarjeta Wi-Fi

Abre una terminal (Ctrl + Alt + T) y ejecuta:

iw list | grep -A 10 "Supported interface modes"

Busca algo como:

Supported interface modes:
         * managed
         * AP
         * monitor

📌 Si aparece * AP, tu tarjeta sí puede crear hotspot.
📛 Si no aparece, usa el Método B (hostapd + dnsmasq).


⚙️ 2️⃣ Método A — Crear Hotspot desde la Interfaz de Mint XFCE

  1. Haz clic en el icono de red (Wi-Fi) del panel y selecciona Editar conexiones…
  2. Pulsa Agregar → Wi-Fi.
  3. En la pestaña Wi-Fi:
    • Modo: Punto de acceso (Hotspot)
    • SSID: MintHotspot
    • Banda: 2.4 GHz
  4. En la pestaña Seguridad Wi-Fi:
    • Seguridad: WPA & WPA2 Personal
    • Contraseña: al menos 8 caracteres
  5. Guarda y activa el hotspot.

🧯 3️⃣ Solucionar desconexiones o errores de conexión

🔋 Desactiva el ahorro de energía del Wi-Fi

En la terminal:

sudo mkdir -p /etc/NetworkManager/conf.d
sudo nano /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf

Pega lo siguiente:

[connection]
wifi.powersave = 2

Guarda con Ctrl + O, Enter y Ctrl + X.

Reinicia el servicio de red:

sudo systemctl restart NetworkManager

🧱 4️⃣ Desactiva temporalmente el firewall (para probar)

sudo ufw disable

Si el hotspot funciona, luego puedes añadir reglas para permitir NAT sin dejar el firewall desactivado.


⚙️ 5️⃣ Método B — Hotspot estable con hostapd + dnsmasq

Este método es más estable y no depende de NetworkManager.

🧰 Instalar las herramientas

sudo apt update
sudo apt install hostapd dnsmasq
sudo systemctl stop hostapd
sudo systemctl stop dnsmasq
sudo systemctl disable hostapd
sudo systemctl disable dnsmasq

🔍 Verifica tus interfaces de red

ip link

Anota los nombres de tu interfaz Wi-Fi (por ejemplo wlp2s0) y tu conexión a Internet (por ejemplo enp3s0).

📝 Configurar hostapd

sudo nano /etc/hostapd/hostapd.conf

Pega lo siguiente (ajusta nombres y contraseña):

interface=wlp2s0
driver=nl80211
ssid=MintHotspot
hw_mode=g
channel=6
wmm_enabled=1
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=contraseña123
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

Edita el archivo predeterminado:

sudo nano /etc/default/hostapd

Busca y reemplaza:

#DAEMON_CONF=""
DAEMON_CONF="/etc/hostapd/hostapd.conf"

🧩 Configurar dnsmasq

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.backup
sudo nano /etc/dnsmasq.conf

Pega esto:

interface=wlp2s0
dhcp-range=192.168.10.10,192.168.10.100,12h

🌐 Activar reenvío de red (Internet Sharing)

sudo nano /etc/sysctl.conf

Descomenta o añade esta línea:

net.ipv4.ip_forward=1

Aplica cambios:

sudo sysctl -p

Configura NAT (reemplaza enp3s0 por tu interfaz de Internet):

sudo iptables -t nat -A POSTROUTING -o enp3s0 -j MASQUERADE
sudo sh -c "iptables-save > /etc/iptables.rules"

🚀 Iniciar el hotspot

sudo systemctl start hostapd
sudo systemctl start dnsmasq

Para que inicie automáticamente al arrancar:

sudo systemctl enable hostapd
sudo systemctl enable dnsmasq

✅ Comprobación final

  • Desde tu celular, busca la red MintHotspot
  • Ingresa la contraseña
  • Verifica que se conecta y navega sin desconectarse

🧠 Notas finales

  • Si tu tarjeta no soporta “AP”, usa un adaptador USB Wi-Fi compatible (Atheros o Realtek RTL8812AU).
  • hostapd ofrece una conexión más estable y constante.
  • Para reiniciar el hotspot manualmente:
sudo systemctl restart hostapd dnsmasq

Adaptado por julio101290

Página 1 de 140

Creado con WordPress & Tema de Anders Norén