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

# Eine Delete-Schaltfläche zum Löschen von Datensätzen hinzufügen

> Fügen Sie einem Appian Record-Typ eine Delete-Schaltfläche hinzu, indem Sie ein Lösch-ProcessModel erstellen, es als zugehörige Aktion hinzufügen und es optional in der Übersichtsansicht deaktivieren.

Sie können einem Appian Record-Typ eine **Delete**-Schaltfläche hinzufügen, mit der Benutzer einen Datensatz und seine Anhänge löschen können.

<div id="create-a-processmodel">
  ## Ein ProcessModel erstellen
</div>

<Steps>
  <Step title="Ein neues ProcessModel erstellen">
    1. Öffnen Sie die ABBYYFlexiCapture-Anwendung in Appian Designer und klicken Sie auf **New → ProcessModel**.
    2. Füllen Sie im Dialogfeld, das sich öffnet, das Feld **Name** aus und geben Sie den Pfad zum Ordner an, in dem der Prozess gespeichert werden soll.
    3. Klicken Sie auf **Create & Edit**.
  </Step>

  <Step title="Nicht verwendete Knoten entfernen">
    Passen Sie die Prozesskonfiguration an, indem Sie auf der Registerkarte **Process Modeler** die folgenden Knoten löschen:

    * **Start Event**
    * **End Event**
    * **XOR**
    * **Delete Folder**
    * **Delete Document**
    * **Delete from Data Store Entities**

    <Note>
      Sie können einen Knoten auch per Doppelklick bearbeiten.
    </Note>
  </Step>

  <Step title="Ein Bestätigungs-Interface erstellen">
    1. Wechseln Sie zurück zu **Appian Designer**, um ein Dialogfeld hinzuzufügen, in dem der Benutzer das Löschen des Datensatzes bestätigen muss.
    2. Klicken Sie auf **New → Interface** und geben Sie einen Namen für das Interface an.
    3. Klicken Sie auf **Create & Edit**.
  </Step>

  <Step title="Den Bestätigungsausdruck hinzufügen">
    Wechseln Sie im Code Editor, der sich öffnet, von **Design View** zu **Expression View** und fügen Sie den folgenden Ausdruck ein:

    ```text theme={null}
    =a!formLayout(
        label: "Delete?",
        firstColumnContents: {
            a!paragraphField(
                labelPosition: "COLLAPSED",
                readOnly: true,
                value: "Submitting this form will delete your record and its attachments. The data will no longer exist or be visible in Tempo. After deletion, it is recommended to return to the records list, as this record will become unavailable."
            )
        },
        buttons: a!buttonLayout(
            primaryButtons: {
                a!buttonWidgetSubmit(
                    label: "Delete",
                    style: "PRIMARY"
                )
            },
            secondaryButtons: {
                a!buttonWidgetSubmit(
                    label: "Cancel",
                    style: "NORMAL",
                    value: true,
                    saveInto: ri!cancel,
                    skipValidation: true
                )
            }
        )
    )
    ```
  </Step>

  <Step title="Die Eingabevariable cancel hinzufügen">
    Fügen Sie im Dialogfeld **Interface Input** eine Variable `cancel` vom Typ **Boolean** hinzu.
  </Step>

  <Step title="Die ProcessModel-Variablen hinzufügen">
    1. Speichern Sie das Interface und kehren Sie zur Bearbeitung des Prozessmodells zurück.
    2. Klicken Sie auf **File → Properties** und fügen Sie auf der Registerkarte **Variables** die folgenden Variablen hinzu:
       * `recordId` vom Typ **Number** (Integer)
       * `DataStoreEntity` vom Typ **Data Store Entity** (eine Konstante, die den Data Store mit dem Datentyp verknüpft)
  </Step>

  <Step title="Das Bestätigungs-Interface anhängen">
    1. Öffnen Sie die Registerkarte **Process Start Form**, wählen Sie die Option **Select an interface** aus und fügen Sie das von Ihnen erstellte Interface hinzu, damit der Benutzer das Löschen eines Datensatzes bestätigen kann.
    2. Klicken Sie im Dialogfeld, das sich öffnet, auf **Yes**, um die Interface-Variablen in die Liste der Prozessvariablen zu importieren.

    Anschließend können Sie die hinzugefügten Variablen in den Prozessknoten verwenden:

    | Knoten                              | Beschreibung                                                                                                                                                                                                                                                                                                 |
    | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
    | **Cancel (XOR)**                    | Leitet den Ablauf basierend auf der Auswahl des Benutzers weiter. Wenn der Benutzer auf **Cancel** klickt, geht der Ablauf zum Knoten **End Event**; andernfalls zum Knoten **Delete Doc?**.                                                                                                                 |
    | **Delete Doc?**                     | Prüft mithilfe der Bedingung `=length(folder(pv!recordId, "documentChildren")) > 0;`, ob der mit dem zu löschenden Datensatz verknüpfte Ordner Dokumente enthält. Wenn der Ordner leer ist, wird er gelöscht. Andernfalls werden zuerst die Dokumente im Ordner und anschließend der Ordner selbst gelöscht. |
    | **Delete Document**                 | Löscht alle Dokumente, die er als Eingabe erhält. Die Methode `folder` gibt mit dem Parameter `documentChildren` die Liste der Dokumente zurück: `=folder(pv!recordId, "documentChildren")`.                                                                                                                 |
    | **Delete Folder**                   | Löscht einen Ordner anhand seines Bezeichners: `=pv!recordId`.                                                                                                                                                                                                                                               |
    | **Delete from Data Store Entities** | Löscht Datensätze aus dem Data Store. Der Knoten erhält die Konstante, die den Data Store, den Datentyp (vom benutzerdefinierten Typ Table) und die Datensatz-ID verknüpft: `={{entity: pv!DataStoreEntity, identifiers: pv!recordId}}`.                                                                     |
  </Step>

  <Step title="Den Prozess speichern und veröffentlichen">
    Nachdem Sie die Prozesskonfiguration abgeschlossen haben, klicken Sie auf **File → Save & Publish** oder drücken Sie **Ctrl+Alt+S**.
  </Step>
</Steps>

<div id="add-the-process-model-to-a-record-type">
  ## Fügen Sie das Prozessmodell einem Record-Typ hinzu
</div>

Fügen Sie den Prozess als zugehörige Aktion zum Record-Typ hinzu.

<Steps>
  <Step title="Öffnen Sie den Record-Typ">
    Öffnen Sie in Appian Designer **Record Type**.
  </Step>

  <Step title="Erstellen Sie eine zugehörige Aktion">
    1. Klicken Sie im daraufhin geöffneten Dialogfeld auf **New Related Action**.
    2. Füllen Sie das Feld **ProcessModel** aus (geben Sie den Namen des Prozesses ein, den Sie erstellt haben).
    3. Geben Sie die Eingabevariablen des Prozesses an:
       * Für **Credit Card Application**: `Constant_CreditApplication_DSE`
       * Für **Account Payable Records**: `Constant_invoiceProcessing_DSE`
  </Step>

  <Step title="Fügen Sie die zugehörige Aktion zur Datensatzansicht hinzu">
    Fügen Sie die neue zugehörige Aktion zur entsprechenden **View Record Type** hinzu.
  </Step>
</Steps>

Wenn Sie nun Datensätze auf der Registerkarte **Zusammenfassung** in Tempo anzeigen, wird oben die Schaltfläche **Delete** angezeigt. Wenn auf diese Schaltfläche geklickt wird, erscheint ein Bestätigungsdialogfeld mit der Frage, ob der Datensatz wirklich gelöscht werden soll. Wenn Sie in diesem Dialogfeld auf **Yes** klicken, wird der Datensatz gelöscht.

<Note>
  Um zu bestätigen, dass der Datensatz vollständig gelöscht wurde, muss das Browserfenster aktualisiert werden.
</Note>

<div id="disable-the-delete-action-in-the-summary-view">
  ## Die Delete-Aktion in der Übersichtsansicht deaktivieren
</div>

Um die Schaltfläche zum Löschen für den Benutzer auszublenden, deaktivieren Sie die Aktion **Delete** in den Eigenschaften der **Übersichtsansicht**.

<Steps>
  <Step title="Die Anwendung öffnen">
    Öffnen Sie die ABBYYFlexiCapture-Anwendung im Appian Designer.
  </Step>

  <Step title="Den Record-Typ öffnen">
    Öffnen Sie den Record-Typ, den Sie ändern möchten.
  </Step>

  <Step title="Die Verknüpfung für die zugehörige Aktion deaktivieren">
    Klicken Sie im Dialogfeld auf **Übersichtsansicht** und deaktivieren Sie die Option **Related Action Shortcuts** neben der Aktion **Delete**.
  </Step>

  <Step title="Die Änderungen speichern">
    Klicken Sie auf **OK** und speichern Sie die Änderungen am Record-Typ.
  </Step>
</Steps>

Wenn Datensätze jetzt in Tempo angezeigt werden, wird die Schaltfläche **Delete** nicht mehr angezeigt.
