如何自动自动填充批处理表单行

2020-09-14 01:20发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我有这个UDT,其中有一些我想提取并自动填充到SAP B1批处理表单上的数据。 参见下图:

我希望这样,当用户在加热编号/批次编号处于焦点位置时单击选项卡按钮时,我可以捕获偶数并自动逐行填充行。

我已经在起诉CoreSuite之前完成了此操作,但是不知道如何使用B1 SDK来实现它。

有人可以通过一些代码片段帮助我吗?

任何帮助表示赞赏。

此致

Kinyanjui。

(27.0 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我有这个UDT,其中有一些我想提取并自动填充到SAP B1批处理表单上的数据。 参见下图:

我希望这样,当用户在加热编号/批次编号处于焦点位置时单击选项卡按钮时,我可以捕获偶数并自动逐行填充行。

我已经在起诉CoreSuite之前完成了此操作,但是不知道如何使用B1 SDK来实现它。

有人可以通过一些代码片段帮助我吗?

任何帮助表示赞赏。

此致

Kinyanjui。

(27.0 kB)
付费偷看设置
发送
1条回答
我是小鹏鹏啊
1楼-- · 2020-09-14 02:12

我可以使用以下代码解决此问题:

 if(pVal.FormTypeEx ==" 41" && pVal.CharPressed == 9 && pVal.BeforeAction == false)
{

_form = SboConnection.SboApplication.Forms.GetForm(pVal。 FormType.ToString(),pVal.FormTypeCount);

//获取矩阵
oItem = _form.Items.Item(" 3");
oMatrix =(SAPbouiCOM.Matrix)(oItem。 特定);
oColumns = oMatrix.Columns;

int计数= oMatrix.VisualRowCount;

if(productionReceipt!= null)
{
foreach(var item in productionReceipt)
{
var tyu = oMatrix.Columns.Item(" U_billet_size")。Cells.Item(1).Specific.Value.ToString();

oMatrix.Columns.Item( " 7")。Cells.Item(item.RowNo).Specific.Value = item.HeatNo.ToString();

SAPbouiCOM.ComboBox oCombo =(SAPbouiCOM.ComboBox)oMatrix.Columns.Item(" U_process_type ").Cells.Item(item.RowNo).Specific;
oCombo.Select(item.Type,SAPbouiCOM.BoSearchKey.psk_ByValue);

oMatrix.Columns.Item(" U_1_Bath_C")。Cells .Item(item.RowNo).Specific.Value = item.Bath1.ToString();
oMatri x.Columns.Item(" U_1_C")。Cells.Item(item.RowNo).Specific.Value = item.CPerc.ToString();
oMatrix.Columns.Item(" U_1_Mn")。Cells.Item( item.RowNo).Specific.Value = item.MnPerc.ToString();
oMatrix.Columns.Item(" U_1_Si")。Cells.Item(item.RowNo).Specific.Value = item.SiPerc.ToString( );
oMatrix.Columns.Item(" U_1_S")。Cells.Item(item.RowNo).Specific.Value = item.SPerc.ToString();
oMatrix.Columns.Item(" U_1_Ph") .Cells.Item(item.RowNo).Specific.Value = item.PhPerc.ToString();
oMatrix.Columns.Item(" U_2_Bath_C")。Cells.Item(item.RowNo).Specific.Value = item .FinalBathC.ToString();
oMatrix.Columns.Item(" U_2_C")。Cells.Item(item.RowNo).Specific.Value = item.FinalCPerc.ToString();
oMatrix.Columns.Item (" U_2_Mn")。Cells.Item(item.RowNo).Specific.Value = item.FinalMnPerc.ToString();
oMatrix.Columns.Item(" U_2_Si")。Cells.Item(item.RowNo)。 Specific.Value = item.FinalSiPerc.ToString();
oMatrix.Columns.Item(" U_2_S")。Cells.Item(item.RowNo).Specific.Value = item.FinalSPerc.ToS tring();
oMatrix.Columns.Item(" U_2_Ph")。Cells.Item(item.RowNo).Specific.Value = item.FinalPhPerc.ToString();

oMatrix.AddRow() ;
}
}
}
#endregion
}
catch(异常例外)
{
Program.Kernel.Get ()。WriteError( 例如);
SboConnection.SboApplication.SetStatusBarMessage("对不起,发生了致命错误,请与系统管理员联系。",SAPbouiCOM.BoMessageTime.bmt_Medium,true);
返回;
}

一周热门 更多>