Buscar

Limpiar filtro
Anuncio
David Reche · 7 abr, 2022

InterSystems Ideas, el nuevo Portal de Sugerencias

Nos encanta anunciaros que hemos creado un nuevo Portal de Sugerencias: InterSystems Ideas. El objetivo del Portal es mejorar los mecanismos para que podáis sugerir cómo mejorar nuestros productos y cómo hacerlos evolucionar para satisfacer vuestras necesidades. La sección de Preguntas es una excelente manera de interactuar con otros colegas sobre problemas específicos de código; y el Soporte a Clientes es la forma de obtener la solución a un problema. Este nuevo portal pretende captar ideas a un nivel más elevado. Trata menos de cómo se hace algo ahora, y más de cómo os gustaría que los productos funcionaran en el futuro. Permite publicar vuestras experiencias y también comentar y/o votar las ideas de otras personas. InterSystems puede ver todas las sugerencias que publiquéis, responder directamente y actualizar el estado de vuestras ideas según avanzamos en ellas. Así que... ahora os toca a vosotros. Compartid vuestras ideas y sugerencias... ¡y os leemos! ¡Muchas gracias!
Artículo
Luis Angel Pérez Ramos · 22 nov, 2022

InterSystems IRIS con Laravel (a través de ODBC)

Últimamente me han preguntado en varias ocasiones cómo hacer que el Framework Laravel funcione con InterSystems IRIS Data Platform. Ha pasado un tiempo desde la publicación de este anuncio sobre Laravel e InterSystems Caché. En este artículo mostraremos unas breves instrucciones sobre cómo configurar un proyecto Laravel para usarlo con InterSystems IRIS a través de ODBC. ¿Qué es Laravel? Laravel es un framework PHP basado en arquitectura MVC. Usar Laravel simplifica y acelera el desarrollo del backend, a la vez que permite crear aplicaciones web modernas y seguras. Es muy fácil de aprender, muy utilizado en el mundo PHP y suele ser uno de los frameworks de backend más populares, según el ranking de github.com, que se puede ver en este vídeo. Claramente podemos ver los beneficios de combinar estas capacidades con la flexibilidad y el rendimiento de InterSystems IRIS como base de datos. Esta publicación está organizada en 4 pasos, que representa una secuencia de acciones que hay que completar para que funcione la conexión. La forma de completar cada paso puede variar dependiendo de la plataforma. Los comandos se muestran para Ubuntu 22.02 (x64). Configuración del Driver Manager (unixODBC) Para hacer que la conexión funcione, necesitamos instalar un Driver Manager. Los driver managers más utilizados son 'unixODBC' and 'iODBC'. Utilizaremos 'unixODBC', que se puede descargar aquí http://www.unixodbc.org/ . Id a la sección 'Download' para descargar y ejecutar el build. Alternativamente, las instrucciones de build también se pueden encontrar aquí. Aquí utilizaremos paquetes del gestor de paquetes 'apt' para Ubuntu. Instalación de paquetes Instalamos el paquete unixodbc acompañado por libodbccr2 que proporciona la librería unixODBC Cursor. sudo apt update sudo apt -y install unixodbc libodbccr2 odbcinst Creación de un enlace para Cursor LibraryEn algunos casos puede haber problemas con dependencias compartidas después de la instalación de unixODBC. Esto aparece como el error 'Can't open cursor lib'. En internet encontramos varias soluciones alternativas. Para resolver este problema, hacemos un enlace simbólico a una librería que queramos. Primero, localizamos la librería: sudo find / -type f -name "libodbccr*" Y después creamos un enlace sudo ln -s /usr/lib/x86_64-linux-gnu/libodbccr.so.2.0.0 /etc/libodbccr.so Configuración del Driver ODBC para InterSystems IRIS El driver ODBC para InterSystems IRIS se puede obtener de varias maneras. Por ejemplo, está incluido en todos los kits de InterSystems IRIS. Otra opción sería el Portal de Distribución en wrc.intersystems.com. También, los drivers para todas las plataformas soportadas se pueden encontrar aquí: https://intersystems-community.github.io/iris-driver-distribution/ Descargad, desempaquetad e instalad el Driver ODBC: sudo mkdir -p /usr/lib/intersystems/odbc cd /usr/lib/intersystems/odbc/ sudo wget -q https://raw.githubusercontent.com/intersystems-community/iris-driver-distribution/main/ODBC/lnxubuntu2004/ODBC-2022.1.0.209.0-lnxubuntu2004x64.tar.gz sudo tar -xzvf /usr/lib/intersystems/odbc/ODBC-2022.1.0.209.0-lnxubuntu2004x64.tar.gz sudo ./ODBCinstall sudo rm -f ODBC-2022.1.0.209.0-lnxubuntu2004x64.tar.gz Después, el driver se ubicará en esta carpeta /usr/lib/intersystems/odbc/bin/. Podéis encontrar información adicional sobre los drivers y su uso en la documentación. Aquí utilizamos libirisodbcur6435.so como una librería de drivers. Configuración del proyecto Laravel La forma tradicional y práctica de interactuar con una base de datos desde Laravel sería usar su paquete Eloquent. Eloquent es un mapeador relacional de objetos (un ORM de toda la vida) que se incluye por defecto dentro del framework Laravel. Solo unos pocos proveedores de DBMS están soportados fuera de la herramienta. Así que para implementar la conexión y las especificidades de la construcción de consultas SQL para InterSystems IRIS (via ODBC) hace falta escribir código PHP adicional. Gracias a @Jean.Dormehl que descubrió y solucionó esta brecha en InterSystems Caché y que también se puede usar para InterSystems IRIS.En este artículo describimos los pasos para configurar la conexión para el proyecto Laravel existente, usando el paquete jeandormehl/laracache, asumiendo que la instalación y configuración de php, composer y Laravel ya se ha realizado. Instalación de php-odbcAseguraos de que el módulo php-odbc está instalado. Podéis comprobar la lista de módulos instalados con el comando: php -m | grep odbc Para instalar la extensión php-odbc, usad el siguiente comando utilizando la versión adecuada de php instalada en vuestro entorno sudo apt -y install php8.1-odbc Configuración del paquete 'jeandormehl/laracache'Id a vuestro directorio del proyecto Laravel, instalad el paquete y publicad su archivo de configuración. composer require jeandormehl/laracache php artisan vendor:publish --tag=isc Configuración de la conexión con IRIS Editad vuestro fichero .env para que contenga las configuraciones necesarias para conectar a una base de datos. Para los usuarios de Unix debería ser algo tal que así: DB_CONNECTION=isc DB_WIN_DSN= DB_UNIX_DRIVER=/usr/lib/intersystems/odbc/bin/libirisodbcur6435.so DB_HOST=127.0.0.1 DB_PORT=1972 DB_DATABASE=USER DB_USERNAME=_SYSTEM DB_PASSWORD=sys Después de editar el archivo .env puede que sea útil limpiar la caché de configuración de aplicaciones: php artisan config:cache Uso Vamos a intentar recuperar algunos datos usando nuestro nuevo paquete. Como ejemplo, crearemos un Model heredado de Laracache\Cache\Eloquent\Model . Solo para probar, contaremos el número de mensajes enviados en el namespace de Interoperabilidad habilitado. nano app/Models/EnsMessageHeader.php <?php namespace App\Models; use Laracache\Cache\Eloquent\Model; class EnsMessageHeader extends Model { protected $table = 'Ens.MessageHeader'; protected $fillable = [ 'MessageBodyClassName' ]; } Para ejecutar una consulta, podemos crear un comando de consola Artisan como este: nano routes/console.php <?php use Illuminate\Foundation\Inspiring; use Illuminate\Support\Facades\Artisan; use App\Models\EnsMessageHeader; Artisan::command('iris:test', function () { echo EnsMessageHeader::count() . PHP_EOL; }); Después, al ejecutar el siguiente comando, deberíamos recuperar el número de registros php artisan iris:test Este escenario debería funcionar en un amplio rango de productos basados en InterSystems IRIS.
Anuncio
Esther Sanchez · 15 dic, 2022

Novedades de InterSystems Ideas, diciembre 2022

¡Hola Comunidad! Un mes más, os traemos las novedades de InterSystems Ideas, el Portal de Sugerencias de InterSystems! Ya hay 148 ideas propuestas 👏 ¿Y qué ha pasado con esas 148 ideas? Aquí os mostramos su estado: ✓ 42 ideas están siendo valoradas por los Product Managers de InterSystems. ✓ 46 ideas pueden ser implementadas por los miembros de la Comunidad de Desarrolladores. ✓ 11 ideas están siendo implementadas por InterSystems. ✓ 3 ideas ya han sido implementadas por InterSystems. ✓ 9 ideas han sido implementadas por los miembros de la Comunidad de Desarrolladores. Estos son los estados por los que pasa cada una de las ideas que proponéis: Estas son las ideas publicadas tras el 1er Ideatón (Maratón de Ideas) de InterSystems Improve Ukrainian translation in IRIS Code example Full Code Debugger Promote video contest Create a tool for IRIS BI to test all the pivots and dashboards if they still work after changes made Improve Spanish translation in IRIS Add IRIS as a supported database for Apache Superset For community articles, let admins (and possibly article authors) pin particular comments to the top Add address standardization to Normalization (using Project US@ standards) ¿Sabéis todo lo que podéis hacer en el Portal de Sugerencias de InterSystems? Filtrar las ideas por estado, Publicar nuevas ideas para que sean comentadas públicamente, Votar las ideas presentadas, Comentar cualquier idea... ¿Habéis entrado ya en InterSystems Ideas? ¡Os leemos!!
Artículo
Nancy Martínez · 8 sep, 2022

Cómo programar Dockerfile con InterSystems ObjectScript

¡Hola desarrolladores! Los que usáis Dockerfile para trabajar con InterSystems IRIS a menudo tenéis que ejecutar varias líneas de ObjectScript. Para mí, esto era el juego de "escapar de esto y aquello" cada vez, solo para ejecutar unos pocos comandos en ObjectScript a IRIS. Idealmente, preferiría programar en ObjectScript sin usar comillas o caracteres de escape. Recientemente he encontrado un buen "hack" sobre cómo esto podría ser mejorado a exactamente este estado. Lo cogí del repositorio de @Dmitry.Maslennikov y te permite usar Objectscript de una forma como si lo escribieras en el terminal de IRIS. Esto es lo que tienes en dockerfile: /// COPY irissession.sh / SHELL ["/irissession.sh"] RUN \ do $SYSTEM.OBJ.Load("Installer.cls", "ck") \ set sc = ##class(App.Installer).setup() # bringing the standard shell back SHELL ["/bin/bash", "-c"] CMD [ "-l", "/usr/irissys/mgr/messages.log" ] /// El truco es que antes de ejecutar ObjectScript, ejecutemos el comando irisession.sh que hace lo siguiente: 1. Inicia IRIS 2. Ejecuta unos comandos "estándar" de ObjectScript y toma el control de Dockerfile para dejarte introducir líneas en ObjectScript - instrucción "$@". 3. Para IRIS Comprueba el contenido de irissession.sh: #!/bin/bash iris start $ISC_PACKAGE_INSTANCENAME quietly cat << EOF | iris session $ISC_PACKAGE_INSTANCENAME -U %SYS do ##class(%SYSTEM.Process).CurrentDirectory("$PWD") $@ if '\$Get(sc) do ##class(%SYSTEM.Process).Process.Terminate(, 1) do ##class(SYS.Container).QuiesceForBundling() do ##class(SYS.Container).SetMonitorStateOK("irisowner") Do ##class(Security.Users).UnExpireUserPasswords("*") halt EOF exit=$? iris stop $ISC_PACKAGE_INSTANCENAME quietly exit $exit Este $@ espera un comando RUN en Dockerfile que contendrá solo ObjectScript. Si necesitas utilizar algunos comandos más en Dockerfile, devuelve el control con shell estándar: # bringing the standard shell back SHELL ["/bin/bash", "-c"] CMD [ "-l", "/usr/irissys/mgr/messages.log" ] Este código está introducido en la community template de IRIS para que puedas empezar a usar ObjectScript en tus soluciones IRIS con un código preciso y legible. Aprende cómo usar las plantillas Github con IRIS en este vídeo.
Artículo
Alberto Fuentes · 27 oct, 2022

Interoperabilidad de InterSystems IRIS con Python Embebido

# 1. Interoperability-embedded-python Esta prueba de concepto pretende mostrar cómo el ***framework* de interoperabilidad de IRIS** puede utilizarse con **Python Embebido**. ## 1.1. Índice - [1. Interoperability-embedded-python](#1-interoperability-embedded-python) - [1.1. Índice](#11-table-of-contents) - [1.2. Ejemplo](#12-example) - [1.3. Registrar un componente](#13-regsiter-a-component) - [2. Demo](#2-demo) - [3. Requisitos previos](#3-prerequisites) - [4. Instalación con Docker](#4-installation-with-docker) - [5. Instalación sin Docker](#5-installation-without-docker) - [6. Cómo ejecutar la muestra](#6-how-to-run-the-sample) - [7. Qué hay dentro del repositorio](#7-whats-inside-the-repository) - [7.1. Dockerfile](#71-dockerfile) - [7.2. .vscode/settings.json](#72-vscodesettingsjson) - [7.3. .vscode/launch.json](#73-vscodelaunchjson) - [7.4. .vscode/extensions.json](#74-vscodeextensionsjson) - [7.5. src folder](#75-src-folder) - [8. Cómo añadir un nuevo componente](#8-how-to-add-a-new-component) - [8.1. InboundAdapter](#81-inboundadapter) - [8.2. OutboundAdapter](#82-outboundadapter) - [8.3. BusinessService](#83-businessservice) - [8.4. BusinessProcess](#84-businessprocess) - [8.5. BusinessOperation](#85-businessoperation) - [8.6. Registrar un componente](#86-regsiter-a-component) - [8.7. Uso directo de Grongier.PEX](#87-direct-use-of-grongierpex) - [9. Trabajo futuro](#9-future-work) - [10. Créditos](#10-credits) ## 1.2. Ejemplo ```python import grongier.pex import iris import MyResponse class MyBusinessOperation(grongier.pex.BusinessOperation): def OnInit(self): print("[Python] ...MyBusinessOperation:OnInit() is called") self.LOGINFO("Operation OnInit") return def OnTeardown(self): print("[Python] ...MyBusinessOperation:OnTeardown() is called") return def OnMessage(self, messageInput): if hasattr(messageInput,"_IsA"): if messageInput._IsA("Ens.StringRequest"): self.LOGINFO(f"[Python] ...This iris class is a Ens.StringRequest with this message {messageInput.StringValue}") self.LOGINFO("Operation OnMessage") response = MyResponse.MyResponse("...MyBusinessOperation:OnMessage() echos") return response ``` ## 1.3. Registrar un componente **No es necesario código en ObjectScript**. Gracias al método Grongier.PEX.Utils.RegisterComponent(): Inicia un Embedded Python Shell: ```sh /usr/irissys/bin/irispython ``` A continuación, utiliza este método de clase para añadir un nuevo archivo py a la lista de componentes de interoperabilidad. ```python iris.cls("Grongier.PEX.Utils").RegisterComponent(,,,,) ``` por ejemplo: ```python iris.cls("Grongier.PEX.Utils").RegisterComponent("MyCombinedBusinessOperation","MyCombinedBusinessOperation","/irisdev/app/src/python/demo/",1,"PEX.MyCombinedBusinessOperation") ``` Esto es un truco, no es para producción. # 2. Demo La producción tiene cuatro componentes en Pure Python: * Dos Business Services: * Grongier.PEX.MyCombinedBusinessService, que envía continuamente mensajes de sincronización a una Business Operation * Esos mensajes son objetos de Python en formato JSON y almacenados en Grongier.PEX.Message. * Código de Python: src/python/demo/MyCombinedBusinessService.py * Grongier.PEX.MyBusinessService, que básicamente no hace nada, es un Business Service en bruto que escribe registros de mensajes * Código de Python: src/python/demo/MyBusinessService.py * Dos Business Operations: * Grongier.PEX.BusinessOperation, que recibe el mensaje de Grongier.PEX.MyCombinedBusinessService * Código de Python: src/python/demo/MyBusinessOperation.py * Grongier.PEX.CombinedBusinessOperation, puede recibir el mensaje Ens.StringRequest y la respuesta con Ens.StringResponse * Código de Python: src/python/demo/MyCombinedBusinessOperation.py Nueva traza json para los mensajes nativos de Python: # 3. Requisitos previos Asegúrate de tener instalado [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) y [el escritorio Docker](https://www.docker.com/products/docker-desktop). # 4. Instalación con Docker Clona el repositorio a cualquier directorio local ```sh git clone https://github.com/grongierisc/interpeorability-embedded-python ``` Abre el terminal en este directorio y ejecuta: ```sh docker-compose build ``` Ejecuta el contenedor IRIS con tu proyecto: ```sh docker-compose up -d ``` # 5. Instalación sin Docker Instala el *grongier_pex-1.0.0-py3-none-any.whl* en tu instancia local de iris: ```sh /usr/irissys/bin/irispython -m pip install grongier_pex-1.0.0-py3-none-any.whl ``` A continuación, carga las clases de ObjectScript: ```ObjectScript do $System.OBJ.LoadDir("/opt/irisapp/src","cubk","*.cls",1) ``` # 6. Cómo ejecutar el ejemplo Abre la [producción](http://localhost:52795/csp/irisapp/EnsPortal.ProductionConfig.zen?PRODUCTION=PEX.Production) y comienza a utilizarla. Se comenzará a ejecutar el código del ejemplo. # 7. Qué hay dentro del repositorio ## 7.1. Dockerfile Un dockerfile que instala algunas dependencias de Python (pip, venv) y sudo en el contenedor por conveniencia. Después, crea el directorio dev y copia el repositorio git. Inicia IRIS e importa los archivos csv de Titanic, después activa **%Service_CallIn** para **Python Shell**. Utiliza el docker-compose.yml relacionado para configurar fácilmente parámetros adicionales como el número de puerto y dónde mapear contraseñas y carpetas del host. Este dockerfile termina con la instalación de los requisitos para los módulos de python. La última parte es sobre la instalación de Jupyter Notebook y sus kernels. Utiliza el archivo .env/ para ajustar el dockerfile que se utiliza en docker-compose. ## 7.2. .vscode/settings.json Archivo de configuración para poder codificar en VSCode con el [plugin VSCode ObjectScript](https://marketplace.visualstudio.com/items?itemName=daimor.vscode-objectscript) ## 7.3. .vscode/launch.json Archivo de configuración si quieres depurar con VSCode ObjectScript [Lee sobre todos los archivos en este artículo](https://community.intersystems.com/post/dockerfile-and-friends-or-how-run-and-collaborate-objectscript-projects-intersystems-iris) ## 7.4. .vscode/extensions.json Archivo de recomendación para añadir extensiones si quieres ejecutar VSCode en el contenedor. [Más información aquí](https://code.visualstudio.com/docs/remote/containers) ![Arquitectura](https://code.visualstudio.com/assets/docs/remote/containers/architecture-containers.png) Esto es muy útil para trabajar con Python Embebido. ## 7.5. src folder ``` src ├── Grongier │ └── PEX // ObjectScript classes that wrap python code │ ├── BusinessOperation.cls │ ├── BusinessProcess.cls │ ├── BusinessService.cls │ ├── Common.cls │ ├── Director.cls │ ├── InboundAdapter.cls │ ├── Message.cls │ ├── OutboundAdapter.cls │ ├── Python.cls │ ├── Test.cls │ └── Utils.cls ├── PEX // Some example of wrapped classes │ ├── MyBusinessOperationWithAdapter.cls │ ├── MyBusinessOperationWithIrisAdapter.cls │ ├── MyBusinessOperationWithPythonAdapter.cls │ ├── MyBusinessService.cls │ ├── MyOutboundAdapter.cls │ └── Production.cls └── python ├── demo // Actual python code to run this demo │ ├── MyBusinessOperation.py │ ├── MyBusinessOperationWithAdapter.py │ ├── MyBusinessOperationWithIrisAdapter.py │ ├── MyBusinessProcess.py │ ├── MyBusinessService.py │ ├── MyCombinedBusinessOperation.py │ ├── MyCombinedBusinessProcess.py │ ├── MyCombinedBusinessService.py │ ├── MyInboundAdapter.py │ ├── MyLoggingOperation.py │ ├── MyNonPollingStarter.py │ ├── MyOutboundAdapter.py │ ├── MyRequest.py │ ├── MyResponse.py │ ├── MySyncBusinessProcess.py │ └── SimpleObject.py ├── dist // Wheel used to implement python interoperability components │ └── grongier_pex-1.0.0-py3-none-any.whl ├── grongier │ └── pex // Helper classes to implement interoperability components │ ├── _BusinessHost.py │ ├── _BusinessOperation.py │ ├── _BusinessProcess.py │ ├── _BusinessService.py │ ├── _Common.py │ ├── _Director.py │ ├── _InboundAdapter.py │ ├── _Message.py │ ├── _OutboundAdapter.py │ └── __init__.py └── setup.py // setup to build the wheel ``` # 8. Cómo añadir un nuevo componente ## 8.1. InboundAdapter Para implementar InboundAdapter en Python: Subclase de grongier.pex.InboundAdapter en Python. Sobreescribe el método OnTask(). ## 8.2. OutboundAdapter Para implementar OutboundAdapter en Python: Subclase de grongier.pex.OutboundAdapter en Python. Implementar los métodos de acción requeridos. ## 8.3. BusinessService Para implementar BusinessService en Python: Subclase de grongier.pex.BusinessService en Python. Sobreescribe el método OnProcessInput(). ## 8.4. BusinessProcess Para implementar BusinessProcess en Python: Subclase de grongier.pex.BusinessProcess en Python. Sobreescribe los métodos OnRequest(), OnResponse() y OnComplete(). ## 8.5. BusinessOperation Para implementar BusinessOperation en Python: Subclase de grongier.pex.BusinessOperation en Python. Sobreescribe el método OnMessage(). ## 8.6. Registrar un componente Iniciar un Embedded Python Shell: ```sh /usr/irissys/bin/irispython ``` A continuación, utiliza este método de clase para añadir un nuevo archivo py a la lista de componentes de interoperabilidad. ```python iris.cls("Grongier.PEX.Utils").RegisterComponent(,,,,) ``` por ejemplo: ```python iris.cls("Grongier.PEX.Utils").RegisterComponent("MyCombinedBusinessOperation","MyCombinedBusinessOperation","/irisdev/app/src/python/demo/",1,"PEX.MyCombinedBusinessOperation") ``` ## 8.7. Uso directo de Grongier.PEX Si no quieres utilizar la utilidad RegisterComponent. Puedes añadir un componente Grongier.PEX.Business* y configurar las propiedades: * %module : * Nombre del módulo correspondiente a tu código de python * %classname : * Nombre de la clase de tu componente * %classpaths * Ruta donde se encuentra tu componente. * Puede ser una o más Rutas de clase (separadas por el carácter '|') necesarias además de PYTHON_PATH Por ejemplo: # 9. Trabajo futuro - Solo se ha probado Service y Operation. - Trabajo en curso sobre el adaptador # 10. Créditos La mayor parte del código procede de PEX para Python, de Mo Cheng y Summer Gerry. La parte del registro procede del formulario de características no liberado de IRIS 2021.3. Actualización: Este módulo ahora está disponible en PyPI: Instalar utilizando PyPI ``` pip3 install iris_pex_embedded_python ``` Importa las clases ObjectScript, abrir una sesión de Embedded Python y ejecutar: ``` from grongier.pex import Utils Utils.setup() ``` Atención Si el módulo no está actualizado, asegúrate de borrar la versión antigua: ``` pip3 uninstall iris_pex_embedded_python ``` o borra manualmente el directorio `grongier` en `/lib/python/` o fuerza la instalación con pip: ``` pip3 install --upgrade iris_pex_embedded_python --target /lib/python/ ```
Anuncio
Jose-Tomas Salvador · 20 sep, 2022

Ya se ha publicado la extensión de InterSystems para Docker Desktop

¡Buenas noticias!, la extensión a Docker Desktop para el InterSystems Container Registry ya está disponible para todo el mundo. Está ya disponible en el marketplace del Docker Desktop. Se publicó hace un par de días y es necesario reiniciar Docker Desktop para verla. No dudes en publicar cualquier feedback en el repositorio de GitHub, aquí.
Anuncio
Esther Sanchez · 23 sep, 2022

Primer Ideatón (Maratón de Ideas) de InterSystems

¡Hola Comunidad! Estamos encantados de anunciar un nuevo tipo de concursos - ¡los concursos de ideas! Presentamos: 💡 El Primer Ideatón de InterSystems 💡 Publicad una idea sobre los Productos y Servicios de InterSystems, entre el 26 de septiembre y el 16 de octubre (3 semanas) y podréis ganar un estupendo premio. Nota.- Los empleados de InterSystems también pueden participar! >> Publica aquí tus ideas << Reglas El Ideatón de InterSystems está organizado a través de InterSystems Ideas, el Portal de Sugerencias de InterSystems, en el que se pueden enviar peticiones de mejora de producto y también ideas relacionadas con nuestros servicios (Documentación, Comunidad de Desarrolladores, Global Masters, etc.). Además, se puede votar las ideas de otras personas. En este concurso, os invitamos a todos a compartir vuestras ideas en el Portal y también a votar las ideas de otros. Para participar en el concurso, solo hay que añadir una idea en InterSystems Ideas. Ideas aceptadas en el Concurso: ideas creadas durante el período de duración del concurso; ideas creadas por usuarios registrados en el Portal InterSystems Ideas (se puede iniciar sesión en él a través del SSO); ideas no publicadas anteriormente - solo se aceptan nuevas ideas; ideas que no describan functionalidades existentes en los Productos o Servicios de InterSystems; ideas que contengan un título y una explicación clara y detallada de la esencia de la idea; ideas publicadas en inglés; ideas aceptadas como significativas por los expertos. Todas las ideas seleccionadas tendrán un estatus especial nuevo: “Idea-A-Thon” en el Portal de Ideas de InterSystems y podrán encontrarse fácilmente filtrando por ese estado: Idea-A-Thon Ideas. ¿Quién puede participar? Invitamos a TODOS a participar en el Ideatón - tanto los empleados de InterSystems como los miembros de la Comunidad de Desarrolladores. Premios 1. Premio para todos los participantes – todas las personas que añadan una idea válida recibirán premio. 🎁 Camiseta con el logo de InterSystems 2. Premio de los Expertos – el ganador será elegido por un equipo de expertos de InterSystems, y ganará: 🎁 Figura R2-D2™ de Star Wars™, de LEGO / Sleepbuds™ II, de BOSE / Altavoz Bluetooth SoundLink Flex inalámbrico, de BOSE 3. Premio de la Comunidad – la idea con más votos ganará: 🎁 Figura R2-D2™ de Star Wars™, de LEGO / Sleepbuds™ II, de BOSE / Altavoz Bluetooth SoundLink Flex inalámbrico, de BOSE Importante: los empleados de InterSystems solo pueden conseguir el premio por participación. El Premio de los Expertos y de la Comunidad solo puede ser ganado por miembros de la Comunidad que no sean empleados de InterSystems. Duración del concurso 📝 26 septiembre - 16 octubre: Publicación de ideas y periodo de votación. Publica una o varias ideas durante ese periodo y vota otras ideas publicadas – esos votos contarán para el Premio de la Comunidad. Nota: Cuanto antes publiquéis vuestras ideas, más tiempo tendréis para conseguir votos. Así que... Publicad vuestra(s) idea(s) en InterSystems Ideas para conseguir premios. ¡Y estad atentos a las actualizaciones de estado de vuestras ideas! ¡Suerte a todos! 👍 Nota importante: Los premios están sujetos a disponibilidad y opciones de envío. Algunos premios puede que no estén disponibles para ser enviados internacionalmente a algunos países. Los premios no pueden ser enviados a residentes en Crimea, Rusia, Bielorrusia, Irán, Corea del Norte, Siria u otros países embargados por Estados Unidos. Os informaremos si un premio no está disponible y ofreceremos un premio alternativo. El Ideatón de InterSystems empezó ayer y ya tenemos 4 brillantes ideas! Podéis verlas aquí: Ideas del Ideatón >> Y recordad que podéis enviar vuestras ideas, votar las que más os gustan y también comentar cualquier idea 👍 ¡Nos vemos por InterSystems Ideas!
Anuncio
Jose-Tomas Salvador · 22 feb, 2023

Formación Oficial Programada de InterSystems IRIS

Comenzando este año 2023, hemos programado una serie de cursos oficiales sobre InterSystems IRIS que iremos realizando a lo largo del año. Los cursos se impartirán on-line y ya están abiertos para que os podáis registrar si estáis interesados (hasta un máximo de 10 personas por curso, quorum mínimo 5 asistentes). Toda la información está disponible en nuestro sitio web: Formación en el aula virtual | InterSystems Para cualquier duda o necesidad adicional de formación, no dudéis en indicárnoslo más abajo o enviándonos un email a formacion@intersystems.com.
Anuncio
Esther Sanchez · 14 feb, 2023

Ganadores del concurso "Herramientas para Desarrolladores de InterSystems"

Ya podemos anunciar los ganadores del Concurso de Herramientas para Desarrolladores de InterSystems! Pero en primer lugar, me gustaría dar las GRACIAS a todos los participantes, que han presentado 21 aplicaciones maravillosas 🔥 Estamos muy contentos de saber que este tema es tan importante para vosotros. Y ahora, sin más dilación, ya podemos decir eso de: "Y los ganadores son..." Nominación de los Expertos 🥇 1er puesto y $5,000 para la app irissqlcli, creada por @Dmitry.Maslennikov 🥈 2º puesto y $3,000 para la app DX Jetpack for VS Code, creada por @John.Murray 🥉 3er puesto y $1,500 para la app OpenAPI-Suite, creada por @Lorenzo.Scalese 🏅 4º puesto y $750 para la app iris-geo-map, creada por @Muhammad.Waseem 🏅 5º puesto y $500 para la app iris-tripleslash, creada por @José.Pereira, @Henrique.GonçalvesDias y @Henry.HamonPereira Puestos 6-10: 🏅 $100 para la app iris-log-viewer, creada por @Oliver.Wilms 🏅 $100 para la app iris-persistent-class-audit, creada por @Stefan.Cronje1399 🏅 $100 para la app iris-connections, creada por @Yuri.Gomes 🏅 $100 para la app cos-url-shortener, creada por @Daniel.Aguilar 🏅 $100 para la app iris-deploy-tools, creada por @Francisco.López1549 Nominación de la Comunidad 🥇 1er puesto y $1,000 para la app iris-tripleslash, creada por @José.Pereira, @Henrique.GonçalvesDias, @Henry.HamonPereira 🥈 2º puesto y $750 para la app Intersystems IRIS platform queue trend monitoring component, creada por @yubo.mao 🥉 3er puesto y $500 para la app irissqlcli, creada por @Dmitry.Maslennikov Aquí podéis ver todas las apps presentadas y los votos de cada tipo que ha obtenido cada una: 21 apps presentadas ¡Enhorabuena a los ganadores! ¡Y muchísimas gracias a todos los participantes! Valoramos mucho el trabajo y esfuerzo dedicado a participar en el concurso y os agradecemos mucho el tiempo que le habéis dedicado. 🙌 ¡Nos vemos en el próximo concurso! 😉 ¡Enhorabuena especialmente a @Daniel.Aguilar y a @Kurro Lopez por su premio!! ¡Qué cracks! 👏👏🎉🎉 ¡Animaos todos a participar en el siguiente concurso!! 😊 Muchas gracias @Esther.Sanchez, animo a todos a participar!!
Anuncio
Esther Sanchez · 31 mar, 2023

Novedades de InterSystems Ideas, marzo 2023

¡Hola Comunidad! Os traemos las últimas novedades de InterSystems Ideas, el Portal de Sugerencias de InterSystems. Éstas han sido: ​​​​✓ Muro de la fama (Hall of fame) - una nueva página en el Portal de Ideas ✓ Integración con Global Masters - obtención de puntos por vuestras ideas ✓ Lista de ideas que están planeadas para implementación 11 desarrolladores ya han implementado ideas del Portal de Ideas. Y para honrarles como se merecen, hemos creado una nueva página para ellos, el Hall of Fame, en la que aparecen: el nombre de las ideas implementadas los desarrolladores que han implementado las ideas los nombres de la implementación, con enlaces para consultar más información Para aparecer en el Muro de la Fama, solo hay que implementar alguna de las ideas con el estado Community Opportunity 😉 Desde hace un mes, los desarrolladores que envían ideas de producto han empezado a conseguir puntos por dichas ideas. En concreto, desde el 22 de febrero, los autores ya han recibido un total de 18 200 puntos en Global Masters por estas ideas: 15 ideas de producto que han sido publicadas, promocionadas o implementadas: Cross-production Interoperability Messages, Service and Operation by @Stefan.Cronje1399 Additional Data Types for ISC Products by @Stefan.Cronje1399 Change data capture from IRIS to kafka using SQL commands by @Yuri.Gomes Allow graphical editing of Interoperability components BPL, DTL and Business Rules in VS Code by @Steve.Pisani Examples to work with IRIS from Django by @Evgeny.Shvarov Install python and java libraries from ZPM and Installation Manifest (%Installer) by @Yuri.Gomes Set password through environment variable by @Dmitry.Maslennikov Add a project that helps to generate unittests for an ObjectScript class by @Evgeny.Shvarov Create a UI for convenient and easy transfer of projects (classes, globals, applications, users, roles, privileges, grants, namespace mapping, SQLgateways, libraries, etc.) to other system instances for fast deployment. by @MikhailenkoSergey Add a wizard similar to the SOAP wizard to generate a REST client from OpenAPI specification by @Jaime.Lerga Public API for access to shared memory by @Alexey.Maslov Fold code on loops and If's on studio by @Heloisa.Paiva Chat bot to help with TrakCare customization/settings by Sumana Gopinath Iterative build of TrakCare configuration/code tables utilising FHIR and HL7 Messaging. by Linda McKay BPL, DTL, Business Rule Editor in VSCode by @Cristiano.Silva Vosotros también podéis publicar vuestras ideas y obtener puntos por ellas! Y para terminar, estas son las ideas que están planeadas para ser implementadas Publish the InterSystems IRIS Native SDK for Node.js on npm by @John.Murray Move users, roles, resources, user tasks, Mappings (etc) to a seperate Database, other than %SYS, so these items can be mirrored by @Sean.O'Connor1391 Please add google oauth authorization to login to the management portal by @Aleksandr.Kolesov InterSystems Ideas - Long Term by @Vinay.Purohit3109 BPL, DTL, Business Rule Editor in VSCode by @Sawyer.Butterfield Add Favorites in GM by @Irène.Mykhailova LIMIT OFFSET support for IRIS SQL by @Dmitry.Maslennikov Introduce WITH into IRIS SQL engine by @Evgeny.Shvarov Security settings for mirror configurations by @Evgeny.Shvarov A modern management portal to manage InterSystems IRIS by @Evgeny.Shvarov copy/sync system configurations and user accounts between IRIS instances by @Evgeny.Shvarov Jupyter Notebook by Guest Os recordamos que, en InterSystems Ideas, podéis: filtrar las ideas por estado, publicar vuestras ideas, votar y/o comentar otras ideas, suscribiros a cualquier idea para hacerle seguimiento, implementar las ideas clasificadas como Community Opportunity,... ¡Esperamos veros a todos por InterSystems Ideas! 🤗
Anuncio
Esther Sanchez · 19 mayo, 2023

Novedades de InterSystems Ideas, mayo 2023

¡Hola Comunidad! Os traemos las últimas novedades de InterSystems Ideas, el Portal de Sugerencias de InterSystems. Éstas han sido: ​​​​✓ Cómo crear una nueva idea en InterSystems Ideas ✓ Ideas implementadas el mes pasado por los miembros de la Comunidad ✓ Nuevas ideas creadas recientemente El artículo "Cómo crear una nueva idea en InterSystems Ideas" describe paso a paso el proceso de creación de una idea. Leedlo cuando queráis añadir una nueva idea al portal. El Muro de la Fama ha sido actualizado con los miembros de la Comunidad que han implementado ideas que tenían el estado Community Opportunity: Add IRIS as a supported database for Apache Superset, de @Herman.Slagman7521, implementada por @Dmitry.Maslennikov Please add google oauth authorization to login to the management portal, de @Aleksandr.Kolesov, implementada por @Yuri.Gomes 👏¡Muchas gracias por vuestro trabajo!👏 Y para terminar, estas son las nuevas ideas publicadas desde el anterior boletín 1. Dump SQL tables by @Dmitry.Maslennikov 2. Java Hibernate support for IRIS by @Dmitry.Maslennikov 3. Add legitimate special symbol-separator for ObjectScript variable names by @Evgeny.Shvarov 4. allow cancel "Pending approval" by @Robert.Cemper1003 5. provide a switch to Hide/Unhide posts. or fix Re-Publish by @Robert.Cemper1003 6. Traceroutes to Java Gateway Display by @Scott.Roth 7. On Developer Community put animated GIFs behind a play/pause button by @John.Murray 8. Community in numbers on a GEO Dashboard by @Yuri.Gomes 9. Unit testing in VSCode by @Robert.Barbiaux 10. Saving Searched Criteria within Message Search by @Scott.Roth 11. Featured Article or Question by @Yuri.Gomes 👏Thank you for posting new ideas👏 Os recordamos que, en InterSystems Ideas, podéis: filtrar las ideas por estado, publicar vuestras ideas, votar y/o comentar otras ideas, suscribiros a cualquier idea para hacerle seguimiento, implementar las ideas clasificadas como Community Opportunity,... ¡Esperamos veros a todos por InterSystems Ideas! 🤗
Artículo
Esther Sanchez · 12 mayo, 2023

Cómo crear una nueva idea en InterSystems Ideas

¡Hola Comunidad! Os mostramos en este breve artículo cómo crear una idea en InterSystems Ideas. 0. Hay que iniciar sesión o registrarse en el Portal de Ideas. Os podéis registrar fácilmente utilizando vuestro ID de la Comunidad de Desarrolladores. 1. Haced clic en el botón "Añadir una nueva idea" y aparecerá el formulario para añadir la idea. 2. En primer lugar, resumid la idea en una frase (es un campo obligatorio). Al empezar a escribir, aparecerá una lista de ideas con palabras similares en sus nombres o etiquetas. En caso de que se haya creado una idea similar a la vuestra, podéis votarla o comentarla. El tamaño óptimo para resumir una idea es entre 4-12 palabras. 3. A continuación, describid la idea en el campo "Please add more details". Además del texto, podéis adjuntar pantallazos u otros archivos, insertar tablas y enlaces. Hay un modo de pantalla completa que permite ver la descripción entera de la idea sin tener que estar desplazando el cursor arriba y abajo. 4. Después hay que completar el campo obligatorio "Category". Indicar la categoría correcta permitirá asignar la idea a la persona adecuada en el equipo de InterSystems. En caso de ordenar primero las ideas por categoría y después hacer clic en "Add a new idea", la categoría de la idea se añadirá automáticamente. 5. Opcionalmente, podéis añadir etiquetas a vuestra idea, para que otros usuarios puedan encontrarla fácilmente al buscar por etiquetas. La lista de etiquetas empieza con las que tienen la palabra "InterSystems", el resto de etiquetas se ordenan alfabéticamente. 6. Haced clic en "Add idea" para enviarla. Espero que estas instrucciones os resulten útiles para compartir vuestras ideas con otros. Si tenéis alguna pregunta, podéis enviarme un mensaje directo a @Vadim.Aniskin. --------------------- Tened en cuenta que las ideas y los comentarios deber estar en inglés. Los administradores del Portal de Ideas pueden hacer preguntas a través de los mensajes directos de la Comunidad, para aclarar alguna duda sobre la idea y su categoría. Responded a esas preguntas para que vuestra idea sea visible para todos los usuarios. Al crear una idea os suscribís automáticamente a las notificaciones por e-mail relacionadas con vuestra idea, incluyendo: cambios en el estado de vuestra idea comentarios sobre vuestra idea publicados por los administradores del Portal (no se reciben notificaciones por los comentarios de otros usuarios) Venga, animaos. Que luego no vale quejarse amargamente por que algo no os guste.
Anuncio
Esther Sanchez · 25 ene, 2023

Novedades de InterSystems Ideas, enero 2023

¡Hola Comunidad! Os traemos las últimas novedades de InterSystems Ideas, el Portal de Sugerencias de InterSystems. En primer lugar, hemos creado un breve vídeo que explica el ciclo de vida de las ideas en el Portal: ⏯ Ciclo de vida de las ideas en InterSystems Ideas La novedad más importante es una nueva sección en el portal -> Portal Guide (Guía del Portal), que contiene: ✓ Información sobre el objetivo del Portal de Sugerencias ✓ Una descripción de cada uno de los estatus de las ideas ✓ Una serie de recursos útiles relacionados con el Portal ¿Os gustaría ver algo más en el Portal de Sugerencias de InterSystems? Podéis escribirnos en los comentarios de esta publicación. ¡Os leemos! Sobre vuestras ideas, 13 de ellas ya están en el estatus "Planned or in Progress". Y estas son las 12 ideas que ya han sido implementadas Career-oriented learning paths Change the layout of the "New idea" screen Enable the server widget on Discord Include support for gRPC protocol in IRIS Make JSON representation of messages in Interoperability message viewer instead of XML Create query builder Global->JSON->Global converter Chatbots solution for InterSystems Data Platforms 3DES support InterSystems IRIS as a Datasource for Google DataStudio Introduce a basic template to create interoperability adapters using Embedded Python Introduce the project of helpful one-liners Psss... ¿sabéis todo lo que podéis hacer en el Portal de Sugerencias de InterSystems? Filtrar las ideas por estado Publicar nuevas ideas para que sean comentadas públicamente Votar las ideas presentadas Comentar cualquier idea Suscribiros a cualquier idea para hacerle seguimiento ... ¡Esperamos veros a todos por InterSystems Ideas!
Artículo
Esther Sanchez · 31 ene, 2023

Cómo añadir una certificación de InterSystems a vuestro perfil de la Comunidad

¡Hola Comunidad! Si alguno de vosotros habéis pasado la Certificación Oficial de InterSystems, podéis tener un elegante tick verde en el avatar de vuestro perfil, así: Y podéis añadir vuestras certificaciones a vuestro perfil, para que todo el mundo sepa todo lo que sabéis. Para añadir las certificaciones a vuestro perfil, solo tenéis que seguir estos sencillos pasos: 1️⃣ Ir a vuestro perfil en la Comunidad 2️⃣ Ir al apartado Certificaciones de InterSystems, a la izquierda 3️⃣ Hacer clic en el botón Cargar mis certificaciones ¡Y eso es todo! El sistema enviará la petición a Credly con vuestro email de la Comunidad de Desarrolladores. Si vuestras certificaciones están vinculadas al mismo email, se cargarán automáticamente: Si no aparecen de forma automática, haced clic en "Haz clic para cargar" y seguid las indicaciones detalladas en la página que aparece: Y ya estaría. Ahora todo el mundo sabrá todo lo que sabéis... 😃 ¡Ah! ¡Y enhorabuena por haber obtenido las certificaciones! ¡Buen trabajo! 👏
Anuncio
Esther Sanchez · 28 feb, 2023

Novedades de InterSystems Ideas, febrero 2023

¡Hola Comunidad! Os traemos las últimas novedades de InterSystems Ideas, el Portal de Sugerencias de InterSystems. Éstas han sido: Puntos extra en concursos por implementar ideas del portal InterSystems Ideas Posibilidad de filtrar las ideas de las personas de una misma empresa Versión oscura de la Comunidad de Desarrolladores: ¿sí o no? Últimas ideas añadidas La novedad más importante es que en el último concurso de programación, 5 participantes obtuvieron puntos extra por implementar ideas del portal InterSystems Ideas! Estos fueron los participantes y las ideas: Desarrollador(es) Nombre de la aplicación Idea implementada @Lorenzo.Scalese OpenAPI-Suite Añadir un wizard similar al wizard SOAP para generar un cliente REST desde la especificación OpenAPI @José.Pereira @Henrique.GonçalvesDias @Henry.HamonPereira iris-tripleslash Añadir un proyecto que ayude a generar unittests para una clase ObjectScript @MikhailenkoSergey gateway-sql, apptools-admin Crear una IU para una práctica y sencilla transferencia de proyectos (clases, globals, aplicaciones, usuarios, roles, privilegios, grants, namespace mapping, SQLgateways, librerías, etc.) a otras instancias de sistema para una rápida implementación. Hemos añadido un nuevo filtro "Mi empresa" (My organization). A partir de ahora, se pueden filtrar las ideas para que aparezcan solo las ideas y votos de las personas que pertenecen a la misma empresa. El otro día, @Guillaume.Rongier7183 publicó una idea sobre hacer un modo oscuro de la Comunidad de Desarrolladores. Nos gustaría saber vuestra opinión sobre este tema. Podéis responder responder a esta pregunta en el Portal de Ideas o votar y comentar la idea en InterSystems Ideas. Últimas ideas añadidas Dark version of InterSystems Community Add job location for job opportunities section on DC Searchable Index of New Features Set password through environment variable Schedule the article publication on DC site Support JSON on DC text editor Support linux bash language on DC text editor Change data capture from IRIS to kafka using SQL commands Cross-production Interoperability Messages, Service and Operation Additional Data Types for ISC Products Automatic XML Formatting of XData in DTL, BPL and Rulesets Assert CodeAssist prompting IRIS classes for OpenAI API Display UserValues contents on message property tab IRIS as a service Allow graphical editing of Interoperability components BPL, DTL and Business Rules in VS Code Add Source control for all the IRIS interoperability components Audit Lookuptables Add a "watch list" to WRC tickets (problems, issues) Connect InterSystems Documentation and Developer Community Publish the InterSystems IRIS Native SDK for Node.js on npm Os recordamos que, en InterSystems Ideas, podéis: filtrar las ideas por estado, publicar vuestras ideas, votar y/o comentar otras ideas, suscribiros a cualquier idea para hacerle seguimiento, implementar las ideas clasificadas como Community Opportunity,... ¡Esperamos veros a todos por InterSystems Ideas!