Esquema: Asegúrate de reemplazar dbo con el esquema correcto en tu base de datos.
Tipos de datos: Estas funciones están diseñadas para cadenas de caracteres (VARCHAR). Puedes adaptarlas para otros tipos de datos si es necesario.
Rendimiento: Para un gran volumen de datos, considera crear índices en las columnas relevantes para mejorar el rendimiento de las consultas.
Funciones nativas: Si estás utilizando una versión más reciente de SQL Server, es posible que ya cuentes con las funciones LPAD y RPAD de forma nativa. Consulta la documentación de tu versión específica.
Ventajas de crear funciones personalizadas:
Flexibilidad: Puedes personalizar las funciones para adaptarse a tus necesidades específicas.
Reutilización: Una vez creadas, puedes utilizar estas funciones en múltiples consultas.
Legibilidad: El código es más fácil de entender y mantener.
Con estas funciones personalizadas, podrás realizar operaciones de relleno de cadenas en SQL Server 2012 de manera similar a como lo harías con las funciones LPAD y RPAD en otras bases de datos.
OFERTAS MERCADO PAGO
¡Hola! 👋 Te regalo $ 100 de descuento para que uses en Mercado Pago por primera vez. Aprovéchalo para: ● Comprar en Mercado Libre ● Pagar con Debit Mastercard® ● Recargar tu celular ● Pagar tus servicios ¡El descuento aplica para un pago mínimo de $ 200 y es válido hasta 7 días! 🤑 Descarga la app para activar tu descuento: https://mpago.li/1C1TreU
La protección de los datos de una aplicación es fundamental. Los respaldos de bases de datos son una línea de defensa esencial ante posibles pérdidas de información causadas por errores humanos, fallas del sistema o ciberataques. En este post, te presentaremos una solución práctica y flexible para realizar respaldos automáticos de bases de datos MySQL: la herramienta mysql-backup autor original ramazancetinkaya/mysql-backup y las modificaciones que hemos implementado en nuestro fork julio101290.
¿Por qué un fork de mysql-backup?
Partiendo de la excelente base que ofrece mysql-backup, decidimos crear un fork con el objetivo de adaptar la herramienta a nuestras necesidades específicas y resolver ciertas limitaciones que identificamos durante su uso. Algunos de los motivos que nos llevaron a crear este fork fueron:
Mejorar el rendimiento: Optimizamos el proceso de respaldo, especialmente para bases de datos de gran tamaño, dividiendo las consultas en fragmentos más pequeños y evitando operaciones innecesarias.
Aumentar la estabilidad: Identificamos y corregimos algunos errores que podían causar inestabilidad en ciertos escenarios, como el manejo de valores nulos o la separación de consultas.
Añadir funcionalidades: Incorporamos nuevas características para ampliar las capacidades de la herramienta, como la posibilidad de personalizar el formato de los archivos de respaldo o integrar la herramienta con otros sistemas.
Instalación con Composer
Para instalar nuestro fork de mysql-backup, utiliza el siguiente comando en tu terminal:
Nuestro fork de mysql-backup ofrece una solución robusta y eficiente para realizar respaldos automáticos de bases de datos MySQL. Al personalizar esta herramienta, hemos obtenido un mayor control y flexibilidad para adaptarla a nuestras necesidades específicas.
Recomendaciones Adicionales:
Automatización: Integra esta funcionalidad en un sistema de automatización para realizar respaldos de forma periódica.
Seguridad: Implementa medidas de seguridad adecuadas para proteger los archivos de respaldo.
Pruebas: Realiza pruebas periódicas de restauración para verificar la integridad de los respaldos.
Documentación: Consulta la documentación completa de nuestro fork en GitHub para obtener más información.
Ejemplo de Uso con CodeIgniter4
PHP
// ... (código existente)
// Cargar la clase MySQLBackup
use Julio101290\MysqlBackup\Backup;
// Obtener los datos de conexión a la base de datos
$host = config('Database')->default["hostname"];
$dbname = config('Database')->default["database"];
$username = config('Database')->default["username"];
$password = config('Database')->default["password"];
$port = config('Database')->default["port"];
$DNS = "mysql:host=$host;port:$port;dbname=$dbname'";
$dbBackupConection = new \PDO($DNS, $username, $password);
// Crear una instancia de MySQLBackup
$mysqlBackup = new MySQLBackup($dbBackupConection, ROOTPATH . "writable/database/backup");
// Realizar un respaldo completo
$backup = $mysqlBackup->backup(false, true, false);
// ... (resto del código)
Cuando iniciamos un pequeño negocio en donde ya tenemos de mas vendedores es importante tener información al momento de las ventas realizadas, de pendiente de cobrar y de por lo menos un inventario básico para saber que necesitamos comprar además de saber cuales son los productos que mas se venden por mes año o día.
También es necesario tener un control de acceso para que los empleados no puedan entrar a visualizar información sensible o esta no pueda ser modificada por ellos si no tienen autorización.
Es necesario también poder ver reportes de las ventas e inventarios en tiempo real desde cualquier ubicación desde la comodidad del dispositivo móvil, sin importar el sistema operativo del dispositivo.
Todo eso se pensó al ir desarrollando el sistema de punto de venta en JCPOS2021
Este sistema puede funcionar desde cualquier servidor que soporte las tecnologías de PHP8, Apache y MariaDB que es el estándar en el mundo de internet.
Les dejo un demo de este sistema y también el código fuente antes de empezar con el manual
Bien al entrar al demo lo primero que vemos es la pantalla de acceso en la cual para el demo el usuario es admin y la contraseña es admin
Aquí tenemos la pantalla de acceso, para el demo entramos con el usuario demo y contraseña demo
Al entrar lo primero que vemos es la pantalla del dashboard, el menú lateral y menú superior,
En esta imagen vemos el menú lateral expandido pero normalmente esta colapsado, este es el dashboard que ve el usuario con todos los derechos en el sistema
ELEMENTOS DEL DASHBOARD
Si el usuario tiene derechos a los elementos del dashboard los mostrara y son los siguientes
Estas son las cajas superiores y en el primer cuadro azul nos muestra todas las ventas registradas, si le damos click en Mas info nos lleva a ver la lista de todas las ventas
En la caja verde nos muestra el total cobrado, si le damos click en mas info nos muestra la lista de lo cobrado
En la caja naranja nos muestra lo pendiente por cobrar, si le damos click en mas info no lleva a la lista de las ventas pendientes por cobrar
En la caja roja solo vemos la lista de los productos
En el grafico de ventas va mostrando el total de ventas por periodo “MES”
Vemos una grafica de los productos mas vendidosEn este grafico nos muestra los clientes que mas nos deben, si damos click en el nombre nos lleva a la lista de ventas pendientes de pago de ese cliente
MENU CONFIGURACIONES
En este menú nos muestra todos los submenús que nos servirá para dictar las reglas de funcionamiento del sistema y cuenta con los siguientes submenús 1. Datos Empresa 2. Usuarios 3. Perfiles 4. Configurar Correo 5. Bitacora
Es que es donde definiremos las variables globales del sistema
SUB MENU DATOS EMPRESA
Aquí alimentaremos el sistema por única vez con los datos de la empresa como nombre dirección ETC, estos datos son los que saldrán en los encabezados de los reportes.
En el ultimo dato donde dice 30 es para poner los días de entrega
SUB MENU USUARIOS
En este catalogo damos las altas, bajas y cambios a los usuarios
Aquí vemos la lista de todos los usuarios creados, en la columna final están los botones para modificar y eliminar, en el botón de arriba es para crear otro usuario
Al darle clic al botón agregar nos saldrá esta ventana con la cual podremos dar de alta usuarios.
En el combo que esta seleccionado vendedor es para seleccionar el perfil y el perfil define los derechos de acceso al sistemaEn esta ventana es para editar el usuario, también lo podemos cambiar de perfil
SUB MENÚ PERFILES
En este catalogo creamos los diferentes perfiles en los cuales le asignamos los derechos de acceso a las diferentes del sistema
Como vemos es un catalogo con el mismo estándar que el de usuarios, así se va a manejar en todo el sistema, en este tipo de catalogo se pueden dar las altas bajas y cambios.
Vemos como podemos activar funciones por perfil
SUB MENU CONFIGURAR CORREO
Sirve para configurar el envió de correo, estos datos nos permitirá enviar directamente los correos de las cotizaciones al correo del cliente
MENU CATALOGO DE CLIENTES
En este catalogo nos servirá para dar de alta todos los clientes, como recomendación deje el primer cliente como publico en general
Como se ve en la ilustración manejamos las altas, bajas y cambios
Al darle agregar nos pide los siguientes datos
Y al darle modificar a un cliente ya modificado nos trae los datos registrados para cambiarlos
SUB MENU BITACORA
Esta opción nos sirve como información para ver los movimientos de los usuarios en caso de error del sistema o error humano
MENU CATALOGO DE CATEGORIAS
Y antes de capturar los productos tenemos que capturar las categorías de productos, solo consta de descripción
MENU CATALOGO PRODUCTOS
Aquí es donde capturamos los productos que se van a vender, también se le asigna la existencia ese valor va disminuyendo conforme se van haciendo ventas
Así es como se ve el catalogo de productos
Al agregar un producto nos pide los siguientes datos
Esta es la ventana para modificar un producto existente, también podemos modificar la existencia
MENU COTIZACIONES
Este menú consta de dos sub menús 1. Nueva Cotización 2. Ver Cotizaciones
SUB MENU NUEVA COTIZACIÓN
Nos permite realizar cotizaciones para enviársela al cliente y si el cliente confirma convertimos la cotización en venta
Para realizar una cotización de lado izquierdo vemos los datos principales como cliente fecha, fecha de vencimiento de la cotización y a lo ultimo son los días de entrega una vez confirmada la venta.
Del lado izquierdo esta los productos que podemos vender, si le damos vender se van agregando a la lista
Si le damos guardar se genera el PDF de la cotización para poder imprimirla o enviársela por correo al cliente
SUB MENU VER COTIZACIONES
Es para ver las cotizaciones realizadas y ver si las eliminamos, copiamos o realizamos la venta
Vemos la lista de cotizaciones, en el menú opciones podemos imprimir, enviar por correo, editar y eliminar
Si le damos click se nos saldrá la ventana para enviar el PDF al correo del cliente
Ventana de envió de correo
Si le damos clic en generar venta se nos creara una venta nueva ligada con la cotización
Al darle click en generar venta en la cotización nos mandara a esta ventana
MENU VENTAS
En el menú ventas contamos con los siguientes sub menús 1. Administrar Ventas 2. Crear Venta 3. Reporte de ventas por producto 4. Reporte de ventas
En el sub menú administrar ventas vemos toda la lista de ventas, en los controles podemos imprimir en PDF la venta, editarla, eliminarla, generar un pago y ver los pagos que se han hecho a la venta del renglón
Al darle clic a la lupa blanca con fondo rosa vemos los pagos que se han realizado y en los controles podemos imprimir el comprobante de pago o eliminar el pago
Ejemplo del comprobante de pago
Cuando le damos click al icono blanco de visa con fondo verde nos sale una ventana para capturar el pago de la venta
SUB MENU REPORTE DE VENTAS POR PRODUCTO
Este reporte nos da una lista de las ventas detallado por producto
Nos da la opción para filtrarlo por producto
SUB MENU REPORTE DE VENTAS
Además de los reportes de grafico de ventas y productos mas vendidos aquí contamos con una grafica de barras con las ventas por vendedor, una grafica de ventas por comprador “Cliente”, aquí podemos filtrar por fecha además viene una opción para exportar en Excel la información.
En la parte superior vemos el rango de fecha y el botón verde para exportarlo a excel
Al darle click en el botón rango nos sale las siguientes opciones para filtrar
Nos muestra la grafica de ventas por vendedorGrafica de ventas por compradoresAl exportar en excel lo exporta en este formato
Saludos no olviden compartir esta pagina si les es útil y también comentar en la caja de comentarios cualquier duda que tengan
Instalación de ejecutable
Tambien lo podemos instalar en nuestra PC sin necesidad de tener internet para que funcione
Primeramente ejecutamos el instalador
En la primer venta nos mostrara la opción para crear el acceso directo, lo dejamos tal y como esta la imagen y le damos click en siguiente
En la siguiente ventana nos muestra como quedaria la instalación
Se comenzara a instalar
Al finalizar la instalación nos mostrara la siguiente ventana, le damos finalizar
Y listo tenemos la aplicacion instalada, posiblemente al abrilo la primera vez no funcione y salga la ventana en blanco, solo hay que cerrarlo y volverlo abrir
WheelSoft 1.5 La solución definitiva para el mantenimiento de flotillas.
¿Tienes una flota de vehículos? ¡WheelSoft es la solución que estabas buscando! Optimiza la gestión de tus neumáticos, reduce los tiempos de inactividad y disminuye los costos operativos. Con WheelSoft, podrás programar mantenimientos preventivos, monitorear el estado de todos tus vehículos y garantizar la seguridad de tus conductores.
Optimiza la gestión de tu flota con nuestro software. Genera reportes de evaluación PDF personalizados y enviarlos automáticamente a tus clientes. Programa mantenimientos, lleva un control exhaustivo de tus vehículos y mejora la satisfacción de tus clientes. ¡Pruébalo ahora y descubre cómo simplificar sus procesos!
Módulos
Tenemos muy pocos módulos lo cual hace que hasta el momento el funcionamiento sea muy básico y son los siguientes
Catálogos
Catálogo de vehículos
Catálogo de clientes
Operaciones
Nuevo Registro
Lista Registros
Administración de Usuario
Perfil
Usuarios
Roles
Permisos
Menú
Configuraciones
Empresas
Configuración de correo
Licencias
Catálogo de Clientes
En este catálogo nos sirve para dar de alta, bajas y cambios los clientes a los cuales se les da a dar el servicio los campos a registrar son los siguientes
Nombre
Dirección
Contacto
Correo Electrónico 1
Correo Electrónico 2
Correo Electrónico 3
Correo Electrónico 4
Correo Electrónico 5
A continuación, vemos la lista de clientes, en el botón Azul es para agregar un cliente nuevo, y en la columna de acciones tenemos los botones para editar y eliminar
Al dar click en agregar nuevo o editar el cliente nos mostrará la siguiente ventana modal
Catálogo de Vehículos
En este catálogo daremos de alta los vehículos a los cuales vamos a registrar los datos a capturar son los siguientes
Nombre de Vehículo
Número de neumáticos
Placa
PSI Recomendado
Kilometraje
Ficha
Tipo neumático
Cliente “Es importante ya que al momento de hacer el registro sólo se mostrarán los vehículos enlazados al cliente seleccionado al registro”
A continuación, vemos la lista de vehículos en la parte superior derecha tenemos el botón azul para registrar el vehículo y en la tabla en la columna acciones tenemos los botones de editar y eliminar vehículo
Al darle click a editar o agregar vehículo nos mostrará la siguiente pantalla modal
Catálogo de Usuario
En este catálogo podemos dar altas, bajas y cambios de usuarios, así como cambiar la contraseña
En imagen posterior vemos la lista de usuarios
Al dar click al botón +Agregar usuario o en el botón editar que está en la columna acción nos mostrará el siguiente modal para capturar el usuario, en esa captura donde podemos dar los permisos necesarios al usuario y asignarle un rol
Catálogo de Permisos
Aquí damos de alta, modificamos y eliminamos los permisos necesarios en el sistema, es mejor no tocarlo
Catálogo de Roles
En este catálogo creamos los roles, en los cuales le asignamos los permisos por rol.
Posteriormente en el catálogo de usuario le asignamos el rol y con eso el usuario se le asignará todos los permisos del rol.
A continuación, vemos la lista de roles
Igualmente, al darle click al botón Editar o nuevo nos abre el modal para agregar o modificar
Catálogo Menú
Aquí es mejor no tocar, es para acomodar el menú al gusto.
Catálogo Empresas
Aquí modificamos los datos de la empresa, solo es para una empresa, solo se debe modificar cuando sea necesario ya que con estos datos se genera la licencia.
Configuración de Correo
En este módulo se configura el correo, esto es para el momento de guardar el registro se envíe el PDF al cliente, si no está bien configurado entonces no se enviará.
Módulo de Licencias
Aquí capturamos la licencia por fecha, si no hay licencia, no está válida o está vencida entonces solo dejara capturar 50 registros en los últimos 30 días
En caso de querer comprar la licencia completa, favor de dar click en el botón verde y le mostrará un texto, ese texto es el que tiene que enviar al desarrollador para el desarrollador le envié la clave de licencia
Una vez enviado y realizado el pago el desarrollador le enviará una licencia la cual tiene que capturar en el campo licencia
Módulo Nuevo Registro
Esta es la parte del día al día, aquí capturamos el registro o también llamada hoja de inspección como pueden ver tenemos un encabezado y detalle de la información, en el encabezado tenemos los siguientes datos
Fecha
No de inspección
No de inspección de cliente
Cliente
Que usuario realizó la hoja inspección
Contacto
Se puede observar que también existen dos botones uno llamado Agregar Cliente Nuevo el cual nos permite registrar un cliente que actualmente no existe en la base de datos del programa
Una vez registrado ya se podrá ver en la lista de usuarios
Tenemos también el botón de ver registros anteriores el cual nos permitirá ver los registros del cliente que esté seleccionado
Al darle click nos mostrará la lista de registros del cliente, en el cual vemos la fecha contacto y acciones, en acciones nos da los botones de modificar e imprimir la hoja de inspección
Al dar click imprimir la hoja de inspección “El botón azul con el icono de PDF” nos arroja el PDF de la Hoja de Inspección
Y al darle click al botón editar nos va llevar a editar esa hoja de inspección
En la parte de abajo tenemos el detalle de la hoja de inspección que es donde ponemos el vehículo, automáticamente nos da los datos de fecha, placa, vehículo, PSI recomendado, Kilometraje, rueda y cantidad de neumáticos
Como se puede observar, en la parte media tenemos los botones de añadir vehículo y Registrar Vehículo Nuevo
Al darle click en Añadir Vehículo nos mostrará la lista de todos los artículos del cliente
Al darle click al botón “+” ese vehículo se agregará a la lista
En caso de que el vehículo sea nuevo le damos click al botón, Registrar Vehículo Nuevo
Nos mostrará la hoja de captura
Le damos guardar y automáticamente ese vehículo se le asigna al cliente en el que estamos haciendo el registro y ya se mostrar el vehículo registrado
En el detalle tenemos los botones de eliminar y el de los engranajes, el de eliminar simplemente elimina el registro y el de los engranes nos captura los datos de inspección de ese vehículo.
Al darle click nos sale el siguiente modal con dos pestañas, en la primera capturamos el PSI y los MM de cada neumático que tiene el vehículo, como este vehículo tiene 4 neumáticos es la razón por la cual solo cuatro campos están habilitados.
En la segunda pestaña NOTAS, nos sales diferentes checks, como el de calibrar Presión de aire, Rotar neumáticos, chequeo de tren Delantero, cambiar neumático, tapar neumático, y un área de texto para capturar una nota
Dependiente de los checks seleccionado es como se imprimirá el PDF
Y esto es de la primer pestaña
Ya al final nos quedan los botones de Guardar y Guardar e Imprimir
El botón guardar simplemente nos guarda la información y Guardar e Imprimir nos guarda el registro, lo manda imprimir y por último lo envía por correo en caso de que el cliente tenga correo en su catálogo.
Instalación
Ejecutamos el instalador
Seleccionamos el lenguaje, solo tenemos español de momento
La siguiente ventana elegimos la carpeta destino, la dejamos tal y como está y le damos siguiente
Ahora nos mostrará la ventana de tareas adicionales, vamos activar la check para crear el acceso directo al escritorio
Posteriormente nos arroja el resumen de la instalación, le damos click en instalar
Y empieza el proceso de instalación
Al finalizar nos mostrará la ventana final con el check de si desamor ejecutar el software, lo activamos y le damos click en el botón finalizar
Listo, el programa se ejecuta, es posible que la primera vez la ventana salga en blanco, lo que tienen que hacer es cerrarlo y ejecutar el acceso directo
Me complace avisar que ya tenemos las primeras versiones del software medico en el que hemos estado trabajando, aun puede que salgan detalles pero se van corrigiendo
¿Qué es CodeIgniter 4 medicalSoft?
CodeIgniter 4 medicalSoft es un software básico para la correcta administración/manejo del catálogo de pacientes, historial médico, control de fechas, impresión de recetas.
Características
Altas, Bajas y cambios de Pacientes
Altas, bajas y cambios Medicamentos
altas bajas y cambios de diagnósticos / enfermedades
Registro de Citas Medicas
Registrar consulta médica
Imprimir en PDF prescripción médica
Configuraciones Generales del Hospital
Instalacióny actualizaciones
composer create-project julio101290/ci4medical-soft y luego composer update cada vez que haya una nueva versión del marco.
Al actualizar, consulte las notas de la versión para ver si hay algún cambio que deba aplicar a la carpeta de su aplicación. Los archivos afectados se pueden copiar o combinar desde el vendor/codeigniter4/framework/app.
Copie env a .env y personalícelo para su aplicación, específicamente la baseURL y cualquier configuración de la base de datos.
Base de datos
Puede encontrar el archivo de base de datos en la base de datos en la carpeta base de datos / medicalsoft2022.sql
Pronto crearemos los archivos de migración para construir las tablas sin tener que ejecutar el archivo .sql
Además conforme se vayan haciendose cambios vamos a generar una aplicación instalable para windows para que la instalación sea lo más fácil posible.
Primero ejecutamos el instalador
En la ruta la dejamos tal como está y le damos click en el botón siguiente
Activamos la casilla para que se genere el acceso directo al escritorio
Verificamos que la información esté correcta
Una vez que se le da click se empezará a instalar
Una vez terminado nos sale la ventana de login, en caso de salir la pantalla en blanco cerrar la ventana y volverla abrir, el usuario es admin y la contraseña es super-admin
Una vez ingresado al sistema nos mostrará la pantalla principal y podremos empezar a usar el sistema MedicalSoft
index.php ya no está en la raíz del proyecto! Se ha movido dentro de la carpeta, public para una mejor seguridad y separación de componentes.
Esto significa que debe configurar su servidor web para que “se dirija” a su proyecto carpeta public y no a la raíz del proyecto. Una mejor práctica sería configurar un host virtual para que apunte allí. Una mala práctica sería apuntar su servidor web a la raíz del proyecto y esperar ingresar public/…, como el resto de tu lógica y el El marco está expuesto.
Por favor lea la guía del usuario para obtener una mejor explicación de cómo funciona CI4!
Requisitos del servidor
Se requiere PHP versión 7.4 o superior, con las siguientes extensiones instaladas:
Usamos cookies en nuestro sitio web para brindarle la experiencia más relevante recordando sus preferencias y visitas repetidas. Al hacer clic en "Aceptar", acepta el uso de TODAS las cookies.
This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.