Apr
18
2013

Datenfelder zwischen Dokumenten kopieren

Kategorie: Automatisieren   |  2 Kommentare
Support-Recherche: Eigenschaften, Makro-Editor


Kann ich die Datenfelder von einem Dokument in ein anderes kopieren? Ich möchte ein Dokument in der Archivtabelle markieren und die Felder Name, Nummer, Projekt, Kategorie und Status in die Zwischenablage kopieren. Anschließend ein anderes Dokument markieren und die kopierten Daten übernehmen.

Eine Standardfunktion gibt es dafür nicht – dank der Makro-Verarbeitung des Office Managers ist es aber machbar.Vorab ein Tipp, wenn Sie nur einzelne Felder, wie Projekt oder Kategorie kopieren möchten: Gruppieren Sie die Tabelle nach dem gewünschten Feld und schieben Sie die Dokumente in den entsprechenden Knoten. Sie hierzu im Whitepaper „Drag&Drop“.

Makros erstellen

1. Zum Kopieren der Daten

Klicken Sie bitte auf der Menüregisterseite Start, Gruppe Verwenden auf den Schalter Makro und dann auf Makro-Editor.

Im Editor wählen Sie bitte im Menü Start | Makro | Sprache „OmAPI“ aus der Liste.

Kopieren Sie folgenden Text in den Editor:

# Datenfelder kopieren, (c) Softwarebüro Krekeler 2013
# Anleitung https://blog.officemanager.de/2013/04/datenfelder-kopieren/
# Daten des aktuellen Dokuments in globalen Variablen kopieren
{SetPublVar:copyProject={Doc:Project}}
{SetPublVar:copyName={Doc:Name}}
{SetPublVar:copyDocNo={Doc:DocNo}}
{SetPublVar:copyCategory={Doc:Category}}
{SetPublVar:copyState={Doc:State}}
# "CopyFunctionHasData" prüft beim Ersetzen,
# ob das Kopieren zuvor durchgeführt wurde
{SetPublVar:CopyFunctionHasData=true}

Passen Sie die zu kopierenden Felder bitte an Ihre Anforderungen an. Syntax {SetPublVar:copyFELDNAME={Doc:FELDNAME}}. Im obigen Beispiel werden Projekt, Name, Nummer, Kategorie und Status kopiert.

Klicken Sie auf Speichern (Disketten-Symbol in der Schnellzugriffsleiste oder Menü Datei | Speichern).

Im Speichern-Dialog wechseln Sie bitte in das Unterverzeichnis „Menu„, geben Sie den Dateinamen „Datenfelder kopieren“ ein und klicken Sie auf OK. Schließen Sie den Makroeditor.

2. Zum Einfügen/Ersetzen der Daten

Klicken Sie bitte auf den Menübefehl Start | Verwenden | Makro | Makro-Editor.

Im Editor wählen Sie im Menü Start | Makro | Sprache „OmAPI“ aus der Liste.

Kopieren Sie folgenden Text in den Editor:

# Datenfelder einfügen/ersetzen, (c) Softwarebüro Krekeler 2013
# Anleitung https://blog.officemanager.de/2013/04/datenfelder-kopieren/
# Verlassen, falls zuvor nichts kopiert wurde
{Exit:{GetPublVar:CopyFunctionHasData}<>true}
# Nur in der Ansicht der aktiven Dokumente zulassen
{RaiseError:Diese Funktion ist nur in den aktiven Dokumenten zulässig.,{CurrTableView:TableName}<>DOCUMENT}
# Rückfrage an Anwender, Makro wird bei Klick auf "Abbrechen" hier beendet
{MessageDlg:Möchten Sie die Datenfelder des aktuellen Dokuments ersetzen?}
# Tabelle in Bearbeiten-Modus
{DBOperation:Doc,Edit}
# zuvor kopierte globale Variablen in die Datenfelder übernehmen
{DBSetField:Doc,Project={GetPublVar:copyProject}}
{DBSetField:Doc,Name={GetPublVar:copyName}}
{DBSetField:Doc,DocNo={GetPublVar:copyDocNo}}
{DBSetField:Doc,Category={GetPublVar:copyCategory}}
{DBSetField:Doc,State={GetPublVar:copyState}}
# speichern
{DBOperation:Doc,Post}

Klicken Sie auf Speichern und wechseln Sie in das Unterverzeichnis „Menu“. Geben Sie den Dateinamen „Datenfelder ersetzen“ ein, klicken Sie auf OK und schließen Sie den Makroeditor.

Makros verwenden

Markieren Sie das Quell-Dokument in der Tabelle, dessen Daten Sie kopieren möchten.

Wählen Sie den Menübefehl Start | Verwenden | Makro | Datenfelder kopieren.omac

Markieren Sie das Ziel-Dokument, dessen Daten mit den gerade kopierten ersetzt werden sollen. Verwenden Sie anfangs nur ein Test-Dokument.

Wählen Sie den Menübefehl Start | Verwenden | Makro | Datenfelder ersetzen.omac

Die Daten werden ersetzt, wenn Sie die Rückfrage mit OK bestätigen.


 

2 Kommentare

  • Guten Tag,

    ich würde gerne nachträglich mehreren Dokumenten auf einmal Schlüsselwörter zuordnen, so dass das Schlüsselwort nur einmal zugeordnet wird. + bestehende nicht entfernt werden.

    Danke!

    Mit freundlichen Grüßen
    Bernd Maierhofer

    • sbkrekeler sagt:

      Guten Tag Herr Maierhofer.
      Sie haben im Datenfeld „Schlüsselwörter“ mehrere Wörter stehen und möchten jetzt ein neues hinzufügen.
      Bei einem einzelnen Dokument können Sie die Eigenschaften (Strg+Enter) wählen und das Wort auf der Registerseite „Weitere“ hinzufügen.

      Mehrere gleichzeitig bearbeiten:
      Erstellen Sie eine Suche, sodass nur die Dokumente in der Tabelle zu sehen sind, die Sie ändern möchten. Wählen Sie den Befehl „Bearbeiten | Ersetzen“ und wechseln Sie zur Seite „Weitere“. Geben Sie bei „Schlüsselwörter“ folgendes ein:
      {DOC:FTIWORDS} Neue Wörter
      Die Variable „{DOC:FTIWORDS}“ steht für die bereits enthaltenen Wörter, FTIWORD ist der datenbankinterne Feldname.

      Sind Sie sicher, dass alle in der Tabelle enthaltenen Dokumente geändert werden sollen? Wenn ja, dann bestätigen Sie mit OK. Aber Vorsicht: Die Funktion kann nicht rückgängig gemacht werden. Wenn Sie beispielsweise die Variable vergessen, dann würden die alten Wörter gelöscht.

Antwort zu sbkrekeler Antworten abbrechen

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Sie können folgende HTML-Tags verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>