> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cognite.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Importar actividades en Mantener

> Aprenda a importar actividades utilizando la interfaz de usuario (modo APM), Cognite Toolkit o Transformaciones.

Mantener admite tres métodos para importar actividades:

* **Subida de CSV**: Importar actividades utilizando la interfaz de usuario (solo modo APM).
* **Cognite Toolkit**: Ingestar actividades utilizando [Cognite Toolkit](/cdf/deploy/cdf_toolkit/) para modelado de datos (modos APM e IDM/CDM).
* **Transformaciones**: Convertir datos de tablas RAW u otras fuentes utilizando [Transformaciones CDF](/cdf/integration/) (modos APM e IDM/CDM).

## Importar a través de subida de CSV (modo APM)

<Info>
  **Disponibilidad del modo**: Solo modo APM. El modo IDM/CDM no admite la importación de CSV en la interfaz de usuario.
</Info>

Las actividades importadas a través de CSV pueden ser visualizadas y modificadas como actividades creadas en Mantener.

<Steps>
  <Step title="Descargue la plantilla del archivo CSV">
    El archivo CSV importado debe ajustarse a la plantilla específica de su proyecto. Para descargar **plantilla-importar-mantener.csv**:

    1. Navegue a **Actividades** y seleccione **Añadir actividad**.
    2. Seleccione **Importar actividades**.
    3. Seleccione **Descargar plantilla**.
  </Step>

  <Step title="Complete la plantilla del archivo CSV">
    La plantilla CSV solo contendrá una única fila de valores que representan los posibles valores que puede proporcionar para una actividad importada. Esta fila se llama la fila de encabezado y no debe ser eliminada al completar la plantilla.

    <Tip>
      Aunque la fila **encabezado** no debe ser eliminada, puedes eliminar valores específicos del encabezado o cambiar el orden de los valores. Por ejemplo, si un campo determinado no es relevante para importar en un escenario específico, puedes eliminarlo del encabezado y de las filas subsiguientes. Esto resultará en que el campo quede en blanco en todas las actividades importadas.
    </Tip>

    Para importar una sola actividad, añade una nueva fila a la plantilla e ingresa los valores apropiados separados por comas. Cada valor en la nueva fila debe contener el valor que deseas completar en la respectiva fila de encabezado que fue proporcionada en la plantilla.
    Por ejemplo, si tu plantilla contiene la siguiente fila de encabezado: `título,estado,departamento`, crea un archivo CSV con una fila adicional:

    ```
    title,status,department
    Erect scaffolding,Done,Rigging
    ```

    Crearás una actividad con el título "Montar andamios", estado "Hecho" y departamento "Montaje" al importarla.

    <a id="format-date-fields" />

    ### Formatear campos de fecha

    Algunos campos de actividad en **Mantener** representan fechas y deben tener un formato específico para ser importados correctamente. Los campos de fecha pueden ser identificados en la plantilla CSV por un valor de encabezado especial en la forma `horaInicio (DD/MM/YYYY)`. En este ejemplo, `horaInicio` es el nombre del campo, mientras que `DD/MM/YYYY` es el formato de fecha que debe usarse en las filas subsiguientes del archivo CSV.
    Por ejemplo, importar el siguiente archivo resultará en que la actividad sea creada con `horaInicio` establecido en el 10 de diciembre de 2023.

    ```
    title,startTime (DD/MM/YYYY)
    Erect scaffolding,10/12/2023
    ```

    <a id="format-boolean-fields" />

    ### Formatear campos booleanos

    Algunos campos de actividad en **Mantener** representan valores booleanos, como `verdadero` o `falso`. Los campos booleanos pueden ser identificados en la plantilla CSV por un valor de encabezado especial en la forma `esActivo (verdadero/falso)`. Estos campos solo tienen dos valores válidos, `verdadero` o `falso`.
    Por ejemplo, importar el siguiente archivo resultará en que la actividad sea creada con `esActivo` establecido en `falso`.

    ```
    title,isActive (true/false)
    Erect scaffolding,false
    ```

    <a id="format-values-containing-commas" />

    ### Formatear valores que contengan comas

    Debido al formato CSV que separa los valores utilizando comas, tenga cuidado cuando un campo de actividad también necesite contener una coma. **Mantener** procesos de archivos CSV de acuerdo con el [estándar RFC 4180](https://www.rfc-editor.org/rfc/rfc4180), que requiere que los valores que contienen comas estén entre comillas dobles.
    Por ejemplo, importar el siguiente archivo resultará en que la actividad se cree con `ciudad` establecida en `Boston, MA`.

    ```
    title,city
    Erect scaffolding,"Boston, MA"
    ```

    <a id="unset-values" />

    ### Valores no establecidos

    Puede dejar el campo en blanco en los campos de actividad no requeridos para representar valores faltantes o irrelevantes para la actividad específica.
    Por ejemplo, importar el siguiente archivo resultará en que la actividad se cree con `estado` establecido en `New York`, pero no tendrá valor en el campo `ciudad`.

    ```
    title,city,state
    Erect scaffolding,New York
    ```

    <a id="connect-an-activity-to-an-asset" />

    ### Conectar una actividad a un activo

    **Mantener** admite la vinculación de actividades a activos CDF, que se utiliza para contextualizar la actividad en modelos 3D, documentos, PSN y más. Para que **Mantener** cree el enlace apropiado a un activo en CDF, debe proporcionar el ID externo del activo CDF en la plantilla de importación.
    Si tiene contextualización de activos en su proyecto, habrá un campo especial `assetExternalId` en la plantilla que necesita completar con el ID externo del activo de la actividad.
    Por ejemplo, al importar el siguiente archivo y suponiendo que existe un activo CDF con ID externo `NY_BUILDING_23`, la actividad se contextualizará a este activo cuando se ingrese en Mantener.

    ```
    title,assetExternalId
    Erect scaffolding,NY_BUILDING_23
    ```

    Si el ID externo proporcionado no se exporta, el usuario verá un error durante la importación.

    <Tip>
      Los usuarios finales pueden no conocer el ID externo del activo al que está vinculada la actividad. Si es necesario proporcionar a los usuarios finales una lista de los activos posibles y sus IDs externos, recomendamos recuperar estos datos utilizando la [API de activos](/api-reference/concepts/20230101/assets) de CDF u otros extractores de datos.
    </Tip>
  </Step>

  <Step title="Importe un archivo CSV completado">
    Una vez que tenga una plantilla CSV poblada, puede importarla en **Mantener**:

    1. Navega a **Actividades** > **Añadir actividad**.
    2. Seleccione **Importar actividades**.
    3. Selecciona el campo **Haz clic para seleccionar el archivo CSV a importar**.
    4. Selecciona y sube el archivo CSV poblado desde tu computadora.
    5. Verifica que has importado el archivo revisando la sección **Inspector de archivos**. Un mensaje verde debería mostrar el número de filas a importar y si tienes advertencias o errores.
    6. Si no hay errores, selecciona **Importar** para iniciar el proceso de importación.
    7. Cuando la importación tenga éxito, verás un mensaje de éxito en verde con el botón **Mostrar actividades**.
    8. Opcional. Selecciona **Mostrar actividades** para navegar a las actividades importadas y verificar que se vean correctas según el archivo CSV.
  </Step>
</Steps>

## Importar a través de Cognite Toolkit

<Info>
  **Disponibilidad del modo**: Modos APM e IDM/CDM. Este es el enfoque recomendado para la ingestión programática de actividades.
</Info>

Utiliza el [Toolkit de Cognite](/cdf/deploy/cdf_toolkit/) para ingerir actividades a través de las capacidades de modelado de datos de CDF. Este método funciona para ambos modos de implementación y proporciona control de versiones y implementaciones reproducibles.

### Requisitos previos

Antes de importar actividades a través del Toolkit de Cognite, asegúrate de tener:

* Una vista de actividad personalizada configurada en tu espacio de modelo de datos (o utiliza la vista estándar `Orden de mantenimiento de Cognite` de `cdf_idm`)
* La vista de actividad mapeada en tu configuración de Mantenimiento bajo `mapeosDeVista`
* Acceso al [Toolkit de Cognite](/cdf/deploy/cdf_toolkit/)

### Configura el mapeo de la vista de actividad

En tu configuración de Mantenimiento, verifica que la sección `mapeosDeVista` apunte a tu vista de actividad:

```json theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
"viewMappings": {
  "activity": {
    "type": "view",
    "space": "cdf_idm",
    "version": "v1",
    "externalId": "CogniteMaintenanceOrder"
  }
}
```

Si has creado una vista de actividad personalizada (por ejemplo, `APM_Activity` o `ExtendedActivity`), actualiza el mapeo para que apunte a tu vista personalizada:

```json theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
"viewMappings": {
  "activity": {
    "type": "view",
    "space": "maintain_schema_extention",
    "version": "v1",
    "externalId": "APM_Activity"
  }
}
```

Aprende más sobre [extender modelos de datos](/cdf/maintain/guides/config#extend-data-models) y [configurar mapeos de vista](/cdf/maintain/guides/config#view-mappings).

### Ingesta actividades con el Cognite Toolkit

Utiliza el [Cognite Toolkit](/cdf/deploy/cdf_toolkit/) como el enfoque recomendado para la ingesta de actividades en modo IDM.

<Steps>
  <Step title="Cree la estructura de datos de la actividad">
    Si aún no lo has hecho, crea archivos YAML de Contenedor, Vista y Nodo para tus actividades. Sigue la estructura estándar de modelado de datos:

    * `APM_Activity.Container.yaml` — Define el esquema del contenedor
    * `APM_Activity.View.yaml` — Define las propiedades y relaciones de la vista
    * `apmActivities.Node.yaml` — Contiene tus instancias de actividad
      Consulta la [Cognite Toolkit documentation](/cdf/deploy/cdf_toolkit/) para ejemplos y plantillas detalladas.
  </Step>

  <Step title="Configure los mapeos de campos">
    Asegúrate de que tus nodos de actividad incluyan los campos requeridos para Mantener:

    | Campo             | Descripción                                                             | Requerido   |
    | ----------------- | ----------------------------------------------------------------------- | ----------- |
    | `externalId`      | Identificador único para la actividad                                   | Sí          |
    | `title`           | Título de la actividad                                                  | Sí          |
    | `status`          | Estado de la actividad (por ejemplo, "Abierto", "En Progreso", "Hecho") | Recomendado |
    | `startTime`       | Fecha/hora de inicio                                                    | Recomendado |
    | `endTime`         | Fecha/hora de finalización                                              | Recomendado |
    | `rootLocation`    | Identificador de ubicación raíz                                         | Recomendado |
    | `assetExternalId` | ID externo del activo vinculado                                         | Opcional    |
    | `mainAsset`       | Relación directa con el activo                                          | Opcional    |

    <Tip>
      Incluye campos adicionales según tu [Configuración de Campo](/cdf/maintain/guides/config#field-configuration) en Mantener.
    </Tip>
  </Step>

  <Step title="Despliegue las actividades">
    Despliega tus datos de actividad utilizando Cognite Toolkit:

    ```bash theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
    cdf deploy --env dev
    ```

    Utiliza la bandera `--drop-data` si necesitas reemplazar actividades existentes:

    ```bash theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
    cdf deploy --env dev --drop-data
    ```

    Aprenda más sobre las [banderas de implementación del Toolkit de Cognite](/cdf/maintain/guides/config#critical-deployment-flags).
  </Step>

  <Step title="Verifique en Maintain">
    1. Inicie sesión en [Mantener](https://maintain.cogniteapp.com). 2. Navegue a **Actividades**. 3. Verifique que sus actividades importadas aparezcan con los datos correctos.
  </Step>
</Steps>

### Ingesta de actividades con Transformaciones

<Info>
  **Disponibilidad del modo**: Modos APM e IDM/CDM. Este es el enfoque recomendado para datos en masa.
</Info>

Alternativamente, puede usar [Transformaciones CDF](/cdf/integration/) para convertir datos de tablas RAW u otras fuentes en nodos de actividad.

### Solución de problemas

Si encuentra problemas con las actividades después de la ingestión, consulte la tabla para causas y soluciones.

| Problema                  | Solución                                                                                      |
| ------------------------- | --------------------------------------------------------------------------------------------- |
| Actividades no visibles   | Verifique que la configuración de `viewMappings` apunte al espacio, vista y versión correctos |
| Campos faltantes          | Asegúrese de que su Configuración de Campos incluya todos los campos que está ingiriendo      |
| Enlaces de activos rotos  | Asegúrese de que las relaciones `assetExternalId` o `mainAsset` apunten a activos existentes  |
| Ubicación raíz incorrecta | Verifique que `rootLocation` coincida con su configuración de ubicación                       |
