SalesForce.com/VisualForce/Apexタグ/page の変更点

Top > SalesForce.com > VisualForce > Apexタグ > page


*<apex:page>
 VisualForceの基本となるタグ
 Attribute(属性)の設定が多いが、その多くを理解しておく必要がある

**属性
,Attribute,Valueの型,デフォルト,概要
,action,Action Method,,"サーバーからリクエストを受けたときに実行されるaction メソッド。これを参照する際は式言語を使用。例えば action="{!doAction}" と書くと doAction() メソッドを参照できる。このコンポーネントが明示されない場合、通常通りページが実行される。また、action メソッドがnullを返した場合はページが更新される。このメソッドはページが実行される前に呼ばれ、任意に、ユーザーを別ページにリダイレクトすることが可能。初期化にこのメソッドを使うべきではない。"
,apiVersion,double,,WebServiceAPIのバージョン。別に書かなくても良いのではないかと。
,cache,Boolean,false,"trueの場合、ブラウザはページをキャッシュする。Sitesで公開する場合(Sitesではアカマイサーバでの協力なキャッシュが利用できる)別の設定をする必要がある。"
,contentType,String,,"当コンテンツのMIME型を指定する。指定する値は、""text/html"" ""application/vnd.ms-excel"" ""text/css"" 等で、詳細は「http://www.iana.org/assignments/media-types/」内の定義に準拠する。""application/vnd.ms-excel#contacts.xls""の様にファイル名を指定することも可能。※ブラウザの種類によっては、ファイル名を指定したり、cacheをtrueにしないとファイルが開けないこともある。"
,controller,String,,"ApexCode記述した、Custom Controllerクラスを指定する。**ControllerとVisualForceの対応は別ページで今後解説予定"
,expires,Integer,0,"キャッシュ有効期限を秒単位で指定。キャッシュを有効(true)にしてある場合のみ有効。cache属性と同様に、Sitesで利用する場合は別設定。"
,extensions,String,,"The name of one or more custom controller extensions written in Apex that add additional logic to this page.,,,11.0"
,extensions,String,,"カスタムコントローラー エクステンションの名前。ロジックを追加するのに使われる。"
,id,String,,"別コンポーネントからこのVisualForceページを特定するためのID。生成されたHTMLの中の各タグにidを指定する場合に、接頭文字としても使われる(詳細後述)。"
,label,String,,ラベル。
,language,String,,"言語を指定する。SalesForceでサポートされている言語であればOK。Valueは""en"" ""en-US"" ""ja""など。"
,name,String,,Force.com WebServiceAPIから参照される際に使われるユニークな名称。
,pageStyle,String,,廃止!!消せばいいのに!!
,recordSetName,String,,廃止!!消せばいいのに!!
,recordSetVar,String,,"標準コントローラを利用して、Account等の標準オブジェクトを利用する際に指定する。例えば、Accountsコントローラを利用する場合に""var_account""を指定しておけば、結果オブジェクトの利用時に{!var_account}を指定できる。"
,renderAs,String,,"VisualForceの出力形式を切り換えることができます。現在はPDFしかサポートされていません。PDFを出したいのであれば、""pdf""を指定してください。"
,rendered,Boolean,true,rendarされるページかどうかを指定。
,setup,Boolean,false,"A Boolean value that specifies whether the page should use the style of a standard Salesforce setup page. If true、 setup styling is used. If not specified、 this value defaults to false.,,,10.0"
,setup,Boolean,false,"Salesforceの標準設定ページのスタイルを使用すべきかを明示するBoolean値。True指定で使用可能。"
,showHeader,Boolean,true,"falseを指定すると、いわゆる「SalesForce」の画面に表示されているヘッダーやメニューが消える。Sitesで公開する際は必須と言える。重要。"
,sidebar,Boolean,true,"falseを指定すると、いわゆる「SalesForce」の画面に表示されているヘッダーやメニューが消える。Sitesで公開する際は必須と言える。重要。"
,standardController,String,,標準コントローラを利用する場合に設定する。
,standardStylesheets,Boolean,false,SalesForceの標準スタイルシートを利用する際にtrueに。
,tabStyle,String,,tabを利用する際に設定する。詳細は今後予定。
,title,String,,ページのタイトルを設定。ぜひ設定しておこう。
,wizard,Boolean,,廃止!!消せばいいのに!!

**使用例
ログインしているユーザの名前を表示。
 <apex:page standardController="Account" title="apex:page使用例" showHeader="false" cache="true" expires="3600">
     <apex:pageBlock title="Hello {!$User.FirstName}!">
     <h1>Congratulations</h1>
     This is your new Page        
     </apex:pageBlock>
 </apex:page>
{!$User.FirstName}はログインしているユーザの名前を表示します。
-standardController
Accountの標準コントローラ使用
-title
「apex:page使用例」を設定
-showHeader
ヘッダーは使用しない
-cache
キャッシュする
-expires
キャッシュ時間は3600秒

***PDFを表示
 <apex:page renderAs="pdf">
     <h1>sample</h1>
     <p>PDF</p>
 </apex:page>

現在、PDF出力機能は日本語などの2バイトコードの文字を対応していないので出力する場合は外部のPDFサービスを使用しなければならない。
ただし、下記のスタイルを定義すれば日本語は表示されるが対応するフォントは1種類しかない。
 body { font-family: Arial Unicode MS;}

TOP