Introducción.
Propongo
emular el mundialmente reconocido Idempiere, software libre y abierto
de gestión empresarial derivado del Adempiere y este del Compiere,
con base en una crítica a su excesiva complejidad, rebajando las
tablas que componen la base de datos de 832 a menos de 40 por un lado
y por otro logrando desarrollar un algoritmo único para procesar
todos los tipos de transacciones que se presentan en las Empresas.
Simplificar
la síntesis de una investigación requiere encontrar conceptos que
reúnan muchos análisis en conclusiones sencillas. En administración
de empresas la norma ISO 9001 y sus complementos son un buen ejemplo
de como múltiples hipótesis de gestión se simplificaron. Las
llamadas teorías A, B y Z, las administración por objetivos, la
Re-ingeniería administrativa, etc., perdieron vigencia partir de la
versión ISO 9001:2000 y sus actualizaciones 2008 y 2015. La
dirección vertical (A), la delegación de competencias (B), la
motivación empresarial (Z), la definición de objetivos a corto
mediano y largo plazo y la reestructuración de las empresas para
gestionarlas por procesos, son simplificadas en las normas de gestión
de la calidad. Hoy la mayoría de las empresas en el mundo certifican
el cumplimiento de la norma ISO 9001.
En
los procesos administrativos hay pasos que modifican la información
económica de la empresa, son las transacciones contables. Personas,
cosas y conceptos contables se mezclan en un evento para producir una
transacción. Lograr programar un algoritmo único para el manejo de
todas las transacciones contables posibles es un viejo anhelo de los
programadores de aplicaciones de gestión administrativa. Algunas
imputaciones de las transacciones (Ejemplos: un contrato, una venta a
crédito, una orden de producción, etc.) puede dar inicio de una
vigencia en el tiempo de una deuda, de un compromiso o de un
proyecto, que requiere seguimiento, notificación de excepciones y
activar correctivos. Las otras imputaciones registran cambios
económicos que no trascienden (pagar una cuota, reportar un
consumo, etc.), no generan vigencia. Las transacciones son la
información documentada del punto 8 Operación, de la norma ISO
9001:2015, deben incluir la planificación, la ejecución, las
revisiones y las mediciones necesarias para garantizar la producción
de productos y servicios que satisfagan al Cliente.
La
toma de decisiones se basa en el análisis de la información
empresarial, entre mas fidedigna, actualizada y mejor presentada sea
la información se supone que los responsables tomarán mejores
decisiones. Muchas de las decisiones son predecibles y en tal caso se
pueden automatizar, en los demás casos se pueden obtener
predicciones de acuerdo a los datos conocidos y a los antecedentes lo
cual formará parte de la presentación de la información. Un
sistema de toma de decisiones debe ir aprendiendo de su experiencia y
puede llegar a actuar como máquina inteligente en los casos en que
cuente con todo la información necesaria.
Sistema
experto para la implementación.
La
mayoría de las empresas implementan la norma ISO 9001, gestión de
la calidad, en Colombia es obligatorio que las empresas públicas
implementen una versión de esta norma, deberían también
implementar la ISO 14001, gestión ambiental y la OSHAS 18001,
gestión de la seguridad y sanidad laboral. Las empresas que tengan
alguna relación con la alimentación humana o animal deberían
implementar la norma ISO 22001 de inocuidad, etc.. Hacia el futuro la
tendencia es a seguir la simplificación de estas normas porque su
éxito se ha debido en gran parte a que lograron sintetizar las
teorías administrativas, variadas y contradictorias a veces,
simplificando la creación de la red mundial empresarial,
aprovechando la evolución de las tecnologías de información y
comunicación, para que vayamos llegando al predominio del comercio
en linea.
La
ISO 9001 se aplica a todo tipo de empresas, la parte de diseño y
desarrollo de productos y servicios es opcional dando cabida a las
empresas que compran para vender sin transformar, comercios y
comisionistas de servicios, a las que adicionan algunos productos o
servicios complementarios propios, y a las que deben estar diseñando
y desarrollando para poder mantenerse en el mercado. Solo la ISO 9001
se aplica a toda la estructura empresarial, las demás normas aclaran
o adicionan otros controles específicos.
Como
resultado vamos a ir construyendo un árbol de las implementaciones
posibles de tal forma que a medida que crece son mas las veces que
encontraremos un producto listo a implementar que la necesidad de
crear nuevas ramas y sub-ramas para satisfacer un tipo de cliente
nuevo. Entrevistar a los expertos del nuevo cliente para lograr
ubicar el tipo de empresa en el árbol de implementaciones puede irse
reemplazando por el acceso a la información ya registrada de esa
empresa en censos empresariales de los gobiernos o los gremios, las
declaraciones de impuestos, los registros de compra y venta y los
procesos productivos. Un gobierno comprometido con la normalización
y la simplificación bien podría solicitar los datos a todas las
Empresas que permitan una rápida implementación. Así podríamos
evolucionar a sistemas expertos y luego a máquinas inteligentes de
implementación.
Sistema
experto transaccional.
La
operación empresarial genera instancias de procesos predefinidos que
combinan análisis de información y decisiones de acción, cuando la
información se completa y existe autorización el sistema puede
decidir automáticamente una acción. Las acciones pueden ser de un
solo instante como recibo de abonos a una factura o liquidación
automática de una depreciación, etc., o pueden iniciar una
operación que involucra otros múltiples pasos como una venta a
crédito o una orden automática de producción por llegar el
inventario a un punto que está programado para ordenar una cantidad
económica de producción, etc.. En todos los casos se genera uno o
mas juegos compensados de imputaciones contables que afectan
opcionalmente cuentas contingentes, como presupuesto anual de ventas
por ejecutar y ejecutado, y cuentas de inventario y sus resultados
(Activo, Pasivo, Patrimonio, e ingresos y egresos de un periodo). En
algunos casos se afectan personas y cosas pudiendo la afectación ser
de un instante o generar pendientes que deben seguirse. Tanto la
afectación de personas y de cosas se determinan por las cuentas del
Activo o del Pasivo y/o Contingencias deudoras y acreedoras
involucradas, de tal manera que banderas (Flags) en esas cuentas
pueden orientar si una imputación es solo de ese instante o genera
vigencia.
Los
tipos de transacciones contienen descripciones, ejemplo Factura de
Venta, siglas, ejemplo FAV, formato del Formulario de visualización
y captura de datos complementarios, formato del Reporte para
impresión y para almacenar la transacción completa, y vectores o
arrays de ocurrencia indefinida que detallan como se generan los
formularios, los reportes y las imputaciones. Esto permitirá crear
árboles de información para detallar como debe mostrarse la
información conocida y pedirse la desconocida, como debe
contabilizarse y como debe construirse el documento evidencia de la
transacción, de tal manera que un algoritmo único queda alimentado
con la información necesaria para completarla. Ese algoritmo sería
el núcleo del sistema experto transaccional y utilizaría datos
previos y los suministrados por el usuario, banderas de las cuentas
afectadas e indicadores de tratos especiales . Se terminarían los
algoritmos específicos por tipo de transacción y se podrían
adicionar nuevos tipos de transacciones creando la fila
correspondiente sin aumentar el código.
En
la siguiente página se presenta un flujograma general del sistema:
La
Base de Datos del Sistema
Los
datos necesarios para gestionar empresas buscan satisfacer las
necesidades de todo tipo de emprendimientos. Sistemas propietarios
como SAP y de software libre y abierto como Idempiere, y los demás
derivados de Compiere, han logrado ser implementados en centenares de
miles de Empresas. Pero sus bases de datos son muy complicadas,
Idempiere tiene mas de 800 tablas con muchísimas relaciones lo que
dificulta su comprensión y restringe los posibles voluntarios a
mejorar el código. ¿Es posible simplificar? Sí, porque utilizando
las posibilidades de las cuentas de orden se puede lograr que toda la
información económica sea registrada contablemente y también es
posible tener un algoritmo único para procesar todas las
transacciones posibles en cualquier tipo de empresa.
Quiero
explicarles la base de datos que diseñé. con menos de 40 tablas
reemplaza las 832 de Idempiere sin perder información, estoy
convencido que cualquier profesional la puede entender y es
conveniente porque la humanidad necesita que todas sus áreas de
conocimiento se gestionen efectivamente, eficaz y eficientemente, si
es que queremos tener un futuro a largo plazo. Veámoslo en forma
progresiva con la ayuda de unos diagramas denominados de
Entidad-Relación:
-
Unas Personas forman empresa gestionando cosas como productos, servicios y conceptos. Los conceptos que unen a las Personas y a las cosas deben ser contables, solo contables. Entonces tendremos las primeras tablas así:
Las Personas relacionadas con la Empresa afectan una o mas cuentas y una cuenta puede ser afectada por una o mas Personas, esto se expresa con la tabla PersonasCuentas que tienen relación con las tablas Personas y Cuentas; ejemplos: Socios, Trabajadores, Clientes, Proveedores, Competidores, etc.. En forma similar la tabla CosasCuentas relaciona las tablas Cosas y Cuentas; ejemplos: Materias primas, Mercancías, elementos de consumo, activos fijos, servicios logísticos, financieros, de trámite, etc..Tanto las Personas como las Cosas relacionadas con la Empresa debe estar en un sitio que se define en la tabla Ubicaciones, ejemplos: dirección de trabajo, bodega, planta u oficina, etc. Las Cosas tienen precios de compra y de venta que varían con el tiempo y otras circunstancias.A veces es necesario ver la información contable agrupada transversalmente, ejemplos: Análisis de ingresos y egresos por centro de costo o por proyecto, para lo cual utilizaremos la tabla Categorías relacionada con la tabla Cuentas por la tabla CategoriasCuentas. -
Adicionemos las Empresas a sistematizar, los usuarios del sistema y unas tipologías:
Las Empresas se tipifican y pueden ser independientes o hacer parte de un grupo. mueven algunas Cuentas a través de la relación Personas Cuentas porque cada Empresa es una Persona jurídica.Los Gobiernos definen planes de cuentas que deben usar las Empresas y como es posible que un grupo de Empresas opere en diferentes países es necesario poder presentar la misma información contable clasificada según diferentes planes de cuenta, lo cual se puede hacer utilizando la tabla CuentasEquivale. Los planes de cuenta y las personas también son tipificadas.Los Usuarios son Personas relacionadas con la Empresa autorizados a ejercer uno o mas roles. -
Ahora adicionemos las Normas que definen los Procesos y sus Pasos determinando las Opciones que pueden ejecutar los Usuarios:
-
Por último agreguemos las transacciones contables, o sea los movimientos económicos empresariales:
La
tabla TipoTransacción tiene una fila por cada proceso de movimiento
económico posible. Desde planificaciones plurianuales, presupuestos
anuales, programas de producción, de mantenimiento, de garantía, de
compra o de suministros, etc. hasta facturas de venta, informes de
recepción, recibos de ingresos, comprobantes de egreso, y
liquidaciones automáticas cuando se cumplen algunos criterios como
liquidación de impuestos, depreciaciones, valorizaciones, ajustes
por inflación, cierres de ejercicio, etc., todos estos procesos y
muchos mas generan transacciones y todos estarán tipificados en esta
tabla. La tabla TransAuto relacione el programa de transacciones
automatizadas con TipoTransaccion y Calendario, activándolas cuando
se llegue la hora y sean autorizadas por un Usuario si se requiere.
Las demás transacciones se activan cuando un Usuario autorizado lo
ordene.
Las
transacciones generan desde 2 hasta miles de imputaciones compensadas
que se registran en la tabla Imputaciones, medido siempre su valor,
en cualquier moneda nacional y/o virtual, mas cantidad y tiempo si es
necesario. Algunas imputaciones generan o dan inicio a una vigencia
de una cuenta por pagar o cobrar, de un suministro continuado de un
artículo por varios lapsos de tiempo, de un item de un contrato que
se mantiene hasta cumplir sus objetivos, de una referencia de un
programa de producción que entra a ejecutarse, etc., por lo cual se
descompone en vencimientos para programar en el tiempo los valores y
cantidades involucrados.
Nota:
Los diagramas se modelaron con la extensión para Eclipse ERMaster.
Conclusiones.
Se
puede lograr una síntesis avanzada de la información empresarial,
empieza usando unicamente la contabilidad para el registro económico,
las cuentas de orden sirven para registrar los bienes de terceros
que la empresa gestiona y para incluir todas las contingencias como
la planificación a mediano y largo plazo, los presupuestos y las
programaciones de labor, continúa con la tipología de todas las
transacciones económicas empresariales en una única Entidad, para
almacenar formatos de formularios y reportes, y los datos que varían
de un tipo a otro.
Las
transacciones se descomponen en imputaciones compensadas (débito,
crédito) que pueden ser mínimo 2 o hasta miles. Una imputación
puede iniciar la vigencia de un contrato, de un proyecto, de una
deuda por cobrar o por pagar, de la garantía de un producto, de la
existencia de un lote de mercancías, productos en proceso o materias
primas, de una planificación y de un presupuesto, etc., cada
vigencia puede estar programada con vencimientos por valores,
cantidades o tiempo en fechas predeterminadas que pueden sufrir
incumplimientos generando correctivos y sanciones. Así que lo
pendiente por gestionar se inicia con la imputación generadora como
padre de las imputaciones subsiguientes y de los vencimientos
programados en moneda, cantidad y tiempo.
Los
procesos de gestión empresarial se enmarcan en normas
internacionales, con la ISO 9001 como referente universalmente
aceptado, de tal manera que las demás normas son complementos para
gestionar controles específicos. La gestión de los procesos debe
basarse en opciones para la toma de decisiones y la activación de
transacciones que en buena parte se pueden automatizar, permitiendo
cambios muy justificados, sustentados en la experiencia y
estrictamente auditados a fin de impulsar la mejore continua sin
perder la conexión con lo ya registrado. Los usuarios autorizados
asumen roles que se definen como la capacidad de ejecutar un
subconjunto de opciones para informarse y activar transacciones. Cada
vez habrán más usuarios autómatas supervisados por seres humanos.
Idempiere
puede evolucionar a Smart Idempiere programando una
conversión automática de tal manera que la parte del código actual
que se sintetiza pasa a ser datos del nuevo sistema, parte de lo
cualitativo, y la información registrada, lo cuantitativo,
simplemente cambia de formato logrando que la migración sea casi
transparente para los usuarios. Una nueva base de datos para ayudar a
futuras implementaciones se extraerá de lo cualitativo sintetizado y
de las migraciones para alimentar un sistema experto de
implementación.
Podríamos
proponer a la Gente de Idempiere crear el Smart Idempiere con una
codificación totalmente nueva que sin embargo permita incluir los
módulos de Idempiere como datos que definen tipos de transacciones
mas las banderas y los tratos especiales que se requieran para
cumplir la misma funcionalidad. Los demás datos de cada
implementación que quiera migrar se deben poder convertir a la nueva
base de datos por medio de una aplicación en forma automática.
Convendría permitir la operación en paralelo por un tiempo
prudencial trasladando los cambios y movimientos diarios en procesos
batch.
Nota: Diseñado y
redactado por Hernán Pardo Silva en febrero de 2018