Showing posts with label csv visualforce page. Show all posts
Showing posts with label csv visualforce page. Show all posts

Friday, July 8, 2016

Read CSV file from documents and create records

Please try the below example. Create a csv file on documents and use the below code to create records.
Document doc=[SELECT Body,ContentType,Description,DeveloperName,Name FROM Document WHERE Name = 'Csv File'];
String[] columns=doc.Body.toString().split('\n');
String[] columnNames=columns[0].split(',');
columns.remove(0);
List<Sobject> lstAccounts=new List<Sobject>();
for(String str:columns)
{
	Account acc=new Account();
	String[] fields=str.split(',');
	for(Integer i=0;i<fields.size();i++)
	{
		acc.put(columnNames[i].trim(),fields[i]);
	}
	lstAccounts.add(acc);
}
if(!lstAccounts.isEmpty())
{
	insert lstAccounts[0];
}

Tuesday, October 13, 2015

Download csv File using Visual force page

I tried downloading a csv file from a visualforce page.

In the code below i am querying contacts object and downloading the query result in csv


 {!a.FirstName},{!a.lastName}


Apex Class:
public class Sample
{   
    public List contacts {get;set;}
    public pageReference fetch()
    {
         contacts = [SELECT Id,firstname,lastname FROM Contact limit 20];
        return null;
    }    
}

Tuesday, February 3, 2015

Creating a CSV file from salesforce and sending through the Email

List<Account> lstAccount = [Select id,Name,CreatedDate from Account limit 10];
string header = 'Id, Name , Created Date \n';
string finalstr = header ;
for(Account acc: lstAccount)
{
       string recordString = '"'+acc.id+'","'+acc.Name+'","'+acc.CreatedDate+'"\n';
       finalstr = finalstr +recordString;
}

Messaging.EmailFileAttachment sendCsv = new Messaging.EmailFileAttachment();
blob csvBlob = Blob.valueOf(finalstr);
string fileName= 'Accounts.csv';
sendCsv.setFileName(fileName);
sendCsv.setBody(csvBlob);
Messaging.SingleEmailMessage email =new Messaging.SingleEmailMessage();
String[] toAddresses = new list<string> {'test@gmail.com'};
email.setSubject('Accounts');
email.setToAddresses( toAddresses );
email.setPlainTextBody('Accounts');
email.setFileAttachments(new Messaging.EmailFileAttachment[]{sendCsv});
Messaging.SendEmailResult [] r = Messaging.sendEmail(new Messaging.SingleEmailMessage[] {email});

Labels

visualforce page ( 13 ) apex integration ( 5 ) apex trigger ( 4 ) csv file from vf page ( 4 ) javascript ( 4 ) csv visualforce page ( 3 ) Too many ( 2 ) call out ( 2 ) integration ( 2 ) rest api ( 2 ) salesforce rest api ( 2 ) salesforce to salesforce integration ( 2 ) sfdc rest api ( 2 ) trigger ( 2 ) 15 digit to 18 digit ( 1 ) DML rows in Apex ( 1 ) Date Conversion ( 1 ) Date/Time conversion ( 1 ) Deploy ( 1 ) Objects to Future Annotated Methods ( 1 ) SFDC limits ( 1 ) Sobject to Future Annotated Methods ( 1 ) Test Class ( 1 ) TimeZone Conversion ( 1 ) Too many dml rows ( 1 ) Too many future calls ( 1 ) annotations ( 1 ) apex code ( 1 ) closed opportunities ( 1 ) commit ( 1 ) convert ( 1 ) create records ( 1 ) csv create records ( 1 ) custom setting ( 1 ) deployment ( 1 ) deployment changeset ( 1 ) disable apex class ( 1 ) disable apex trigger ( 1 ) disable in production ( 1 ) document ( 1 ) download ( 1 ) field name ( 1 ) formula fields ( 1 ) iframe ( 1 ) inactive ( 1 ) intellisense ( 1 ) jsforce ( 1 ) limits ( 1 ) matrix report in vf page ( 1 ) multi select ( 1 ) multi select salesforce ( 1 ) multiselect ( 1 ) paypal ( 1 ) picklist ( 1 ) record type ( 1 ) rollback ( 1 ) salesforce limits ( 1 ) salesforce list ( 1 ) salesforce map ( 1 ) salesforce rest ( 1 ) salesforce set ( 1 ) salesforce1 ( 1 ) sandbox deployment ( 1 ) sfdc collection ( 1 ) sfdc list ( 1 ) sfdc map ( 1 ) sfdc rest ( 1 ) sfdc set ( 1 ) uncommitted ( 1 ) updated field ( 1 ) user ( 1 ) validation rule opportunity ( 1 ) validation rules opportunities ( 1 ) vf page ( 1 )

Ad