En esta minera - Operación de Candelaria para Lundin Mining - como en muchas otras, los sistemas de registro de eventos de la operación están separados de forma física y lógica. Buscando encontrar trazar la ubicación de material en el yacimiento y los diámetros de material relevante una vez molido lo extraído, sus ejecutivos usan herramientas no especializadas, planillas de cálculo en este caso, para bucear en los datos.
¡Hola Comunidad!
¡Os invitamos a participar en el segundo concurso de redacción de artículos técnicos de InterSystems (en inglés)!
🎄 Concurso de Artículos Técnicos de InterSystems: Edición Navidad 🎄
Escribe un artículo en inglés en la Developer Community, sobre cualquier tema relacionado con la tecnología de InterSystems:
Duración: del 25 de noviembre al 25 de diciembre de 2021
Premios para todos los participantes: Todas las personas que publiquen un artículo en inglés durante la vigencia del concurso recibirán un premio
Premios principales: Auriculares inalámbricos Apple AirPods Max / Gafas de Realidad Virtual Oculus Quest 2 / Libro electrónico Amazon Kindle / Auriculares inalámbricos Apple AirPods Pro / Raspberry Pi

¡Participa en el concurso y tu artículo será leído por miles de miembros de la Comunidad de Desarrolladores!
Se ha publicado una nueva versión del ZPM - ZPM 0.3.2.
Novedades en esta versión:
- Varios cambios en el comando
outputde la ayuda - Cambios en los colores en las salidas
- Añadida la posibilidad de incluir mas tipos de repo
- Añadida la posiblidad de especificar un mensaje de post-instalación, con la etiqueta
AfterInstallMessageen module.
Hace algún tiempo, empecé a recibir alertas de consumo excesivo de espacio en el sistema de archivos (filesystem) de un cliente, cuya solución utiliza la capa de interoperabilidad (IRIS / Ensemble) de manera masiva.
Me percaté que las bases de datos que crecían eran las dedicadas a la interoperabilidad, mas no la base de datos operacional de la solución, por tanto había que revisar los mensajes de las diferentes integraciones presentes.
También verifiqué los espacios libres de cada base de datos por si compactar y truncar podrían liberar algún espacio importante, pero no era el caso.
Servidor Externo de Lenguaje Python en un contenedor
La primera vez que se intenta iniciar un servidor externo de lenguaje Python (de aquí en adelante Gateway de Python), en la versión en contenedor, intenta ejecutar cierto código para detectar si está instalado el paquete python3-venv.
La imagen que está en containers.intersystems.com:
- a la fecha de este artículo es la versión 2021.1.0.215.0
- está basada en Ubuntu 18 LTS
- viene con python 3.6.
Mas de una vez nos ha sucedido que requerimos añadir algún comportamiento a algún Bussiness Service core (tal como viene "de caja").
En este caso puntual, tomaré de ejemplo el BS EnsLib.RecordMap.Service.FileService, el cual nos permite leer un archivo (normalmente un csv) desde una carpeta configurable. A veces sucede que el archivo que estamos leyendo es muy grande, y por tanto contiene muchas filas, y nuestra lógica requiera saber exactamente cuando se termino de procesar y además generar un evento que incluso sea procesado por algún Host personalizado.
En algún momento, puede surgir la necesidad de llamar (sentencia CALL en BPL) de manera dinámica, porque hay mucha lógica de negocio compartida por distintos orígenes de datos, que da pie a que esa lógica se comparta y no se individualice cada llamada (CALL).
Esto tiene ventajas a nivel de mantenimiento de la lógica definida, catch de errores y administrar los hilos de ejecución de manera centralizada.
Entonces lo normal es que se defina una sentencia FOREACH que ejecute la sentencia CALL según cada ítem que se necesite.
<foreach name='Origenes activos' property='context.FeedOrigenes' key='context.countFeedOrigenes' >
<call name='CallHost' target='Host' async='1'>
</foreach>Tal como sucede con otros tipos de Host, en ciertos casos de uso nos conviene personalizar el comportamiento de algún Business Operation (BO) de caja. En este caso, tomaré de ejemplo el siguiente EnsLib.REST.GenericOperation
En principio, el caso de uso era un simple Pass Through de una petición HTTP Rest, por lo que se decidió usar tanto el BS y el BO core de IRIS para reenviarlo. Sin embargo, el destino de esta petición, necesitaba algunos Header por defecto, que no proporcionaba el request original.
Para efectos del ejemplo, añadiré estos Header a través de un BO personalizado.
Siempre que se trabaja con el repositorio FHIR, se tiene que interactuar con lógica de negocio propia de la institución donde se instala.
Surgió una regla bastante simple, para efectos de demostración, que consiste en validar la existencia de un paciente en el repositorio, aún si es una petición que contiene un Patient Resource enviado vía método POST, lo cuál por definición del estándar FHIR, corresponde a un Create Patient.
Estimados
Todos ya conocerán las propiedad y facilidades que entrega %Populate para las clases registradas, es una herramienta muy útil a la hora de realizar alguna demostración o presentación. Sin embargo, también habrán notado que por defecto tiene un set de datos localizado y creado para Estados Unidos lo que en algunas situaciones puede ser una dificultad.
Es por esta razón que les dejo este pequeño ejemplo de cómo usar POPSPEC para poder localizar y crear nuestro propio conjunto de datos de prueba.
En primer lugar creemos nuestra clase persistente:
Class Demo.Paciente
¡Hola amigos!
A veces necesitamos importar datos a InterSystems IRIS desde archivos de tipo CSV. Esto puede hacerse, por ejemplo, mediante la herramienta csvgen, que genera una clase e importa todos los datos a ella.
Pero, ¿qué pasa si tienes tu propia clase y quieres importar datos desde un archivo CSV a una tabla que ya existe previamente?
Hay varias formas de hacerlo, ¡pero puedes utilizar csvgen (o csvgen-ui) otra vez! Preparé un ejemplo y estoy encantado de compartirlo con todos. ¡Vamos allá!
19 de Noviembre de 2021
Los kits de InterSystems incluyen un servidor web Apache que ofrece una práctica manera de interactuar con el Portal de Gestión de Caché/IRIS sin necesidad de instalar un servidor web externo. Sin embargo, este servidor web nunca debería usarse para instancias de producción y se debe instalar un servidor web externo que se ajuste a las necesidades específicas y a los requisitos de seguridad y riesgo de cada cliente.
Pruebas recientes han detectado problemas de seguridad con el servidor web Apache incluido en los kits actuales. Como es una tecnología de terceros que InterSystems no controla, InterSystems recomienda instalar la versión del servidor web obtenida directamente desde Apache y deshabilitar el servidor web Apache incluido. Nuestra documentación incluye instrucciones sobre cómo deshabilitar el servidor web proporcionado con nuestros kits. Apache también ofrece instrucciones de desinstalación, que se pueden encontrar en su página web.
En mis artículos anteriores, mostré los pasos para conectar, recuperar y guardar datos en Caché desde Appeon PowerBuilder usando ODBC.
En este artículo, mostraré cómo eliminar datos de Caché con Appeon PowerBuilder (https://www.appeon.com/products/powerbuilder) usando ODBC..png)
Estoy usando Company.cls de Samples-Data (https://github.com/intersystems/Samples-Data/tree/master/cls/Sample)
¡Empecemos!
Paso 1:En primer lugar, debemos establecer una conexión (https://community.intersystems.com/post/connecting-cach%C3%A9-appeon-powerbuilder-using-odbc
¡Hola desarrolladores!
Os traemos el sexto y último tutorial grabado por @David Reche, y disponible en el canal de YouTube de la Comunidad de Desarrolladores en español: Persistencia de Objetos con InterSystems IRIS.
En este tutorial de siete minutos, David nos explicará la persistencia de objetos con InterSystems IRIS.
¡Hola a todos!
Estamos encantados de anunciar una nueva manera de descargar los kits de la "Community Edition" de InterSystems IRIS e IRIS for Health. La "Community Edition" es una versión gratuita para desarrolladores, que hace más sencillo empezar a desarrollar soluciones con IRIS. Ahora se pueden descargar los kits a través del Servicio de Evaluación: evaluation.intersystems.com.
Hablando con mi amigo @Renato Banzai, especialista en Machine Learning, me expuso uno de los mayores retos a los que se enfrentan actualmente las empresas: la implementación del Machine Learning (ML) y la Inteligencia Artificial (IA) en entornos reales.
Intersystems IRIS ofrece IntegratedML. IntegratedML es una excelente herramienta para practicar, probar y realizar implementaciones de modelos de ML e IA.
La parte más complicada de crear ML/IA es procesar los datos, depurarlos y hacerlos fiables.
¡Ahí es donde podemos aprovechar el estándar FHIR!
¡Hola Comunidad!
Hemos grabado el webinar que hicimos ayer y lo hemos subido al canal de YouTube de la Comunidad de Desarrolladores en español. Si os perdisteis el webinar o lo queréis volver a ver con más detalle, ya está disponible la grabación!
Alberto Fuentes es uno de los cracks de InterSystems. Así que... si queréis saber todo sobre la Analítica de datos y el Reporting, ¡no os perdáis el vídeo!
¡Hola Comunidad!
Ya están disponibles las grabaciones de todas las sesiones de la Convención Virtual de InterSystems (Virtual Summit) que se celebró en octubre. Podréis acceder a ellas hasta finales de enero.
Si estáis registrados en el evento, este es el acceso a la Plataforma Virtual para Asistentes.
Si no os registrasteis, podéis hacerlo aquí para ver las grabaciones.
Una vez en la Plataforma Virtual para Asistentes, hay que hacer clic en "All Sessions" en el menú y podréis buscar o elegir las sesiones que queráis ver.
Así que... ¡no os lo perdáis! ¡Hay más de 60 sesiones para elegir!
Dadle al Play... ¡y a disfrutar!
¡Hola desarrolladores!
Os invitamos a un nuevo webinar en español: "Self-Service Analytics & Reporting", el miércoles 17 de noviembre, a las 4:00 PM (CET).
El webinar está dirigido a aquellos perfiles involucrados en proyectos de Analítica de Datos y Business Intelligence.
Durante la presentación, aprenderás a construir entornos que incorporen Self-Service Analytics, empleando herramientas como Tableau, PowerBI y Excel. También aprenderás a generar informes con una solución para Reporting.
Trabajando en soporte generalmente me preguntan cuántos días hay que mantener los journals. ¿Debería ser dos días o después de dos copias de seguridad? ¿Más? ¿Menos? ¿Por qué dos?
La respuesta correcta (para la mayoría de los entornos) es que se debería conservar los ficheros de journal desde la última copia de seguridad validada. Es decir, hasta que no verifique si una copia de seguridad es válida (restaurando el archivo y verificándolo con la utilidad Integrity), no puede estar seguro de que haya una buena copia de los datos y no por tanto no se deberían purgar los journals de manera segura.
En mis artículos anteriores, mostré los pasos para conectar y recuperar datos de Caché desde Appeon PowerBuilder usando ODBC.
En este artículo, mostraré cómo guardar datos en Caché con Appeon PowerBuilder (https://www.appeon.com/products/powerbuilder) usando ODBC..png)
Estoy usando Company.cls de Samples-Data (https://github.com/intersystems/Samples-Data/tree/master/cls/Sample)
¡Empecemos!
Paso 1 : En primer lugar, debemos establecer una conexión (https://community.intersystems.com/post/connecting-cach%C3%A9-appeon-powerbuilder-using-odbc
Este curso de formación está dirigido a todas las personas interesadas en conocer el framework de Interoperabilidad de IRIS. Utilizaremos Docker y VSCode.
GitHub: https://github.com/grongierisc/formation-template
1. Formación en Ensemble/Interoperabilidad
El objetivo de esta formación es aprender el framework de interoperabilidad de InterSystems, y en particular el uso de:
- Producciones
- Mensajes
- Business Operations
- Adaptadores
- Business Processes
- Business Services
- Operaciones y servicios REST
Desarrolladores de InterSystems...
¡Os adoramos! Y nos encanta compartir con vosotros esta noticia:
¡Hemos alcanzado la increíble cifra de 10.000 personas registradas en la Comunidad de Desarrolladores! 🎊
En InterSystems, creemos en el poder de la comunidad. Por eso apreciamos de verdad todas vuestras aportaciones y publicaciones durante estos 6 años y estamos deseando continuar el camino junto con vosotros!
¡Hola desarrolladores!
Ya está listo un nuevo concurso de programación de InterSystems:
🏆 Seguridad🏆
Estará activo durante tres semanas: del 15 de noviembre al 5 de diciembre de 2021
Total en premios: $9,450
Página del concurso: https://contest.intersystems.com
¡Hola desarrolladores!
Os invitamos a participar en el Hackathon Europeo de Salud 2021 que tendrá lugar del 19 al 21 de noviembre de 2021. La participación es gratuita y la fecha límite para aplicaciones que compitan en el modo ON-LINE es el 15 de noviembre.
Tendremos un reto de InterSystems allí: "Innova con FHIR". Los premios del reto serán:
🥇1er puesto: 1500 EUR
🥈2º puesto: 1000 EUR
🥉3er puesto: 500 EUR
¡Y todos los participantes de nuestro reto tendrán un premio!
Más abajo puedes consultar todos los detalles sobre nuestro reto. ¿Participarás? ¡Cuéntanoslo respondiendo a la encuesta!
En mi artículo anterior, expliqué los pasos para conectarse a Caché desde Appeon PowerBuilder usando ODBC.
En este artículo, mostraré cómo recuperar datos de Caché con Appeon PowerBuilder (https://www.appeon.com/products/powerbuilder) utilizando ODBC..png)
MODELO RESUMIDO {#1}
Siguiendo el ejemplo disponible en GitHub FHIR IntegratedML vamos usar el modelo resumido para entrenar el modelo de predicción de "No Asistirá" (NotShow).
Haremos un match entre los campos de la tabla PackageSample.NoShowMLRow y los campos de TrakCare. El punto de partida en TrakCare será la tabla SQLUser.RB_Appointment.
En este artículo describiré los procesos para ejecutar pruebas unitarias mediante ObjectScript Package Manager (consulta
Pruebas unitarias en ObjectScript
Ya hay mucha documentación sobre cómo escribir pruebas unitarias en ObjectScript, por lo que no repetiré nada de eso. Puedes consultar el Tutorial de Pruebas Unitarias aquí:
La práctica recomendada es incluir las pruebas Unitarias en algún lugar/carpeta separada en la estructura de fuentes, ya sea simplemente "/pruebas" o algo más sofisticado.
Hola a todos,
tengo un proceso que recibe una fecha en formato ISO 8601 (YYYY-MM-DDThh:mm:ss+001) a un valor %timestamp.
Ejemplo: set myDatetime = "2021-11-04T11:10:00+0100"
He intentado usar $SYSTEM.SQL.CONVERT(myDatetime,"SQL_TIMESTAMP") pero no funciona.
¿Alguna idea?
Saludos,
Kurro Lopez
Hola comunidad,
Sería de agradecer si pudieran leernos y respondernos:
➡️ Necesitamos activar una Operación SOAP durante una franja horaria, con el objetivo de enviar mensajes al sistema destino, únicamente durante unas horas; por ejemplo de 4 a 8 de la madrugada
El requisito es hacerlo sin una tarea programada.
.png)

