Anzeige Bilder aus Record-Links

30. Juli 2020 13:58

Hallo,

wir haben für unsere Produkte eine Menge Bilder, die alles als Record-Link in Navision hinterlegt sind.
Die könne wir auch problemlos aus den Links abrufen und einfach durch einen Shell-Befehl aufrufen.
Dazu verwenden wir eine Automation 'Windows Script Host Object Model'.WshShell.

Leider kann damit immer nur ein Bild zu Zeit geöffnet werden.
Wenn also mehrere Bilder pro Produkt hinterlegt sind, werden mehrere
einzelne Fenster mit dem jeweiligen Bild geöffnet.
Standardmäßig wird dort Microsoft.Photo verwendet.

Gibt es eine andere Automation oder ein DotNet-Objekt, das die Bilder in einem Fenster öffnet und
mit Navigationsflächen gesteuert werden kann?

Re: Anzeige Bilder aus Record-Links

6. August 2020 11:15

Gute Frage. Wo sind die Bilder denn abegelegt? Alle in einem Ordner?

Re: Anzeige Bilder aus Record-Links

6. August 2020 12:01

Hallo,

wenn du die Datei auf dem Client erstellt bzw. von dort Zugriff darauf hast, dann kannst du es mit HYPERLINK(Dateiname) versuchen.

Gruß fiddi

Re: Anzeige Bilder aus Record-Links

23. November 2020 15:56

Sorry, ich war einige Zeit krank.

Frage von
m_schneider hat geschrieben:Gute Frage. Wo sind die Bilder denn abegelegt? Alle in einem Ordner?


Nein, es sind verschiedene Ordner: \\WAHSFS002\Bilddaten\ oder \\Intranet\Bilder

fiddi hat geschrieben:Hallo,

wenn du die Datei auf dem Client erstellt bzw. von dort Zugriff darauf hast, dann kannst du es mit HYPERLINK(Dateiname) versuchen.

Gruß fiddi


Klappt doch auch nicht, wie sollen dann mehrere Pfade aufgerufen werden?

Re: Anzeige Bilder aus Record-Links

23. November 2020 16:55

RaiNav hat geschrieben:Klappt doch auch nicht, wie sollen dann mehrere Pfade aufgerufen werden?


wie klappt "DOCH auch nicht"? was meinst du damit? hast du es probiert?
HYPERLINK(DateiPfad) wie fiddi schon schrieb

dann lass halt den Namen der Datei (und die Endung) weg - dann geht der File-Explorer auf - da kann man dann wunderbar alles sehen....aber ich verstehe die Problematik eh nicht.
Wenn alle Bilder der Artikel an einem (oder in deinem Fall 2 Ordnern) liegen, was soll dir das System dann anzeigen? genau die Bilder, die f. den einen Artikel gelten, obwohl noch 20.000 andere Bilder im Ordner sind?
-> dann müsstest du die RecordLinks durchlaufen und ggf. die Files vll temporär kopieren :twisted:
Oder habt ihr wenigsten pro Artikel einen Unterordner?
Fragen über Fragen ;)

Re: Anzeige Bilder aus Record-Links

15. Dezember 2020 10:23

Also noch einmal:
Alle Artikelbilder werden als Links an den Artikel eingetragen.
Ein Funktion die Links abzufragen liegt vor.
Code:
ItemLink.SETRANGE("Record ID",RecRef.RECORDID);
ItemLink.SETFILTER(ItemLink.Description,('Bild*'));
IF ItemLink.FINDSET THEN BEGIN
  REPEAT
  X+=1;
  PicPath[X] := ItemLink.URL1;
  IF FileMgt.ClientFileExists(PicPath[X]) THEN BEGIN
    startExec.Run(PicPath[X]);
  END;
  UNTIL ItemLink.NEXT=0;
END; 

Sind nun mehr als 1 Link eingetragen, wird für jeden Link ein Extrafenster angezeigt, in dem das Bild angezeigt wird.

Nun möchte ich Anstelle von
Code:
 startExec.Run(PicPath[X]);
eine Variable füllen, die alle Links enthält.
der Aufruf soll dann später erfolgen, wenn alle Links durchlaufen wurden.
Das ist Prinzipiell kein Problem, leider benötigen ich ein Trennzeichen, damit der Inhalt der Variable nicht als ein Pfad angesehen wird. Dieses Trennzeichen kenne ich aber nicht.

Es soll das Fenster mit den Bilder nur einmal geöffnet werden, so wie es erfolgt, wenn man aus dem Explorer mehrere Dateien markiert und Öffnet.

Re: Anzeige Bilder aus Record-Links

15. Dezember 2020 11:19

also du brauchst nur(!) ein Trennzeichen?
nimm doch
Code:
°
oder bau dir dein eigenes Trennzeichen ...z.B.
Code:
#*#*#*#


du antwortest aber auch prinzipiell nicht auf meine Frage(n), oder?

Dein Problem ist doch einfach nur, dass du mehrere Bilddateien per Code öffnen willst und diese alle in einer Art Galerie dargestellt werden, oder??????
--> damit wäre dein Trennzeichen wohl ein
Code:
 &


Code:
%SystemRoot%\System32\rundll32.exe "%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll", ImageView_Fullscreen C:\Users\StephanWeikelt\Pictures\GaryWebb.jpg & C:\Users\StephanWeikelt\Pictures\goodCops.jpg


https://www.codeproject.com/Questions/1002755/Open-multiple-files-using-photo-viewer

Re: Anzeige Bilder aus Record-Links

15. Dezember 2020 15:33

sweikelt hat geschrieben:du antwortest aber auch prinzipiell nicht auf meine Frage(n), oder?


Doch, hab nur nicht daran gedacht. Ich probiere schon eine Weile herum und die Befehle, die bisher kamen, klappen so nicht.

Pro Artikel haben wird verschiedene Bilder, die wie eine Galerie aufgerufen werden sollen.


Deine letzte Antwort hat die besten Aussichten umgesetzt zu werden, aber ich bin noch am testen.
Im Moment habe ich Probleme, den richtigen Befehl in CAL zu finden, der Betriebssystembefehle ausführt.
NAV2018 sagt ja zu "SHELL" das es veraltet ist und führt den Code nicht aus.

Re: Anzeige Bilder aus Record-Links

15. Dezember 2020 16:47

och ....da findest bestimmt ganz schnell und ganz einfach bei Onkel google was passendes ;)


http://www.msdynamics.de/viewtopic.php?t=6762
https://subscription.packtpub.com/book/application_development/9781849689106/9/ch09lvl1sec90/using-shell-to-run-external-applications
https://dynamicsuser.net/nav/f/technical/95492/want-to-run-command-prompt-from-navision