none
SSRS: Wie kann mit den ReportingServices ggf. andere Programme wie DMS steuern und auf Daten verknüpfen (var. Hyperlink, Java etc.) RRS feed

  • Frage

  • Hallo zusammen,

    gerne möchte ich per Link über die Belegauswahl ein anderes Programm steuern und das PDF-Dokument im DMS öffnen. Welche Schnittstellenmöglichkeiten bieten hier die SSRS. Bei elo (DMS) war dies recht leicht realisierbar in dem ich einen Hyperlink mit einer Variable als Link für die Aktion genutzt habe. Elo lief im Hintergrund und öffnete das Dokument.

    Welche Ideen und Ansätze gibt es bspw. für Aktionen über Funktionen. Das Stichwort Java wurde mir auch schon einmal genannt, wobei ich hier nicht zuordnen kann was möglich ist und typisch bei solchen Problemfällen genutzt wird.

    Vielen Dank für Tipps und Lösungsansätze, so dass man hier ggf. Lösungsmöglichkeiten vorschlagen kann. Genutzt wird das DMS aus proALPHA, welches auch nur ein zugekauftes und vollintegriertes Modul ist.

    Gruß Chris

    Dienstag, 26. September 2017 07:49

Antworten

  • Hallo Chris,

    ich weiß nicht, wie man Dein DMS-System aufrufen muss. Daher hier nur eine ganz allgemeine Antwort. Ich habe mal so etwas per Java realisiert, wo der Link dynamisch zusammengebaut wird:

    javascript:void(window.open('file://server/freigabe/datei.pdf','_blank'))

    Voraussetzung: Der Browser unterstützt JavaScript.

    Einschränkung: Falls der Dateiname Umlaute enthalten hat, habe ich es nicht hinbekommen, diese vernünftig nach JavaScript zu übergeben.

    HTH!


    Einen schönen Tag noch, Christoph -- Data Platform MVP - http://www.insidesql.org/blogs/cmu

    Dienstag, 26. September 2017 09:12

Alle Antworten

  • Hallo Chris,

    ich weiß nicht, wie man Dein DMS-System aufrufen muss. Daher hier nur eine ganz allgemeine Antwort. Ich habe mal so etwas per Java realisiert, wo der Link dynamisch zusammengebaut wird:

    javascript:void(window.open('file://server/freigabe/datei.pdf','_blank'))

    Voraussetzung: Der Browser unterstützt JavaScript.

    Einschränkung: Falls der Dateiname Umlaute enthalten hat, habe ich es nicht hinbekommen, diese vernünftig nach JavaScript zu übergeben.

    HTH!


    Einen schönen Tag noch, Christoph -- Data Platform MVP - http://www.insidesql.org/blogs/cmu

    Dienstag, 26. September 2017 09:12
  • Hallo zusammen,

    nur als kleine Korrektur. Obiges hat mit Java nix zu tun, das ist Javascript (was komplett anderes).

    Den Dateinamen kann man bspw. mit encodeURI so umwandeln, dass Sonderzeichen korrekt im URL stehen. Allerdings darf man das nicht pauschal für den gesamten URL machen (also inkl. http://... da sonst die dort enthaltenen Sonderzeichen auch encodiert würden :)

    javascript:void( window.open( 'file://server/freigabe/' + encodeURI( 'd a t e i mit aöü.pdf' ), '_blank' ) )

    So könnte das bspw. aussehen. Ob das nun in SSRS klappt, weiß ich allerdings nicht.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Dienstag, 26. September 2017 09:25
    Moderator
  • Hallo Stefan,

    du hast natürlich Recht, es ist immer JavaScript gemeint.

    Deinen Vorschlag mit encodeURI hatte ich auch schon mal probiert, brachte aber leider nichts. Siehe hierzu auch diesen Thread: Links mit Umlauten in SSRS-Reports funktionieren nicht mit IE11 aber mit Firefox

    Bei mir ist es halt so, dass die Links mit JavaScript weder im Chrome, noch im Firefox funktionieren, lediglich im Firefox wird der Link so angezeigt, wie ich ihn codiert habe. Die anderen Browser ändern ihn in Verbindung mit den Reporting Services ab und dann hat sich die Sache schon erledigt.


    Einen schönen Tag noch, Christoph -- Data Platform MVP - http://www.insidesql.org/blogs/cmu

    Mittwoch, 27. September 2017 08:08
  • Hallo zusammen,

    vielen Dank für die Anworten und die Diskussion.

    Zum Verständnis: Wie kann man beispielsweise Excel öffnen und in Zelle A2 den Inhalt vom Parameter (Fields!PARAMETER2.Value) schreiben. Ich habe mal verständnislos versucht Java mit VBA von Excel zu kombinieren, aber wie müsste die Syntax richtig lauten damit SSRS richtig steuert?

    ="javascript:void(window.open('C:/...../excel.exe'))

      Sheets("Tabelle1").Select
      Range("A2").Select
        ActiveCell.FormulaR1C1 = (Fields!PARAMETER2.Value)
        Range("A3").Select

    Vielen Dank und viele Grüße

    Chris

    Mittwoch, 27. September 2017 13:43
  • Hallo zusammen,

    nach Prüfung ist der pragmatische Weg laut Entwickler ein Ansprechen über dotnet.
    Wie kann man den Aufruf und die Parameterübergabe über SSRS realisieren und hat jemand zum Verständnis ´den Lösungansatz für den oben genannten "Excelfall". Vielen Dank.

    Gruß Chris 

    Freitag, 20. Oktober 2017 08:45