2017-09-21 17 views
0

저는 netsuite를 처음 사용하므로 현재 응용 프로그램을 통합해야합니다. 다음 코드를 작성하여 netsuite 샌드 박스 환경에 로그인하고 데이터베이스에 새 데이터 항목을 만들었습니다.suds.WebFault : 서버 오류 발생 : 'org.xml.sax.SAXException : 잘못된 유형 : 직원'

from suds.client import Client 
import os, time, sys, datetime 
import suds 
import logging 
logging.basicConfig(level=logging.INFO) 
logging.getLogger('suds.client').setLevel(logging.DEBUG) 

reload(sys) 
sys.setdefaultencoding('utf8') 

NS_HOST = 'https://webservices.sandbox.netsuite.com' 
email ='[email protected]' 
pwd ='ABCDEFGHI!' 
account = "3828138" 
NS_ENDPOINT = "2017_1" 
NS_ROLE = 25 

wsdl = 'https://webservices.sandbox.netsuite.com/wsdl/v2017_1_0/netsuite.wsdl' 

client = Client(url=wsdl) 
ApplicationInfo = client.factory.create('ns16:ApplicationInfo') 
ApplicationInfo.applicationId = "A8C51D62-63FC-42DC-AE13-B1B971F41C47" 

client.set_options(location= NS_HOST + "/services/NetSuitePort_" + 
NS_ENDPOINT, soapheaders={'applicationInfo':ApplicationInfo}) 

passport = client.factory.create('ns4:Passport') 
passport.email = email 
passport.password = pwd 
passport.account = account 

loginResponse = client.service.login(passport,_soapheaders= 
{'applicationInfo': ApplicationInfo}) 


print('Login Response: ') 
print (loginResponse.status) 

recordRef = client.factory.create('ns4:RecordRef') 
recordRef._internalId = 123456789 
recordRef._type = 'employees' 
record = client.service.get(recordRef) 
print (record) 

데이터를 게시하는 동안 로그인 할 수 있지만 다음 오류가 발생합니다.

suds.WebFault: Server raised fault: 'org.xml.sax.SAXException: Invalid type: employees' 

모든 종류의 도움을 환영합니다. 미리 감사드립니다.

답변

0

레코드 유형은 단일이어야합니다. '직원'이 아닌 recordRef.type = 'employee'으로 설정하십시오. 레코드 유형은 보통 invoice, salesorder, customer, vendor과 같은 단일 버전입니다.

+0

여전히 같은 오류가 발생합니다. –