Html Datei erstellen Thema ist als GELÖST markiert

Getting started ... Alles für einen gelungenen Start.
6 Beiträge • Seite 1 von 1
6 Beiträge Seite 1 von 1

Html Datei erstellen

Beitrag von JanR (ForumUser / 18 / 9 / 0 ) » 16.10.2020 08:45
Hallo zusammen,

auf der Website https://canvasjs.com/docs/charts/chart- ... pie-chart/ kann man schöne Diagramme mittels html5 basteln. Ich möchte nun gerne, dass ich aus meinem Report raus eine .html Datei erstellen kann, die ein Diagramm, gefüllt mit meinen Daten, enthält.

Die Daten da rein zu kriegen ist ein späteres Problem. Ich habe versucht den .html Code von der Website mittels String in eine Datei mit der Endung .html zu stecken, habe sie auf meinem Desktop abgelegt, aber beim öffnen passiert nichts. Kopiere ich den Code meiner erstellten Datei und erstelle selber ein Textdokument, füge den Code ein und ändere den Dateinamen zu .html, klappt alles.

Wie löse ich das Problem und erstelle eine 'echte' .html Datei mit ABAP mit meinem gewollten Inhalt?

Vielen Dank im Voraus

LG
Jan


Re: Html Datei erstellen

Beitrag von a-dead-trousers (Top Expert / 3539 / 115 / 918 ) » 16.10.2020 08:50
Programm-Code?
Außerdem hast du den Post zweimal angelegt.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Html Datei erstellen

Beitrag von JanR (ForumUser / 18 / 9 / 0 ) » 16.10.2020 08:55
Mein Code ist:

Code: Alles auswählen.

FORM output_to_chart.

 clear gs_all.
  CONCATENATE
'<!DOCTYPE HTML>'
'<html>'
'<head>'
'<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type"/>'
'<script type="text/javascript">'
'window.onload = function () {'
'  var chart = new CanvasJS.Chart("chartContainer",'
'  {'
'   title:{'
'     text: "Gaming Consoles Sold in 2012"'
'   },'
'   legend: {'
'     maxWidth: 350,'
'     itemWidth: 120'
'   },'
'   data: ['
'   {'
'     type: "pie",'
'     showInLegend: true,'
'     legendText: "{indexLabel}",'
'     dataPoints: ['
'       { y: 4181563, indexLabel: "PlayStation 3" },'
'       { y: 2175498, indexLabel: "Wii" },'
'       { y: 3125844, indexLabel: "Xbox 360" },'
'       { y: 1176121, indexLabel: "Nintendo DS"},'
'       { y: 1727161, indexLabel: "PSP" },'
'       { y: 4303364, indexLabel: "Nintendo 3DS"},'
'       { y: 1717786, indexLabel: "PS Vita"}'
'     ]'
'   }'
'   ]'
'  });'
'  chart.render();'
'}'
'</script>'
'<script type="text/javascript" src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>'
'</head>'
'<body>'
'<div id="chartContainer" style="height: 300px; width: 100%;"></div>'
'</body>'
'</html>' INTO gs_all SEPARATED BY lc_crlf.

ENDFORM.                    "output_to_chart

Code: Alles auswählen.

FORM html_datei.

  DATA: binary_content  TYPE solix_tab,
        size            TYPE so_obj_len.

  cl_bcs_convert=>string_to_solix(
            EXPORTING
              iv_string   = gs_all
              iv_codepage = '4103'
              iv_add_bom  = 'X'
            IMPORTING
              et_solix = binary_content
              ev_size = size ).

  CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
      filename = gv_pfad
      filetype = 'BIN'
      codepage = '4103'
    TABLES
      data_tab = binary_content.

ENDFORM.                    "html_datei
Wie gesagt, habe den html code einfach nur zum ausprobieren reingeschrieben, aber beim öffnen der Datei passiert nichts.

Re: Html Datei erstellen

Beitrag von a-dead-trousers (Top Expert / 3539 / 115 / 918 ) » 16.10.2020 11:39
Für Windows brauchst du entweder die Codepage 1160 (Windows 1252), 1100 (ISO-8859-1) oder 4110 (UTF-8). Was du rausgeschrieben hast war UTF-16LE. Damit kommen nur die wenigsten Browser zurecht.
Dein Editor, mit dem du die Datei geöffnet hast, hat das Format hingegen richtig erkannt und beim Speichern auf den Windows Standard (Windows 1252) korrigiert. Deswegen hat das dann damit funktioniert.

Außerdem kannst du die Codepage bei Angabe von Binärdaten weglassen. Die ist sinnlos und führt eventuell nur zu Problemen wenn du dann auf die Idee kommen solltest doch als Text zu übertragen, sodass eine doppelte Codepagekonvertierung ausgeführt wird.

Zudem is GUI_DOWNLOAD obsolete und sollte durch CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD ersetzt werden.

LG
ADT

EDIT: Mit dem Funktionsbaustein SCP_GET_CODEPAGE_NUMBER kannst du übrigens die Codepage ermitteln die der jeweilige SAPgui standardmäßig erwartet.

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
JanR

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Re: Html Datei erstellen

Beitrag von JanR (ForumUser / 18 / 9 / 0 ) » 16.10.2020 13:04
Danke für die Antwort.
Ohne Codepage hat es nicht funktioniert, dafür aber mit der 4110.

Re: Html Datei erstellen

Beitrag von a-dead-trousers (Top Expert / 3539 / 115 / 918 ) » 16.10.2020 13:12
JanR hat geschrieben:
16.10.2020 13:04
Ohne Codepage hat es nicht funktioniert, dafür aber mit der 4110.
Ich meinte natürlich nur beim GUI_DOWNLOAD, bei STRING_TO_SOLIX braucht man immer eine Codepage. 😉
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.07
Basis: 7.40

Seite 1 von 1

Über diesen Beitrag



Unterstütze die Community und teile den Beitrag für mehr Leser und besseren Inhalt:

Vergleichbare Themen

HTML Datei in SAP anzeigen
von bouba » 06.08.2012 03:46
HTML Datei RIVHTIG Up- und Downloaden
von Ichse2 » 07.04.2020 08:54
XML Datei auf einem R/3 Rel. 4.6C erstellen
von Sven » 06.04.2005 16:17
*.MBS Datei erstellen (aus eigenem Projekt)
von bohne » 28.11.2005 13:20
Leere Datei auf dem FTP-Server erstellen: ist es möglich?
von Jura » 08.05.2006 10:53