Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

upload a file to SalesForce programmatically

I build a flow which create a case in a salesforce. Now, I am trying to upload a file to that case programmatically. Basically the client uploads the file manually in the server. now the question is how could I upload it by java rest based web service. it's good to have any links which describe about this topic.

like image 543
Ravi Kumar Avatar asked Apr 05 '13 09:04

Ravi Kumar


People also ask

How do I upload a file to Salesforce?

To upload files to a library, select the library and then click Add Files. Files you upload to a library inherit the sharing settings of that library. You can also add files to Salesforce by: Attaching a file to a Chatter post.


1 Answers

First try to read the documents below:
See the following:
http://www.salesforce.com/in/?ir=1
API doc:
http://www.salesforce.com/us/developer/docs/api/Content/sforce_api_objects_document.htm
Examples:
http://login.salesforce.com/help/doc/en/fields_useful_field_validation_formulas.htm

The following code allows you to upload a physical file to Salesforce.com and attach it to a record.
Code:

  try {

        File f = new File("c:\java\test.docx");
        InputStream is = new FileInputStream(f);
        byte[] inbuff = new byte[(int)f.length()];        
        is.read(inbuff);

        Attachment attach = new Attachment();
        attach.setBody(inbuff);
        attach.setName("test.docx");
        attach.setIsPrivate(false);
        // attach to an object in SFDC 
        attach.setParentId("a0f600000008Q4f");

        SaveResult sr = binding.create(new com.sforce.soap.enterprise.sobject.SObject[] {attach})[0];
        if (sr.isSuccess()) {
            System.out.println("Successfully added attachment.");
        } else {
            System.out.println("Error adding attachment: " + sr.getErrors(0).getMessage());
        }


    } catch (FileNotFoundException fnf) {
        System.out.println("File Not Found: " +fnf.getMessage());

    } catch (IOException io) {
        System.out.println("IO: " +io.getMessage());            
    }

Please try this and let me know in case of any concern.

like image 193
Shreyos Adikari Avatar answered Sep 19 '22 15:09

Shreyos Adikari