Buscar

Limpiar filtro
Pregunta
Yuri Marx · 9 jun, 2021

Plan de ejecución de consultas SQL

¿Es posible ver el plan de ejecución de una sentencia SQL en IRIS? Como esto: explain plan for select e.ename,r.rname from employees e join roles r on (r.id = e.role_id) join departments d on (d.id = e.dept_id) where e.staffno <= 10 and d.dname in ('Department Name 1','Department Name 2'); Que devuelve esto: EXPLAIN es también un comando SQL soportado por InterSystems IRIS. Se puede llamar desde la shell como cualquier otro comando. Igualmente, para el ver el plan tambien se puede hacer en el Explorador SQL, pulsando el botón "Mostrar Plan" con la sentencia SQL en cuestión.
Artículo
Yuri Marx · 8 sep, 2021

Niveles de una Plataforma de Datos

Como arquitecto de software, es un reto diseñar una arquitectura corporativa que cumpla con los requisitos actuales de los negocios. Hay que conseguir el nivel 5 de la imagen anterior. Con InterSystems IRIS es posible. Con un solo producto, tienes SQL + NoSQL + ESB + BI + Open Analytics + Modelos analíticos virtuales en tiempo real + NLP + AutoML + ML (con Python) y cloud Avanzada + soporte a sharding. Con Oracle, por ejemplo, necesitas Oracle DB + Oracle NoSQL + Oracle BI + Oracle SOA Suite + algunas extensiones, como Oracle R, Partitioning y RAC; y algunos productos cloud de Oracle para NLP y características de IA. Con IBM tenemos un escenario similar. Microsoft utiliza Biztalk (gracias, @Robert.Bira).
Artículo
Jose-Tomas Salvador · 20 abr, 2022

Mapeo de datos en Globals a Objeto-Relacional (SQL Storage)

Encontré este pequeño artículo de @brendan.bannon de hace unos años... pero creo que es muy útil para cuando tengamos estructuras de almacenamiento basadas puramente en globals y queramos tener la posibilidad de acceder a ellas desde el punto de vista de Objetos y/o Relacional. El fichero ZIP adjunto contiene un paquete de ejemplos de mapeos SQL Storage (válido para IRIS y Caché) que he hecho y recopilado a lo largo de estos años. Si tienes globals existentes y quieres exponerlos vía Objectos o SQL, necesitas configurar el mapeo SQL Storage en InterSystems IRIS o Caché. Si no ves un ejemplo que te ayude con tu caso, envíame un ejemplo y puedo ayudarte. (Para bajarte el archivo ZIP, ve a la publicación original)
Artículo
Luis Angel Pérez Ramos · 1 jul, 2025

Depuración de API REST: situación de Página No Encontrada

Hola desarrolladores. Solo quería compartir con vosotros un hallazgo que podría ahorraros unos valiosos minutos de vida como desarrolladores con InterSystems IRIS. ¡Como así! Debería funcionar. Desplegasteis la API REST correctamente y todo está en su lugar. ¿Qué puede estar saliendo mal? El problema en mi caso fue que escribí mal el nombre de la clase, como en esta imagen: Fue un error tipográfico. No hubo errores de compilación, ni mensajes en la consola, ni ninguna pista de lo que estaba mal. Así que, si os encontráis con un problema similar — mensaje de “No Encontrado” para una página que “simplemente debería funcionar” — revisad la clase Dispatch, ¿está el nombre correcto? Y, por supuesto, preguntad a la comunidad. Quizás os ahorre unos minutos valiosos de la preciosa vida de nosotros, los desarrolladores. ¡Saludos!
Anuncio
David Reche · 4 mayo, 2020

Ya está disponible HealthShare 2020.1

La versión 2020.1 de HealthShare ya ha sido liberada. Incluye muchas funcionalidades nuevas: Support for HL7® FHIR® Release 4, including mapping of InterSystems SDA to FHIR R4 North American customers can access to the CommonWell® health data network, including integration with the HealthShare Unified Care Record and Clinical Viewer New Clinical Viewer enhancements, including configurations to display icons and specific filtered views for COVID-19 testing status Clinical Viewer audits showing when a user accessed a patient’s information Separate kits for Unified Care Record and Clinical Viewer to allow more flexible update options Simpler/faster user experience for clinical and administrative users with new navigation, application chooser, and system utility menu (initial version, expanding to include more applications in the next releases) Health Insight now built on IRIS for Health™, with improved performance and scalability Health Insight streamlined upgrade protocols to significantly reduce downtime during version upgrades Health Insight data consistency check tool enhancements, including new features and updated dashboards Provider Directory push service to publish newly updated provider records to FHIR repository and to external systems Personal Community login can use login credentials from external systems. Integrated Healthwise® educational content available in Personal Community Patient-completed forms and questionnaires from Personal Community can be accessed directly in InterSystems TrakCare®. Más información Con tus credenciales para acceder al Centro de Soporte Internacional (WRC) de InterSystems, puedes: Descargar el Software desde la página de distribución de software del WRC Revisar las notas de la versión: Unified Care Record 2020.1 Notes Health Insight 2020.1 Notes Patient Index 2020.1 Notes Personal Community 2020.1 Notes Provider Directory 2020.1 Notes Health Connect 2020.1 Notes Revisar la documentación sobre HealthShare 2020.1 También puedes contactar con el Centro de Soporte Internacional (WRC) en support@intersystems.com o en +1.617.621.0700
Anuncio
Esther Sanchez · 17 jun, 2021

Webinar en español: Interoperabilidad en FHIR

¡Hola Comunidad! Os invitamos a un nuevo webinar en español: "Interoperabilidad en FHIR", el miércoles 23 de junio, a las 4:00 PM (CEST). ¿Cómo puede FHIR convivir e integrarse con otros protocolos? En este webinar partiremos de un servidor FHIR ya existente y veremos cómo integrarlo con diferentes productores y consumidores de datos. También veremos las herramientas que permite InterSystems IRIS for Health para navegar entre distintos protocolos y presentar distintas fachadas de un repositorio. ¡Y algunas cosas más! ¡Os esperamos! ➡️ Podéis registraros aquí >> Empieza la cuenta atrás... ¡mañana ya es el webinar sobre Interoperabilidad en FHIR! Durante la presentación, explicaremos cómo puede FHIR convivir e integrarse con otros protocolos. ¡Os esperamos! 😃

#George James Software

0 Publicaciones0 Seguidores
Artículo
Muhammad Waseem · 9 dic, 2021

Autenticación OAuth2 con cuenta GitHub desde la aplicación web IRIS

En este artículo, mostraré los conceptos básicos de la autenticación OAuth2 con la cuenta de GitHub con la ayuda de la demostración onlinehttps://dappsecurity.demo.community.intersystems.com/csp/user/index.csp usando SuperUser | SYS Recomendaciones: Descripción general de OAuth2 : https://learning.intersystems.com/course/view.php?id=252 Documentación: Using an InterSystems IRIS Web Application as an OAuth2 Client Artículos: Implementación de la estructura Open Authorization (OAuth 2.0) en InterSystems IRIS - Parte 1 A continuación, necesitamos 3 pasos: Paso 1: Registrar la aplicación con el servidor de autenticación de GitHub Paso 2: Configurar el cliente OAuth 2.0 desde el portal de administración de InterSystems Paso 3: Llamar a la API para iniciar sesión con una cuenta de GitHub Así que... ¡empecemos! Paso 1: Registrar la aplicación con el servidor de autenticación de GitHub Para registrar la aplicación con el servidor de autenticación de GitHub, necesitamos una cuenta de GitHub.Inicia sesión en la cuenta de GitHub, ve a https://github.com/settings/developers y, en la pestaña OAuth Apps (Aplicaciones OAuth), haz clic en el botón New OAuth App (Nueva aplicación OAuth). Escribe el nombre de la aplicación, la URL de la página de inicio, la descripción y la URL callback para la autorización.Ten en cuenta que la URL callback para la autorización debe hacer referencia a la clase OAuth2.Response.cls ({dominio} /csp/sys/oauth2/OAuth2.Response.cls)Haz clic en Register Application (Registrar aplicación): Esto abrirá la página de detalles. Haz clic en Generate a new client secret (Generar un nuevo secreto de cliente) y guarda el ID de Cliente y la Clave Secreta que usaremos al configurar el cliente IRIS OAuth2.La aplicación se registró correctamente. Paso 2: Configurar el cliente OAuth 2.0 desde el portal de administración de InterSystems Ve a System > Security Management > OAuth 2.0 Client y haz clic en el botón Create Server Description (Crear descripción del servidor):Haz clic en el botón Manual en la parte superior, introduce los detalles en el formulario y guarda la descripción del servidor:Vuelve a System > Security Management > OAuth 2.0 Client y haz clic en Client Configurations (Configuraciones del cliente):En la pestaña General, completa los detalles. Ten en cuenta que la URL de redireccionamiento del cliente es la misma que pusimos en la URL callback para la autorización al registrar nuestra aplicación en GitHub.En la pestaña Client Credentials (Credenciales de cliente), introduce la ID de cliente y el secreto del cliente que generamos al registrar nuestra aplicación en GitHub y guarda la configuración del cliente. Paso 3: Llamar a la API para iniciar sesión con una cuenta de GitHub Ve a la demostración online: https://dappsecurity.demo.community.intersystems.com/csp/user/index.csp e inicia sesión con SuperUser | SYSHaz clic en Login with Github account (Iniciar sesión con la cuenta de Github) en el menú superior: Esto abrirá la página Oauth.cls. Asegúrate de cerrar sesión en GitHub antes de intentar iniciar sesión. Haz clic en Github Sign in (Iniciar sesión en Github):El sistema navegará al servidor de autenticación de GitHub usando el método GetAuthorizationCodeEndpoint de la clase% SYS.OAuth2.Authorizationhttps://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?&LIBRARY=%25SYS&PRIVATE=1&CLASSNAME=%25SYS.OAuth2.Authorization Cuando hayas iniciado sesión correctamente, el sistema lo redireccionará a la página OauthRe.cls El código está disponible en este repositorio https://github.com/mwaseem75/Data_APP_Security
Artículo
Andre Larsen Barbosa · 20 mayo, 2025

Un nocaut de peso

Al igual que un golpe de gracia, sin darle ninguna oportunidad al oponente, Kubernetes, como plataforma de código abierto, tiene un universo de oportunidades debido a su disponibilidad (es decir, la facilidad para encontrar soporte, servicios y herramientas). Es una plataforma que permite gestionar trabajos y servicios en contenedores, lo que simplifica enormemente la configuración y automatización de estos procesos. Pero justifiquemos la imagen del título y demos el nombre “correcto” a la herramienta en cuestión: InterSystems Kubernetes Operator. El principio es básico, tú eliges los servicios y defines las reglas del juego (aquí refiriéndonos nuevamente a Knockout), y todo se proporcionará de la forma más transparente y eficiente posible, y esto es válido para la instalación, reparación o eventual restauración, cuando esta se desvíe de los requisitos predefinidos. Pero ¿qué diferencia a IKO de cualquier otro operador? Como una extensión de la API de Kubernetes (llamémosla K8s para abreviar), el componente personalizado IrisCluster, que tiene las opciones de implementarse como un clúster bloqueado de IRIS, un clúster de Caché distribuido o incluso una instancia anónima. Todo esto en las más diversas plataformas Kubernetes disponibles. Por último, pero no por ello menos importante, también incluye capacidades de gestión de clústeres de InterSystems, que permiten automatizar algunas tareas con la adición de nodos, algo que antes solo se podía hacer manualmente. Todo esto está muy bien, hace referencia a algún deporte o juego, pero ¿por qué necesito esto? La respuesta es relativamente sencilla. No necesito IrisCluster para llevar InterSystems IRIS a K8s, sin embargo, como K8s es una aplicación independiente, sería necesario crear las definiciones y los eventuales scripts para configurar estas instancias de IRIS. De esta forma IKO automatiza este proceso, facilitando el mantenimiento. El uso de contenedores es una excelente forma de empaquetar esta colección de actividades que deben realizarse. Sin embargo, aprovechando la oportunidad ¿sabes qué es un contenedor? Un consejo: no es sólo el juego de mesa. La respuesta tiene mucho más que ver con el “transporte” de algún orden, ya que empaqueta y aísla aplicaciones y servicios, para que puedan ejecutarse por separado del resto. Facilitando así el “transporte” de un entorno a otro, según la necesidad. Aprovechando la extensa documentación de InterSystems, a continuación se muestra el enlace a los pasos de instalación de IKO y su posterior configuración y ajuste. https://docs.intersystems.com/components/csp/docbook/DocBook.UI.Page.cls?KEY=AIKO#AIKO_install Para que nadie tenga curiosidad por el apodo K8s. El origen del nombre Kubernetes proviene del griego, que significa nada más y nada menos que piloto o timonel, en definitiva, el que dirige. Y, el número de caracteres entre las letras “K” al principio y “S” al final, es 8. Por lo tanto, “K8s”. Parabéns pelo artigo, Larsen! Achei muito bacana como você usou a metáfora do boxe para mostrar que, com estratégia, foco e as ferramentas certas, é possível vencer grandes desafios nos projetos. Um verdadeiro “nocaut” nas dificuldades! Tema super atual e relevante, ainda mais no nosso dia a dia com sistemas complexos. Com certeza uma excelente contribuição para a comunidade! muy bueno, me gustó mucho este artículo una herramienta que se hace necesaria actualmente Muito bom artigo @Andre.LarsenBarbosa Parabéns! Larsen, parabéns pelo artigo. Muito interessante. Es genial aprender cada día un poco más de profesionales como tú. Parabéns @Andre.LarsenBarbosa Muito bom Larsen Parabéns pelo artigo @Andre.LarsenBarbosa Obrigado, Raka, é sempre uma satisfação ler suas publicações. Seu apoio é um incentivo sempre. Gracias, Lil'Schiehl. Gracias, Andy. Muito obrigado pelo apoio, Paulão. Obrigado pelo apoio, Igor. Gracias, Valter. Muito obrigado, Larissa. Valeu o apoio, Rodrigão. Obrigado, Samuca.
Pregunta
Evgeny Shvarov · 29 jun, 2019

¿Obtener el valor de la propiedad de la instancia u obtener el valor de la columna del registro?

¡Hola chicos!Como saben, hay dos (al menos) formas de obtener el valor almacenado de una propiedad de una clase InterSystems IRIS si se conoce el ID de una instancia (o un registro).1. Obtenerlo mediante la propiedad de una instancia con "Acceso a objetos": ClassMethod GetPropertyForID(stId As %Integer) As %String { set obj=..%OpenId(stId) return obj.StringData } +++ ++ 2. Obtenerlo mediante una columna del registro con "acceso SQL": ClassMethod GetColumnForID(stId As %Integer) As %String { &sql(select StringData into :sd from Ideal.StoredData where id = :stId) return sd } ¿Qué prefieren? ¿Y por qué? Para reproducir el escenario y jugar con él, en InterSystems IRIS 2019.2 pueden usar el repositorio de ObjectScript .Contiene la clase persistente Ideal.StoredData con una propiedad StringData y una simple utilidad para poblar los registros. Para configurar el escenario en su equipo, hagan lo siguiente (por ejemplo, en mac, suponiendo que tengan instalado git y docker): # clone git@github.com:evshvarov/objectscript.git # docker-compose build # docker-compose up -d # docker-compose exec iris iris session iris USER>zn "OSCRIPT" OSCRIPT>d ##class(Ideal.StoredData).AddRecords() OSCRIPT>w ##class(Ideal.StoredData).GetPropertyForID(1) Value1 OSCRIPT>w ##class(Ideal.StoredData).GetColumnForID(1) Value1 OSCRIPT> Hola,Si conoces el ID para mi es siempre mejor usar el acceso a objetos.Pero si no conoces el ID y buscas a través de una SQL posiblemente la única opción viable es la segunda, aunque siempre puedes acceder directamente a los globals.Saludos
Pregunta
Dani Fibla · 27 abr, 2021

¿Cómo puedo hacer debug de una operación/proceso con Visual Studio Code?

Tengo una duda referente al Visual Studio Code, el Studio del Iris permite hacer debug de cualquier business operation/proces que este en la producción añadiendo el proceso que se le haya asignado dentro de las opciones Debug(Attach), al reenviar un mensaje que entre dentro de esta operación/proceso se parará en nuestro punto de interrupción. ¿Como puedo conseguir esto con el Visual Studio Code? He revisado varios pluggins para hacer debug pero he sido incapaz de conseguirlo. Mil gracias por leer la consulta, si encima me la resuelves te estaré eternamente agradecido, incluso te daría puntos para unos calcetines de Intersystems. Hay varias cosas que tener en cuenta aquí. Lo primero es que el VSCode debe estar en la misma máquina que la instancia de IRIS para que puedan compartir procesos de sistema operativo. Lo demás es poder adjuntarse al proceso del BO y luego poder parar en la línea de código. Echa un ojo a esto si no lo has hecho ya: https://intersystems-community.github.io/vscode-objectscript/rundebug/ Para adjuntarte a un proceso utiliza esta configuración en el fichero .vscode/launch.json { // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "type": "objectscript", "request": "attach", "name": "ObjectScript Attach", "processId": "${command:PickProcess}", "system": true } ] } David, El VSCode lo tengo en mi maquina local y la instancia de IRIS está dentro de un docker en un servidor, quizás no te haya entendido bien al decir que el VSCode debe estar en la misma máquina que la instancia de IRIS, aun así lo he probado y funciona perfectamente, al darle al play me muestra todos los procesos del servidor, selecciono el mío, reenvío un mensaje y se para en mi punto de interrupción!!!!!!! Mil gracias, te debo unos calcetines ;-) Ja ja ja ... pues la verdad pensaba que tenía que estar en el mismo “entorno” los procesos de IRIS y el VSCode pero mira si somos buenos que no hace falta 🤣 Demasiado buenos
Artículo
Alberto Fuentes · 15 jun, 2021

Trucos y consejos de VSCode - Terminal web

¿Os gustaría poder acceder al Terminal Web directamente desde vuestro VSCode? ![](/sites/default/files/inline/images/images/image(1532).png) Este es otro genial artículo de la serie de [Tani Frankel](https://community.intersystems.com/user/tani-frankel) sobre "Trucos y consejos de VSCode" y es bastante similar al anterior sobre el Asistente SOAP. Es el mismo principio y se obtiene el mismo resultado, aunque el caso de uso es diferente. Supongamos que quieres abrir desde VSCode el WebTerminal (para quienes aún no están familiarizados con esta excelente herramienta diseñada por el increíble [@Nikita.Savchenko](https://community.intersystems.com/user/nikita-savchenko-0), consulten la [web del proyecto](https://intersystems-community.github.io/webterminal/)). Puedes adoptar un enfoque similar al del artículo anterior. Describimos nuevamente cuáles son los pasos: * En la configuración (*settings*) de JSON, abre la extensión de ObjectScript * En el objeto "*conn*", añade un objeto "links" * Dentro de "links" añade esta línea:             "$(terminal) WebTerminal": "${serverUrl}/terminal/?ns=${ns}${serverAuth}" Esto se verá así: ![](/sites/default/files/inline/images/images/image(1535).png)   Una vez hecho esto, cuando hagas clic en la opción *Connection* en la parte inferior de la barra de estado de VSCode, deberías encontrar el Terminal web en el menú. Esto se mencionó en [este debate](https://github.com/intersystems-community/vscode-objectscript/pull/444) sobre Problemas con VSCode que se encuentra en el GitHub VSCode ObjectScript (acerca de las variables ${...} que se utilizaron en la URL anterior), con comentarios de @John.Murray  Os dejo un breve GIF mostrando el proceso (comienza con el menú estándar y termina con la opción de lanzar el Terminal web). ![](/sites/default/files/inline/images/vscodewebterminalvideo.gif)    
Artículo
Ricardo Paiva · 11 ago, 2022

Bienvenido, Django

Gracias a las últimas mejoras al soporte de Python en IRIS y al continuo trabajo en el soporte a la DB-API de Python por parte de InterSystems, he implementado el soporte de IRIS en el proyecto Django, en el que la DB-API de Python se usa para trabajar con otras bases de datos. Vamos a probar una sencilla aplicación en Django, que almacena sus datos en IRIS. La aplicación está disponible en GitHub, vamos a clonarla git clone https://github.com/caretdev/django-iris-todo cd django-iris-todo Y podemos crearla y empezar con Docker-compose docker-compose up -d --build Llevará un tiempo, cuando IRIS se inicie, y la aplicación Django se cargue los modelos y se arranque. Una vez iniciada, estará disponible en http://localhost:8000/ y deberá presentar la pantalla arriba. Cómo funciona Para que funcione, necesita la DB-API de Python instalada. Viene en la última versión de prueba, por lo que hace falta la versión 2022.1.0.114.0 o superior y está situada en la carpeta de la instancia <INSTALL_DIR>/dev/python/. Este fichero también se puede descargar de este repo en GitHub pip3 install intersystems_irispython-3.2.0-py3-none-any.whl El backend de IRIS de Django es implementado por otro proyecto, que puede ser instalado con pip, y necesitamos django por sí solo, vamos a instalarlo pip3 install django django-iris Otra forma de instalar los paquetes requeridos en Python es usar el archivo requirements.txt pip3 install -r requirements.txt El contenido de este fichero son estas 3 lineas https://raw.githubusercontent.com/intersystems-community/iris-driver-distribution/main/intersystems_irispython-3.2.0-py3-none-any.whl Django~=4.0.2 django-iris~=0.1.5 Vamos a conectar nuestra aplicación Django a IRIS. Abrimos el fichero todoApp/settings.py DATABASES define la configuración de las conexiones a la base de datos ENGINE debería ser django_IRIS NAME debería apuntar a Namespace en IRIS Solo cámbialo a algo, donde puede conectar. Por ejemplo DATABASES = { 'default': { 'ENGINE': 'django_iris', 'NAME': 'DJANGOTODO', 'HOST': 'localhost', 'PORT': 1972, 'USER': '_SYSTEM', 'PASSWORD': 'SYS', } } Y empieza la migración python3 manage.py migrate No hay errores, todas las tablas en el lado de IRIS se crearon Y estamos listos para empezar nuestra aplicación python3 manage.py runserver Django viene con un panel de administración python3 manage.py createsuperuser Está disponible en http://localhost:8000/admin/, Cómo se almacenó en IRIS Todavía hay trabajo por hacer para tener un soporte completo. Hay trabajo en marcha con el driver DB-API de Python desde InterSystems, y también con este proyecto django-iris. Tened en cuenta que puede que no funcione tan bien en la versión Community Edition, por la forma como Django se conecta a la base de datos, puede que use todas las lincencias muy rápido.
Artículo
Ricardo Paiva · 27 oct, 2022

Herramienta de migración de datos - Parte II: de MySQL a IRIS

Este artículo es una continuación de [este otro](https://es.community.intersystems.com/post/herramienta-de-migraci%C3%B3n-de-datos-parte-i-de-postgres-iris) sobre cómo migrar de bases de datos populares (como PostgreSQL y MySQL) a IRIS. Utilizaremos los mismos procedimientos utilizados para migrar desde PostgreSQL. Sin embargo, verás que es aún más fácil ya que los tipos de datos en MySQL son muy similares a los de IRIS. Por eso no necesitaremos crear reglas de transformación en las columnas. ## Obtención de los datos de muestra para realizar el proceso de migración En Github es posible descargar un proyecto de Docker Compose para crear y ejecutar 2 bases de datos: * Source Database (Base de datos de origen): Instancia Docker de la base de datos ejemplo MySQL. * Target Database (Base de datos objetivo): Instancia Docker de InterSystems IRIS con un esquema preparado para recibir la base de datos de origen. Para obtener la muestra y ejecutarla, sigue estos pasos: 1. Ve al repositorio git https://github.com/yurimarx/migration-mysql-iris. 2. Clona el proyecto: git clone https://github.com/yurimarx/migration-mysql-iris.git.   3. Ve a la carpeta del proyecto migration-mysql-iris. 4. Realiza una compilación: docker-compose build. 5. Ejecuta los contenedores: docker-compose up -d. 6. Comprueba en el escritorio de tu docker con las instancias si todo está bien: ![](/sites/default/files/inline/images/images/image(3326).png) ## Sobre los datos que se van a migrar Los datos que se van a migrar son el mismo modelo de datos utilizado en la Parte I, y se representan aquí: ![](/sites/default/files/inline/images/images/image(3327).png) Por lo tanto, el proceso será migrar de MySQL a IRIS: * 8 tablas. * 5000 filas de "sale". * 2,500 filas de "users". * 200 filas de "product". * 50 filas de "store". * 100 filas de "country". * 30 filas de "city". * 5 filas de "status_name". El destino de la migración será el esquema dc_test que se encuentra dentro del namespace USER en la base de datos de InterSystems IRIS. ## Herramienta open-source para migrar de MySQL a IRIS: DBeaver En la Parte I, utilizamos la Community Edition de DBeaver para migrar. Lo usaremos otra vez. DBeaver es una herramienta de base de datos para conectar, crear, remover, seleccionar, actualizar y eliminar objetos de datos en las principales bases de datos del mercado. Descárgala en: https://openexchange.intersystems.com/package/DBeaver. Ahora, sigue las instrucciones de instalación para tener este magnífico producto en tu portátil o equipo de sobremesa. DBeaver puede utilizarse para migrar datos entre conexiones de bases de datos, incluso si son de diferentes fabricantes y versiones. ## Cómo conectar las bases de datos de origen y destino mediante DBeaver **Ahora vamos a establecer las conexiones de bases de datos que se van a migrar.** Para establecer la conexión de MySQL a DBeaver: 1.    En DBeaver, ve a File > New. 2.    Selecciona Database Connection y haz clic en Next: ![](/sites/default/files/inline/images/images/image(3328).png) 3.    Haz clic en la pestaña SQL > MySQL y luego en Next: ![](/sites/default/files/inline/images/images/image(3329).png) 4.    Completa los campos de conexión a MySQL en la pestaña Main, como se muestra en esta imagen: ● Host: localhost● Port: 3306● Database: db● Username: user● Password: password 5.    Ve a la pestaña "Driver properties" y establece la propiedad "allowPublicKeyRetrieval" con el valor TRUE: ![](/sites/default/files/inline/images/images/image(3331).png) 6.    En la misma pestaña "Driver properties" establece "useSSL" con el valor FALSE: ![](/sites/default/files/inline/images/images/image(3332).png) 7.    Si DBeaver solicita descargar el driver de MySQL, haz clic en Sí u Ok. 8.    Haz clic en Finish. **Para configurar la conexión de InterSystems IRIS a DBeaver:** En la parte I, configuraste la conexión IRIS, pero si no la tenías guardada, haz lo siguiente: 1.    En DBeaver, ve a File > New. 2.    Selecciona Database Connection y haz clic en Next: ![](/sites/default/files/inline/images/images/image(3333).png) 3.    Haz clic en la pestaña SQL > InterSystems IRIS y luego en Next: ![](/sites/default/files/inline/images/images/image(3334).png) 4.    Si DBeaver solicita descargar el driver de InterSystems IRIS, haz clic en Sí u Ok. 5.    Completa los campos de conexión de InterSystems IRIS como se muestra en esta imagen: ● Host: localhost● Database/Schema: user● Username: _SYSTEM● Password: SYS● Haz clic en Text Connection y en Finish. Las conexiones (db y user) están disponibles en Database Navigator: ![](/sites/default/files/inline/images/images/image(3336).png) ## Realizar la migración El proceso de migración es muy similar al descrito en la Parte I. Solo hay que seguir los siguientes pasos: 1.    Expande la conexión db > Bases de datos > db > Tablas y selecciona todas las tablas. Haz clic derecho con el ratón sobre las tablas seleccionadas y elige Export Data, así: ![](/sites/default/files/inline/images/images/image(3337).png) 2.    Selecciona Database, como se ve en esta imagen y haz clic en Next: ![](/sites/default/files/inline/images/images/image(3338).png) 3.    Haz clic en el botón Choose: ![](/sites/default/files/inline/images/images/image(3339).png) 4.    Selecciona dc_test y haz clic en Ok (Si necesitas crear transformaciones avanzadas entre las columnas de destino y de origen, haz clic en el botón Columnas).   ![](/sites/default/files/inline/images/images/image(3340).png) 5.    Ahora, haz clic en Next. ![](/sites/default/files/inline/images/images/image(3341).png) 6.    Establezce Fetch size en 1,000,000 y haz clic en Next. ![](/sites/default/files/inline/images/images/image(3342).png) 7.    Acepta los valores predeterminados en Data load settings y haz clic en Next. ![](/sites/default/files/inline/images/images/image(3343).png) 8.    En Confirm haz clic en Proceed. ![](/sites/default/files/inline/images/images/image(3344).png) 9.    Ahora, si abres el Navegador de Base de datos, podrás ver todas las Tablas MySQL dentro del esquema InterSystems IRIS dc_test. ![](/sites/default/files/inline/images/images/image(3345).png) Igual que la migración a PostgreSQL, el proceso de migración a MySQL fue muy sencillo para las tablas. Sin embargo, para las vistas, funciones, activadores y procedimientos almacenados, será necesario reescribir el código fuente SQL utilizando ObjectScript o SQL.
Anuncio
Esther Sanchez · 1 jun, 2020

Ganadores del sorteo por el 1er aniversario de la Comunidad

¡Hola Desarrolladores! Ya hemos realizado el sorteo entre todas las personas que respondieron correctamente a la pregunta del concurso por el primer aniversario de la Comunidad de Desarrolladores en español. Los ganadores de dos tarjetas regalo de Amazon valoradas en 50€ cada una han sido @Jacobo.RiosBordas y @Carlos.CollazoFernández. Aquí podéis ver el vídeo del sorteo entre todos los participantes. Y los polos de InterSystems han sido para las dos primeras personas que respondieron correctamente a la pregunta y para sus amigos desarrolladores: @Pedro.Gonzalo y su amigo @Jorge Prieto Espina; y para @Francisco.López1549 y su amigo @Félix.deFederico. ¡Enhorabuena a todos! Y a los demás, ¡muchas gracias por participar en el sorteo! Muchas gracias y felicidades a @Jacobo Rios Bordas y @Carlos Collazo Fernández por su premio. Menuda potra!!! Muchas gracias!!! Muchas gracias y enhorabuena a los ganadores! Ja ja ja... que lo disfrutes con salud... manda foto de lo que te compres... si es que se puede