HTML混搭中的问题

2020-08-26 17:26发布

         点击此处--->   EasySAP.com群内免费提供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)

         点击此处--->   EasySAP.com群内免费提供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)
付费偷看设置
发送
1条回答
樱桃小丸子0093
1楼-- · 2020-08-26 17:44

您能够解决该问题吗? 我对mashup有同样的问题。

一周热门 更多>