AccountRight Enterprise v19,使用ODBCAU1001。
在发现我的MYOB版本的ODBC问题应该发布到StackOverflow之前,我已将此问题发布到MYOB论坛。
我需要清除客户卡中的几个字段,但是MYOB不允许我这样做,我希望有人能够向我展示正确的方法。
我尝试执行的方法是写入Import_Customer_Cards表,为多个客户联系人字段提供更新的数据。具体来说,我尝试清除Address1Phone1,Address1Salutation等,同时覆盖其他字段,例如Address1Email。
我正在使用ADO从Microsoft Access VBA进行此操作。我正在使用的代码如下:
strSQL = "INSERT INTO Import_Customer_Cards (CoLastName, Address1Phone1, Address1Phone2, Address1Phone3, Address1Fax, Address1Email, Address1ContactName, Address1Salutation)
VALUES ('Customer Name', '', '123456789', '987654321', '555333222', 'some@email.com', 'Contact Name','')"
cn.BeginTrans
cn.Execute strSQL
cn.CommitTrans
我已经针对MYOB编程了很多年;我曾经是MYOB开发人员的合作伙伴,并且我对使用MYOB ODBC非常熟悉,但是不管您信不信,我以前从未需要清除字段。
我从上面的代码中期望的行为是所有字段都将根据VALUE子句进行更新。具体来说,由于零长度字符串,我希望Address1Phone1和Address1Salutation为空白。但是,观察到的结果令人沮丧。其他字段将按预期成功更新,但是,Address1Phone1和Address1Salutation中的值不会更改,无论它们先前是否保留值。
我尝试为这两个字段使用零长度字符串,并且尝试使用空值,并且尝试使用单个空格字符。似乎没有任何工作可以清除这两个领域。如果我使用可打印字符,例如使用句号(。),则字段的值将按预期方式更改,但是我无法让自己在生产环境中执行此操作。
我做错了什么,还是有一种我不知道的方法?
非常感谢您查看此问题。
关于, 格雷厄姆