Theres several ways to Launch the Memo Form. You can give it a try:
To your Form_Load event you add:
// Enable MemoTool
new CustomMemoHelper(this.UD100Form).AddViewToWatch(this.oTrans.Factory("UD100"));
baseToolbarsManager.Tools["MemoTool"].SharedProps.Enabled = true;
baseToolbarsManager.Tools["MemoTool"].SharedProps.Visible = true;
OUTSIDE of class Script {} (after or before) you create a new Class:
public class CustomMemoHelper : MemoHelper
{
public CustomMemoHelper(EpiBaseForm form) : base(form)
{}
protected override void LaunchMemoEditor()
{
EpiTransaction transaction = (EpiTransaction)this.Transaction;
EpiDataView dv = ((EpiDataView)(transaction.EpiDataViews["UD100"]));
DataRow dr = dv.CurrentDataRow;
//this.LaunchMemoEditor(dr["Key1"].ToString(), dr["Key2"].ToString(), dr["Key3"].ToString(), "", "", "");
this.LaunchMemoEditor(dr["Key1"].ToString(), "UD100:");
//this.LaunchMemoEditor(Key1, Key2, Key3, Key1_Description, Key2_Description, Key3_Description);
}
}
Now the problem described for UD100 tables which may not be a problem for APInvHead IS that when you hit Add New Memo Epicor Checks ZDataTable to see if the Description looks like this
If it does then it checks permissions to see if it can run
Ice.Manager.Security.CheckSecurityAccess("BO.Memo.Allow___YOURTABLE_HERE___Memo"));
Not sure what else you have to do for a UD100 table! But you might have no issues doing it for APInvHead since I see
APInvHed <MemoMethod:APInvoice> Accounts Payable Invoice Header. DELETE: Not allowed if Posted.