在Epicor ERP系统的预处理中,我具有用于BPM(业务流程管理)工作流程设计器的以下代码。
using Ice.Memo;
foreach (var ttJobHead_xRow in (from ttJobHead_Row in ttJobHead where
ttJobHead_Row.RowMod == IceRow.ROWSTATE_UPDATED select ttJobHead_Row))
{
var Memo_Row = (from IM in Db.Ice.Memo where IM.Key1 == ttJobHead_xRow.PartNum select IM);
if (Memo_Row != null)
{
callContextBpmData.ShortChar04 = ttJobHead_xRow.MemoText.ToString();
callContextBpmData.ShortChar05 = ttJobHead_xRow.MemoDesc.ToString();
}
}
此代码的目标是根据表格中的行JobHead的更新时间来确定条件。然后在某种意义上将两个表(ttJobHead和Memo)捆绑在一起。然后在if语句中,将shortchar分配给某些字段,以便以后输入到电子邮件中。
编译时出现以下两个错误:
错误CS1003:语法错误,“(”应为[Update.Pre.New_Job_with_Par.cs(86,19)]
错误CS1026:)预期为[Update.Pre.New_Job_with_Par.cs(86,27)]
出了什么问题?另外,有没有更好的方法可以做到这一点?
答案 0 :(得分:0)
假设您正在使用Epicor 10,并为JobEntry.Update创建操作。
您不能直接在BPM中使用using语句,我敢肯定这是您的问题,您需要通过单击“输入自定义代码”表单上的“使用和引用”进行添加。
我的猜测是,它需要一个using语句,而不是指令,并且需要括号。
IDENTIFIER
话虽如此,如果您转到服务器,则应该能够看到BPM源代码(例如c:\ inetpub \ wwwroot \ E10_Test \ Server \ BPM \ Sources \ BO \ JobEntry.Update)。这将帮助您调试,因为行号与此源代码对齐。