点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我知道这是不同的,我有一个要求,当用户在浏览器角落单击任何打开的工作链接时搜索工作时,它始终显示弹出窗口被阻止的点击,然后它才能完美运行。 我的要求是,只要他们单击链接新页面,就应该在任何时候都不要求弹出块选项。 由于此弹出式选项是笔记本电脑/个人电脑的个人设置,因此我不确定如何防止后端不问所有人。 请帮我解决一下这个。
请注意,这是未增强的标准代码。
WDA: HRRCF_C_SEARCH_UI ,视图为 VW_EMP_HITLIST
操作方法:ONACTIONOPEN_DATA_OVERVIEW
在此类中:*打开发布实例的数据概述
wd_comp_controller-> show_data_overview
在下面使用以打开
*打开窗口
lo_window-> open()。
还有其他方法可以避免这种情况。
完整代码
方法show_data_overview。 rcf_s_mdl_jobs_srch_hitlist。
数据:lo_window类型引用到if_wd_window,
lo_cmp_api类型引用到if_wd_component,
lo_window_manager类型引用到if_wd_window_manager类型,
lv_application_name,
lv_application_name。 >
数据:lo_nd_posting_app_unregemp类型参考为if_wd_context_node,
lo_el_posting_app_unregemp类型参考为if_wd_context_element,
lv_appl_config_id类型为wdy_config_id。
数据类型:lt_parameters类型。
常量:lc_prm_cand_type_int TYPE字符串值'INT',
lc_prm_cand_type_ext类型字符串值'EXT'。
*根据应显示其数据概述的发布实例设置线索选择
node_job_hits = node_hrrcf_job_hitlist-> get_child_node(name = if_componentcontroller => wdctx_job_hits s()=(_) >
如果elem_job_hits不是初始的。
elem_job_hits-> get_static_attributes(
importing
static_attributes = ls_job_hits)。
endif。
if(elem_job_hits 是initial)或
(ls_job_hits是initial)或
(ls_job_hits-pinst_guid ne iv_pinst_guid)。
lt_element_set = node_job_hits-> get_elements()。
在lt_element_set处进入元素
elem_job_hits-> get_static_attributes(
进口
static_attributes = ls_job_hits)。
如果ls_job_hits-pinst_guid eq iv_pinst_guid。
node_job_hits->(set_lead >导出
element = elem_job_hits)。
退出。
endif。
清除:elem_job_hits,
ls_job_hits。
endloop。< br>
endif。
* get windo w manager
lo_cmp_api = wd_this-> wd_get_api()。
lo_window_manager = lo_cmp_api-> get_window_manager()。
*将pinst_guid值附加到参数表中
ls_parameters-name ='POST_INST_GUID
ls_parameters值= iv_pinst_guid。
APPEND ls_parameters到lt_parameters。
*检查服务用户以确定正确的应用程序
CALL FUNCTION'SUSR_USER_IS_SERVICETYPE'
导出
用户名 = sy-uname
例外
user_name_not_exists = 1
user_is_not_servicetype = 2
others =3。
如果sy-subrc =2。
如果cl_hrrcf_wd_services => is_external_candidate()= abap_true。
lv_application_name ='HRRCF_A_POSTING_APPLY_EXT'。
*将cand_type值附加到参数表
ls_parameters-name ='CAND_TYPE'。
ls_parameters-value = lc_prm_cand_type_ext。
将ls_parameters附加到lt_parameters。
else。
lv_application_name ='HRRCF_A_POSTING_APPLY_INT'。
*将cand_type值附加到参数表
ls_ parameters-name ='CAND_TYPE'。
ls_parameters-value = lc_prm_cand_type_int。
将ls_parameters附加到lt_parameters。
endif。
else。
如果wd_this- > gv_search_task eq cl_hrrcf_wd_ui_constants => gc_task_unregemp_srch。
lv_application_name ='HRRCF_A_POSTING_APPLY_EMP'。 " N1374543
*获得正确的应用程序配置ID
lo_nd_posting_app_unregemp = wd_context-> get_child_node(名称= wd_this-> wdctx_posting_app_unregemp)。 > get_attribute(
exporting
name ='APPLICATION_CONFIGURATION_ID'
importing
value = lv_appl_config_id)。
如果lv_appl_config_id不是初始的。
ls_parameters-name ='sap-wd -configId'。" #EC NOTEXT
ls_parameters-value = lv_appl_config_id。
将ls_parameters附加到lt_parameters。
endif。
*将cand_type值附加到参数表
ls_parameters-name ='CAND_TYPE'。
ls_parameters值= lc_prm_cand_type_int。
将ls_parameters附加到lt_parameters。 。
*将cand_type值附加到参数表中
ls_parameters-name ='CAND_T YPE'。
ls_parameters-value = lc_prm_cand_type_ext。
将ls_parameters附加到lt_parameters。
endif。
endif。
*生成URL
cl_hrrcf_wd_services => construct_wd_url(
导出
iv_application_name = lv_application_name
it_parameters = lt_parameters
接收
rv_url = lv_url)。
*创建外部窗口
lo_window_manager-> create_external_window(
exporting
url = lv_url
title = iv_post_title
has_menubar = abap_true" N1304662
has_statusbar = abap_true
has_toolbar = abap_true
has_location = abap_true
*显示警告消息
wd_this-> show_popup()。 " N1313803
*打开窗口
lo_window-> open()。
结束方法。
谢谢
(61.6 kB)
这与Web Dynpro无关,但是是本地浏览器的行为。 另请注意,您的连接显示为"不安全",因此这可能是浏览器阻止弹出窗口的原因。 您通常不会以这种方式运行生产性网站。
可能是您的开发系统是用这种方式特意设置的,您可以忽略弹出请求,因为这不是实时应用程序的行为方式。 但至少您的测试/质量检查环境应使用https,并且应将其用作参考。 如果您想在开发系统中默认设置https,请与您的基础人员联系进行配置。
谢谢Mike,我将按照您的建议与Basis进行检查。
一周热门 更多>