Skip to Content

Javascript function expressions support in BSP

Nov 03, 2017 at 07:24 AM


avatar image

Does BSP engine support Javascript expressions? Smth like this

var x = function x(){/*Scope code here*/}()

I see that it doesn't rendered properly on my CRM 7.02 system. They are simply not supported or I write them wrong?

For example, I add them like this to the head tag:

<%@page language="abap"%>
<%@extension name="htmlb" prefix="htmlb"%>
<script language="Javascript">
var tableToExcel = (function() {
  var uri = 'data:application/;base64,'
    , template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns=""><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>'
    , base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) }
    , format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p]; }) }
  return function(table, name) {
    if (!table.nodeType) table = document.getElementById(table)
    var ctx = {worksheet: name || 'Worksheet', table: table.innerHTML}
    window.location.href = uri + base64(format(template, ctx))

<xhtmlb:toolbarItem placement="RIGHT" >
       <xhtmlb:pager id     = "pager"
10 |10000 characters needed characters left characters exceeded

Hi Pavel,

Where did you add above code, and what kind of error did you get? How does it not rendered properly.
Can you please upload a screenshot or give more detail.

Best Regards,



Added the code snippet. I don't receive any explicit error, the function just don't work. If I bind them to onclick event, nothing is happened. After I rebind classic JS functions, all starts to work.



* Please Login or Register to Answer, Follow or Comment.

0 Answers