I have a custom object as competitor ,forecast ,std obj as quote and quotelineitem. I have a created a visual force page in a data form ,but it should be in PDF report .So i have added an attribute as "renderas=pdf" ,but the page does not look like a PDF ,it gets messed up completely with rows and columns,it should be linked on the Quote header to open this PDF.Any sugesstion plz. 1) Visual force page as a PDF report 2) linked on the Quote header to open this PDF 3)Forecast object is not linked to quote object ,how should i call those field into the vf page ,using wrapper class i need do that. Here is the Code : using the "render as"
<!--This is the Quote object section -->
<apex:pageBlockSection title="General Information">
<apex:inputField value="{!Quote.Name}" label="Customer Name"/><!-- need to find out as which name field to be used -->
<apex:inputField value="{!Quote.Effective_Date__c}" label="Accout Type"/><!-- need to find out as which name field to be used -->
<apex:inputField value="{!Quote.Effective_Date__c}" label="Date"/>
<apex:inputField value="{!Quote.Effective_Date__c}" label="Expected Order Date" required="true"/>
<apex:inputField value="{!Quote.Comments__c}" label="Internal Comments"/><!-- need to be created this field on quote object -->
<apex:inputField value="{!Quote.Comments__c}" label="External Comments"/>
<apex:inputField value="{!Quote.Opportunity.Probability}" label="Probability(%)"/>
<apex:inputField value="{!Quote.Opportunity.AccSegment__c}" label="Segment"/>
<apex:inputField value="{!Quote.Opportunity.AccApplication__c}" label="Application"/>
<apex:inputField value="{!Quote.Opportunity.Persona__c}" label="Persona"/>
<apex:inputField value="{!Quote.Opportunity.Region__c}" label="Geography"/><!--<!-- need to findout this field on opportunity object -->
</apex:pageBlockSection>
<!--This is the QuotelineItem object section -->
<apex:pageBlockSection title="Quote Line Item Details">
<apex:pageBlockTable value="{!Quote.Quotelineitems}" var="qli">
<apex:column headerValue="Part Numbers">
<apex:inputField value="{!qli.Product2}"/>
</apex:column>
<apex:column headerValue="Price">
<apex:inputField value="{!qli.UnitPrice}"/>
</apex:column>
<apex:column headerValue="End Customer Price">
<apex:inputField value="{!qli.End_Customer_Price__c}"/>
</apex:column>
<apex:column headerValue="Quantity">
<apex:inputField value="{!qli.Quantity}"/>
</apex:column>
<apex:column headerValue="Total">
<apex:inputField value="{!qli.TotalPrice}"/>
</apex:column>
</apex:pageBlockTable>
</apex:pageBlockSection>
<!--This is the QuotelineItem object section -->
<apex:pageBlockSection title="Period Name">
</apex:pageBlockSection>
<!--This is the justification and Account section -->
<apex:inputField value="{!Quote.Account.Name}" label="RFQ Justification:"/> <!--need to find out this field -->
<apex:inputField value="{!Quote.Account.Main_Customers_of_Account__c}" label="Main Customers of Account:"/>
<apex:inputField value="{!Quote.Account.Bridgelux_Competition_at_Account__c}" label="Bridgelux Competition at Account:"/>
<apex:inputField value="{!Quote.Account.Servicing_Region__c}" label="Geographic regions serviced:"/>
<apex:inputField value="{!Quote.Account.Annual_LED_Revenue__c}" label="Annual lighting revenue:"/>
<apex:inputField value="{!Quote.Account.Annual_LED_Revenue__c}" label="Annual LED revenue or percent:"/>
<apex:inputField value="{!Quote.Account.Annual_Purchases_of_LED_Sources_SAM__c}" label="Annual Purchases of LED Sources (SAM):"/>
<apex:inputField value="{!Quote.Account.Percent_of_LED_purchases_that_are_COB__c}" label="Percent_of_LED_purchases_that_are_COB__c:"/>
<apex:inputField value="{!Quote.Account.Percent_of_LED_purchases_that_are_COB__c}" label="Other Info:"/> <!--need to find out this field -->
<!--This is the Competitive data section -->
<apex:pageBlockTable value="{!Quote.Competitor_s__r}" var="com">
<apex:column headerValue="Company">
<apex:inputField value="{!com.Part_Number__c}"/>
</apex:column>
<apex:column headerValue="Product series">
<apex:inputField value="{!com.Product_Series__c}"/>
</apex:column>
<apex:column headerValue="Part Numbers">
<apex:inputField value="{!com.Part_Number__c}"/>
</apex:column>
<apex:column headerValue="Price">
<apex:inputField value="{!com.Price_Offered__c}"/>
</apex:column>
<apex:column headerValue="volume">
<apex:inputField value="{!com.Volume__c}"/>
</apex:column>
<apex:column headerValue="Date Price is Valid">
<apex:inputField value="{!com.Date_Price_is_Valid__c}"/>
</apex:column>
</apex:pageBlockTable>
<apex:pageBlockButtons >
<apex:commandButton value="EDIT" action="{EDIT}"/>
<apex:commandButton value="SAVE" action="{SAVE}"/>
<apex:commandButton value="CANCEL" action="{CANCEL}"/>