# Belege aus anderen Extensions archivieren

## Überblick

Freeze archiviert Belege automatisch an festen Stellen in Business Central: beim Buchen, beim Löschen eines Belegs und beim E-Mail-Versand über das BC-E-Mail-Modul. Viele Kunden nutzen zusätzlich andere Extensions, die Belege drucken, per E-Mail versenden oder als E-Rechnung ausgeben. Diese Extensions nutzen oft eigene Wege, an denen Freeze nicht automatisch mitarbeitet.

Diese Seite zeigt Partnern, wie sie solche Belege trotzdem in Freeze archivieren. Oft reicht dafür eine Einstellung in Freeze. Wenn nicht, schreiben Sie eine kleine eigene Extension, die die Belege an Freeze übergibt. Eine Änderung an Freeze ist in keinem Fall nötig.

<p class="callout info">Der Grundgedanke ist einfach: Jede Archivierung in Freeze beginnt mit einem Eintrag in den **Freeze Warteschlangeneinträgen**. Den Upload ins Archiv, Wiederholungsversuche und die Prüfung übernimmt danach der Freeze-Job. Ihre Extension muss also nur einen solchen Eintrag anlegen.</p>

## Vorher prüfen: Ist eine zusätzliche Archivierung nötig?

Wenn in der **Freeze Einrichtung** die Optionen **Nach Buchung archivieren** und **Ausgehende Belege archivieren** aktiv sind, archiviert Freeze beim Buchen bereits ein PDF des Belegs. Freeze erzeugt dieses PDF über die Berichtsauswahl.

Klären Sie deshalb mit dem Kunden, was genau fehlt. Typische Lücken sind:

- Der Beleg sieht anders aus als das Freeze-PDF, z. B. wegen eines eigenen Layouts oder Briefpapiers.
- Der E-Mail-Text oder zusätzliche Anhänge der versendeten E-Mail fehlen.
- Es geht um Belege ohne Buchung, z. B. Mahnungen, Kontoauszüge oder Angebote.

## Die einfachste Möglichkeit: Anhänge des Belegs

Viele Extensions legen das ausgegebene Dokument als Anhang an den Beleg, z. B. an den Auftrag oder an die gebuchte Rechnung. Technisch ist das ein Datensatz in der Tabelle `Document Attachment`. Benutzer sehen ihn bei den Anhängen des Belegs. Für diesen Fall brauchen Sie keine eigene Extension.

Schalten Sie in der **Freeze Einrichtung** die Option **Anhänge archivieren** ein. Dann nimmt Freeze jedes Mal, wenn es einen Beleg archiviert, alle Anhänge dieses Belegs mit. Das passiert:

- beim Buchen, wenn **Nach Buchung archivieren** für Einkauf bzw. Verkauf aktiv ist,
- beim Löschen eines nicht gebuchten Einkaufs- oder Verkaufsbelegs, wenn **Beim Löschen archivieren** aktiv ist,
- wenn ein Benutzer auf dem Beleg die Aktion **Jetzt archivieren** ausführt,
- wenn ein Benutzer in der Archivsuche die Aktion **Neuen Datensatz archivieren** ausführt.

Das gilt für Einkaufs- und Verkaufsbelege, offen und gebucht (z. B. Rechnungen, Gutschriften, Lieferungen und Rücksendungen), sowie für Debitoren, Kreditoren und Artikel.

<p class="callout warning">**Entscheidend ist der Zeitpunkt.** Freeze nimmt nur die Anhänge mit, die in diesem Moment schon am Beleg hängen. Anhänge, die erst später dazukommen, archiviert Freeze nicht von selbst.</p>

<table id="bkmrk-die-andere-extension"><thead><tr><th>Die andere Extension hängt ihr Dokument an …</th><th>Ergebnis</th></tr></thead><tbody><tr><td>… den Auftrag oder die Rechnung, bevor gebucht wird</td><td>Business Central überträgt die Anhänge beim Buchen auf den gebuchten Beleg. Freeze archiviert sie dabei automatisch mit. Es ist nichts weiter zu tun.</td></tr><tr><td>… den gebuchten Beleg, aber erst später, z. B. beim Versand</td><td>Freeze archiviert das Dokument nicht automatisch. Benutzer können danach auf dem gebuchten Beleg **Jetzt archivieren** ausführen. Freeze legt dann eine neue Version der vorhandenen Mappe an, mit dem Beleg-PDF und allen aktuellen Anhängen. Soll das automatisch geschehen, nutzen Sie Möglichkeit 1 oder 2 weiter unten.</td></tr></tbody></table>

**So testen Sie es:** Buchen Sie einen Testbeleg, an dem die andere Extension ihr Dokument angehängt hat. Warten Sie auf den Freeze-Job und öffnen Sie dann die Archivsuche des gebuchten Belegs. Das Dokument der anderen Extension muss unter den Anhängen der Mappe stehen.

## Weitere Möglichkeiten im Überblick

Reichen die Anhänge nicht aus, z. B. weil die andere Extension ihr Dokument gar nicht oder erst nach dem Buchen anhängt, gibt es diese Möglichkeiten:

<table id="bkmrk-m%C3%B6glichkeitso-funkti"><thead><tr><th>Möglichkeit</th><th>So funktioniert es</th><th>Gut geeignet, wenn …</th></tr></thead><tbody><tr><td>**1. Direkt beim Ausgeben archivieren**</td><td>Ihre Extension reagiert auf ein Event der anderen Extension, z. B. „Beleg wurde versendet“, und übergibt die Datei sofort an Freeze.</td><td>die andere Extension ein passendes Event mit Zugriff auf die Datei und den Beleg anbietet.</td></tr><tr><td>**2. Nachträglich per Aufgabenwarteschlange archivieren**</td><td>Ein Aufgabenwarteschlangenposten liest regelmäßig das Protokoll der anderen Extension und übergibt neue Einträge an Freeze.</td><td>die andere Extension kein passendes Event hat, aber versendete Belege mit Datei protokolliert. Auch für bereits versendete Altbelege.</td></tr><tr><td>**3. Beim Buchen eine andere Datei archivieren**</td><td>Ihre Extension tauscht über ein Freeze-Event das PDF aus, das Freeze beim Buchen archiviert.</td><td>nur das Layout abweicht und der Buchungszeitpunkt ausreicht.</td></tr><tr><td>**4. Manuell archivieren**</td><td>Benutzer ziehen die Datei in die Infobox **Quick Freeze**.</td><td>es nur um Einzelfälle geht. Siehe [Schnellarchivierung (Quick Freeze)](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/schnellarchivierung-quick-freeze).</td></tr></tbody></table>

<p class="callout warning">Möglichkeit 3 archiviert den Stand zum Buchungszeitpunkt, nicht das Dokument, das später tatsächlich versendet wurde. Wenn das versendete Dokument archiviert werden muss, wählen Sie Möglichkeit 1 oder 2.</p>

## Die Bausteine

Für alle Möglichkeiten brauchen Sie nur wenige öffentliche Prozeduren aus Freeze:

<table id="bkmrk-codeunitprozedurwof%C3%BC" style="width: 100%;"><thead><tr><th style="width: 26.8009%;">Codeunit</th><th style="width: 33.6282%;">Prozedur</th><th style="width: 39.6901%;">Wofür</th></tr></thead><tbody><tr><td style="width: 26.8009%;">`DXP FRZ Attachment Mgt.`</td><td style="width: 33.6282%;">`AddFileFromStream(var TempFrzAttachmentBuffer; var InStr; FileName; LinkedRecordRef)`</td><td style="width: 39.6901%;">Eine Datei in den Zwischenspeicher legen. Mehrfach aufrufen für mehrere Dateien.</td></tr><tr><td style="width: 26.8009%;">`DXP Freeze Queue Buffer Mgt.`</td><td style="width: 33.6282%;">`InsertFREEZEQueueEntryWithAttachments(LinkedRecordRef; var TempFrzAttachmentBuffer; FrzRecordType; ReferenceDate)`</td><td style="width: 39.6901%;">Den Warteschlangeneintrag mit allen Dateien anlegen. Ab hier übernimmt Freeze.</td></tr><tr><td style="width: 26.8009%;">`DXP Freeze Queue Buffer Mgt.`</td><td style="width: 33.6282%;">`InsertQueueBufferEntry(RecSystemID; RecTableNo; var TempFrzAttachmentBuffer; FrzRecordType; ReferenceDate)` und danach `GetEntryNo()`</td><td style="width: 39.6901%;">Wie oben. Zusätzlich liefert `GetEntryNo()` danach die Lfd. Nr. des neuen Eintrags, z. B. für ein eigenes Protokoll (Beispiel 2).</td></tr><tr><td style="width: 26.8009%;">`DXP Freeze Helper`</td><td style="width: 33.6282%;">`GetFreezeRecordTypeFromReportSelectionUsage(ReportSelectionUsage)`</td><td style="width: 39.6901%;">Den passenden Mappentyp ermitteln, genauso wie Freeze es selbst tut.</td></tr><tr><td style="width: 26.8009%;">`DXP Freeze Setup Mgt.`</td><td style="width: 33.6282%;">`IsModuleActivated()`, `ArchiveEmailAttachments()`</td><td style="width: 39.6901%;">Prüfen, ob Freeze aktiv ist und der Kunde die Archivierung versendeter Belege eingeschaltet hat.</td></tr></tbody></table>

## Beispiel 1: Direkt beim Ausgeben archivieren

Die andere Extension veröffentlicht in diesem Beispiel ein Event `OnAfterDocumentSent`. Es liefert den Beleg, die Berichtsverwendung und das PDF. Ersetzen Sie Codeunit, Eventname und Parameter durch das Event der Extension, die Ihr Kunde einsetzt.

```PASCAL
codeunit 50100 "PTE Archive Sent Documents"
{
    // Platzhalter: Codeunit und Event der anderen Extension
    [EventSubscriber(ObjectType::Codeunit, Codeunit::"Other Ext. Send Mgt.", 'OnAfterDocumentSent', '', false, false)]
    local procedure ArchiveInFreeze(DocumentRecordId: RecordId; ReportUsage: Enum "Report Selection Usage"; var PdfTempBlob: Codeunit "Temp Blob"; PdfFileName: Text)
    var
        TempFrzAttachmentBuffer: Record "DXP FRZ Attachment Buffer" temporary;
        FrzAttachmentMgt: Codeunit "DXP FRZ Attachment Mgt.";
        FrzQueueBufferMgt: Codeunit "DXP Freeze Queue Buffer Mgt.";
        FrzHelper: Codeunit "DXP Freeze Helper";
        FrzSetupMgt: Codeunit "DXP Freeze Setup Mgt.";
        LinkedRecRef: RecordRef;
        PdfInStr: InStream;
        DocumentNotFoundErr: Label 'The document %1 could not be found and was not archived in Freeze.', Comment = '%1 = Record ID';
    begin
        // 1. Einrichtung des Kunden respektieren
        if not FrzSetupMgt.IsModuleActivated() then
            exit;
        if not FrzSetupMgt.ArchiveEmailAttachments() then
            exit;

        // 2. Den gebuchten Beleg öffnen, z. B. die VK-Rechnung
        if not LinkedRecRef.Get(DocumentRecordId) then
            Error(DocumentNotFoundErr, Format(DocumentRecordId));

        // 3. Die Datei in den Zwischenspeicher legen
        PdfTempBlob.CreateInStream(PdfInStr);
        FrzAttachmentMgt.AddFileFromStream(TempFrzAttachmentBuffer, PdfInStr, PdfFileName, LinkedRecRef);

        // 4. Warteschlangeneintrag anlegen: Mappentyp wie bei Freeze, Bezugsdatum = Belegdatum
        FrzQueueBufferMgt.InsertFREEZEQueueEntryWithAttachments(
            LinkedRecRef,
            TempFrzAttachmentBuffer,
            Format(FrzHelper.GetFreezeRecordTypeFromReportSelectionUsage(ReportUsage)),
            GetDocumentDate(LinkedRecRef));
    end;

    local procedure GetDocumentDate(LinkedRecRef: RecordRef): Date
    var
        SalesInvoiceHeader: Record "Sales Invoice Header";
        SalesCrMemoHeader: Record "Sales Cr.Memo Header";
    begin
        case LinkedRecRef.Number() of
            Database::"Sales Invoice Header":
                begin
                    LinkedRecRef.SetTable(SalesInvoiceHeader);
                    exit(SalesInvoiceHeader."Document Date");
                end;
            Database::"Sales Cr.Memo Header":
                begin
                    LinkedRecRef.SetTable(SalesCrMemoHeader);
                    exit(SalesCrMemoHeader."Document Date");
                end;
        end;
        exit(WorkDate());
    end;
}

```

**Wichtige Hinweise:**

- Möchten Sie auch den E-Mail-Text archivieren, legen Sie ihn als zweite Datei `body.html` in den Zwischenspeicher. So macht es Freeze beim BC-E-Mail-Modul auch.
- Freeze speichert den Warteschlangeneintrag sofort mit einem `Commit`. Liegt das Event der anderen Extension mitten in deren eigener Verarbeitung, kann das deren Ablauf stören. Nutzen Sie in diesem Fall Möglichkeit 2.

## Beispiel 2: Nachträglich per Aufgabenwarteschlange archivieren

Die andere Extension führt in diesem Beispiel ein Protokoll `Other Ext. Sent Log`. Jeder Eintrag enthält den Beleg, die Berichtsverwendung und das PDF. Ihre Extension merkt sich in einer eigenen kleinen Tabelle, welche Einträge schon an Freeze übergeben wurden.

Schritt 1: Tabelle für bereits übergebene Einträge.

```PASCAL
table 50100 "PTE Freeze Transfer Log"
{
    DataClassification = SystemMetadata;

    fields
    {
        field(1; "Source Entry No."; Integer) { }
        field(2; "Freeze Queue Entry No."; Integer) { }
        field(3; "Transferred At"; DateTime) { }
    }

    keys
    {
        key(PK; "Source Entry No.") { Clustered = true; }
    }
}

```

Schritt 2: Codeunit, die als Aufgabenwarteschlangenposten läuft.

```PASCAL
codeunit 50101 "PTE Transfer Sent Log"
{
    trigger OnRun()
    var
        SentLog: Record "Other Ext. Sent Log"; // Platzhalter: Protokolltabelle der anderen Extension
        TransferLog: Record "PTE Freeze Transfer Log";
        FrzSetupMgt: Codeunit "DXP Freeze Setup Mgt.";
    begin
        if not FrzSetupMgt.IsModuleActivated() then
            exit;
        if not FrzSetupMgt.ArchiveEmailAttachments() then
            exit;

        SentLog.SetRange(Status, SentLog.Status::Sent);
        if SentLog.FindSet() then
            repeat
                if not TransferLog.Get(SentLog."Entry No.") then
                    TransferEntry(SentLog);
            until SentLog.Next() = 0;
    end;

    local procedure TransferEntry(var SentLog: Record "Other Ext. Sent Log")
    var
        TempFrzAttachmentBuffer: Record "DXP FRZ Attachment Buffer" temporary;
        TransferLog: Record "PTE Freeze Transfer Log";
        FrzAttachmentMgt: Codeunit "DXP FRZ Attachment Mgt.";
        FrzQueueBufferMgt: Codeunit "DXP Freeze Queue Buffer Mgt.";
        FrzHelper: Codeunit "DXP Freeze Helper";
        LinkedRecRef: RecordRef;
        SystemIdFieldRef: FieldRef;
        PdfInStr: InStream;
        DocumentNotFoundErr: Label 'Log entry %1: the document %2 could not be found.', Comment = '%1 = Entry No., %2 = Record ID';
    begin
        if not LinkedRecRef.Get(SentLog."Document Record ID") then
            Error(DocumentNotFoundErr, SentLog."Entry No.", Format(SentLog."Document Record ID"));

        SentLog.CalcFields("PDF File");
        SentLog."PDF File".CreateInStream(PdfInStr);
        FrzAttachmentMgt.AddFileFromStream(TempFrzAttachmentBuffer, PdfInStr, SentLog."File Name", LinkedRecRef);

        // InsertQueueBufferEntry statt InsertFREEZEQueueEntryWithAttachments,
        // damit GetEntryNo() danach die Lfd. Nr. des neuen Eintrags liefert
        SystemIdFieldRef := LinkedRecRef.Field(LinkedRecRef.SystemIdNo());
        FrzQueueBufferMgt.InsertQueueBufferEntry(
            SystemIdFieldRef.Value(),
            LinkedRecRef.Number(),
            TempFrzAttachmentBuffer,
            Format(FrzHelper.GetFreezeRecordTypeFromReportSelectionUsage(SentLog."Report Usage")),
            SentLog."Document Date");

        TransferLog.Init();
        TransferLog."Source Entry No." := SentLog."Entry No.";
        TransferLog."Freeze Queue Entry No." := FrzQueueBufferMgt.GetEntryNo();
        TransferLog."Transferred At" := CurrentDateTime();
        TransferLog.Insert();
        Commit();
    end;
}

```

**Wichtige Hinweise:**

- Kann ein Eintrag nicht übergeben werden, bricht der Lauf mit einer Fehlermeldung ab. Der Fehler steht dann im Aufgabenwarteschlangenposten, und der Eintrag wird beim nächsten Lauf erneut versucht. So geht kein Beleg unbemerkt verloren.
- Das funktioniert nur, wenn die andere Extension die Datei in der Datenbank speichert. Liegt die Datei nur in einem externen Speicher, müssen Sie sie von dort laden.
- Tabellen anderer Extensions sind keine zugesicherte Schnittstelle. Prüfen Sie Ihren Code nach Updates der anderen Extension.

## Beispiel 3: Beim Buchen eine andere Datei archivieren

Freeze ruft beim Buchen für jede Zeile der Berichtsauswahl das Event `OnBeforeSaveReportAsPDFInTempBlob` auf, bevor es das PDF erzeugt. Ihre Extension kann hier ein eigenes PDF liefern.

```PASCAL
codeunit 50102 "PTE Freeze Posting PDF"
{
    [EventSubscriber(ObjectType::Codeunit, Codeunit::"DXP FRZ Attachment Mgt.", 'OnBeforeSaveReportAsPDFInTempBlob', '', false, false)]
    local procedure UseOtherPdf(var ReportSelectionUsage: Enum "Report Selection Usage"; var ReportID: Integer; var TempBlobList: Codeunit "Temp Blob List"; var RecVarToPrint: Variant; var CustNoOrBillToNo: Code[20]; var IsHandled: Boolean)
    var
        TempBlob: Codeunit "Temp Blob";
    begin
        if IsHandled then
            exit;
        if ReportSelectionUsage <> ReportSelectionUsage::"S.Invoice" then
            exit;

        // Platzhalter: PDF über die andere Extension erzeugen
        if not CreatePdfWithOtherExtension(RecVarToPrint, TempBlob) then
            exit; // Freeze erzeugt dann wie gewohnt das PDF aus der Berichtsauswahl

        TempBlobList.Add(TempBlob);
        IsHandled := true;
    end;

    local procedure CreatePdfWithOtherExtension(RecVarToPrint: Variant; var TempBlob: Codeunit "Temp Blob"): Boolean
    begin
        // Hier die Funktion der anderen Extension aufrufen
    end;
}

```

**Wichtige Hinweise:**

- Gibt es in der Berichtsauswahl mehrere Zeilen für dieselbe Verwendung, wird das Event mehrmals aufgerufen. Die Prüfung `if IsHandled then exit;` verhindert, dass Ihr PDF mehrfach archiviert wird.
- Möchten Sie das Freeze-PDF behalten und nur eine Datei ergänzen, nutzen Sie stattdessen `OnAfterPrintOutgoingSalesDocToPDF` bzw. `OnAfterPrintOutgoingPurchaseDocToPDF` und fügen Sie Ihre Datei der `TempBlobList` hinzu.

## Wichtige Regeln

- **Mit dem richtigen Datensatz verknüpfen.** Freeze schreibt alle Felder des verknüpften Datensatzes als Suchfelder ins Archiv. Verknüpfen Sie deshalb immer den Business Central-Beleg, z. B. die gebuchte VK-Rechnung, und nicht einen Protokolleintrag der anderen Extension. Nur dann finden Benutzer den Beleg später über Belegnummer oder Debitor.
- **Mappentyp und Bezugsdatum bewusst setzen.** Beide steuern die Ablage und Aufbewahrung im Archiv. Ermitteln Sie den Mappentyp mit `GetFreezeRecordTypeFromReportSelectionUsage` und verwenden Sie als Bezugsdatum das Belegdatum. Siehe [Mappentypen](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/mappentypen).
- **Fehler nie verschlucken.** Wenn Ihre Extension einen Beleg nicht übergeben kann, muss das sichtbar sein, z. B. als Fehlermeldung. Umschließen Sie den Freeze-Aufruf nicht mit `if ... then;`.
- **Derselbe Beleg erneut: neue Version.** Gibt es im Archiv schon eine Mappe zum selben Beleg, legt Freeze keine zweite Mappe an, sondern eine neue Version der vorhandenen Mappe. Das ist zum Beispiel der Fall, wenn Freeze die Rechnung schon beim Buchen archiviert hat.
- **Berechtigungen.** Der Benutzer, in dessen Sitzung der Warteschlangeneintrag entsteht, braucht den Berechtigungssatz `DXP Freeze User`. Siehe [Berechtigungssätze](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/berechtigungssatze).

## Weitere Integrationsevents

Diese Events in Freeze sind für das Archivieren zusätzlicher Belege nützlich:

<table id="bkmrk-codeuniteventwannwof" style="width: 100%;"><thead><tr><th style="width: 28.8439%;">Codeunit</th><th style="width: 34.3097%;">Event</th><th style="width: 15.2731%;">Wann</th><th style="width: 21.5733%;">Wofür</th></tr></thead><tbody><tr><td style="width: 28.8439%;">`DXP FRZ Attachment Mgt.`</td><td style="width: 34.3097%;">`OnBeforeSaveReportAsPDFInTempBlob`</td><td style="width: 15.2731%;">Beim Buchen, vor dem Erzeugen jedes PDFs</td><td style="width: 21.5733%;">Eigenes PDF statt des Standardberichts liefern (Beispiel 3).</td></tr><tr><td style="width: 28.8439%;">`DXP FRZ Attachment Mgt.`</td><td style="width: 34.3097%;">`OnAfterPrintOutgoingSalesDocToPDF`, `OnAfterPrintOutgoingPurchaseDocToPDF`</td><td style="width: 15.2731%;">Beim Buchen, nachdem die PDFs erzeugt wurden</td><td style="width: 21.5733%;">Dateien ergänzen oder austauschen.</td></tr><tr><td style="width: 28.8439%;">`DXP Freeze Helper`</td><td style="width: 34.3097%;">`OnBeforeGetFreezeRecordTypeFromReportSelectionUsage`</td><td style="width: 15.2731%;">Beim Ermitteln des Mappentyps</td><td style="width: 21.5733%;">Einen eigenen Mappentyp für bestimmte Berichtsverwendungen festlegen.</td></tr><tr><td style="width: 28.8439%;">`DXP Freeze Queue Buffer Mgt.`</td><td style="width: 34.3097%;">`OnBeforeDoUpdate`</td><td style="width: 15.2731%;">Beim Anlegen des Warteschlangeneintrags</td><td style="width: 21.5733%;">Festlegen, ob ein weiterer Eintrag zum selben Datensatz eine neue Version oder eine neue Mappe wird.</td></tr><tr><td style="width: 28.8439%;">`DXP Freeze Queue Processing`</td><td style="width: 34.3097%;">`OnAfterPerformFREEZE`, `OnAfterProcessWaitingQueueBufferEntry`</td><td style="width: 15.2731%;">Im Freeze-Job, nach dem Upload</td><td style="width: 21.5733%;">Nachverarbeitung, z. B. der anderen Extension den Archivierungsstatus melden.</td></tr></tbody></table>

<p class="callout warning">Setzen Sie `IsHandled` im Event `OnBeforePerformFREEZE` nur, wenn Ihre Extension den Upload ins Archiv vollständig selbst übernimmt. Tragen Sie dann die Felder `"Archive Record ID"` (Archivdatensatz ID) und `"API Path"` (API Pfad) im Warteschlangeneintrag ein. Ab Freeze 1.30 setzt Freeze den Eintrag sonst auf den Status `Fehler`.</p>

## Testen Ihrer Implementierung

1. Prüfen Sie, dass Freeze aktiv ist und in der **Freeze Einrichtung** die Option **Email &amp; Anhänge archivieren** eingeschaltet ist.
2. Geben Sie einen Testbeleg über die andere Extension aus.
3. Öffnen Sie die **Freeze Warteschlangeneinträge**. Ein neuer Eintrag mit dem richtigen Mappentyp und Bezugsdatum sollte erscheinen.
4. Warten Sie auf den Freeze-Job (jede Minute). Der Status wechselt über `Wartend` und `Verarbeitet` zu `Archiviert`.
5. Öffnen Sie den Beleg in Business Central und prüfen Sie in der Archivsuche, dass die Datei dort erscheint.

## Verwandte Seiten

- [Archivierung von Belegen](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/archivierung-von-belegen)
- [Freeze Warteschlange und Job](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/freeze-warteschlange-und-job)
- [Mappentypen](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/mappentypen)
- [Freeze Integration in benutzerdefinierte Seiten](https://docs.squeeze.one/books/freeze-for-dynamics-365-bc-de-de/page/freeze-integration-in-benutzerdefinierte-seiten)