aus NAV Artikeldatenblatt in Word anlegen

Bild Speziell fĂĽr Probleme der Office-Integration in die Dynamics Produkte

aus NAV Artikeldatenblatt in Word anlegen

Beitragvon Roland » 3. April 2008 15:52

Hallo zusammen,

ich möchte gerne aus NAVISION 4.0 SP3 ein Artikeldatenblatt in Word anlegen. Die reinen Textinformationen bekomme ich wohl hin.
WĂĽrde das mit den Textmarken machen, die ich aus Navision fĂĽlle.
Wie mache ich das aber mit Zeichnungen oder Bilder? Die Daten sind nicht in der DB eingebettet, sondern liegen separat auf dem Server.
Der Dateiname mit Verzeichnis liegt mir in einer TAB in folgendem Format vor
file:\\SERVER\VERZEICHNIS\BILD1.gif
(Das zu ändern wäre natürlich auch möglich.)
Aber wie bekomme ich Word dazu das jeweilige Bild / Zng in einem bestimmten Bereich anzuzeigen.

Hat dazu jemand einen Idee???
Wäre für jeden Tipp und Anregung dankbar

Danke schon mal

Roland
Roland
 
Beiträge: 60
Registriert: 18. April 2006 16:37
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 4.01;2009

Beitragvon FraMi » 7. April 2008 19:07

Hallo Robert,

anbei ein StĂĽck Quelltext:

Code: Alles auswählen
wdBookmark := -1;
FilenameOfDocument := 'C:\datenbanken\Test.DOC';    //Vollständiger Name des Word-Dokumentes
FilenameOfPicture := 'C:\Datenbanken\FMB.BMP';      //Vollständiger Name der Bild-datei
NameOfBookmark := 'M1';                             //Name der Textmarke, bei der Bild eingefĂĽgt werden soll
CREATE(wrdApp);
wrdApp.Visible := TRUE;
wrdDocuments := wrdApp.Documents;
wrdDocument := wrdDocuments.Open(FilenameOfDocument);
wrdBookmarks := wrdDocument.Bookmarks;
wrdBookmark := wrdBookmarks.Item(NameOfBookmark);
wrdBookmark.Select;
wrdSelection := wrdApp.Selection;
wrdInlineShapes := wrdSelection.InlineShapes;
wrdInlineShape := wrdInlineShapes.AddPicture(FilenameOfPicture);


und die Definitionen:
Name DataType Subtype Length
wrdApp Automation 'Microsoft Word 9.0 Object Library'.Application
wrdDocuments Automation 'Microsoft Word 9.0 Object Library'.Documents
wrdDocument Automation 'Microsoft Word 9.0 Object Library'.Document
wrdBookmarks Automation 'Microsoft Word 9.0 Object Library'.Bookmarks
wrdBookmark Automation 'Microsoft Word 9.0 Object Library'.Bookmark
wrdSelection Automation 'Microsoft Word 9.0 Object Library'.Selection
wrdInlineShapes Automation 'Microsoft Word 9.0 Object Library'.InlineShapes
wrdInlineShape Automation 'Microsoft Word 9.0 Object Library'.InlineShape
wdBookmark Integer
FilenameOfDocument Text 250
FilenameOfPicture Text 250
NameOfBookmark Text 30
I Integer

Damit wird einer Textmarke ein Bild aus einer datei hinzugefĂĽgt.
Auf PrĂĽfungen usw. wurde verzichtet.

Ich hoffe, Du kannst was damit anfangen.

Viele GrĂĽsse aus Leipzig von
FraMi.

EDIT : Bitte Codetags benutzen (Rautensymbol) GruĂź Kai
FraMi
 
Beiträge: 14
Registriert: 7. April 2008 18:57
Wohnort: Leipzig

Beitragvon Roland » 5. Mai 2008 13:36

Hallo Frank,

sorry, dass ich mich erst jetzt melde. Konnte mich aber erst jetzt wieder um diese Problem kĂĽmmern.

Also mit Deinem CODE bin ich weiter gekommen. Die Grafik wird jetzt angezeigt.
Folgende Frage hab ich aber noch:

1# Um das Worddokument vor dem User zu schützen möchte ich es als Vorlage *.dot öffnen.
Wenn ich folgende Zeile hinzu füge werden beide geöffnet dot und doc.

Code: Alles auswählen
WordDoc := WordApp.Documents.Add(TemplateName);



2# Ich möchte noch mehr Informationen in das Worddokument übergeben. kann man auch Textbausteine vom Artikel einfügen zB in eine Tabelle??
Die Anzahl der Textbausteinzeilen kann ja variieren.


3# sicherlich ist es auch möglich die Textmarken eleganter zu füllen als ich das mit WordRange mache.


Vielleicht hast Du mir noch einen Tipp


Viele GrĂĽsse

Roland




kurz zur Info:

der Grafikname muss in folgendes Format gewandelt werden!!

\\SERVER\PFAD\PFAD\BILD.GIF

muss

\\SERVER\\PFAD\\PFAD\\BILD.GIF

komischerweise nur die Pfad \ nicht die vom \\ SERVER
Roland
 
Beiträge: 60
Registriert: 18. April 2006 16:37
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 4.01;2009

Beitragvon Roland » 5. Mai 2008 13:37

Hier mal der komplette Code:


Code: Alles auswählen
TemplateName := '\\Navision01\DATA\DOT\Artikeldatenblatt.dot';
Item_ := Rec;
Item_.SETRECFILTER;
NameOfBookmark := 'Artikelnummer';

PDM.SETRANGE(ArtNr, "No.");
IF PDM.FIND('-') THEN
  FilenameOfPicture := PDM.Grafikname2
ELSE
  ERROR('Keine Zeichnung vorhanden!');

CLEAR(WordApp);
wdBookmark := -1;
CREATE(WordApp);
WordApp.Visible := TRUE;
WordDocs := WordApp.Documents;
WordDoc := WordDocs.Open(TemplateName);
WordBookmarks := WordDoc.Bookmarks;
WordBookmark := WordBookmarks.Item(NameOfBookmark);
WordBookmark.Select;
wordSelection := WordApp.Selection;
wordInlineShapes := wordSelection.InlineShapes;
wordInlineShape := wordInlineShapes.AddPicture(FilenameOfPicture);

WordDoc := WordApp.Documents.Add(TemplateName);

IF ISCLEAR(WordApp) THEN
  IF NOT CREATE(WordApp, FALSE) THEN
    ERROR('Konnte keine Word-Instanz erstellen!');

IF NOT EXISTS(TemplateName) THEN
  ERROR('Wordvorlage %1 existiert nicht!', TemplateName);

//FĂĽllen der Textmarken Text01 mit 'Artiklenummer'
WordRange := WordApp.ActiveDocument.Fields.Item(1).Result;
WordRange.Text := Item_."No.";

//FĂĽllen der Textmarken Text02 mit 'Benennung'
WordRange := WordApp.ActiveDocument.Fields.Item(2).Result;
WordRange.Text := Item_.Description;

//FĂĽllen der Textmarken Text02 mit 'Benennung2'
WordRange := WordApp.ActiveDocument.Fields.Item(3).Result;
WordRange.Text := Item_."Description 2";
Roland
 
Beiträge: 60
Registriert: 18. April 2006 16:37
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 4.01;2009

Beitragvon FraMi » 3. Juli 2008 19:51

Hallo Roland,
Sorry das ich jetzt erst mich melde - habe ea verschwitzt.
Ich weiĂź nicht, ob Du Deine Probleme schon bereinigt hast.
Deshalb schreibe ich nur zu Deinem Problem 1. Du schreibst, dass sowohl DOT als auch DOC geöffnet werden. Laut dem Programmcode ist das correkt, Du ast vergessen, die DOT zu schließen bevor Du die DOC addest

Wenn Du noch Fragen hast, ich passe jetzt besser auf.

Viele GrĂĽsse aus Leipzig von
Frank
FraMi
 
Beiträge: 14
Registriert: 7. April 2008 18:57
Wohnort: Leipzig

Beitragvon garak » 3. Juli 2008 22:23

Leipsch? Bei welchen Partner arbeitest du denn?
garak
 
Beiträge: 69
Registriert: 9. Februar 2008 15:39

Beitragvon FraMi » 7. Juli 2008 09:02

garak,
Gegenfrage: "Bei wem arbeitest Du?"
FraMi
 
Beiträge: 14
Registriert: 7. April 2008 18:57
Wohnort: Leipzig

Re: aus NAV Artikeldatenblatt in Word anlegen

Beitragvon Steini » 14. September 2011 21:26

Hallo,

klappt das ganze auch irgendwie direkt mit Blob-Feldern aus der DB in Word einlesen oder muss ich diese zunächst temporär irgendwo im Dateisystem speichern?
Steini
Microsoft Partner
Microsoft Partner
 
Beiträge: 111
Registriert: 18. Mai 2010 16:18
Arbeitsort: Nordbayern
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2.x - NAV2018, D365BC


ZurĂĽck zu Microsoft Office

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast