/ Published in: Other
Credits to Jesse Lorenz
http://wiki.developerforce.com/index.php/Adobe_XFDF
http://wiki.developerforce.com/index.php/Adobe_XFDF
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
private String getXmlString(Contact c) { String s = '<?xml version="1.0" encoding="UTF-8"?>' + '<xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve">' + '<f href="http://mysites-developer-edition.na1.force.com/resource/0/myform.pdf"/>' + '<fields>' + '<field name="DOB"><value>' + c.birthdate + '</value></field>' + '<field name="Name"><value>' + c.firstname + ' ' + c.lastname + '</value></field>' + '<field name="SS"><value>' + c.SS_Number__c + '</value></field>' + '<field name="Phone"><value>' + c.phone + '</value></field>' + '<field name="Citizenship"><value>' + c.Citizenship__c + '</value></field>' + '<field name="CountryOfBirth"><value>' + c.Country_of_Birth__c + '</value></field>' + '<field name="Tax"><value>' + c.Country_of_Tax_Residence__c + '</value></field>' + '<field name="GovId"><value>' + c.Government_Identification__c + '</value></field>' + '<field name="IdNumber"><value>' + c.ID_Number__c + '</value></field>' + '</fields><ids original="FEBDB19E0CD32274C16CE13DCF244AD2" modified="5BE74DD4F607B7409DC03D600E466E12"/>' + '</xfdf>'; return s; } public PageReference XFDFInit() { Contact c = [SELECT Id, firstname, lastname, SS_Number__c, birthdate, phone, Citizenship__c, Country_of_Birth__c, Country_of_Tax_Residence__c, Government_Identification__c, ID_Number__c, Account.Name, Account.BillingStreet, Account.BillingCity, Account.BillingState, Account.BillingPostalCode FROM Contact WHERE id = :ApexPages.currentPage().getParameters().get('id')]; String xmlContent = getXmlString(c); Attachment attachment = new Attachment(); attachment.Body = Blob.valueOf(xmlContent); attachment.Name = c.lastname + c.firstname + '.XFDF'; attachment.ParentId = c.Id; insert attachment; PageReference contactPage = new PageReference('/' + c.id); contactPage.setRedirect(true); return contactPage; } <apex:page showHeader="true" controller="myXFDFController" action="{!XFDFInit}" showHeader="false"> </apex:page>
URL: http://blog.sforce.com/sforce/2008/12/use-visualforce-and-apex-to-populate-pdf-forms.html