2012-03-01 11 views
8

में काम नहीं कर रहा अद्यतन मैं SalesForce API (एंटरप्राइज़ डब्लूएसडीएल) के माध्यम से एक रिकॉर्ड अपडेट करने का प्रयास कर रहा हूं।SalesForce API

नीचे दिया गया कोड ठीक निष्पादित करता है, और saveResult वापस कहता है कि ऑपरेशन सफल रहा।

फिर भी, जब मैं सेल्सफोर्स में देखता हूं - रिकॉर्ड अपडेट नहीं किया गया है। एकमात्र चीज जिसे मैं सोच सकता हूं वह है कि मैं गलत आईडी का उपयोग कर रहा हूं - लेकिन मैंने क्विंटुपल को चेक किया है और इसे फिर से चेक किया है और फिर इसे फिर से चेक किया है।

क्या किसी ने इससे पहले ऐसा कुछ सामना किया है? वैकल्पिक रूप से, मैं अगर किसी को बेवकूफ गलती है कि मैं शायद :-)

sforce.Participant__c updateParticipant = new sforce.Participant__c(); 

     updateParticipant.Id = participant.Id.Length == 15? participant.Id : participant.Id.Substring(0, 15); 

     if (updateType == "pre") 
     { 
      updateParticipant.Manual_Download_Date__c = DateTime.Now; 
      updateParticipant.Manual_Download__c = true; 
     } 
     else if (updateType == "post") 
     { 
      updateParticipant.Post_Class_Manual_Download__c = true; 
      updateParticipant.Post_Class_Manual_Downloaded_Date__c = DateTime.Now; 
     } 

     sforce.SaveResult[] result = SFLib.sfdc.update(new sforce.sObject[] { updateParticipant }); 
     if (result == null || result.Length <= 0) 
      return false; 
     else 
     { 
      if (result[0].success == true) 
       return true; 
      else 
       throw new Exception("Update participant failed", new Exception(result[0].errors[0].message)); 
     } 
+0

आपको नीचे दिए गए उत्तर को देना चाहिए और इस प्रश्न को खोलने से बचने के लिए अपना उत्तर स्वीकार करना चाहिए। – mmix

उत्तर

18

कहीं बनाया है नेट का उपयोग करते समय एपीआई पर अद्यतन विधि कॉल करने के बाहर बिंदु सकता है ताकि खुशी होगी, तो आप स्थापित करने की आवश्यकता * fieldname__c निर्दिष्ट * फ़ील्ड स्पष्ट रूप से। जैसे

updateParticipant.aDateField_StartDate__c = DateTime.Now; 
updateParticipant.aDateField_StartDate__cSpecified = true; 
+2

हालांकि यह केवल कुछ प्रकार, बूलियन/संख्या/तिथियों के मामले में है, यह तारों पर लागू नहीं होता है। – superfell

+0

अगर मैं कर सकता था, तो मैं इसे फिर से वोट दूंगा, मैं – Miles

+2

पर अपने बालों को खींच रहा हूं, हमने यह पता लगाने की कोशिश की कि हमारे साबुन ग्राहक CaseComment.is को सही क्यों नहीं बना सकते हैं। धन्यवाद @ आरओबीडी। इसके लिए यह दस्तावेज़ एसएफडीसी साबुन एपीआई डेवलपर गाइड http://www.salesforce.com/us/developer/docs/api/index_Left.htm#StartTopic=Content/implementation_considerations में 'कार्यान्वयन विचार' पृष्ठ के निचले हिस्से में रहता है। एचटीएम? सर्चटाइप = स्टेम – cropredy