Showing posts with label Insert Attachment. Show all posts
Showing posts with label Insert Attachment. Show all posts

Monday, March 12, 2012

Save an attachment in APEX

Example for save an attachment in APEX.
APEX CODE:
public class status{
private final Applicant__c applicant;
public Blob resume {get; set;}
public String contentType {get; set;}
public String fileName {get; set;}
public status(ApexPages.StandardController stdController) {
this.applicant=(Applicant__c)stdController.getRecord();
}
public PageReference saveApplication() {
  try{
        insert(applicant);                                      
   }catch(System.DMLException e){
      ApexPages.addMessages(e);
       return null;
}
if(resume!=null){
      Attachment attach=new Attachment();
      attach.Body=resume;
      attach.Name=filename;
      attach.ContentType=contentType;
      attach.ParentID=applicant.id;
    try {
          insert(attach);
      } catch(System.DMLException e) {
          ApexPages.addMessages(e);
          return null;
      }
  }
  PageReference p = Page.Confirmpage;
        p.setRedirect(true);
        return p;                   
}
}
VISUALFORCE PAGE:
 <apex:page standardController="Applicant__c" extensions="status">
<apex:form >
<table>
<tr>
<td>Applicant Name </td>
<td><apex:inputField value="{!Applicant__c.Name__c}"/></td>
</tr>
<tr>
<td>CV </td>
<td> <apex:inputFile accept="doc, txt, pdf" filename="{!fileName}" contentType="{!contentType}" filesize="1000" size="50" value="{!resume}"/> </td>
</tr>
<tr>
<td></td>
<td><apex:commandButton id="submitApplicant" value="Submit" action="{!saveApplication}"/></td>
</tr>
</table>
</apex:form>
</apex:page>