Arrastre de archivos y directorios

Hemos incorporado una prestación que hacía tiempo que teníamos en la cola de desarrollo de Criterium CyP: Permitir el arrastre de archivos y directorios sobre los formularios y la integración de los mismos en el soporte documental del registro correspondiente.

No es gran cosa, y posiblemente nadie lo haya echado de menos, pero es uno de esos detalles que añaden calidad al trabajo con una aplicación.

Con esta novedad, si arrastramos archivos, directorios o accesos directos desde el explorador de archivos o el escritorio sobre un formulario que tenga activado el soporte documental, sale un formulario que nos pregunta que tipo de acción queremos llevar a cabo sobre los mismos: copiar, mover o crear enlaces/accesos directos.

También cabe la posibilidad de abrir el directorio del soporte documental tras la operación realizada, e incluso cancelar la acción.

No todos los usuarios controlan las opciones de arrastre de archivos y directorios y sus conmutadores mediante teclas especiales. Sin ir mas lejos, ni yo mismo sabía, hasta ayer, que podía arrastrarse mediante el botón derecho y sale un diálogo preguntando que queremos hacer, un comportamiento parecido a lo que hemos implementado. Así que esta opción facilitara el trabajo a esos usuarios inexpertos, sin dejar de ser de utilidad para los mas avanzados.

Esperemos que les guste este nuevo detalle.

Criterium CyP: Versión 1.17.33.5

VERSIÓN 1.17.33.5:
--------------------

Sumario:
Formularios: 674 (+9)
Unidades: 16
Informes: 748 (+15)
Tablas: 601 (+7)

2010-05-10: 1.17.33.5
FNC:n Posibilidad de contabilizar el cobro de las remesas en gestión de cobro en modo multi-selección para agrupar el cobro de efectos
VNT:n Resaltado visual en oportunidad de negocio de presupuestos y pedidos similar al mostrado en sus correspondientes listados
SYS:m En visor de imágenes se utiliza componente de visualización de imágenes mejorado
TCN:n Ver archivos de proyecto desde su registro de planos
VNT:n Mostrar estado de cobros asociados a facturas en formulario de listado de facturas de venta
CMP:n Mostrar estado de pagos asociados a facturas en formulario de listado de facturas de compra
VNT:n Mostrada información adicional en cobros asociados a factura de venta
CMP:n Mostrada información adicional en pagos asociados a factura de compra
PER:n Opción de compatibilidad en norma 34 en pago a trabajador
PER y CMP:n Se guarda opción de compatibilidad de norma 34
TCN:n Posibilidad de filtrar entregas de documentación y planos de proyecto por trabajador que recibe, cliente y proveedor

2010-05-07:
CMP:m Ampliado tamaño de referencia de documento en pagos a 100 caracteres
FNC:n Campo para asignar cuenta de tesorería a póliza de descuento, que será aplicada automáticamente cuando sea seleccionada la póliza en una remesa de descuento de efectos
CMP:n Campo para una segunda referencia en pago que se puede arrastrar directamente desde la factura de compra o actualizar desde el propio pago asignando las referencias de facturas
VNT:n Campo para una segunda referencia en cobro que se puede arrastrar directamente desde la factura de venta o actualizar desde el propio cobro asignando las referencias de facturas
VNT:n Se utiliza configuración fiscal (IVA e IRPF) al dar de alta factura de cliente
SYS:n Formulario para visualizar páginas web de forma embebida en la aplicación
SYS:n Opción para visualizar los atajos de teclado a través de una consulta web
GEN:n En formulario de búsqueda de teléfonos también puede buscarse por el nombre del sujeto/empresa
FNC:n Opciones para dar de alta pólizas de descuento y cuentas de tesorería desde remesa
SYS:n Sistema para enviar emails mediante MAPI sin necesidad de adjuntar archivo
VNT:n Campo para indicar periodicidad mensual de una factura para poder realizar estimaciones
CMP:n Campo para indicar periodicidad mensual de una factura para poder realizar estimaciones
CMP:n Se muestra el campo "PROYECTO_EXTENDIDO" en el proceso de compras
VNT:n Se muestra el campo "PROYECTO_EXTENDIDO" en el proceso de ventas
CMP:b Error en campo "PROVEEDOR" marcado como requerido
CMP:b Error en sentencia SQL para mostrar "solicitud de necesidades"
CMP:n Opción para generar "presupuesto de compra" desde "solicitud de necesidades"

2010-05-03: 1.17.33.4
PER:b Error en componente no instalado en formulario PER_RMT_*****
FNC:b No se refresca el formulario de préstamo al crear factura de compra para evitar que la factura sea asignada al primer registro debido al refresco automático (e innecesario)
FNC:m Al crear factura de compra desde el registro de préstamo se pasa la cuenta de tesorería a la factura para su reutilización en PIC y pagos independientes
CMP:n Al crear pago desde factura, si este tiene asignado cuenta de tesorería, se traspasa al banco de emisión del pago y se poner en fucsia
CMP:n Invertir acción de "Predefinido" cuando el pago está en estado distinto de pendiente
VNT:n Invertir acción de "Predefinido" cuando el cobro está en estado distinto de "en cartera"
FNC:b Dos errores en verificación de traspasos financieros
PER:m Máscara para meter fecha en EPIS y capacitación en el uso de equipos de trabajo
SYS:n Campos para configurar a nivel global unos porcentajes de costes indirectos, gastos generales y beneficio industrial aplicables en descompuestos de presupuestos de venta
SYS:n Campo para determinar a nivel global si en los presupuestos de venta los descompuestos de las partidas se calculan como "Descompuesto calcula el total" de la partida
*:m Cambiado sistema, para que cuando se pregunta por un valor decimal o entero siempre sea opcional y en caso de cancelarse con se realicen las acciones pertinentes
*:m No se carga el contenido del campo "CALCULO" cuando se carga individualmente una línea preguntando la "CANTIDAD" para evitar que se refleje un valor erroneo cuando se carga una cantidad 0
*:n Sistema para arrastrar valor de campo seleccionado en rejilla de datos

2010-04-30:
SYS:m Desactivada la opción de guardar/descartas cambios y salir en formulario de edicción de registro secundario
VNT:n Resaltado de línea de partidas activa en datos extendidos del proceso de ventas
PER:b Error en redondeo de datos en memoria de nóminas que puede dar lugar a errores en la generación de la norma 34
*:m Forzado redondéo en campos calculados para evitar posibles errores

2010-04-28: 1.17.33.3
VNT:b Al descargar descompuesto de pedido y presupuesto de venta no se copian campos "FACTOR" ni "FILTRO_CODIGO_CONCEPTO"

2010-04-26: 1.17.33.2
SYS:b Conexión a botones y items de menu de las acciones de salvar/cancelar y salir
VNT:b Errores en duplicado de descompuestos de presupuestos y pedidos de venta, se dejaba algunos campos de reciente introducción
VNT:b Tratamiento de división por 0 cuando la medición es nula, en presupuestos y pedidos de venta cuando el descompuesto calcula el total
VNT:n Sistema de copiado de mediciones pasando ancho a largo en presupuestos y pedidos de venta
REF:b Error al cargar datos de plantilla de base de precios a base de precios
FSC:m No se permite una cuota de IVA o RE 0 cuando el tipo es del 0% (esto es por la Eva que es muy suya)
REF:m Soporte PNG en control que muestra imagen de base de datos y en cargador de las mismas
TCN:n Creada función "roundup" para redondear a entero alejándose de 0

2010-04-24:
COM:b Autogeneración de número de comunicación en oportunidad de negocio
VNT:b Se configura copiado en portapapeles para su pegado de descompuestos de presupuesto y pedido de venta
VNT:m Se utiliza los decimales fijados en precio a la hora de calcular precio unidad cuando el descompuesto calcula el total en presupuestos y pedidos de venta
CMP:n Campo para indicar EAN13 en artículo

2010-04-22:
COM:m Se pone fecha y nota de posposición junto a logs para poder planificar próximos pasos en oportunidades de negocio
COM:m Orden descendente de bitácora/logs de oportunidad de negocio

2010-04-16: 1.17.33.1
CMP:n Carga de recepciones/albaranes de compra en grupo sobre la factura de compra
SYS:n Opción para desactivar el recuerdo de las imputaciones analíticas en el detalle de compras y ventas para su uso en la creación de nuevos detalles
CMP:b Error en recuerdo de imputaciones analíticas cuando se generan copias de un registro de compras
VNT:b Error en recuerdo de imputaciones analíticas cuando se generan copias de un registro de ventas
CMP:n Sistema para cargar detalle del proceso de compras en un presupuesto o tarifa ya existente
VNT:n Sistema para cargar detalle del proceso de compras en un presupuesto o tarifa ya existente
VNT:n Cuando se elimina el contenido del campo "DESCOMP_CALCULA_TOTAL" se pasa a 0 antes de guardarlo
FNC:n Se muestra de forma especial y se permite filtro de no borradores en efectos remesados
CMP:n Sistema para gestionar el envío de pedidos de compra, con resaltado visual y filtro

2010-04-16:
PER:n Campo para indicar fecha y cuenta de pago de seguridad social de nómina
PER:n Asiento automático parametrizable de asiento de pago de seguridad social
PER:m Diferenciación de deuda con la seguridad social de trabajador y de empresa en concepto de línea de asiento
PER:n Campo calculado con total de seguridad social en registro de nóminas
PER:n Sistema para crear automáticamente las cuentas contables necesarias para contabilizar las nóminas de un trabajador

2010-04-14: 1.17.33.0
FSC:b Hint erroneo en los campos de modelo 303
FSC:b Campo erroneo en informe borrador de modelo 303
FSC:b Error en carga de datos en modelo 303 al tratar cuotas a compensar de periodos anteriores
GEN:m Al buscar artículos se añade filtro "recordable" para filtrar solo los artículos finales
CTB:m Desactivada tecla insertar y enter del listado de cuentas contables para facilitar su edición en el mismo
PER:n Contabilización parametrizable de nóminas
PER:n Asiento automático parametrizable de pagos de nóminas mediante norma 34

2010-04-12:
PER:n Campo para indicar tipo de formación de trabajador: presencial, semipresencial u online
VNT:n Al buscar artículos en tarifa de cliente o tarifa general se busca también en referencia de cliente y código de base de precios
CMP:n Al buscar artículos en tarifa de proveedor se busca también en referencia de proveedor y código de base de precios

2010-04-08:
PER:n Campos para indicar la hora de baja y de alta en bajas laborales
PER:n Registro para control de accidentes de trabajo
SYS:m Mejora para detectar cambios en un único campo que están en la cache interna y no se detectan

2010-04-07:
CMP:b No se permitía modificar recepción de materiales cuando la misma estaba asociada al detalle de una factura de venta
FNC:n Asociación de préstamos que son arrendamientos financieros (leasing) a un vehículo
FNC:n Añadidos campo de referencia de documento y de tipo y cuota de IVA a cuotas de amortización de préstramo para dar soporte a leasings
FNC:n Asociación de factura de compra a cuota de amortización de préstamo o leasing, con resaltado de color
FNC:n Generación de factura de compra desde cuota de amortización de préstamo o leasing, con captura de todos los datos necesarios
INM:n Asociación de factura de compra a recibo de seguro, con resaltado de color
INM:n Generación de factura de compra desde recibo de seguro, con captura de todos los datos necesarios

2010-04-06:
REF:b Error al definir un campo como entero en las relaciones de las bases de precios de referencia

2010-04-02:
REF:n Campo para indicar si formato de archivo está soportado por el sistema: controles de datos y motor de infomes

2010-04-01:
VNT:n Fecha de fin de periodo de garantía de proyecto
VNT:n Responsables administrativos por parte del promotor y constructor asociados a un proyecto
CMP:n Resaltado visual de proveedores que tienen bloqueadas las compras
VNT:n Opción en factura para generar cobros con la misma fecha de emisión que la factura
CMP:n Opción en factura para generar pagos con la misma fecha de emisión que la factura
VNT:n Opción en factura para generar cobros como borradores
CMP:n Opción en factura para generar pagos como borradores
VNT:n Opción para hacer un cobro de retenciones de garantía de una factura
CMP:n Opción para hacer un pago de retenciones de garantía de una factura
VNT:n Resaltado precios que están bloqueados y no varían en función al descompuesto, precio unitario en rojo
TCN:n Al importar archivos BC3 si el precio derivado del descompuesto no coincide con el precio de la partida se marca el campo "BLOQUEO_PRECIO_DESCOMPUESTO"
TCN:n Solucionado error que modificaba el precio de la partida cuando el descompuesto sumaba 0, haciéndolo también igual a 0, por error en post de descompuesto
CTB:n Añadida posibilidad de detectar asientos fuera de fecha en formulario de control de descuadres, aunque es parcialmente innecesario ya que no se deja guardar en fechas fuera del rango del ejercicio

2010-03-29:
TCN:m Las descripciones de los bancos de precios se pueden cargar en formato rtf

2010-03-28:
VNT:b Error en carga de detalles de pedido de venta a factura
VNT:n Quitada la opción de ordenación descendente a cobros
CMP:n Quitada la opción de ordenación descendente a pagos
FNC:n Quitada la opción de ordenación descendente a traspasos financieros y previsiones excepcionales de pago y de cobro
FNC:b Error en filtro por distinto tipo de fecha en traspasos financieros

2010-03-26:
FSC:n Susititución del asterisco en nombre de declarados en el fichero BOE del 347

2010-03-25:
CLD:n Opción para hacer entregas de documentación de calidad desde formulario de cliente y de proveedor

2010-03-23:
CLD:n Campos para indicar pedido de venta y de compra donde se detecta no conformidad de calidad
VNT:n Opción para ver histórico de venta de un cliente desde su ficha o desde el proceso de ventas
CMP:n Opción para ver histórico de compra de un proveedor desde su ficha o desde el proceso de compras
CMP:n Proveedor preferente en necesidad de materiales o de subcontratación
VNT:n Se resaltan los proyectos anulados y se tienen en cuentan en los filtros de proyectos cerrados
VNT:n Formulario para editar tipos de construcción

2010-03-22:
VNT:n Campo para distinguir las imágenes asociadas a una pardida de un pedido para distinguir las que queremos que aparezcan en la factura final

Es tal el volumen de cambios en Criterium CyP que es complicado resaltar, como en otras ocasiones, algunos. En este caso, como en el anterior se han ido haciendo lanzamientos restringidos a ciertos usuarios, por eso se ha dilatado tanto el cambio de versión.

Pero bueno, por si parecía lo contrario, espero que esta nueva versión confirme el hecho de que seguimos trabajando. Por suerte, tanto como para no dejarnos tiempo para actualizar este blog con la regularidad que nos gustaría :(

Error en ejecución de sentencias SQL

Aquél que diga que su software está libre de errores, o es un inconsciente o un mentiroso. Desde luego, no somos tan descarados como para decir eso de Criterium CyP.
En ocasiones, está en nuestras manos solucionarlos, en otras, depende de terceros. Pero siempre tratamos de arreglarlos o, al menos, buscar una alternativa para evitarlo o minimizar sus efectos.
Si embargo, hay algún bug que se resiste mas de lo debido. Ese es el caso de uno que acabamos de resolver. Ha estado siempre ahí, aunque nuestro conocimiento del mismo es mas reciente. Cuando ejecutábamos sentencias SQL mediante transacciones independientes se daba un error al hacerlo dos veces sin cerrar tras la primera el formulario. Es un error muy raro pero potencialmente muy dañino ya que por un mal manejo de las excepciones dejaba la conexión a la base de datos en medio de una transacción.
En varias ocasiones hemos tratado de solucionarlo. Pero, pensando que era debido a un error en el manejo de las transacciones, todos los intentos de solución han fracasado. Hoy, con algo mas de frescura, hemos intentado por otro lado y finalmente hemos dado con la solución. En realidad el problema no estaba en las transacciones sino en el estado "Prepared" de los stored procedures que eran ejecutamos mediante ExecSQL a través de los TSQLDataSet. Al final simplemente se trataba de comprobar la propiedad "prepared"y ponerla a False en caso de que estuviese en True.

Esto a la mayoría le sonará a chino, pero en resumen, después de todo era era una chorrada, pero no se pueden imaginar la tranquilidad que tenemos ahora. Un maldito bug que finalmente ha caído y que deja un poquito mejor nuestro software.

Error extraño en importación de archivos BC3

Ninguna aplicación está libre de errores y Criterium CyP no es una excepción. Algunos traen el sello del despiste y falta de atención del programador, otros son realmente jodidos de prevenir y de depurar. Uno de estos últimos acaba de ser solucionado en nuestra aplicación.

En la importación de los archivos BC3 nos hemos encontrado una situación realmente curiosa. Alguno de nuestros clientes nos ha enviado archivos BC3 para la realización de pruebas y curiosamente no se importaba ninguna partida. Sabíamos que al cliente no le sucedía lo mismo, pero nosotros eramos incapaces de importarlos en Criterium CyP.

Al final ha sido un error bastante tonto, no habíamos tenido en cuenta los formatos de fin de linea de los distintos sistemas operativos en las rutinas de importación de los archivos BC3 del formato FIEBDC.

Como muchos de ustedes sabrán, los distintos sistemas operativos han trabajado tradicionalmente con diferentes fines de línea en los ficheros de texto.

Los sistemas de Apple, los Mac, indicaban el fin de línea mediante el caracter CR. Los equipos derivados de Unix, entre ellos Linux, usan LF. Y MsDos/Windows han usado ambos: CRLF; aunque esta opción supone un desperdicio de recursos. Esto ahora no tiene mucha importancia, pero no era una minucia en los viejos tiempos del predominio del MsDos.

Lo cierto es que un error que puede pasar desapercibido durante años en empresas que usen solo Windows, sin embargo no es nuestro caso. Usamos intensivamente el sistema operativo Linux, y dado que nuestro cliente de correo electrónico funciona sobre dicho sistema, al guardar los archivos BC3, remitidos por nuestros clientes, de forma silenciosa eran guardados con el fin de línea LF. Este detalle es casi totalmente transparente al usuario y cometimos la torpeza de no tenerlo en cuenta en la importación de dichos archivos.

Ya hemos solucionado el problema, ahora pueden importarse archivos BC3 con cualquier final de linea, si me apuras incluso con varios finales de línea distintos. Después de todo es un problema mas sencillo de solucionar que de reproducir.

No piensen que hemos sido especialmente torpes en esto, hemos comprobado que Presto 8.8 adolece del mismo problema. Desconozco si sigue presente en nuevas versiones de Presto o en otros productos como Arquímedes, Menfis, etc.

Si tienen algún caso de este tipo les aconsejo que instalen algún editor de texto que permita gestionar de forma sencilla los finales de línea y los cambien al pésimo "estándar" de los sistemas Windows. Un servidor usa habitualmente Scite (wikipedia), basado en scintilla. Es muy eficiente y potente. También puede venir bien Notepad++, también basado en scintilla.

Criterium CyP: Versión 1.17.32.6

VERSIÓN 1.17.32.6:
--------------------

Sumario:
Formularios: 665 (+4)
Unidades: 16
Informes: 733 (+15)
Tablas: 594

2010-03-16: 1.17.32.6
VNT:n Opción para ver histórico de venta de un cliente desde la carga de albaranes de transporte
VNT:m Atajo de teclado (F9) para cargar precios desde tarifa en carga de albaranes de transporte
VNT:n Opción de filtrado de albaranes de transporte por remolque e introdución automática del mismo al dar de alta nuevo albarán
VNT:m Cambiado orden del artículo en histórico de ventas
CMP:m Cambiado orden del artículo en histórico de compras
VNT:n Cantidad igual a 1 en carga de albaranes de transporte al dar de alta nueva línea de albarán

2010-03-16: 1.17.32.5
VNT:n Atajos desde proyecto para ver registros de ventas y de compras asociados al mismo
CMP:n Formulario para visualizar facturas y recepciones asociadas a pedido de compra
SYS:b Limpieza de transaciones (Rollback) que tienen errores al ejecutar la sentencias SQL
SYS:b Error en ejecución de sentencias SQL mediante transaciones independientes debido al estado de "Prepared" de los SQLDataSet que funcionan como Stored Procedures

2010-03-15:
SYS:b Cambiado acceso directo de directorio de enlaces asociados a formularios de "Ctrl+Alt+E" a "Ctrl+Alt+L", ya que el primero colisiona con el "AltGr+E" usado para el euro
TCN:n Soporte para formato "~V|SOFT S.A.|FIEBDC-3/2002|Presto 10.14||ANSI|" de archivo BC3

2010-03-11:
VNT:n En formulario de carga maxiva de albaranes de venta, para transporte, menú para agrupar acciones del proceso de ventas

2010-03-11:
VNT:n Marca de pedido servido parcialmente cuando se genera un albarán de solo lo seleccionado
VNT:n Marca de pedido servido parcialmente o servido cuando se genera una factura de solo lo seleccionado o de todo
VNT:n Marca de servido parcialmente cuando se carga una línea de pedido en albarán o factura
CMP:n Marca de pedido servido parcialmente cuando se genera una recepción de solo lo seleccionado
CMP:n Marca de pedido servido parcialmente o servido cuando se genera una factura de solo lo seleccionado o de todo
CMP:n Marca de servido parcialmente cuando se carga una línea de pedido en recepción o factura
TCN:n Soporte para formato "~V|SOFT S.A.|FIEBDC-3/95|Presto 8.43||ANSI|" de archivo BC3

2010-03-09:
VNT:n Formulario para visualizar facturas y albaranes asociados a pedido de venta
TCN:n Separada opción de importación de decimales de redondeo en carga de archivos BC3

2010-03-02: 1.17.32.4
TCN:n En importación de archivos BC3 se añade una opción, no marcada, para importación de coeficientes de gastos generales, beneficio industrial y ajuste a la baja/alza
TCN:m En importación de archivos BC3 se predefine la opción de respetar importes y medición de la partida
VNT:n Campo para indicar documentación exigida por el subcontratista a nivel de proyecto
VNT:n En formulario de listado de facturas se muestra proyecto definido a nivel de cabecera
TCN:b Error al importar decimales de redondeo en ventas desde archivo BC3
TCN:m Soporte de archivos BC3 con final de línea en modo Max (CR) y Unix(LF)

2010-03-02: 1.17.32.2
SYS:m Los informes de un formulario primero se muestran los preferentes
VNT:n Campo para descripción técnica larga de un proyecto

2010-03-02:
CMP:n Informes para solicitud de documentación inicial y de subcontrata al subcontratista
CMP:m Cambio de nombre a la opción de mostrar facturas de compra desde pago
VNT:m Cambio de nombre a la opción de mostrar facturas de venta desde cobro

2010-03-01:
VNT:n Filtrado de detalle de facturas de venta por número de proyecto
VNT:n Proyecto de linea de IVA seleccionada se pasa a cobro generado a partir de la misma
VNT:m En detalle de factura de venta se tiene en cuenta el proyecto a nivel de cabecera de factura
VNT:n Informe para listado de facturas emitidas totalizadas por factura y con proyecto
VNT:n Informe para listado de cobros con número de factura y saldo acumulado por cliente
CMP:n Informe para listado de pagos con número de factura y saldo acumulado por proveedor
SYS:n Sistema para remarcar visualmente los informes preferentes
FNC:n Modo compatibilidad en transferencias bancarias según norma 34 del Banco Sabadell Atlántico, que parece usar una mezcla extraña de la norma 34-01 de 10-2005 y 34-01 de 12-2006

2010-02-26:
GEN:n Utilidad para buscar teléfonos en clientes, proveedores y sus correspondientes contactos
CMP:n Posibilidad de buscar por referencia/número en listado de facturas de compra
VNT:n Añadido campo para indicar comisionista (vinculado a proveedor) y nota en interesado en promoción

2010-02-24: 1.17.32.0
SYS:n Se añade la posibilidad de navegar en el formulario mediante Enter en sentido inverso pulsando la tecla Shift
SYS:n Opción configurable para utilizar Enter y Shift + Enter para movernos entre los campos de las rejillas de datos

Últimamente las nuevas versiones de Criterium CyP salen forzadas. Este es un caso de este tipo, no trae grandes novedades aunque sí uno significativo que ayudará en la navegabilidad de las rejillas de datos.

Otra novedad interesante es la posibilidad de marcar los informes como preferentes y un nuevo formulario para buscar teléfonos en los registros de los clientes, proveedores y sus correspondientes contactos.

Esto, por si solo, no merece el lanzamiento de una nueva versión, pero necesidades concretas de algunos de nuestros clientes la han forzado.

Criterium CyP: Versión 1.17.31.2

VERSIÓN 1.17.31.2:
--------------------

Sumario:
Formularios: 661
Unidades: 16
Informes: 718 (+5)
Tablas: 594

2010-02-20: 1.17.31.2
SYS:n Campo para indicar cantidad total de informes
GEN:m Se utiliza el libro en la variable para informes de impresión "REGISTRO_MERCANTIL"
GEN:n Se añade la variable para impresión "REGISTRO_MERCANTIL_CA" para datos de registro mercantil en català
VNT:n Soporte documental para acuerdos con inmobiliarias
VNT:n Campo para vincular acuerdo comercial a interesado de inmobiliaria
VNT:n Campo para vincular acuerdo comercial a presupuesto de unidad de venta de inmobiliaria
SYS:n Huevo de pascua en hint en imagen feliz
CMP:n Suma de cantidad y total recepcionado en pedido de compra
VNT:n Campos para fijar decimales en redondeo de mediciones, precios e importes en presupuestos, pedidos, albaranes y facturas de venta
VNT:n Se tiene en cuenta el total facturado y albaranado al cargar desde pedido de venta a factura o albarán
CMP:n Se tiene en cuenta el total facturado y recepcionado al cargar desde pedido de compra a factura o recepción
VNT:m En descompuestos de presupuestos y pedidos de venta se calculan importes, costes indirectos, gastos generales y beneficio industrial según los decimales del precio en lugar de los del importe
TCN:n Se rescatan valores de redondeo de mediciones, precios e importes desde los archivos BC3

2010-02-17: 1.17.31.1
VNT:n Campo para indicar fecha de vencimiento de la retención de garantía a nivel de proyecto para su uso en las retenciones de garantía de las facturas de venta
VNT:n Se muestra proyecto y fecha de vencimiento de la retención de garantía en el listado de cobros
VNT:n Filtro por proyecto seleccionado en el listado de cobros
VNT:n Se arrastra cuenta de tesorería, proyecto y fecha prevista de cobro desde factura de venta a cobro, cuando se genera a partir de la misma
VNT:n Posibilidad de fijar el proyecto a nivel de cabecera en factura de venta, se arrastra a nivel de detalle y línea de IVA
VNT:n Se muestra importe de factura menos retenciones de garantía en listado de facturas de venta
CMP:n Se muestra importe de factura menos retenciones de garantía en listado de facturas de compra
PER:n Campo para controlar los EPIs solicitados y de esta forma gestionar, aparte de los EPIs entregados, los solicitados

2010-02-16:
VNT:n Opción global para indicar si las mediciones de los presupuestos se calculan según el criterio FIEBDC y de los programas de presupuestos y mediciones
SYS:n Opción para contabilizar las retenciones de garantía expresamente
VNT:n Contabilización opcional de las retenciones de garantía en cobro de las facturas de venta
CMP:n Contabilización opcional de las retenciones de garantía en pago de las facturas de compra
VNT:n Contabilización opcional de las retenciones de garantía al realizar un cobro
CMP:n Contabilización opcional de las retenciones de garantía al realizar un pago
VNT:n Filtro y resaltado visual para cobros que liquidan retenciones de garantía en formulario de cobros
CMP:n Filtro y resaltado visual para pagos que liquidan retenciones de garantía en formulario de pagos
VNT:n Resaltado de cobros que liquidan retención de garantía y que han salido en cobros asociados a factura de venta en formulario de facturas
CMP:n Resaltado de pagos que liquidan retención de garantía y que han salido en pagos asociados a factura de compra en formulario de facturas

Una versión un tanto arrebatada de Criterium CyP. Nuestro desarrollo es así, en las "congelaciones" mandan las necesidades de los clientes. Realmente a nosotros nos da lo mismo, tan solo nos preocuparía que alguien pensara que son lanzamientos excesivamente desordenados y frecuentes.

Es una versión, fundamentalmente, de pulido de detalles. Resaltar la posibilidad de indicar los decimales en los redondeos en las mediciones, precios e importes en el proceso de ventas.

Bueno seguimos trabajando en la versión 1.17.32.0 :)

Principio de desarrollo nº 3: Tu cliente sabe más que tú

El cliente siempre tiene la razón.

Hay algunas cuestiones en el uso de Criterium CyP que recurrentemente se atragantan a algunos usuarios y que exigen mucho tiempo para explicarlas y que las asimilen. En estos casos la inercia siempre pesa mucho. En primer lugar la del propio usuario, que está acostumbrado a usar otras aplicaciones de determinada forma. Pero no es menos importante la inercia nuestra, como desarrolladores, que nos lleva a empecinarnos en métodos y procedimientos por mera costumbre.

Un caso de este tipo es la forma a que están habituados a navegar los usuarios por las celdas de las rejillas de datos. Una cosa por la nunca hemos transigido es por evitar la captura del teclado en dichas rejillas. Esto impide la navegación por las celdas mediante el uso del tabulador. Sin embargo, muchos programas añaden la posibilidad de utilizar la tecla ENTER para realizar esta navegación. Nunca hemos considerado seriamente esta posibilidad. Se ha optado por "forzar" al uso de los cursores en dicha navegación. En penitencia escribiré en la pizarra "El programador es la parte mas tonta" 400 veces ;).

Gracias a la insistencia de Eva y Flo hemos reconsiderado este tema y tengo que confesar que el método de navegar con ENTER en la rejilla me está gustando bastante. Falta chequearlo adecuadamente, por lo que se ha puesto como una opción de la interfaz (a partir de la versión 1.17.32).

Algo similar nos sucedió con la posibilidad de navegar por los controles con la misma tecla ENTER y luego es un método muy interesante. De paso hemos añadido la posibilidad de navegar en sentido inverso con Shift+Enter.

De todas formas no es la primera vez en que caemos, a fuerza de encontronazos, en algún pequeño cambio, desde el punto de vista del desarrollo, que nos ahorra explicaciones a nosotros y sufrimiento al usuario.

Siempre he sostenido que cuando no eres capaz de convencer a un cliente en menos de 10 minutos es porque tiene la razón. Es una pena que por culpa de la inercia y el acomodo mental no siempre pueda aplicarse esta norma. Prometemos estar atentos en la próxima :)

Hay desarrolladores que desprecian al usuario. Nunca he entendido esa posición. Los usuarios implicados en la mejora de su herramienta de trabajo son una importante ventaja competitiva de nuestro software.

Criterium CyP: Versión 1.17.30.6

VERSIÓN 1.17.30.6:
--------------------

Sumario:
Formularios: 661 (+2)
Unidades: 16
Informes: 713 (+35)
Tablas: 594

2010-02-15: 1.17.30.6
CMP:n Opciones para cargar cantidades desde facturas en pago
VNT:n Opciones para cargar cantidades desde facturas en cobro
CTB:m Mejora en control de descuadres en ejercicios y asientos
CMP:b Enlace de direcciones de proveedor en su formulario tenía un error en la sentencia SQL
FSC:n Se muestra el tipo de factura en formulario de listado de iva repercutido
CTB:b Se Modifica función para cargar detalle en asientos contables para que se respete la descripción del asiento cuando no exista un concepto para el detalle, en lugar del concepto previo
VNT:m Mejora en resaltado y filtrado de cobros borrador
CMP:m Mejora en resaltado y filtrado de pagos borrador
VNT:n Se arrastra cuenta bancaria de domicilio de cobro desde el proyecto a la factura

2010-02-08: 1.17.30.5
TCN:m Mejorada rutina de importación de BC3 para poder cargar partidas sin descompuesto
CTB:n Balance de situación y de pérdidas y ganancias para cooperativas tanto en castellano como català
CTB:m Soporte de fondo de educación de largo y corto plazo en plan de referencia para cooperativas

2010-02-08: 1.17.30.4
SYS:m Desactivada la opción de hacer transparente un formulario por inutil :)
CMP:n Opción para cargar con "Alt+F4" todos los datos seleccionados en el listado de precios de un proveedor
VNT:n Opción para cargar con "Alt+F4" todos los datos seleccionados en el listado de precios de un cliente o tarifa general
VNT:n Sistema para controlar material entregado en depósito y su facturación parcial a través de albaranes
*:b Revisión de todos los formularios para solucionado de un error recurrente en las opciones de filtrado

2010-02-02: 1.17.30.3
CTB:m Reordenación de opciones relacionadas con la creación y gestión del ejercicio contable en su menú

2010-02-02: 1.17.30.2
SYS:b Error al mostrar las rutas de soporte documental debido al uso de la variable "$CYPDIR"

2010-01-30: 1.17.30.1
VTV:n Campo para poner descripción de trabajos realizados
VTV:n Reorganización de información
VTV:n Se muestran los detalles de los pedidos de compra asociados a la orden de reparación
VNT:n Filtro de facturas de venta por código de vehículo
FNC:n Posibilidad de configurar los tipos de pagos y cobros para que se generen los pagos y cobros como borrador por defecto
PER:n Campo para indicar fecha de caducidad de NIF/NIE
CMP:n Campos para indicar proveedor/subcontratista y su trabajador que recepciona mercancía solicitada por la empresa
PER:n Campos para indicar fecha de cierre y factura de venta en destajo de personal
SYS:m Re-organización de información en formulario de configuración global
SYS:m Se cargan los informes al mostrar la pestaña de los mismos, no es necesario entrar dentro del frama de imprimir (made for Eva Romero)
VNT y CMP:n Tabla para configurar formas de entrega de pedidos
VNT:n Campo en pedido de venta para indicar la forma de entrega de la mercancía
CMP:n Campo en pedido de compra para indicar la forma de entrega de la mercancía
FSC:m Se tiene en cuenta el régimen especial agrario y pesca a la hora de generar el 303
GEN:m Se indica nombre de IAE de referencia en tabla de IAEs de la empresa
SYS:n Opción para configurar a nivel global la posibilidad de autonumerar los nuevos proyectos
COM:n Vinculación de oportunidad de negocio a un contacto de un cliente
CTB:n Opción para buscar directamente cuenta contable por nombre
CTB:n En caso de buscar cuenta contable indicando dígitos iniciales el foco pasa al nombre
CMP:n Reorganización de información en formulario de pago
CMP:n Campo para indicar pago borrador
VNT:n Reorganización de información en formulario de cobro
VNT:n Campo para indicar cobro borrador
VNT:n Diferenciación visual de cobros borrador en listado de cobros
VNT:n Filtro de borradores, por tipo y por estado de documento de cobro en formulario de listado de cobros
CMP:n Diferenciación visual de pagos borrador en listado de pagos
CMP:n Filtro de borradore, por tipo y por estado de documento de pago en formulario de listado de pagos
PER:n Opción en botón derecho para repetir factura de venta en todos los registros que no tienen asignado en este dato en el registro de horas
SYS:m Opción para limpiar de DelimPath repetido en ruta de base de datos
SYS:n Posibilidad de utilizar la variable "$CYPDIR" a la hora de definir rutas del soporte documental, útil para instalaciones portables

2010-01-21: 1.17.30.0
VNT:n Añadida nuevo tipo de deducción en factura de venta: "Certificaciones anteriores"
GEN:m Al crear empresa no se marca la opción de cargar los datos del proyecto en la factura de venta
VNT:n Campos para configurar tipo de empresa, retención del IRPF y tipo de IVA a nivel de cliente
CMP:n Campos para indicar el tipo de retención de garantía a nivel de proveedor
VNT:n Campos para indicar el tipo de retención de garantía a nivel de cliente
FSC:n Añadido tipo de operación de IVA para el régimen especial agrario
FSC:n Añadido tipo de operación de IVA para el régimen especial de bienes usados
ORG:m Filtro de fecha en tareas se muestra 30 días por delante por defecto
ORG:m Búsqueda de pedido de venta mediante diálogo de búsqueda

2010-01-19:
REF:m Cargada como referencia, base de precios de la construcción de Andalucía de Julio 2.009
REF:n Cargada plantilla de base de precios para BCCA Julio 2.009

2010-01-18:
REF:b Error al borrar una base de precios que elimina todas las relaciones definidas, aunque no sean de la propia base borrada

2010-01-14:
VNT:b Etiqueta de campo Referencia de Cliente, cambiada a Ref. Clie.
CTB:m Mejora en creación de nuevo ejercicio
PER:n Añadidos distintos formatos de partes de trabajo

2010-01-09:
SYS:n Campo para indicar el redondéo a aplicar a los precios intermedios, después de aplicar tipo de incremento (ventas) y descuento, también para ajustes de precios aumentando/bajando
TCN:n Sistema para aplicar los mismos porcentajes de costes indirectos, gastos generales y beneficio industrial de un descompuestos seleccionado a la partida seleccionada o a todas; en descompuesto de presupuesto y pedido de venta
CTB:m En diálogo de búsqueda de cuenta contable se vuelve a situar el foco en el número
VNT:b Se copian costes indirectos, gastos generales y beneficio industrial cuando se copian descompuestos en presupuestos y pedidos de venta
VNT:m Nos aseguramos que se respete el precio unidad cuando se carga un descompuesto en presupuestos y pedidos de venta y dicho precio se ha modificado manualmente

2010-01-07:
GEN:n Campo por empresa para coletilla a utilizar en protección de datos
CMP:m Cambiado el orden de los sujetos que verifican una recepción de materiales
CTB:b No se podían guardar/descartar los cambios en los grupos de consolidación
CTB:m Mejora a la hora de asignar grupo de consolidación en creación de ejercicio contable

Esta versión de Criterium CyP se ha dilatado bastante en el tiempo, además, se han lanzado hasta 7 subversiones. Es algo que suele suceder cuando hay alguna implantación importante. Se va desarrollando y mejorando de forma paralela a la implantación; de una forma muy rápida y práctica.

Es increíble la cantidad de detalles que se pueden descubrir a la hora de las nuevas implantaciones. Uno siempre piensa que se ha dado la última vuelta de tuerca funcional al programa, pero sin embargo, siempre hay algún pequeño detalle o procedimiento que mejorar. De esto va precisamente este lanzamiento de pequeñas mejoras; tan importantes como las grandes.

No hay tiempo para pararnos a resaltar funcionalidades significativas, resaltar tan solo la incorporación de pagos y cobros en modo borrador para afinar todavía más en la previsiones financieras. En cierto tipo de empresas con distintos sistemas de cobro y pago simultáneo puede ser interesante.

Por cierto, nuestro silencio en el blog no significa inactividad, todo lo contrario, estamos tan ocupados que queda poco tiempo para actualizarlo. Sin ir muy lejos, ya hay versión superior a esta, la 1.17.31.2, sin embargo con la misma pasa lo mismo que con esta, se está lanzando a solo unos clientes para facilitar el testado y detección de errores. Este método de desarrollo, con trabajo conjunto con nuestros clientes, nos da excelentes resultados. Cuando se estabilice un poco esta fase frenética de desarrollo publicaremos y distribuiremos de forma generalizada esta la versión resultante.

La contabilidad en un sistema integrado

He rescatado un antiguo estudio para justificar una de las afirmaciones que me gusta repetirles a los nuevos usuarios: "Los conceptos necesarios para gestionar la contabilidad en casi un 95% se pueden adquirir, por una persona sin ningún conocimiento al respecto, en menos de 3 tardes".

No es ninguna chulería, es una cuestión que tenemos comprobada y documentada en el citado estudio: Automatización Contable.

Los números cantan al respecto, un 94,13% de los asientos fueron generados automáticamente. Indicar que el estudio es de 2.007. Desde entonces se han aumentado los procesos que son contabilizados de este modo: amortizaciones, provisiones de fondos, traspasos financieros, préstamos financieros mediante efectos (las típicas letras de pelota), gastos en movimientos financieros, confirming con y sin recurso, ...

Seguramente en aquellas empresas que utilicen todo el potencial de automatización contable en Criterium CyP, los porcentajes sean todavía mejores.

También hay que tener en cuenta que estos números son de un caso muy concreto, puede que en empresas de otros sectores o con menos movimientos cambien, pero aún así serán altos.

Esta automatización contable no solo reduce el tiempo dedicado a labores contables sino que además reduce considerablemente la cantidad de errores. Además hay que tener en cuenta que al generarse los asientos de forma automatizada también pueden establecerse métodos de verificación muy potentes.

Gracias a estos métodos de verificación podemos tener la absoluta seguridad de que la mayoría de nuestra contabilidad está perfecta.

Otro aspecto a tener en cuenta es que los conocimientos contables necesarios se reducen, ya que siempre se cuenta con la guía que supone el sistema integrado de gestión. De ahí viene nuestra afirmación de que con un para de tardes casi cualquiera puede llevar, de forma muy decente, la contabilidad de una empresa normal.

Desde luego Criterium CyP, por si solo, no va a convertir a nadie en un contable consumado, pero hay infinidad de recursos en Internet para todos aquellos que tengan inquietudes al respecto o algún caso especial que contabilizar. Unas recomendaciones:

Me hubiese gustado tener el tiempo para poder leerlos con tranquilidad, pero estoy convencido de que merecen la pena y os los recomiendo sin reservas. Seguro que a los novatos en estos terrenos contables les resultan interesantes y a los mas expertos también les vienen bien para descubrir o refrescar algunas cosas. Nosotros a ambos tipos de usuarios les damos el tiempo que pueden ganar contabilizando con ayuda de Criterium CyP, las ganas de ampliar conocimientos los tienen que poner ustedes.

Criterium CyP: Versión 1.17.29.1

VERSIÓN 1.17.29.1:
--------------------

Sumario:
Formularios: 659 (+1)
Unidades: 16
Informes: 678 (+2)
Tablas: 594 (+1)

2010-01-04: 1.17.29.1
SYS:n Ampliación de información mostrada en el panel inicial
SYS:n Pestaña en panel inicial para mostrar datos de contacto directamente desde Internet
SYS:n Pestaña en panel inicial para mostrar últimas noticias directamente desde Internet, con botones de control
VNT:n Opción en menú de "Proceso de Ventas" para cargar artículos en detalle desde tarifas/presupuestos
CMP:n Opción en menú de "Proceso de Compras" para cargar artículos en detalle desde tarifas/presupuestos

2009-12-29:
SYS:m Indicación visual mediante icono especial cuando en soporte documental existe una carpeta asociada sin contenido

2009-12-21: 1.17.29.0
REF:n Uso de etiquetas/tags en imágenes de referencia
REF:n Campo para clasificar tipos de imágenes de referencia
TCN:n Posibilidad de cargar desde los conceptos utilizados en el descompuesto de un presupuesto de venta tanto en un presupuesto como en un pedido
SYS:n Des-habilitada la inserción de nuevos registros en la configuración global
TCN:n Renumeración de números de línea en detalle de pedido de venta en función de jerarquía, mediante el uso de un procedimiento almacenado
TCN:n Renumeración de números de línea en detalle de procedimiento de venta en función de jerarquía, mediante el uso de un procedimiento almacenado
TCN:n Al cargar conceptos desde el descompuesto de un pedido de venta no se pregunta por un entero sino que salen todos los pedidos abiertos
TCN:n Ajuste de un presupuesto de venta a una cantidad determinada totalmente o filtrado por capítulo o subcapítulos, tres métodos distintos
TCN:n Ajuste de un presupuesto de venta para eliminar precios totalmente o filtrado por capítulo o subcapítulos, tres métodos distintos
TCN:n Ajuste de un presupuesto de venta mediante el ajuste a una comisión final determinada como un descuento negativo
TCN:n Ajuste de un pedido de venta mediante el ajuste a una comisión final determinada como un descuento negativo
VNT:n Informe con sello opcional para presupuesto de venta

2009-12-18:
VNT:n Uso de etiquetas/tags en clientes
COM:n Uso de etiquetas/tags en clientes potenciales
CMP:n Uso de etiquetas/tags en proveedores
SYS:n Añadida opción al Grid de mostrado de datos para buscar registro según el contenido del campo seleccionado

2009-12-16:
TCN:n Opción para cargar porcentajes globales, tipo de IVA y moneda de manera opcional al importar archivos BC3
TCN:b Error al tratar la importación opcional de datos globales de BC3, no se tenía en cuenta
TCN:b Error al mostrar histórico de precios desde ajuste de precios de conceptos en descompuestos en presupuesto de venta
CTB:m Cambiado sistema de poner el concepto en asiento contable cuando no se indica, en lugar de utilizar la descripción del asiento se pone el último concepto utilizado a nivel de linea

2009-12-14:
SYS:n Actualización de la mayoría de los componentes de desarrollo (JVCL/JCL, Indy, Virtual Data, UniSynEdit, Drag&Drop, Fast-Report, ...)
SYS:n Actualizada versión de IDE de 7 a 7.1
SYS:n Activado botón de minimizar en formulario principal y re-escrito comportamiento para que minimice la aplicación
SYS:n Ocultado campo para indicar rol en conexión ya que no se usa en sistema actual debido a la acumulación de permisos sobre usuarios individuales utilizando los roles asignados como plantilla
CTB:b Agrandando ancho del campo de filtrado de ejercicios contables para que se muestre completo cuando se filtra con comodines ("_" y "%")

2009-12-11:
SYS:n Desactivado el editor de formularios en run-time, fue solo una prueba de concepto sin uso real y que genera dependencias innecesarias de ciertos componentes

2009-12-10:
SYS:n Añadida variable REGISTRO_MERCANTIL para montar cadena de registro mercantil de empresa sin necesidad de hacerlo en los informes mediante programación
SYS:b Aviso cuando se trata de enviar email con sistema integrado si no se ha definido antes ningún servidor SMTP
PER:n Añadido campo para indicar etiquetas/tags a trabajador para su utilización en búsquedas

 

Esta versión de Criterium CyP viene algo ligera de cambios funcionales, pero en compensación se han actualizado la mayoría de los componentes utilizados para el desarrollo del programa lo que se traduce en mejoras indirectas en algunas funciones. No es el cambio de sistema de desarrollo que nos hubiese gustado acometer, pero por ahora es más que suficiente y dejamos el cambio definitivo para tiempos mas apacibles desde el punto de vista de las implementaciones.

 

Este cambio en background ha sido un cambio complejo y ha requerido mucho tiempo pero aún así nos ha sido posible hacer pequeñas mejoras y ampliar algunas funcionalidades de pequeño calado.

Se han añadido funcionalidades para realizar ajustes de presupuestos según varias opciones. Es un tema complejo y solo aplicable a algunos sectores, pero nos gustaría explicarlo con algo de tranquilidad en algunas entradas, si finalmente podemos sacar el tiempo para ello.

También se ha añadido el concepto de etiqueta o tag a los registros de clientes, imágenes de referencia, proveedores y trabajadores. Es un pequeño cambio pero muy útil por cuyo alumbramiento tenemos que dar las gracias a Rafa. Estos son los pequeños cambios que a nosotros no se nos ocurrirían en 3 vidas pero que nuestros clientes detectan en el día a día de forma muy sencilla. Mantener un canal de comunicación fluido con ellos nos permite aprovechar su experiencia para mejorar la aplicación granito a granito.

Bueno, ya que es la primera entrada de 2.010: Feliz año nuevo y haber si apretando un poquito entre todos dejamos esta jodida crisis atrás ;)

647630109  950442489