NAV 2018: extensión escalable

Etiquetado: 

Este debate contiene 30 respuestas, tiene 8 mensajes y lo actualizó  Laura Nicolàs hace 1 año, 5 meses.

Viendo 15 publicaciones - del 16 al 30 (de un total de 31)
  • Autor
    Publicaciones
  • #4375

    Laura Nicolàs
    Jefe de claves

    solo pueden ponerse en producción sobre tablas, codeunit o page que no tengan personalizaciones en código fuera de extensión

    Jorge,

    Las extensiones pueden instalarse aunque el cliente tenga código/campos/objetos puestos desde C/SIDE. No hay ningún problema.

    Es más, sé de algunos proyectos de Upgrade en el que han dicho:
    – Una parte la pasamos a extensiones
    – Otra parte la dejamos en C/SIDE de momento.

    En este artículo lo explica: Running C/SIDE and AL Side-by-Side

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4376

    Laura Nicolàs
    Jefe de claves

    si pueden trabajar con otras extensiones aunque lo ideal sería fusionarlas en una

    Jorge, aquí discrepo.

    Yo pienso que es mejor separar las extensiones por funcionalidades.

    Si tienes una mega-extensión que hace muchas cosas, y un cliente te pide «tienes una funcionalidad que cubra el IRPF?» (por ejemplo), te quedas con el mismo problema que antes con los Addons.

    – O bien necesitas extraer las partes que necesitas, lo que es costoso porque ya no sabes qué campo es para qué funcionalidad
    – O bien le tienes que «colar» al cliente toda la mega-extensión, que no necesita.

    1 funcionalidad – 1 extensión . Es mucho mejor.

    En el cliente que estamos haciendo el Upgrade hemos hecho una extensión por funcionalidad, y luego una última extensión con todos los impresos de facturas, pedidos, abonos y demás.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4377

    Laura Nicolàs
    Jefe de claves

    luego está el problema del código, hasta ahora el código de NAV ha sido abierto para cualquier desarrollador en cualquier empresa pero ahora ya no, puedes instalar una extensión y no dar el código o si te lo piden enviarlo posteriormente

    En el caso del Add-on era un problema no tener el código (o no tener acceso por temas de licencia), porque entonces no podías ni personalizarle nada al cliente, ni corregir errores (que los había).

    Con las extensiones es distinto. Da igual que no tengas el código, porque no lo tienes que tocar para nada.

    • La extensión base tiene que ser extendible, sino nadie te la va a comprar
    • Para que sea extendible, hay que lanzar eventos OnBefore y OnAfter cada paso importante de la extensión. Lo explicamos en más detalle en el libro.
    • Si la extensión se puede extender, ya no necesitas modificarla, por lo que no necesitas el código. Para personalizar te basta con crear una nueva extensión.
    • El creador de la extensión tiene que corregir los bugs en un tiempo razonable y lanzar una nueva versión. Fíjate en las Apps que te descargas en el móbil. Las buenas sacan actualizaciones casi cada semana. Las malas no han sacado una actualización en meses… y entonces ya no te la descargas ,-)

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4378

    Laura Nicolàs
    Jefe de claves

    es realmente complicado a mi juicio crear unas extensiones reutilizables en más de una instalación, puedes encontrar algo similar pero nunca igual, para pequeñas herramientas es posible pero no para tratarlas como algo estándar.

    Por ejemplo, yo tengo desarrollado la generación de confirming para un cliente y te aseguro que eso no se podría reutilizar en otro cliente, sino que tendría que adaptarlo aunque la base la tenga ya desarrollada.

    Por qué no tengo tan claro que en la práctica funcione como dices, en la teoría por supuesto.

    Los clientes siempre van a necesitar personalizaciones. Eso son buenas noticias para los desarrolladores, porque seguiremos teniendo trabajo 🙂

    Las extensiones no van a sustituir a las personalizaciones en un 100%, pero sí quizá en un 50%.

    Vuelvo al ejemplo de WordPress porque lo conozco:
    – La web ClipDynamics.com está hecha en WordPress
    – A parte del core, tengo unas 10 extensiones genéricas instaladas
    – He necesitado funcionalidad que no me cubría ninguna extensión… y he contratado a un desarrollador que me lo haga. Tengo 2 extensiones «personalizadas»

    Yo creo que con los años, las implantaciones de Dynamics NAV acabarán igual:

    – Unas cuantas extensiones «genéricas», a un coste ridículo (10 euros, 100 euros)
    – Unas cuantas extensiones «pesonalizadas», a un coste de 50 a 70€/hora (de 1000€ a 3000€?)

    Si yo soy un cliente, tengo claro que si existen, quiero las genericas… porque la diferencia de precio de unas y otras es importante.

    ¡ojo! En tema web también hay clientes que necesitan (y pagan) una web completamente a medida. Habrán clientes de estos en Dynamics NAV. Ningún problema, más trabajo para nosotros 🙂

    Espero desde mi ignorancia haber podido ayudar .

    Has ayudado muchísimo!
    Tus comentarios me han permitido reflexionar para poder contestar.
    Así es como funciona la inteligencia colectiva .-)

    De verdad, gracias.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4379

    Laura Nicolàs
    Jefe de claves

    Pensando en una extensión para ese volumen, entiendo que es para publicarla en la tienda de extensiones de Nav. En ese caso, si no recuerdo mal, puedes decidir a que público se dirige, España, Francia, o todo el mundo. Si tu extensión es sólo para España, podrás usar la funcionalidad española, pero si es para varios países, sólo podrás usar la funcionalidad de la W1.

    Estoy de acuerdo.
    Si es para varios países, o te basas sólo en funcionalidad de la W1, o te creas una versión de tu extensión por país… lo que será más difícil de mantener….

    Si quieres llegar a 10.000 implantaciones tienes que ir al mercado global.
    Con solo las implantaciones de ES no sé si se llegaría.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4380

    Laura Nicolàs
    Jefe de claves

    Por último, Microsoft ha publicado una serie de checks a revisar y recomendaciones para las extensiones que se quieran publicar. Os dejo el enlace

    Yes, muchas gracias!

    Leí esta documentación hace tiempo y ahora está más actualizada.

    En el libro incluimos un capítulo sobre los requisitos que fija Microsoft para publicar en la AppStore.
    Aunque también se puede crear una extensión y no publicarla en la AppStore…

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4387

    Laura Nicolàs
    Jefe de claves

    Para el tema de las dll’s, y pensando en la misma tónica, no creo que se puedan usar dll’s. Yo por lo menos lo desaconsejo, y lo estoy intentando evitar. Por lo que he estado leyendo es para evitar problemas de seguridad en los Nav’s Online. Visual Code no soporta DotNets, y no creo que lo haga, así que habrá que ir pensando en otra cosa. Microsoft por su parte ha creado objetos para llamar a WebServices directamente.

    Lo de no poder usar .Net ni dlls puede ser un problema.
    Para solucionarlo Microsoft ha creado un proyecto abierto para que se puedan crear Codeunits que sirvan de Wrappers.

    https://github.com/Microsoft/cal-open-library

    Seguro que en unos poco meses tenemos codeunits que podemos usar para la mayoría de .Net necesarios.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4390

    Pepe Fernandez
    Participante

    Hola a todos, poco que añadir a lo dicho aquí.
    Se me ocurre que no se ha planteado que la extensión pueda funcionar en modo «demo».
    Se pueden establecer funcionalidades restringidas o un periodo de tiempo límite para las pruebas. Supongo que puede animar a muchos clientes finales a probar la extensión.
    Un saludo.

    #4391

    Laura Nicolàs
    Jefe de claves

    Hola Pepe,

    Muchas gracias por la aportación. Tienes razón en el tema «demo».

    Para que una app pueda tener tantas implantaciones el pricing es importante, y dentro del pricing tenemos los modelos freemiun, y las pruebas gratuitas.

    En un modelo freemium, la aplicación base es gratuïta, y hay funcionalidades extra que son de pago.
    En las pruebas gratuitas, se deja probar el programa de forma completa, por un periodo limitado de tiempo.

    En el mundo de Dynamics NAV no estamos acostumbrados a éstos modelos de precios, pero también nos tendremos que adaptar.

    De hecho Microsoft, en los requisitos para publicar la extensión en la AppSource, pide como requisitio que la app se pueda probar.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4392

    Laura Nicolàs
    Jefe de claves

    Francisco me manda éste comentario a través de correo electrónico:

    Prácticamente habéís dejado bien definidas las características que debería tener una extensión, el tema de configuración si se podría utilizar algo como Rápid Start para la misma. Incluiría para rellenar y aunque es menos dirigido al usuario una suite de Test que deberían de acompañar al producto y que debería de ser actualizada cuando se realicen añadidos, he visto que NAV avanza también en este sentido, ello permitiría despliegues rápidos.Conforme se me ocurran más cosas ire colaborando.

    Seguir así me parece estupendo el trabajo que estais realizando.
    Saluds. 😉

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4393

    Laura Nicolàs
    Jefe de claves

    Hola Francisco,

    Tienes toda la razón en el tema del testing.

    Si tienes 10000 implantaciones, cualquier nueva versión tiene que funcionar a la perfección.
    Si sacas un bug… la repercusión es muy grande!
    Para ello lo tienes que probar muy bien antes de cada release, y nada mejor que unos buenos scripts de test.

    Muchas gracias por la aportación.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4407

    Javier
    Participante

    Complejo el asunto de repetibilidad, más allá de los problemas técnicos los principales obstáculos son de concepto y funcionalidad.
    Hay que tener en cuenta a qué tipo de empresa/usuario va dirigido y deberá tener unas características u otras.

    Hace 2 años cambié de empresa y justo nos hemos dedicado al desarrollo de una plataforma saas sobre NAV, AZURE y O365, que sin estar en apps cumple 100% el paradigma de desarrollo repetible, en 6 meses que dimos el go live hemos metido casi 300 empresas, 250 licencias y otros tantos usuarios.

    Nuestro foco es 100% fiscal y contable y trabajamos actualmente con empresas en 17 localizaciones diferentes.

    Mi experiencia: los 6 primeros meses fue tiempo de aprendizaje y cambiar el chip, todo lo que hicimos prácticamente se tuvo que deshacer precisamente por tener un poso muy grande en el desarrollo clásico de producto.

    Qué aprendí?

    Lo más importante: menos es más, si llega un momento que un usuario va a ver muchos y botones y muchos campos con muchas opciones vas por mal camino, ejemplo clásico, los reportes con muchos dataitems y opciones para filtrar, tuvimos que quitar todas las posibilidades de filtros por dataitmens y desarrollarlo con opciones que escogieran

    Foco total en el usuario: Si la misma app la van a usar 2 usuarios diferentes con objetivos diferentes hay que hacer dos Roles diferentes

    Autoconfigurable: Desde el minuto 1 debe estar configurado, como mucho que el usuario pueda añadir su foto y/o cambiar sus datos personales y de contacto.

    Los mensajes de error con TESTFIELD deben desaparecer. Tratar de capturar todos los mensajes de error y convertirlos en opciones de parametrización, por ejemplo, si no existe una configuración contable, en lugar de un error proponer al usuario abrir automáticamente la ventana de configuración y que lo configure en ese momento

    Traducciones lo más clara posibles, hemos tenido que sobrescribir algunas del estándar

    Hay más que seguro que si pienso un poco se me van ocurriendo.

    Desde luego más allá de la parte técnica es todo un reto el cambio de mentalidad

    PD: Para Addons con grandes personalizaciones existen las embbed-apps

    #4408

    Laura Nicolàs
    Jefe de claves

    Lo más importante: menos es más, si llega un momento que un usuario va a ver muchos y botones y muchos campos con muchas opciones vas por mal camino, ejemplo clásico, los reportes con muchos dataitems y opciones para filtrar, tuvimos que quitar todas las posibilidades de filtros por dataitmens y desarrollarlo con opciones que escogieran

    Gracias Javier,

    Estoy totalmente de acuerdo contigo. Menos es más.Keep It Simple.

    Cuando una funcionalidad es un poco más compleja, nos tendríamos que plantear lo siguiente:

    – Crear una extensión base, con el core de la funcionalidad.
    – Crear (o permitir que otros creen) nuevas extensiones para ampliar la funcionalidad del core.

    Es una cosa a la que no estamos acostumbrados, porque NAV no ha funcionada nunca así… pero ahora hay que volver a pensar en las estrategias que usamos.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4409

    Laura Nicolàs
    Jefe de claves

    Foco total en el usuario: Si la misma app la van a usar 2 usuarios diferentes con objetivos diferentes hay que hacer dos Roles diferentes

    Muchos técnicos llevamos muchos años haciendo desarrollos a medida. Si terminamos el desarrollo en menos horas, mucho mejor. Así que hacemos un único report (o una única página), que lo tenga todo. Y dejamos todas las opciones abiertas, para que no nos llamen en una semana diciendo que les falta un campo.
    Es normal que se aplique esta estrategia cuando vamos justos de tiempo.

    Con las apps, es otra historia.
    No tiene que ser fácil para el programador, sino para el usuario.
    Si hay que crear dos páginas, o dos reports, se hace.

    No hay que ir reloj en mano, para no pasarnos de las horas.

    Hay que cambiar el chip.

    Gracias Javier por la aportación.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #4410

    Laura Nicolàs
    Jefe de claves

    Los mensajes de error con TESTFIELD deben desaparecer. Tratar de capturar todos los mensajes de error y convertirlos en opciones de parametrización, por ejemplo, si no existe una configuración contable, en lugar de un error proponer al usuario abrir automáticamente la ventana de configuración y que lo configure en ese momento

    Me encanta esta forma de solucionar los «errores».

    En la conferencia NAVTechDays asistí a una de las sesiones, y nos explicaban justamente esto.

    Imagina que creas una empresa nueva en NAV y no tiene nada de datos. Ni grupos contables, ni series, ni plan de cuentas, ni nada de nada.

    Vas y creas una factura nueva. Pones los datos del cliente, y el sistema te crea la ficha on-the-fly.
    Pones una línea con un producto, y se crea al ficha.
    Le pones 21% de IVA, y se crea la configuración necesaria

    Y así con todo…

    Es lo que está intentando hacer Microsoft con Dynamics 365.

    Quieren llegar a empresas más pequeñas, que no pueden pagar un proyecto de implantación, y que necesitan empezar a trabajar con el producto al momento.

    Nuestra Apps no pueden depender de un consultor que lo configura y lo mantenga.
    Es mucho mejor capturar los problemas y que la «solución» esté predefina y codificada en la propia App.

    Muchas gracias por la aportación, Javier.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

Viendo 15 publicaciones - del 16 al 30 (de un total de 31)

Debes estar registrado para responder a este debate.

Members Currently Active: 1
VAERSA
Keymaster | Moderator | Participant | Spectator | Blocked
Additional Forum Statistics
Threads: 839, Posts: 2.732, Members: 878
Welcome to our newest member, VAERSA
Most users ever online was 15 on 5 April, 2019 9:31 am