> ## 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.

# Aktivitäten in Maintain importieren

> Erfahren Sie, wie Sie Aktivitäten über die Benutzeroberfläche (APM-Modus), das Cognite Toolkit oder Transformationen importieren können.

Maintain unterstützt drei Methoden zum Importieren von Aktivitäten:

* **CSV-Upload**: Aktivitäten über die Benutzeroberfläche importieren (nur APM-Modus).
* **Cognite Toolkit**: Aktivitäten über [Cognite Toolkit](/cdf/deploy/cdf_toolkit/) Datenmodellierung (APM- und IDM/CDM-Modus) ingestieren.
* **Transformationen**: Daten aus RAW-Tabellen oder anderen Quellen mit [CDF-Transformationen](/cdf/integration/) (APM- und IDM/CDM-Modus) konvertieren.

## Import über CSV-Upload (APM-Modus)

<Info>
  **Modusverfügbarkeit**: Nur APM-Modus. Der IDM/CDM-Modus unterstützt keinen CSV-Import über die Benutzeroberfläche.
</Info>

Über CSV importierte Aktivitäten können visualisiert und geändert werden wie Aktivitäten, die in Maintain erstellt wurden.

<Steps>
  <Step title="Laden Sie die CSV-Datei-Vorlage herunter">
    Die importierte CSV-Datei muss Ihrem projektspezifischen Template entsprechen. Um **maintain-import-template.csv** herunterzuladen:

    1. Navigieren Sie zu **Aktivitäten** und wählen Sie **Aktivität hinzufügen** aus.
    2. Wählen Sie **Aktivitäten importieren** aus.
    3. Wählen Sie **Template herunterladen** aus.
  </Step>

  <Step title="Füllen Sie die CSV-Datei-Vorlage aus">
    Die CSV-Vorlage enthält nur eine einzige Zeile von Werten, die die möglichen Werte darstellen, die Sie für eine importierte Aktivität angeben können. Diese Zeile wird als Kopfzeile bezeichnet und sollte beim Ausfüllen der Vorlage nicht entfernt werden.

    <Tip>
      Während die Kopfzeile **row** nicht entfernt werden darf, können spezifische Werte aus der Kopfzeile entfernt oder die Reihenfolge der Werte geändert werden. Wenn ein bestimmtes Feld in einem bestimmten Szenario nicht relevant ist, können Sie es aus der Kopfzeile und den nachfolgenden Zeilen entfernen. Dies führt dazu, dass das Feld bei allen importierten Aktivitäten leer bleibt.
    </Tip>

    Um eine einzelne Aktivität zu importieren, fügen Sie der Vorlage eine neue Zeile hinzu und geben Sie die entsprechenden Werte durch Kommas getrennt ein. Jeder Wert in der neuen Zeile sollte den Wert enthalten, den Sie in der entsprechenden Kopfzeile, die in der Vorlage bereitgestellt wurde, einfüllen möchten.
    Wenn Ihre Vorlage die folgende Kopfzeile enthält: `title,status,department`, erstellen Sie eine CSV-Datei mit einer zusätzlichen Zeile:

    ```
    title,status,department
    Gerüst aufstellen,Erledigt,Montage
    ```

    Sie erstellen eine Aktivität mit dem Titel "Gerüst aufstellen", dem Status "Erledigt" und der Abteilung "Montage", wenn sie importiert wird.

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

    ### Datumsfelder formatieren

    Einige Aktivitätsfelder in **Maintain** stellen Daten dar und müssen ein bestimmtes Format haben, um korrekt importiert zu werden. Datumsfelder können in der CSV-Vorlage durch einen speziellen Kopfzeilenwert in der Form `startTime (DD/MM/YYYY)` identifiziert werden. In diesem Beispiel ist `startTime` der Name des Feldes, während `DD/MM/YYYY` das Datumsformat ist, das in den nachfolgenden Zeilen der CSV-Datei verwendet werden muss.
    Wenn Sie beispielsweise die folgende Datei importieren, wird die Aktivität mit `startTime` auf den 10. Dezember 2023 gesetzt.

    ```
    title,startTime (DD/MM/YYYY)
    Gerüst aufstellen,10/12/2023
    ```

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

    ### Boolean-Felder formatieren

    Einige Aktivitätsfelder in **Maintain** stellen boolesche Werte dar, wie `true` oder `false`. Boolesche Felder können in der CSV-Vorlage durch einen speziellen Kopfzeilenwert in der Form `isActive (true/false)` identifiziert werden. Diese Felder haben nur zwei gültige Werte, `true` oder `false`.
    Wenn Sie beispielsweise die folgende Datei importieren, wird die Aktivität mit `isActive` auf `false` gesetzt.

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

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

    ### Formatieren Sie Werte, die Kommas enthalten

    Aufgrund des CSV-Formats, das Werte mit Kommas trennt, seien Sie vorsichtig, wenn ein Aktivitätsfeld ebenfalls ein Komma enthalten muss. **Wartung** verarbeitet CSV-Dateien gemäß dem [RFC 4180 Standard](https://www.rfc-editor.org/rfc/rfc4180), der erfordert, dass Werte, die Kommas enthalten, in doppelte Anführungszeichen gesetzt werden.
    Wenn Sie beispielsweise die folgende Datei importieren, wird die Aktivität mit `Stadt` auf `Boston, MA` gesetzt.

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

    <a id="unset-values" />

    ### Nicht gesetzte Werte

    Sie können das Feld bei nicht erforderlichen Aktivitätsfeldern leer lassen, um fehlende oder irrelevante Werte für die spezifische Aktivität darzustellen.
    Wenn Sie beispielsweise die folgende Datei importieren, wird die Aktivität mit `Bundesstaat` auf `New York` gesetzt, aber es wird kein Wert im Feld `Stadt` vorhanden sein.

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

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

    ### Eine Aktivität mit einem Asset verbinden

    **Wartung** unterstützt das Verknüpfen von Aktivitäten mit CDF-Assets, die verwendet werden, um die Aktivität in 3D-Modellen, Dokumenten, PSN und mehr zu kontextualisieren. Damit **Wartung** die entsprechende Verknüpfung zu einem Asset in CDF erstellen kann, müssen Sie die externe ID des CDF-Assets im Import-Template angeben.
    Wenn Sie eine Asset-Kontextualisierung in Ihrem Projekt haben, gibt es ein spezielles `assetExternalId` Feld im Template, das Sie mit der externen ID des Assets der Aktivität ausfüllen müssen.
    Wenn Sie beispielsweise die folgende Datei importieren und davon ausgehen, dass ein CDF-Asset mit der externen ID `NY_BUILDING_23` existiert, wird die Aktivität beim Import in Wartung mit diesem Asset kontextualisiert.

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

    Wenn die angegebene externe ID nicht exportiert wird, sieht der Benutzer während des Imports einen Fehler.

    <Tip>
      Endbenutzer wissen möglicherweise nicht, welche externe ID das Asset hat, mit dem die Aktivität verknüpft ist. Wenn es notwendig ist, Endbenutzern eine Liste der möglichen Assets und deren externe IDs zur Verfügung zu stellen, empfehlen wir, diese Daten über die [Asset-API](/api-reference/concepts/20230101/assets) von CDF oder andere Datenextraktoren abzurufen.
    </Tip>
  </Step>

  <Step title="Importieren Sie eine ausgefüllte CSV-Datei">
    Sobald Sie ein ausgefülltes CSV-Template haben, können Sie es in **Wartung** importieren:

    1. Navigieren Sie zu **Aktivitäten** > **Aktivität hinzufügen**.
    2. Wählen Sie **Aktivitäten importieren** aus.
    3. Wählen Sie das **CSV-Datei zum Importieren auswählen** Feld aus.
    4. Wählen Sie die ausgefüllte CSV-Datei von Ihrem Computer aus und laden Sie sie hoch.
    5. Überprüfen Sie, ob Sie die Datei importiert haben, indem Sie den Abschnitt **Dateiinspektor** überprüfen. Eine grüne Nachricht sollte die Anzahl der zu importierenden Zeilen sowie eventuelle Warnungen oder Fehler anzeigen.
    6. Wenn keine Fehler vorliegen, wählen Sie **Importieren**, um den Importprozess zu starten.
    7. Wenn der Import erfolgreich ist, sehen Sie eine grüne Erfolgsmeldung mit der Schaltfläche **Aktivitäten anzeigen**.
    8. Optional. Wählen Sie **Aktivitäten anzeigen**, um zu den importierten Aktivitäten zu navigieren und zu überprüfen, ob sie gemäß der CSV-Datei korrekt aussehen.
  </Step>
</Steps>

## Import über das Cognite Toolkit

<Info>
  **Modusverfügbarkeit**: APM- und IDM/CDM-Modi. Dies ist der empfohlene Ansatz für die programmgesteuerte Aktivitätsaufnahme.
</Info>

Verwenden Sie das [Cognite Toolkit](/cdf/deploy/cdf_toolkit/), um Aktivitäten über die Datenmodellierungsfunktionen von CDF aufzunehmen. Diese Methode funktioniert für beide Bereitstellungsmodi und bietet Versionskontrolle sowie reproduzierbare Bereitstellungen.

### Voraussetzungen

Bevor Sie Aktivitäten über das Cognite Toolkit importieren, stellen Sie sicher, dass Sie Folgendes haben:

* Eine benutzerdefinierte Aktivitätsansicht, die in Ihrem Datenmodellraum konfiguriert ist (oder verwenden Sie die Standardansicht `CogniteMaintenanceOrder` von `cdf_idm`)
* Die Aktivitätsansicht, die in Ihrer Maintain-Konfiguration unter `viewMappings` zugeordnet ist.
* Zugriff auf das [Cognite Toolkit](/cdf/deploy/cdf_toolkit/)

### Konfigurieren Sie die Zuordnung der Aktivitätsansicht

Überprüfen Sie in Ihrer Maintain-Konfiguration, ob der Abschnitt `viewMappings` auf Ihre Aktivitätsansicht verweist:

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

Wenn Sie eine benutzerdefinierte Aktivitätsansicht erstellt haben (zum Beispiel `APM_Activity` oder `ExtendedActivity`), aktualisieren Sie die Zuordnung, um auf Ihre benutzerdefinierte Ansicht zu verweisen:

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

Erfahren Sie mehr über [die Erweiterung von Datenmodellen](/cdf/maintain/guides/config#extend-data-models) und [die Konfiguration von Ansichtszuordnungen](/cdf/maintain/guides/config#view-mappings).

### Aktivitäten mit dem Cognite Toolkit erfassen

Verwenden Sie das [Cognite Toolkit](/cdf/deploy/cdf_toolkit/) als empfohlene Methode zur Erfassung von Aktivitäten im IDM-Modus.

<Steps>
  <Step title="Erstellen Sie die Datenstruktur für die Aktivitäten">
    Wenn Sie dies noch nicht getan haben, erstellen Sie Container-, Ansicht- und Knoten-YAML-Dateien für Ihre Aktivitäten. Befolgen Sie die standardmäßige Datenmodellierungsstruktur:

    * `APM_Activity.Container.yaml` - Definiert das Container-Schema
    * `APM_Activity.View.yaml` - Definiert die Eigenschaften und Beziehungen der Ansicht
    * `apmActivities.Node.yaml` - Enthält Ihre Aktivitätsinstanzen
      Siehe die [Cognite Toolkit-Dokumentation](/cdf/deploy/cdf_toolkit/) für detaillierte Beispiele und Vorlagen.
  </Step>

  <Step title="Konfigurieren Sie die Feldzuordnungen">
    Stellen Sie sicher, dass Ihre Aktivitätsknoten die erforderlichen Felder für die Wartung enthalten:

    | Feld              | Beschreibung                                                            | Erforderlich |
    | ----------------- | ----------------------------------------------------------------------- | ------------ |
    | `externalId`      | Eindeutiger Identifikator für die Aktivität                             | Ja           |
    | `title`           | Titel der Aktivität                                                     | Ja           |
    | `status`          | Status der Aktivität (zum Beispiel "Offen", "In Bearbeitung", "Fertig") | Empfohlen    |
    | `startTime`       | Startdatum/-uhrzeit                                                     | Empfohlen    |
    | `endTime`         | Enddatum/-uhrzeit                                                       | Empfohlen    |
    | `rootLocation`    | Identifikator des Stammstandorts                                        | Empfohlen    |
    | `assetExternalId` | Externe ID des verknüpften Assets                                       | Optional     |
    | `mainAsset`       | Direkte Beziehung zum Asset                                             | Optional     |

    <Tip>
      Fügen Sie zusätzliche Felder basierend auf Ihren [Feldkonfiguration](/cdf/maintain/guides/config#field-configuration) Einstellungen in der Wartung hinzu.
    </Tip>
  </Step>

  <Step title="Setzen Sie die Aktivitäten um">
    Stellen Sie Ihre Aktivitätsdaten mit dem Cognite Toolkit bereit:

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

    Verwenden Sie das `--drop-data` Flag, wenn Sie vorhandene Aktivitäten ersetzen müssen:

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

    Erfahren Sie mehr über die [Cognite Toolkit-Bereitstellungsflags](/cdf/maintain/guides/config#critical-deployment-flags).
  </Step>

  <Step title="Überprüfen Sie in der Wartung">
    1. Melden Sie sich bei [Maintain](https://maintain.cogniteapp.com) an. 2. Navigieren Sie zu **Activities**. 3. Überprüfen Sie, ob Ihre importierten Aktivitäten mit den korrekten Daten angezeigt werden.
  </Step>
</Steps>

### Aktivitäten mit Transformationen erfassen

<Info>
  **Modusverfügbarkeit**: APM- und IDM/CDM-Modi. Dies ist der empfohlene Ansatz für Massendaten.
</Info>

Alternativ können Sie [CDF-Transformationen](/cdf/integration/) verwenden, um Daten aus RAW-Tabellen oder anderen Quellen in Aktivitätsknoten zu konvertieren.

### Problembehandlung

Wenn Sie nach der Erfassung Probleme mit Aktivitäten haben, sehen Sie sich die Tabelle für Ursachen und Lösungen an.

| Problem                    | Lösung                                                                                                                              |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Aktivitäten nicht sichtbar | Überprüfen Sie, ob die `viewMappings`-Konfiguration auf den richtigen Raum, die richtige Ansicht und die richtige Version verweist. |
| Fehlende Felder            | Stellen Sie sicher, dass Ihre Feldkonfiguration alle Felder umfasst, die Sie erfassen.                                              |
| Asset-Links defekt         | Stellen Sie sicher, dass `assetExternalId` oder `mainAsset`-Beziehungen auf vorhandene Assets verweisen.                            |
| Falscher Stammstandort     | Überprüfen Sie, ob `rootLocation` mit Ihrer Standortkonfiguration übereinstimmt.                                                    |
