PRINT+PLUS
  • Einleitung
  • Einrichtung
    • Installation
  • Aktualisierung
    • Aktualisierungseinführung
  • Lizenzierung
    • Lizenzierungseinführung
  • Funktionsweise von PRINT+PLUS
    • Einführung Funktionsweise
  • Gestalten von Vorlagen
    • Intro Vorlagen
    • Beispiel mit Rechnung
    • Formatierung
    • Spezielle Platzhalter für Datum, Ja/Nein-Felder, Bilder und HTML
    • Platzhalter für die Benutzerattribute von cobra CRM
    • Eigene Platzhalter
  • Einrichtung von Ausgabeformaten
    • Intro
    • Alle Einstellungen eines Ausgabeformats im Detail
    • Register "Allgemeine Konfiguration"
    • Register "Ausgangstabelle (Current)"
    • Register "Ausgangs-Vorlage"
    • Register "Übergeordnete Tabellen (Parent)"
    • Register "Untergeordnete Tabellen (Children)"
    • Register "Dokumente speichern"
    • Register "Filter-Dialog"
    • Register "Ergebnis-Verhalten"
    • Register "Skripte"
  • Ausgabe ausführen
    • Intro Ausgabe ausführen
  • AUSGABEN PER TASK AUSFÜHREN
    • Aufgaben dem Task zuweisen
    • Windows Aufgabenplanung für den Task einrichten
    • Besonderheiten in Skripten
  • Eingabemasken Steuerelement
  • Intro Eingabemasken Steuerelement
    • Steuerelement hinzufügen
  • Einbindung von Print+Plus in cobra Kampagnen
  • Intro Einbindung von Print+Plus in cobra Kampagnen
  • Grundlagen Skripting
    • C#
    • Skript-Events
    • Kontexte
    • Geladene Daten verwenden
    • Geladene Daten verändern
    • Datensätze anlegen
    • Eingabemaske öffnen
    • Eigene Werte ergänzen (Custom Values)
  • Beispielskripte
    • Nummer vergeben
    • PDF-Formulare füllen
    • PDF-Dokumente zusammenfügen
    • Generiertes Dokument via SMTP versenden
    • Weitere Ausgabe starten
    • Vorlage aus DMS-Feld holen
    • Felder für CRYPTO+PLUS verschlüsseln
    • Benutzerabhängige Drucker verwenden
    • Bilder in E-Mails einbinden
    • Zahlen in Worten ausschreiben
    • Datensatz-Bilder aus cobra einbetten
    • Ergebnisdokumente kopieren
    • Regionsspezifische Ausgabeformate
    • Andere Datenquelle-Objekte nutzen
    • DocuSign Integration
  • FAQs
    • Fehlermeldung Template konnte nicht geöffnet werden
    • DevExpress-Word-Exporter
      • Bilder in Vorlage
      • Bekannte Einschränkungen
      • Hinweise für Entwickler
  • Zusätzliches Tool im Zusammenhang mit PRINT+PLUS
    • Intro Zusätzliches Tool
Powered by GitBook
On this page
  • Konfiguration
  • Ideen
  1. Beispielskripte

Ergebnisdokumente kopieren

Diese Skript zeigt, wie man die Ergebnisdokument einer Ausgabe in anderes Verzeichnis kopieren kann.

Konfiguration

  • Es handelt sich um einen Exporter der ein Dokument generiert (Word, Excel, Text).

  • Das Skript wird als AfterLastDocument ausgeführt.

  • Optional: Es ist in ein Dokumentenfeld für die Ablage definiert.

Ideen

  • Wenn ein Dokumentenfeld konfiguriert ist werden die Ergebnis-Dokumente automatisch im DMS abgelegt und im Ergebnisverzeichnis entfernt. In manchen Fällen werden die Dokumente jedoch nochmal als Kopie benötigt. Dies kann mit diesem Skript bewerkstelligt werden.

// Version 5
namespace Ruthardt.PrintPlus.Skripting
{
	using System;
	using System.Collections.Generic;
	using System.Diagnostics;
	using System.Data.SqlClient;
	using System.IO;
	using System.Linq;
	using System.Windows.Forms;
	using Ruthardt.Common.Util;
	using Ruthardt.CobraBase.Functions.Access.Ado;
	using Ruthardt.CobraFramework.Ado;
	using Ruthardt.PrintPlus.Export.Context;
	using Ruthardt.PrintPlus.Model;
	using Ruthardt.PrintPlus.Model.Interfaces;
	using Ruthardt.PrintPlus.Model.Enumerations;

	public class ExportResultCopyScript : IScriptAction
	{
		public void Execute(IPrintContext printContext, ICurrentContext currentContext, IChildContext childContext)
		{
			// Diese Variante kopiert die Ergebnisse der Ausgabe zurück in den Ausgabe Ordner.
			// Es ist nur sinnvoll einsetzbar, wenn ein DMS-Feld für die Ablage definiert ist und das DMS die Dateien nicht am Ursprungsort belässt.
			// Nur in diesem Fall werden die Dokumente aus dem Ausgabeverzeichnis gelöscht und können mit diesem Skript wieder zurück kopiert werden.
			string exportDir = printContext.ExportDirectory.FullName;
			
			// In dieser Variante kann auch ganz anderes Verzeichnis genutzt werden.
			exportDir = "MyDirectory/Subfolder";
			
			var resultFiles = printContext.CurrentDocumentFileNameList;
			
			// Verzeichnis anlegen wenn nicht vorhanden.
			if(!Directory.Exists(exportDir))			
			{
				Directory.CreateDirectory(exportDir);				
			}
			
			// Über alle Ergebnisse Iterieren und die Dokumente kopieren.
			foreach(var resultFile in resultFiles)
			{
				File.Copy(resultFile.FullName, Path.Combine(exportDir, resultFile.Name));
			}
			
			// Ausgabeverzeichnis öffnen - Optional
			Process.Start(exportDir);
		}
	}
}
PreviousDatensatz-Bilder aus cobra einbettenNextRegionsspezifische Ausgabeformate

Last updated 1 month ago