Используя SQL Server 2012 Report Builder 3.0, у меня есть следующий URL-адрес, определенный в моем запросе, для запуска соответствующей записи в SAP из отчета.
CASE WHEN DM_IAM_D_I_ROOT.APPLICATION = 'MOC'
THEN concat('http://sapep2di05.erp.xxxxxxxx.com:8000/nwbc/~canvas;window=app/wda/MOC/WDA_CHANGE_REQUEST/?CHANGE_MODE=&SAP-WD-CONFIGID=%2fMOC%2fWDA_CHANGE_REQUEST&SAP-LANGUAGE=EN&KEY=', convert(nvarchar(32), DM_IAM_D_I_ROOT.DB_KEY, 2), '&sap-client=100')
WHEN DM_IAM_D_I_ROOT.APPLICATION = 'QIM'
THEN concat('http://sapep2di05.erp.xxxxxxxx.com:8000/sap/bc/webdynpro/sap/qim_ovp_issue?iss_appr=X&iss_cat=QIM&iss_status=09&issue_id=', DM_IAM_D_I_ROOT.ISSUE_ID, '&issue_type=CAP&processing_mode=DISPLAY') END as ISSURL
Затем я просто добавляю его как «URL-адрес действия» в поле в табликсе, чтобы сделать его ссылкой, на которую можно нажать.
Это прекрасно работает, за исключением того, что некоторые браузеры (Edge/Chrome) используют вкладку отчета для запуска ссылки. Я не могу понять синтаксис добавления выражения target="_blank" в конец URL-адреса, поскольку выражение URL-адреса в моем SQL-запросе не включает синтаксис гиперссылки целиком, а только сам целевой URL-адрес. .
Вам нужно использовать немного javascript в вашей ссылке.
Попробуйте изменить свое выражение на что-то вроде
= "javascript:void(window.open('" & TRIM(Fields!ISSURL.Value) & "','_blank'))"
Это запустит новое окно.
Успешно справился! Спасибо!