.xlsxシートの値を使用してSF Contactを作成しようとしています。"START_ARRAY値から文字列のインスタンスを逆シリアル化できません" Salesforce APIの問題
偽の電子メールアドレス、姓、名を手動で入力すると連絡先を作成できますが、xlsxシートから定義した値は参照できません。 印刷コマンドがうまく機能していて、読みたい適切なデータを読み込んでいます。
Pythonを2週間しか使っていませんでしたが、MySQLdbとの間でデータの読み取り、書き込み、保存ができましたが、今はこの問題に遭遇しています。どんな助けでも大歓迎です。
だから完全なエラーは次のとおりです。
ファイル "C:\ Python27 \ libには\サイト - パッケージ\ simple_salesforce-0.70-py2.7.egg \ simple_salesforce \ api.py"、行749、 _exception_handlerでraise exc_cls(result.url、result.status_code、name、response_content) simple_salesforce.api.SalesforceMalformedRequest:不正なリクエストhttps://na48.salesforce.com/services/data/v37.0/sobjects/Contact/。応答内容:[{u'errorCode ':u'JSON_PARSER_ERROR'、u'message ':[START_ARRAY値からラインストリングのインスタンスをデシリアライズu'Cannot:1、カラム:2]'}]
Email = sheet.col_values(1, 1)
Last = sheet.col_values(2, 1)
First = sheet.col_values(3, 1)
print Email
print Last
print First
sf.Contact.create({'LastName' : Last,'FirstName' : First,'Email' : Email})
オーケーエラーは修正されていますが、xlsxの各行の連絡先/ケースを作成するのではなく、xlsxシートの最後の行であるsalesforceに連絡先/ケースが1つだけ作成されます。それは大部分のすべてを正しく読み込み、実際に連絡先を正しい方法で作成しますが、最後の行だけを作成します。
現在のコード:
for c in range(sheet.ncols):
for r in range(sheet.nrows):
Email = sheet.col_values(1,r)[0]
print Email
Last = sheet.col_values(2,r)[0]
print Last
First = sheet.col_values(3,r)[0]
print First
Phone = sheet.col_values(4,r)[0]
print Phone
Street = sheet.col_values(5,r)[0]
print Street
City = sheet.col_values(6,r)[0]
print City
Postal = sheet.col_values(7,r)[0]
print Postal
Product = sheet.col_values(8,r)[0]
print Product
Store = sheet.col_values(9,r)[0]
print Store
SN = sheet.col_values(10,r)[0]
print SN
Name = sheet.col_values(3,r)[0]+sheet.col_values(2,r)[0]
sf.Contact.create({'FirstName' : First, 'LastName' : Last, 'Email' : Email, 'Phone' : Phone, 'MailingStreet' : Street, 'MailingCity' : City, 'MailingPostalCode' : Postal})
あなたは天才です。ありがとうございました。シート内のすべての行の連絡先を作成します。今すぐ連絡先を作成した後でケースを作成するだけです。 –