NetSuite错误:CustomFieldRef是抽象类型,无法实例化
问题描述:
我正在使用NetSuite WSDL。我被困在过去两天的这个错误。我在互联网上搜索,但无法找到解决方案。NetSuite错误:CustomFieldRef是抽象类型,无法实例化
我尝试使用Python添加在NetSuite的一个custom field但我得到的错误
zeep.exceptions.Fault: org.xml.sax.SAXException: {urn:core_2017_1.platform.webservices.netsuite.com}CustomFieldRef is an abstract type and cannot be instantiated
任何形式的帮助将appretiated。提前致谢。
答
列表我用SelectCustomFieldRef代替CustomFieldRef解决的问题。即
new_record['companyName']= 'test_clinic1'
new_record['firstName']= 'test_clinic_first_name1'
new_record['altName']= 'test_clinic1'
new_record['lastName']='test_last__clinic_name2'
record = RecordRef(internalId=1, type='subsidiary')
new_record['subsidiary'] = record
customField= SelectCustomFieldRef()
customField.internalId='285'
customField.scriptId='custentity_profile_type'
customField.value={
'name': 'Clinic',
'internalId': '2',
'externalId': None,
'typeId': '31'
}
new_record['customFieldList']=CustomFieldList(customField)
答
该错误几乎不言自明,尽管没有帮助,除非您已经理解它。
如果你想编辑/创建自定义字段,你必须实例化正确的类型。
例如在Java中
StringCustomFieldRef strCF = new StringCustomFieldRef();
strCF.setInternalId(cfNSKey);
你可以得到的类型在Netsuite docs
如果你能在python中给出一个示例代码将会很有帮助。 –
这将是但我不知道。基本的概念是你需要创建一个具体的类型。提供Java是因为这就是我所拥有的。 – bknights
你能提供沙盒NetSuite的链接吗? –