点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家,
我们需要将当前登录应用程序的用户的员工标识传递给HTML-mashup作为参数。
该场景是通过使用以下组件构建的:
- 1)客户工作中心上的工作中心视图;
- 2)工作中心视图中的嵌入式组件;
- 3)嵌入式组件中的 HTML混搭;
- 4)两个端口类型包;
端口类型包
在第一个端口类型包中,我们定义了TriggerOutport参数,该参数用于将参数从 view 传递给嵌入式组件。
在第二个中,我们定义了Employee Identifier参数,该参数用于将标识符从嵌入式组件传递到 html混搭。
工作中心视图
工作中心视图数据模型
在工作中心视图的数据模型内部,我们定义了 TriggerOutport 数据字段,以便在加载页面后将其传递给嵌入式组件。 TriggerOutport数据字段的初始值设置为" X"。
工作中心视图控制器
在工作中心视图控制器中,我们设置了PTP,并将数据字段与 TriggerOutport 参数绑定。
嵌入式组件数据模型
嵌入式组件数据模型包含两个数据字段TriggerOutport和EmployeeID
数据字段" TriggerOutport"用于触发BO 动作fillParam
数据字段" EmployeeID"用于将员工标识符传递给混搭。
嵌入式组件控制器
嵌入式组件控制器的实现如下:在 InPort 部分中,我们已将参数 TriggerOutport 绑定到了相应的数据模型字段。
在 OutPort 部分中,我们将参数 EmployeeIdentifier 与相应的数据模型字段绑定在一起。
嵌入式组件已与名为Employee4Mashup的业务对象相关联
将AP.Common.GDT导入为apCommonGDT;
businessobject Employee4Mashup {
//不能指定根节点,它是隐式创建的
//
//在此处添加元素。
//
//若要将元素声明为备用键,请使用[AlternativeKey]批注。
//请注意:
//-每个节点隐式存在一个UUID类型的备用密钥,从而启用了该节点
//用作关联目标。
//-为每个节点自动创建QueryByElements查询。
//-CTRL + SPACE可以完成代码。
[Label(" Ecc员工ID")]元素EccEmployeeId:EmployeeID;
操作fillParam;
}
在业务对象内部,我们定义了一个名为 fillParam 的操作。 fillParam 操作具有以下业务逻辑:
导入ABSL;
this.EccEmployeeId = ToolsLibrary.employeeIdGetExternalId();
而方法employeeIdGetExternalId()具有此逻辑
导入ABSL;
导入AP.Common.GDT;
导入AP.PC.IdentityManagement.Global;
导入AP.FO.BusinessPartner.Global;
var结果:DataType :: EmployeeID;
var identity = Identity.Retrieve(Context.GetCurrentIdentityUUID());
var internalID;
var queryEmployee = Employee.QueryByIdentification;
var selParamEmployee = queryEmployee.CreateSelectionParams();
var resultEmployee;
无雇员;
if(identity.IsSet()){
internalID = identity.Person.InternalID;
selParamEmployee.Add(queryEmployee.InternalID," I"," EQ",internalID);
resultEmployee = queryEmployee.Execute(selParamEmployee);
if(resultEmployee.GetFirst()。IsSet()){
result = resultEmployee.GetFirst()。Common.GetFirst()。EccEmployeeId;
}
}
返回结果;
我们已将 fillParam与事件相关联:
问题在于该参数未从View传递到嵌入式组件,并且未触发事件。
您能帮助我们吗?
(31.0 kB)
您能够解决该问题吗? 我对mashup有同样的问题。
一周热门 更多>