我必须在DirPartyTable
上创建新记录。
我用了这段代码:
DirPartyTable _myDirPartyTable;
myPartyNumber = DirPartyTable::getNewPartyNumber((webSession() == null));
myDirPartyTable = DirPartyTable::createNew(myPartyType , myName, myPartyNumber);
//或没有partynumber
myDirPartyTable = DirPartyTable::createNew(myPartyType , myName);
但在这两种情况下,标准方法都会生成两个 Sequence ParyNumber。 在Debu模式下,我看到系统得到了PartyNumber的两倍。
如何创建记录而不在序列数字中创建孔?
我尝试使用另一个代码:
select forupdate myDirPartyTable;
myDirPartyTable.name = ....;
//etc
myDirPartyTable.insert();
但不创造记录。
谢谢, 享受!
答案 0 :(得分:2)
DirPartytable是地址簿框架的基础表,是表继承层次结构的顶级,请参阅Implementing the Global Address Book Framework (White paper)中的引用
您不应该尝试直接创建一个聚会,而是从实现DirParty框架的实体创建。创建供应商时,您不需要创建DirParty(带有herited表),然后创建VendTable并将它们全部链接在一起。创建供应商将直接进行。
然后,如果您仍然遇到两次Party号码呼叫,请在Microsoft支持中记录案例。
ulisses:我解决了问题,我必须在PartyType(组织或人员等......)之前创建并在更新后创建我创建的DirPartyTable。
答案 1 :(得分:0)
试试AxDirPartyTable Class之类的:
AxDirPartyTable axDirPartyTable;
axDirPartyTable = AxDirPartyTable::construct();
axDirPartyTable.parmName(myName);
axDirPartyTable.parmPartyNumber(myPartyNumber);
axDirPartyTable.save();
可以在此处找到示例:How to create a record in Global address book throgh code。