Nueva revisión Velneo 21.2

velneo20Ya está disponible la revisión 21.2 de Velneo que incluye una serie de importantes mejoras. Te recomendamos la actualización de todos los componentes de Velneo a esta versión.

Están disponibles en la zona de descargas de la web los instalables de las distintos componentes para los diferentes sistemas operativos.

Las incidencias solucionadas en esta esta revisión son las siguientes:

  • VELNEO-5310 En la versión 21.0 y 21.1, en componentes con sistemas operativos Windows, determinados comandos de instrucción que escriben a disco pueden fallar cuando el fichero es mayor de 32 MB: subida y descarga en SDV, Exportar texto, Exportar binario, Get Fichero URL y la clase VFile.
  • VELNEO-5295 En informes estándar se aplica a la previsualización de los informes visibles la orientación del último informe previsualizado
  • VELNEO-5296 En informes estándar no se aplica correctamente la orientación horizontal del informe usando el comando de instrucción Exportar informe a fichero o al generar un pdf desde la previsualización de un informe
  • VELNEO-5297 Error en vClient al usar informes estándar con orientación horizontal en determinadas circunstancias o dos informes en el mismo formulario
  • VELNEO-5258 La impresión en OSX se realiza con un tamaño proporcionalmente menor que en Windows y Linux
  • VELNEO-5264 Error en QML al hacer uso de la función root() de la clase VDataView

Te recomendamos instalar la revisión 21.2 de Velneo si te afecta alguna de la incidencias.

También se ha publicado la revisión 21.1 de Velneo vERP.

F.A.Q.

¿Es compatible la revisión 21.2 con versiones 21.X?

Las versiones son compatibles, pudiendo conectarse Velneo vClient 21.2 a Velneo vServer 21.x y viceversa, de todas formas os recomendamos que actualicéis todos los componentes para poder disfrutar de las mejoras de esta nueva revisión.

¿En qué versión están los servidores de la nube?

Los servidores se pueden actualizar ya a la revisión 21.2, lo que facilitará la actualización en los clientes.

 ¿Debo activar de nuevo el servidor tras actualizarlo?

No es necesario. Una vez actualizado reconocerá la activación ya realizada.

Este artículo Nueva revisión Velneo 21.2 es original de Velneo.

Tagged , , , | Comments Off on Nueva revisión Velneo 21.2

Nueva revisión 21.1 de Velneo vERP

Ya está disponible la revisión 21.1 de Velneo vERP que incluye una serie de importantes mejoras. Si ya estás usando la versión 21.0 de Velneo vERP te recomendamos la actualización a esta revisión así como la actualización de la plataforma de desarrollo Velneo a la revisión 21.2.

Si eres suscriptor de Velneo vERP la tienes disponible en la zona de descargas de la web, donde también encontrarás la descarga de los instalables de las distintos componentes de la plataforma Velneo.

Las mejoras incluidas en esta esta revisión son las siguientes:

  • VERP-269 IMPORTANTE. Contabilidad. Corregido cálculo de saldos acumulados en apuntes.
  • VERP-268 Contabilidad. El formulario de consulta de extractos se puede abrir múltiples veces.
  • VERP-267 General. Optimizada la carga de opciones de menú.
  • VERP-261 Gestión: Las configuraciones establecidas en las divisiones de empresas se tienen en cuenta a la hora de gestionar documentos de compras y ventas.
  • VERP-260 Contabilidad: El desglose de cobros y pagos mantiene el puntero a la factura original.
  • VERP-259 General. Mejorado el script de control de apertura única de registro.
  • VERP-253 General. Al añadir un teléfono adicional se graba correctamente.
  • VERP-251 General. Importación de registros de personalización de rejillas y formularios en formato JSON.
  • VERP-249 Contabilidad. Ya están operativos los localizadores de cuentas auxiliares en la opción de menú extracto.

Puedes consultar la lista de novedades de Velneo vERP 21.1 detallada donde encontrarás documentados los objetos que han cambiado en cada mejora.

Te recomendamos instalar la revisión 21.1 de Velneo vERP si te afecta alguna de la incidencias.

Además, se ha publicado una nueva revisión de vERP.

F.A.Q.

¿Es compatible la revisión 21.1 con versiones anteriores?

Las versiones son totalmente compatibles incluso en algunas ocasiones, si es necesario, se crea un proceso de migración que se lanza automáticamente la primera que se ejecuta.

¿Con qué versión de Velneo puedo editar esta revisión?

El número de versión 21 indica que está editada con la versión 21 de la plataforma. Recomendamos que edites esta revisión de Velneo vERP con la nueva revisión 21.2 de Velneo.

Este artículo Nueva revisión 21.1 de Velneo vERP es original de Velneo.

Tagged , , , | Comments Off on Nueva revisión 21.1 de Velneo vERP

Próxima revisión de Velneo 21.2

velneo20Estamos cerrando y probando la revisión 21.2 que incluye la resolución de una serie de incidencias detectadas de la versión Velneo 21. Publicaremos esta revisión en los próximos días.

La publicación en forma de revisión facilita la implantación al mantener compatibilidad total con la versión pública en curso. En el post de publicación de la revisión incluiremos un listado detallado de las incidencias resueltas y entre ellas se incluirán:

  • VELNEO-5308 En la versión 21.0 y 21.1, en componentes con sistemas operativos Windows, determinados comandos de instrucción que escriben a disco pueden fallar cuando el fichero es mayor de 32 MB: subida y descarga en SDV, Exportar texto, Exportar binario, Get Fichero URL  y la clase VFile.
  • VELNEO-5295 En informes estándar se aplica a la previsualización de los informes visibles la orientación del último informe previsualizado
  • VELNEO-5296 En informes estándar no se aplica correctamente la orientación horizontal del informe usando el comando de instrucción Exportar informe a fichero o al generar un pdf desde la previsualización de un informe
  • VELNEO-5297 Error en vClient al usar informes estándar con orientación horizontal o dos informes en el mismo formulario
  • VELNEO-5258 La impresión en OSX se realiza con un tamaño proporcionalmente menor que en Windows y Linux
  • VELNEO-5264 Error en QML al hacer uso de la función root() de la clase VDataView

Te recomendamos instalar la revisión 21.2 de Velneo cuando se publique si te afecta alguna de las incidencias detectadas.

¿Será compatible la revisión 21.2 con la versión 21.0?

Las versiones son compatibles, pudiendo conectarse Velneo vClient 21.2 a Velneo vServer 21.0 y viceversa, de todas formas os recomendamos que actualicéis todos los componentes para poder disfrutar de las mejoras de esta nueva revisión.

¿Debo activar de nuevo el servidor tras actualizarlo?

No es necesario. Una vez actualizado reconocerá la activación ya realizada.

Este artículo Próxima revisión de Velneo 21.2 es original de Velneo.

Tagged , , , | Comments Off on Próxima revisión de Velneo 21.2

¿Es difícil utilizar PaaSOS para mis desarrollos?

La semana pasada contactó conmigo un viejo amigo que quería conocer mas en profundidad el Proyecto PaaSOS. Organicé una reunión con Jorge Hontoria y antes de llegar a los postres mi amigo nos preguntó: “Realmente, ¿es difícil utilizar PaaSOS para mis desarrollos?”

Jorge y yo discrepamos… ¿quieres saber cuales fueron nuestras opiniones?

utilizar PaaSOS

 

Yo argumentaba que utilizar PaaSOS, para alguien que se está iniciando en el desarrollo con Velneo, es demasiado complejo mientras que Jorge opinaba que no es tan difícil de utilizar.

Te voy a contar los argumentos de cada uno.

Conociendo la plataforma PaaSOS

De entrada, PaaSOS asusta.

Si descargas toda la plataforma PaaSOS y ves su estructura, lo cierras y no lo vuelves a abrir.

utilizar PaaSOS

¡Que no cunda el pánico!

Yo lo he abierto unas cuantas veces… y aquí sigo.

También es verdad que hay que diferenciar 3 partes bien diferenciadas

  • Plataforma completa: el árbol que te he enseñado anteriormente es de la versión 1.6… creo que la versión 1.7 trae mas novedades.
  • PaaSOS CORE: verdadero corazón de la plataforma. Este módulo da la funcionalidad común a toda la plataforma y simplemente por heredarlo en tus desarrollos, también la tendrás a tu disposición.PaaSOS Core
  • Módulos de PaaSOS: módulos con funcionalidades específicas. Generalmente están formados por un proyecto de datos y uno de aplicación y suelen funcionar de manera autónoma  (heredando PaaSOS CORE).
    • Cartera de cobros y pagos
    • GTD.
    • Rutas.
    • Redes sociales.
    • etc.

PaaSOS EAC

Mi opinión: Utilizar PaaSOS para mis desarrollos es COMPLICADO

Siendo sincero yo, en este caso, parto con alguna desventaja.

Llevo involucrado en el proyecto casi desde el principio, por lo que me ha tocado desarrollar o modificar alguna de las partes complejas de la plataforma.

Al realizar mi afirmación, yo no diferenciaba entre “utilizar PaaSOS” y “modificar PaaSOS” puesto que he tenido que realizar las dos operaciones.

Una de las mayores dificultades a las que se enfrenta un desarrollador al intentar comprender el CORE de PaaSOS es que se hace un uso intensivo tanto de constantes como de funciones (se puede dar el caso de que desde un manejador se llame a un proceso que ejecute una función… que llame a otra función (en este ejemplo se recalculan los calendarios al realizar una repetición de una actividad).

 

Función PaaSOS

Una de las dificultades añadidas por lo menos para mi) es que TODA la plataforma esta en la lengua de “chespir”, es decir, en Inglés (menos mal que los textos explicativos están en castellano).

Si eres como yo que toda la vida he estudiado francés… pues todavía es mas complicado.

El sistema de conexiones es complejo… pero a la vez muy potente. Permite conectar unos registros con otros sin necesidad de enlaces entre las tablas.

La opinión de Jorge: Utilizar PaaSOS para mis desarrollos es SENCILLO

Jorge argumentaba, y con razón, que hay que diferenciar “utilizar PaaSOS para mis desarrollos” de “modificar el CORE de PaaSOS para mis desarrollos”.

Como te he comentado anteriormente, simplemente por el hecho de heredar “PaaSOS CORE“, podrás:

  • Etiquetar y categorizar cualquier registro.
  • Actividades con repetición de las mismas.
  • Posibilidad de adjuntar ficheros.
  • Realizar anotaciones.
  • Calendario de serie.
  • E-mails.
  • etc.

Es cierto que el código está “mimado” hasta la última coma. Cualquier proceso o función se detalla exhaustivamente (como has podido ver anteriormente).

Otra de las ventajas que señalaba Jorge es que la estructura de cualquiera de los proyectos es la misma:

Módulo PaaSOS

Otra de las ventajas que le veía Jorge es el potente sistema de plantillas disponible según el módulo que tengas que desarrollar:

  • Maestro.
  • Maestro arbolado.
  • Maestro con plural.
  • Maestro con sistema de conexiones.
  • Maestro sin sistema de conexiones.
  • etc.

En este punto le tengo que dar la razón.

Después de un tiempo sin trabajar con PaaSOS, desarrollé un par de módulos para la plataforma, PaaSOS GTD y PaaSOS EAC (cobros y pagos) y no me costó demasiado gracias a estas plantillas.

Cobros y pagos

 

Conclusiones finales

Es cierto que PaaSOS es complejo… muy complejo pero a la vez es potente… muy potente.

Yo te animaría a utilizar PaaSOS para tus desarrollos en Velneo.

Te animaría a “conocer” PaaSOS CORE y a desarrollar tu primera aplicación con PaaSOS.

 

¿Has utilizado PaaSOS en tus desarrollos Velneo? ¿Te ha parecido complejo de utilizar? ¿Te ha parecido sencillo?

Déjame un comentario mas abajo y comenzamos el debate.

La entrada ¿Es difícil utilizar PaaSOS para mis desarrollos? aparece primero en AyudaVelneo.

Tagged , , , , , , , | Comments Off on ¿Es difícil utilizar PaaSOS para mis desarrollos?

15 buenas prácticas para proyectos de desarrollo de software

El software es uno de los pilares de la sociedad moderna, ya sea por trabajo, negocios o placer. Tanto los niños como los adultos tienen una fuerte dependencia de la tecnología que está asentada sobre aplicaciones y servicios de software sólidos y robustos. Esta dependencia se basa en la garantía de que las aplicaciones de software y las utilidades son seguras y fiables.

Desde la otra perspectiva, la industria del desarrollo de software evoluciona de forma muy rápida, dada la demanda y las oportunidades que ofrece el mercado en forma de necesidades no cubiertas. Hay muchísima competencia ya que muchas empresas están intentando desarrollar sus propias soluciones para llevarse su parte del pastel.

Desgraciadamente, muchos esfuerzos concienzudos y minuciosos se van al cubo de la basura en el desarrollo de software. Varias fuentes del sector señalan que aproximadamente un 80% de los proyectos de software no tienen éxito por malas previsiones, ejecuciones de proyecto muy mejorables, presupuestos y recursos limitados, o funcionalidades inapropiadas.

15 buenas prácticas para proyectos de desarrollo de software

Afortunadamente, sin embargo, existen un gran número de casos de éxito. Siempre podemos aprender del enfoque usando en ellos y que nos puede servir de mucha utilidad para garantizar llevar a buen puerto nuestros desarrollos de software.

Ya sea que estés desarrollando un nuevo producto de software, haciendo mejoras, actualizaciones o mantenimientos de software ya existente, es aconsejable tener en cuenta las mejores prácticas que se enumeran a continuación:

#1 Seleccionar el talento y los recursos apropiados

Captar y seleccionar el talento humano con las destrezas necesarias y experiencia relevante es vital para garantizar el éxito del proyecto. Es importante asignar el trabajo apropiado a la persona indicada.

Por otro lado, invertir en herramientas que aumentan la productividad y eficiencia del equipo de desarrollo es muy importante. Buenos equipos, hardware moderno, software y plataformas de desarrollo y de pruebas actualizado, y herramientas automatizadas ayudan a que el equipo pueda imprimir todo su conocimiento y buenas prácticas para garantizar un producto sólido, fiable y robusto.

#2 Escoger el proceso de desarrollo apropiado

El ciclo de vida del desarrollo del software tiene una fuerte dependencia del proceso elegido. El modelo en cascado, la metodología ágil, el enfoque iterativo en espiral, son todos formas contrastadas de alcanzar el éxito. La dificultad está en elegir bien qué metodología le conviene más a cada tipo de proyecto.

Esto es de suma importancia. La adhesión efectiva y el hecho aplicar a rajatabla la metodología elegida es lo que determina que el proyecto llegue a buen puerto. En ocasiones es bueno hacer un pequeño prototipo para evaluar la viabilidad o investigar nuevas tecnologías.

#3 Hacer presupuestos y estimaciones razonables

Muchos proyectos fracasan o se prolongan en plazos por hacer estimaciones poco realistas. Una planificación razonable depende de fijar bien los tiempos, el presupuesto, los recursos y los esfuerzos. Lo mejor es usar técnicas de estimación y presupuestarias contrastadas. Intentar apretar las estimaciones para intentar acortar un proyecto normalmente termina en catástrofe.

#4 Fijar hitos más pequeños

Los grandes proyectos e hitos deben complementarse con mini-hitos para poder hacer mejor seguimiento, más control y mejor gestión de riesgos, y en general para mitigar incidencias de una forma más controlada. Los miembros del equipo deben reunirse para fijar estos mini-hitos y alinearlos con los grandes hitos para cumplir plazos y reducir los retrasos que pueden surgir por las interdependencias de las tareas que tienen asignadas.

#5 Definir bien los requisitos

Documentar de manera efectiva los requisitos es la columna vertebral para poder alinear el producto final con los objetivos empresariales. Es imperativo que se reúnan todas las partes (clientes, los responsables de empresa y los líderes de los equipos) para documentar los requisitos de forma clara y concisa, sin dejar lugar a lagunas o a la improvisación.

Es necesario definir los requisitos básicos, los derivados y los implícitos, tanto funcionales como no funcionales. La funcionalidad se puede obtener mediante escenarios de casos de uso. Los requisitos en torno al rendimiento, funcionamiento a prueba de fallos, de sistema, diseño y arquitectura, todos deben estar bien documentados y tenidos en cuenta.

#6 Definir la arquitectura del sistema

Un buen arquitecto de aplicaciones garantizará una elección de arquitectura del sistema apropiada, teniendo en cuenta tanto los requisitos como las limitaciones y restricciones, si las hubiera. Buenas prácticas, tales como la identificación de amenazas y anti-patrones dentro del sistema son muy útiles.

#7 Optimizar el diseño de la aplicación

El diseño debe ser modular y estar optimizado. Equilibrar y distribuir funcionalidad entre varios módulos puede hacer que el proyecto funcione bien o que rompa. Un enfoque orientado a objetos es una técnica que garantiza modularidad. Depende de los diseñadores garantizar que el enfoque elegido se aplique bien para poder lograr la máxima cohesión con un acoplamiento mínimo. La reutilización del código es un aspecto muchas veces infrautilizado en el diseño de la aplicación, y si está bien implementado, puede ahorrar mucho esfuerzo y reducir costes a la larga en cualquier proyecto.

# 8 Implementar el código de manera efectiva

El uso de módulos más pequeños que están auto-probados, probados unitariamente y que se integran continuamente es una buena práctica muy extendida. La automatización de herramientas build y la ejecución automatizada de pruebas de regresión para cada funcionalidad incluida se recomienda para garantizar que la funcionalidad ya implementada no rompe.

#9 Pruebas rigurosas y validación

La planificación de pruebas, la creación de conjuntos de pruebas y la ejecución de las mismas son muy importantes con el fin de validar la funcionalidad desarrollada. De hecho, la planificación de las pruebas debe hacerse en paralelo a la fase de desarrollo. Igual de importante es la documentación que hagamos de las pruebas, informar de forma efectiva los errores, el rastreo de los errores y la corrección de los mismos. El uso de herramientas automatizadas al igual que procesos contrastados que aseguren que los errores se identifiquen en la fase más temprana posible y resueltos con el menor coste.

Las pruebas unitarias, las de integración, las de funcionalidades, las del sistema y las del rendimiento son algunos tipos de pruebas. Cada nivel de prueba requiere su pericia, planificación y ejecución.

#10 Documentación

Aún siendo importante el propio software, igual de importante es toda la documentación sobre el que se apoya –el plan del proyecto, requisitos y especificaciones, Diseño de Alto Nivel (HLD), Diseño de Bajo Nivel (LLD), planes de pruebas, informes de las pruebas, informes de estado y la documentación para los usuarios.

Muchas veces estos documentos son parte de los entregables especificados por el cliente o las partes interesadas en un proyecto determinado. Estos documentos ayudan a garantizar el entendimiento del software, trazabilidad y eliminar la dependencia del equipo de desarrollo original. Pueden usarse como referencia en el futuro por otras personas que necesites mantener, mejorar o usar el software.

#11 Planificar sesiones de revisión de código

Las revisiones de código muchas veces son más efectivas, y sin duda menos costoso, para encontrar errores que si solo hacemos pruebas. Las revisiones de todos los entregables, del código y de la documentación es algo que siempre se debe hacer.

Estas sesiones de revisión del código, su gestión y la resolución de conflictos que puedan darse en las mismas se hacen siguiendo una serie técnicas contrastadas y buenas prácticas. Tanto la revisión a pares como las revisiones por terceros expertos siempre son útiles.

#12 Garantizar la gestión del control de las fuentes del software

El uso de de una gestión efectiva del código fuente y la documentación, para que estén controlados según la versión, es fundamental para poder mantener la trazabilidad y la reversión controlada del código si fuera necesario. En el mercado hay mucho software disponible para este tipo de tareas.

#13 Control de calidad

El control de calidad ayuda a sacar adelante los proyectos de desarrollo sin graves trastornos y de forma más rápida. Desde la detección de fallos hasta el establecimiento de métricas claves, las mejores prácticas en este terreno han demostrado ser un éxito a la hora de determinar si un proyecto está en condiciones de pasar a una nueva fase o si está listo para ser lanzado o entregado al cliente.

Se deben fijar métricas y objetivos para asegurar que los requisitos, el diseño, el código, las pruebas y otras tareas vayan coordinadas y alienadas.

#14 Instalación y despliegue eficaz

En multitud de ocasiones cuando ya hemos probado el software de puertas a dentro y todo va bien, de repente el proyecto fracasa en casa del cliente o cuando estamos en fase de implementación y despliegue. Es muy importante tener un buen plan de despliegue y hacer una lista a modo de “checklist” para evitar desastres.

#15 Estrategia de soporte y mantenimiento

Incluso cuando el software desplegado está funcionando, debe haber un proceso de soporte y mantenimiento en marcha, previamente diseñado y pensado, para poder informar y reportar errores y mejoras al equipo de desarrollo de forma eficaz.

Las 15 buenas prácticas para proyectos de desarrollo de software mencionadas arriba son muy utilizadas en todo tipo de empresas de software que cuentan con equipos de desarrollo, en mayor o menor medida. Evidentemente hay muchos factores que limitan o posibilitan la implementación de dichas buenas prácticas: recursos, presupuestos, etc.

¿Qué buenas prácticas en este sentido se aplican en tu empresa?

Este artículo 15 buenas prácticas para proyectos de desarrollo de software es original de Velneo.

Tagged , , , , , | Comments Off on 15 buenas prácticas para proyectos de desarrollo de software

Sabías que … (4)

Sabías que … (4)

Se puede desactivar la ordenación de las columnas de las Rejillas de 2 formas …

    • Pero ninguna de ellas con Velneo nativo.
    • La primera usando el API mediante la función setSortingEnabled(false) de la clase VGridListDataView.
    • La segunda se consigue usando una regla CSS sobre el control Rejilla.

Interfaz: Establecer hoja de estilo CSS ( GRD_REJILLA, “QTableView { qproperty-sortingEnabled: false}”)

Se puede ACELERAR LA CARGA DE LOS REGISTROS DESDE SERVIDORES REMOTOS

    • En nuestras aplicaciones necesitamos consultar a menudo tablas con muchos registros (artículos, clientes, …).
    • En Cloud la primera consulta necesita un tiempo extra para guardar los registros en la caché del cliente.
    • Ese tiempo extra puede resultar en una mala experiencia para el usuario.
    • Podemos minimizar ese tiempo extra precargando los registros en el autoexec de la aplicación mediante un proceso en 2º plano y el comando Cargar lista
    • El comando Cargar lista rellenará la caché con los registros de la tabla y de esta forma la primera consulta que realice el usuario se hará desde la caché en lugar del servidor remoto.

Se puede fijar el tamaño de un Dock cuyo Objeto incrustado sea un formulario

    • Muchas veces nos interesa bloquear el tamaño de un Dock de tipo formulario, aparte de fijarlo en un sitio de la pantalla.
    • Usaremos el CSS siguiente en el que establecemos el mismo valor para las propiedades min-height/max-height o min-width/max-width:

QDockWidget {
       /* Los Docks son hijos de la Ventana principal QMainWindow y heredan los valores de min-width y min-height */
       /* Por eso se sobreescriben con la clase QDockWidget */
       min-width: 300px;
       /* Haciendo el min=max conseguimos que el Dock no sea modificable en tamaño */
       min-height: 100px;
       max-height: 100px;
}

    • Hay que tener en cuenta que el CSS afectará a todos los Docks de tipo formulario que tenga la Aplicación, por lo tanto, esto solo es válido cuando existe un solo Dock. (Los Docks del editor de Informes personalizados también se verán afectados).

Ordenar una Rejilla sin tener en cuenta ni mayúsculas ni acentos

    • La ordenación que tenemos en la Rejilla es alfabética y tendrá en cuenta las mayúsculas y acentos.
    • Para disponer de una Ordenación independiente de mayúsculas y acentos lo que debemos hacer es añadir un nuevo campo #NOMBRE_64 a la tabla que sea de tipo Fórmula alfabética. El contenido de la fórmula será stringToAlpha64(#NOMBRE). El campo NOMBRE es el que queremos ordenar.
    • Con el comando Ordenar lista (#NOMBRE_64) conseguiremos el resultado deseado.

El comando Set retorno de proceso = NO en procesos de 3P inhabilita el comando Get variable local de objeto ejecutado desde 1P

    • Mucho cuidado con el comando Set retorno de proceso = NO en procesos ejecutados en 3P y que deban devolver valores en variables locales
    • El comando Get variable local de objeto no es funcional cuando el proceso en 3P ha terminado con un Set retorno de proceso = NO
    • Por lo tanto, cuando un proceso vaya a ser ejecutado en 3P lo mejor es no usar este comando y sustituir el retorno por una variable local que leeremos desde 1P

La carpeta base en el Visor HTML es siempre la caché de vClient

    • La carpeta base del código que ejecutamos en el Visor HTML es siempre la caché de vClient
    • Tenemos que tenerlo en cuenta si queremos usar links en el código que hagan referencia directamente al fichero
    • Para cambiar la carpeta base tenemos que usar la función del API VCWebView.setSourceCode(html, pathBase).

Un proceso en 4P ejecutado desde vClient no contempla la herencia hacia arriba

    • Los procesos en 4P se ejecutan siempre en una copia de la instancia del proyecto al que pertenecen
    • Lo podemos comprobar con el siguiente ejemplo:

Tenemos un proceso PRO_VERALIAS javascript en el proyecto de datos,

var cAliasAPP = theApp.mainProjectInfo().alias();
// Muestra en vAdmin el Alias
alert (“El valor de theApp.mainProjectInfo().alias() es: ” + cAliasAPP)

Ejecutamos el proceso PRO_VERALIAS desde el proyecto de aplicación en 3P y 4P.

Comprobamos que en 3P devuelve el alias del proyecto de aplicación y en 4P sin embargo devuelve el alias del proyecto de datos.

    • Por lo tanto, habrá que tener en cuenta este comportamiento en aquellos scripts javascript que vayamos a ejecutar tanto en 3P (síncrono) como en 4P (asíncrono).
      El resultado no será el mismo cuando en el código se vaya a contemplar la cadena de herencia, por ejemplo la función VProjectInfo.allTableCount().

QML solo funciona en 1P

    • El código QML se ha incorporado a Velneo para mejorar nuestros interfaces, sobre todo en dispositivos móviles.
    • Los scripts QML siempre van asociados a un formulario.
    • Así que QML solo tiene sentido en 1P y el código estará siempre descargado en la caché de vClient.

En tiempo de diseño el editor de fórmulas javascript evalúa las expresiones introducidas

    • El botón Verificar (F9) no solo comprueba la sintaxis del código javascript sino que además evalúa la expresión.
    • Este comportamiento en tiempo de diseño puede tener consecuencias curiosas o incluso peligrosas.

Dos ejemplos:

SET(LOK, /*JAVASCRIPT*/theApp.setOverrideCursor(17))
SET(LOK, /*JAVASCRIPT*/theApp.removeFile(“d:/este_fichero_se_va_a_borrar.txt”))

    • Para evitar que se evalúe el código en tiempo de diseño podemos usar el siguiente comando:

if (theApp.exeName() != “vDevelop”) { <expresión javascript> }

La entrada Sabías que … (4) aparece primero en AyudaVelneo.

Tagged , , , | Comments Off on Sabías que … (4)

Nuevo componente beta del Ecosistema de vERP para LATAM

vLatamERP

Es una personalización en fase beta, especialmente diseñada para cubrir las necesidades de las empresas en latinoamérica. Cuando se publique la versión vERP 22 éste componente del Ecosistema será actualizado utilizando las novedades de estructura que permitirán una mayor integración evitando la necesidad de usar múltiples tablas externas a vERP.

Entre sus bondades cuenta con:

  • Idiomas para los países que reportan mayor ventas en Latinoamérica.
  • Nuevo menú de Tesorería para la gestión administrativa de cobros, pagos y estados de cuenta.
  • Recibos de Cobro y Pago para los diferentes cruces administrativos con configuraciones automáticas.
  • Consultas de Cuentas corrientes generales o detalladas por entidad (Cliente, Proveedor o cualquier entidad que interactúe).
  • Cuentas de caja/banco para gestionar todos los cobros, pagos y estados de cuenta.
  • Check en empresa para gestionar todos los precios del sistema con o sin IVA.
  • Ajuste de procesos contables, para los cobros y pagos respectivamente.
  • Opciones de auto impresión en la generación del documento con configuración individual.
  • Las devoluciones no registran factura con monto negativo, en su lugar generan un remito con signo negativo para ajustar inventarios, y se visualiza como Notas Crédito en las cuentas corrientes a nivel administrativo. Esto permite también registrar Notas de Crédito manualmente que solo afecten saldo y no inventario.
  • Pantalla de inicio modificada, para abarcar el nuevo manual de Tesorería y la modificación de los manuales existentes (disponibles también en formato Word).
  • Reportes por defecto de todos los procesos nuevos y mejoras.

También contamos con una versión con mayores avances como el registro de las Notas de Crédito y Débito, Ingresos y Egresos directos, moneda extranjera, retenciones en compras y ventas, trabaja en conjunto con el modulo de Factura Electrónica en los países disponibles, configuración de repositorios, licenciamiento, actualizaciones, próximamente mensajería y otras novedades.

Estamos enfocados en cubrir las necesidades de las empresas en Latinoamérica, y darle una solución integral y funcional desde su primera instalación, teniendo como base de desarrollo el vERP, con el mismo cuidado y detalle del código, utilizando siempre las buenas practicas de programación que dan como resultado un producto final de excelencia.

¿Te interesa?

​vLatamERP es parte del ecosistema de vERP de Velneo, lo tienes disponible en la descarga del componente, junto con el resto de productos del ecosistema, una vez adquieras vERP.
 
Si deseas mas información sobre el producto contacta con Velneo y te informamos de la mejor forma de tener tu propio ERP perfectamente adaptado a tu país.

Este artículo Nuevo componente beta del Ecosistema de vERP para LATAM es original de Velneo.

Tagged , , , | Comments Off on Nuevo componente beta del Ecosistema de vERP para LATAM

Incidencia en la web el 7 de Julio de 2017

El pasado viernes 7 de Julio entre las 15:00 y 19:00, aproximadamente, varios recursos web de velneo estuvieron inaccesibles o con problemas de acceso. El origen del problema estaba relacionado con un ataque a las infraestructuras gestionadas por uno de nuestros proveedores de Dominios y DNS. Gandi.net. Este incidente afectó a 751 dominios de este proveedor.

Esta incidencia provocó que las DNS del dominio velneo.es fueran alteradas en algunas zonas ofreciendo una ip incorrecta. Ya que los recursos de velneo.es y los subdominios principales funcionan por https, en este caso, el acceso por parte de un usuario a https://velneo.es daba error y la web no era accesible. En el caso del dominio http://foro6x.velneo.es, que no tiene https, ese tráfico se redirigía a una web maliciosa que intentaba hacer uso de bugs de seguridad de navegadores antiguos.
Si durante la tarde del viernes algún usuario accedió a cualquiera de los recursos web de velneo.es y noto un funcionamiento incorrecto ponte en contacto con soporte para analizar lo ocurrido. Si durante ese periodo de 4 horas se solicitaron las credenciales por cualquier medio (web o correo), te recomendamos que por seguridad las cambies, aunque no tenemos conocimiento de que hubiera ninguna solicitud de este tipo, queremos garantizar la seguridad en todo momento.

Generalmente usamos varios dominios con varios proveedores y sistemas distintos. Todo lo gestionado por el dominio velneo.com (correos, cloud, licencias, etc) no sufrió ninguna alteración ni corte de servicio en ningún momento. Por otro lado, ninguna de las infraestructuras de Velneo sufrió ningún acceso, cambio o alteración durante la incidencia o a posteriori.

Como aprendizaje, aceleraremos la migración de todos los dominios a HTTPS con la opción de HTTP Strict Transport Security y DNSSEC para evitar este tipo de incidentes por fallos en alguno de nuestros proveedores.

Pedimos disculpas por la incidencia y seguimos trabajando para que Velneo sea siempre “Life is soft”

Este artículo Incidencia en la web el 7 de Julio de 2017 es original de Velneo.

Tagged , , , | Comments Off on Incidencia en la web el 7 de Julio de 2017

vTutor, Velneo Cloud y vERP explicados mejor

En Velneo sabemos que contamos con una de las mejores plataformas de desarrollo de aplicaciones empresariales. También sabemos que tenemos margen de mejora para comunicar todo lo que ofrecemos.

En los últimos meses hemos hecho varias acciones en la página web y en la creación de nuevos recursos para intentar acercarte Velneo de forma más clara y sencilla.

Nueva sección Velneo Cloud

Con Velneo puedes desarrollar y desplegar aplicaciones en local o en la nube. Si te interesa la segunda opción, Velneo Cloud te proporcionará grandes ventajas. Podrás desarrollar y desplegar tus aplicaciones desde cualquier lugar del mundo. Mira todo lo que incluye.

Nueva sección vTutor: recursos formativos

vTutor, como su nombre indica, es un recurso formativo que incluye un buen número de tutores con los que podrás aprender como se programan desde los objetos más básicos hasta los más avanzados, con explicaciones paso a paso que incluyen documentación escrita y el ejemplo en código abierto para que puedas consultarlo, copiarlo y reutilizarlo en tus desarrollos. 

Nueva sección Formación en Vídeo

En la zona de formación de Velneo, tienes que estar registrado en la página para poder acceder, tienes a tu alcance una gran variedad de cursos en vídeo. Entre otras cosas, podrás hacer tu primera aplicación en Velneo o aprender las instrucciones de proceso más comunes que usarás durante el desarrollo de tus aplicaciones. 

Nueva Sección vERP

Velneo vERP es una plantilla de código abierto altamente personalizable con la que podrás desarrollar en un tiempo récord tu software de gestión empresarial ERP o de cualquier otro tipo.

Como plantilla de código abierto Velneo vERP incluye funcionalidad estándar que encontrarás en la mayoría de las empresas en sus módulos de Ventas, Compras, Almacén, Contabilidad y TPV.

Tanto si estás empezando con Velneo o como sí ya llevas un tiempo desarrollando en la plataforma, te recomendamos que visites estas nuevas secciones para repasar todos los servicios que te ofrecemos.

Este artículo vTutor, Velneo Cloud y vERP explicados mejor es original de Velneo.

Tagged , , , | Comments Off on vTutor, Velneo Cloud y vERP explicados mejor

Consultorio Velneo: ¡Actualizaciones al poder!

Muy interesante la pregunta que me hace David Cueva desde Juarez (México) y que creo que se puede resolver mediante la creación de 3 campos y 1 actualización ¿no te lo crees?.. Sigue leyendo.

Actualizaciones al poder

La pregunta en cuestión es la siguiente:

Tengo un formulario de mantenimiento a x unidad…en el tengo datos de la unidad a servir, fecha, y un boleano que me indicara cuando el mantenimiento actual..esta terminado….abajo….una vista de datos donde esta la rejilla de lineas de mantenimiento (editable)…donde tengo el servicio a dar…y entre otras cosas un campo de finalizado…..
lo que no puedo lograr es que al momento que todas las lineas (servcios), esten en finalizado si….en ese instante me habilite el campo Terninado en el formulario…si hay algun servicio sin terminar…debe permanecer deshabilitado…
Mediante control de evento y eventos….lo hace..pero a destiempo…no en tiempo real…..
Antes de continuar, es muy recomendable que, si no lo has hecho ya, leas este artículo acerca de las actualizaciones.

Definiendo el problema

Básicamente David tiene un registro (maestro) en el que hay que cambiar un campo de tipo booleano en función de si todas sus líneas (plural) están en estado terminado o no (te recomiendo leer también este otro post sobre las relaciones entre tablas).

David lo ha conseguido mediante maneadores de evento pero el problema es que no consigue que el valor del campo booleano se actualice en tiempo real.

Siempre digo que todo lo que podamos hacer en el proyecto de datos, es recomendable hacerlo ahí. Velneo se encargará de realizar las operaciones necesarias para actualizar los registros.

Pues vamos a ello…

Creando los campos necesarios

Para aplicar la solución, en el registro del mantenimiento vamos a crear dos campos de tipo numérico:

  • NUM_LIN_TOT: iremos acumulando en este campo el número de líneas que tiene el registro en cuestión.
  • NUM_LIN_TER: iremos acumulando en este campo el número de líneas que estén terminadas.

Además vamos a modificar el contenido inicial del campo booleano (le llamaremos B_TER) que nos indica si el mantenimiento está terminado o no:

  • choose(#NUM_LIN_TOT= #NUM_LIN_TER, 1, 0)

De esta forma conseguiremos que el campo se marque como “Terminado” cuando el nº de líneas terminadas sea igual al nº de líneas totales.

Velneo se encarga del resto: Actualizaciones al poder

Ahora sólo nos falta que los campos para el número de líneas se vayan actualizando de forma automática.
Para ello vamos a crear una actualización en la tabla de líneas de mantenimiento que actualice el maestro de mantenimientos.
Una vez creada, vamos a dar de alta dos componentes:
Nº de líneas totales
Actualización sencilla… cada vez que demos de alta una línea del mantenimiento… se acumula 1 en el campo NUM_LIN_TOT.

Nº de líneas terminadas

Mediante este componente de actualización, iremos añadiendo 1 al nº de líneas terminadas pero solamente cuando la línea esté terminada (la condicionamos a que el campo B_TER esté a 1).

Conclusión

Pues si esperabas algo mas de dificultad… lo dejaremos para otro día. Con estas sencillas instrucciones, David conseguirá lo que se propone.

Cuando el valor del campo NUM_LIN_TER sea igual al del campo NUM_LIN_TOT, querrá decir que todas las líneas estarán terminadas y por tanto el campo booleano B_TER se marcará a 1.

Ya sabes que si tienes alguna duda sobre Velneo, puedes hacérmela llegar a través del formulario de contacto e intentaré responderla.

Déjame un comentario mas abajo y comenzamos el debate.

La entrada Consultorio Velneo: ¡Actualizaciones al poder! aparece primero en AyudaVelneo.

Tagged , , , , , , , , | Comments Off on Consultorio Velneo: ¡Actualizaciones al poder!