上面的链接确实包含解决方案——我已经包含了该页面的代码,以防该页面消失或不再可用。感谢 gl00mie 在该网站上回答并提供此答案。
您应该像这样创建一个新的 InventMovement 方法:
public MyNewFieldType myNewField()
{
return MyNewFieldType::DefaultValue; // suppose your new field is an enum
}
然后修改\Classes\InventMovement\initInventTransFromBuffer
void initInventTransFromBuffer(InventTrans _inventTrans, InventMovement _movement_orig)
{
// ... append this line to the end of whatever else is already in this method
_inventTrans.MyNewField = this.myNewField();
}
最后重载 InventMov_Journal 类中的新方法:
public MyNewFieldType myNewField()
{
return inventJournalTrans.MyNewField;
}