I ran a trace and Epicor uses Ice.Proxy.BO.MemoImpl.GetNewMemo() to create a memo and passes in all the same arguments I listed above, except for the first one. Instead of passing in ref MemoTableset ds, it passes in MemoDataSet ds.
Either way, the first argument is the one I'm stuck on. Whether its MemoTableset ds or MemoDataSet ds, where do I get it? What should I pass in? Do I instantiate a new MemoDataSet and pass it in?