Saltar al contenido principal

Importar una solución en un entorno

Objetivo​

Importar un paquete de solución en un entorno de destino para que las tablas, los formularios, las vistas y las reglas creados en otro lugar se vuelvan a crear en ese entorno.

Requisitos previos​

  • Ha iniciado sesión en el Centro de control de administración como administrador de la plataforma.
  • Tiene un archivo de paquete de solución exportado desde otro entorno (consulte Exportar una solución).
  • El entorno de destino existe y está Activo (consulte Crear un entorno).

Pasos​

  1. Seleccione el entorno de destino en la parte superior del Centro de control de administración: una solución se importa en un entorno, así que la importación se aplica al entorno que esté seleccionado en ese momento.
  2. Abra la página Soluciones desde la navegación superior.
  3. Seleccione Importar.
  4. Proporcione el paquete de solución que exportó.
  5. Si el paquete contiene datos de demostración, se le pregunta por ellos antes de importar nada: marque Incluir datos de demostración para traer esas filas y seleccione Importar. La casilla está desmarcada salvo que usted la marque, y deshabilitada para un entorno de Producción. Las filas de configuración del paquete se importan siempre, y un paquete sin filas de demostración se salta la pregunta.
  6. La solución se implementa de inmediato: igual que en Power Apps, una importación se aplica directamente en el entorno seleccionado. La solución importada (administrada) aparece entonces en la lista Soluciones, y los creadores pueden usar sus componentes.

Qué ocurre entre bastidores​

Antes de aplicar nada, se valida el paquete y se comprueban sus dependencias: cada formulario, vista y regla debe referirse a una tabla que esté en el mismo paquete o que ya exista en el entorno de destino. Después se crean las tablas dentro del área de datos aislada propia del entorno de destino, y allí se registran los formularios, las vistas y las reglas. Cada entorno conserva sus propios datos por separado, así que la solución importada empieza vacía en el entorno de destino.

La importación se puede repetir: si un componente ya existe en el destino (porque es el formulario o la vista integrados de una tabla estándar, o porque está importando otra vez la misma solución), se actualiza en su lugar en vez de provocar un error, de modo que una solución que añade un campo a una tabla estándar se importa sin problemas aunque esa tabla (y sus formularios y vistas predeterminados) ya exista.

Eso incluye los conjuntos de opciones. Un conjunto de opciones que ya está en el destino se pone al día con el importado: se actualizan las etiquetas y el orden, se añaden las opciones nuevas y se quitan las que el conjunto importado ya no tiene. Las opciones se emparejan por el valor que les asignó la plataforma, así que una opción con el nombre cambiado se actualiza en lugar de añadirse dos veces, y ningún registro ve cambiar por debajo el significado de su valor guardado. Hay dos situaciones que, en cambio, detienen la importación, porque ninguna se puede resolver sin perder datos: un conjunto de opciones que comparte nombre con uno que ya existe pero pertenece a un editor distinto, y la eliminación de una opción que todavía tienen registros.

Las importaciones se aplican de inmediato. Está prevista una puerta de aprobación por entorno para los entornos de nivel superior (Prueba, Producción) como parte de la futura canalización de implementación basada en flujos; no forma parte de la importación directa actual.

Una solución puede decir sobre qué está construida. Si su paquete nombra soluciones que necesita, la importación comprueba primero el entorno y la rechaza con «Importe … primero» — antes de escribir nada — cuando falta alguna o es demasiado antigua.

Si una importación falla a medias, no se conserva nada. Cuando es la primera vez que esta versión de la solución se importa aquí, todo lo que ya había creado — tablas, formularios, roles, aplicaciones — se vuelve a quitar, y la importación se marca como Fallida con el motivo. Corrija la causa e importe de nuevo. (Reimportar una versión ya instalada no se deshace, porque se llevaría también la copia que funciona.)

Importar una versión más reciente: una actualización​

Cuando el entorno ya tiene una versión anterior de la solución, importar una más reciente la sustituye. La versión anterior sale de la lista de soluciones, y el entorno queda como lo dejaría una instalación nueva de la nueva versión:

  • Todo lo que la nueva versión sigue trayendo se queda, registros incluidos, y ahora pertenece a la nueva versión.
  • Lo que la nueva versión ya no trae se quita, como lo quitaría una desinstalación. Un rol que eliminó se retira a las personas que lo tenían.

Si la versión anterior no se puede retirar, la importación se completa igualmente, la versión anterior sigue en la lista y el mensaje posterior a la importación lo indica. Vuelva a importar la nueva versión para reintentarlo. No desinstale la versión anterior: todavía le pertenecen partes de la nueva.

Cuando una solución amplía una tabla que ya tiene​

Algunas soluciones añaden campos a una tabla con la que se creó el entorno, como un código y un estado en Unidades. La importación añade esos campos y deja todo lo demás de la tabla como estaba, así que la tabla conserva sus campos, sus registros y su organigrama. La tabla sigue perteneciendo al entorno, no a la solución.

Desinstalar esa solución quita solo lo que añadió. La tabla se queda, con sus propios campos y registros.

Una solución puede hacer que una búsqueda existente apunte a otra tabla. Por ejemplo, el Responsable de una unidad podría apuntar a un puesto en lugar de a una persona. Los valores que apuntaban a la tabla antigua se borran, porque no significan nada para la nueva. Al desinstalar, la búsqueda vuelve a apuntar a la tabla original y se borran los valores que tenía.

Una solución no puede cambiar el tipo de datos de un campo, por ejemplo convertir un campo de texto en una búsqueda. La importación se detiene con un mensaje que nombra el campo, y no se cambia nada. El autor de la solución tiene que añadir un campo nuevo en su lugar.

Cuando una solución necesita otra​

Una solución puede basarse en la solución de otro editor: por ejemplo, una tabla Badge cuya columna Visitor busca en la tabla que trae la solución Visitors. Las dos pueden instalarse una junto a otra en un entorno, cada una con su propio editor, pero aquella en la que se basa la otra tiene que estar primero.

Por eso la importación comprueba cada búsqueda. Una columna que busca en una tabla que el paquete no lleva y que el entorno no tiene detiene la importación antes de escribir nada, y el mensaje nombra la columna y la tabla. Importe la solución que trae la tabla y después vuelva a importar esta.

Las exportaciones todavía no registran en qué soluciones se basa un paquete, así que esta comprobación, tabla por tabla, es lo que detecta una importación hecha en el orden equivocado.

Datos de inicialización: la configuración siempre, la demostración solo cuando se pide​

Los datos de inicialización son registros que un paquete trae consigo, y las filas de cada tabla son de uno de estos dos tipos:

  • Configuración: filas que la solución necesita para funcionar, como umbrales de aprobación. Se importan siempre, también en Producción.
  • Demostración: filas que sirven para mostrar la solución, como clientes inventados. Solo se importan cuando marca Incluir datos de demostración, y nunca en un entorno de Producción, donde quedarían mezcladas con sus propios registros sin nada que las distinguiera y se quedarían aunque se desinstalara la solución.

El mensaje posterior a la importación indica qué llegó y cuántas filas de demostración se omitieron. Consulte Distribuir datos de inicialización con una solución.

Solución de problemas​

  • «El paquete de solución no es válido». — el paquete no tiene el formato esperado. Vuelva a exportarlo desde el entorno de origen.
  • «field '…' references '…', which is neither in the package nor in this environment.» Una columna del paquete busca en una tabla, o toma sus valores de un conjunto de opciones, que el paquete no lleva y que este entorno no tiene. No se importó nada. Si otra solución lo trae, importe primero esa solución. Si pertenece a esta solución, agréguelo en el entorno desde el que exportó y vuelva a exportar.
  • «No se pueden importar datos de demostración en …, que es un entorno de Producción». Importe la solución sin ellos. Sus filas de configuración se importan igualmente.
  • La solución llegó, pero faltan sus registros de ejemplo. Se importó sin sus datos de demostración. Vuelva a importarla, en un entorno que no sea de Producción, con Incluir datos de demostración marcado.
  • «No se encontró el entorno de destino …» / «no está activo». — seleccione un entorno existente y Activo; espere a que un entorno recién creado termine de aprovisionarse.

Escenarios relacionados​

  • Exportar una solución.
  • Crear un entorno.