none
Template via AddIn festlegen RRS feed

  • Frage

  • Guten Morgen,

    ich habe bis jetzt folgendes:

    Ich entwickel ein Word-AddIn in VS2017, welches Daten aus einer Datenbank holt und in Word einfügen soll. Hierfür habe ich eine Ribbon-Bar welche u. a. ein normales Winform zur Suche und Abruf der Daten aus der DB startet und als Dataset zur weiteren Verarbeitung zur Verfügung stellt. Dann soll ein Template (meineVorlge.dotx) geladen werden. Die Daten sollen nun an bestimmten Stellen im Dokument über Bookmarks eingefügt werden.

    Ic hänge jetzt genau an der Stelle, an der ich das Template laden will. Das Template enthält den notwendigen Text und die Bookmarks.

    Wie lade ich diese Template?

    Wenn ich folgenden Code aufrufe

    Globals.ThisAddIn.Application.ActiveDocument.set_AttachedTemplate(Properties.Settings.Default.NAVWebAppServer + "//NAVWebApp//Templates//menieVorlag.dotx");

    bleibt die Verarbeitung genau an dieser Stelle hängen. Fehlermeldung? Keine.

    Ich sehe den Fehler einfach nicht. Kann doch nicht so schwer sein. Wer hat einen Rat?

    Danke

    Volker


    Und Abends ein Glas Wein von AMAVINO

    Mittwoch, 24. Mai 2017 07:05

Antworten

  • Hallo Volker,

    versuche mal das Template mit:

    Globals.ThisAddIn.Application.Documents.Add("pfad der Vorlage");

    aufzurufen. Damit wird dann auch der Text und die Bookmarks geladen.

    Dein Aufruf hätte allerdings, vorausgesetzt der Pfad ist richtig, keinen Fehler verursachen dürfen. Mit Deinem Befehl wird aber nur die Eigenschaft des verwendetene Templates hinterlegt, der Text und die Bookmarks werden aber wie gesagt nicht geladen.

    Der Pfad der Vorlage muss natürlich stimmen. Da kann es vielleicht auch von Vorteil sein, sich den Pfad über

    System.IO.Path.Combine("path", "filename");

    zusammenzusetzen.

    Viele Grüße

    Roland


    Mittwoch, 24. Mai 2017 09:13

Alle Antworten

  • Hallo Volker,

    versuche mal das Template mit:

    Globals.ThisAddIn.Application.Documents.Add("pfad der Vorlage");

    aufzurufen. Damit wird dann auch der Text und die Bookmarks geladen.

    Dein Aufruf hätte allerdings, vorausgesetzt der Pfad ist richtig, keinen Fehler verursachen dürfen. Mit Deinem Befehl wird aber nur die Eigenschaft des verwendetene Templates hinterlegt, der Text und die Bookmarks werden aber wie gesagt nicht geladen.

    Der Pfad der Vorlage muss natürlich stimmen. Da kann es vielleicht auch von Vorteil sein, sich den Pfad über

    System.IO.Path.Combine("path", "filename");

    zusammenzusetzen.

    Viele Grüße

    Roland


    Mittwoch, 24. Mai 2017 09:13
  • Ich nutze nun den Vorschlag von Roland mit Add() statt set_AttachedTemplate(). Das geht.

    Trotz allem muss ich vorab prüfen ob die Template-Datei existiert. Selbst ein Try/Catch hilft bei mir nicht. Es gibt einfach keinen Fehler bei einer fehlenden Datei.

    Danke


    Und Abends ein Glas Wein von AMAVINO

    Mittwoch, 24. Mai 2017 14:34