たとえば、次の Visualforce ページがあるとします。
<table width="100%" border="0">
    <tr>  
      <td valign="top">
        <apex:pageBlock mode="edit" id="results">
           <apex:pageBlockTable value="{!contacts}" var="contact">
               <apex:column >
                   <apex:facet name="header">
                         email
                   </apex:facet>
                   <apex:outputField value="{!contact.email}"/>
                 </apex:column>
                  <apex:column >
                   <apex:facet name="header">
                            Name
                       </apex:facet>
                           <apex:commandLink reRender="detail">{!contact.name}
                     <apex:param name="id" value="{!contact.id}"/>
                       </apex:commandLink>
                    </apex:column>
                </td>
           </tr>
      </table>
および次の対応するコントローラー:
public List<Contact> contacts = [SELECT name, division, email FROM Contact];
このテーブルを部門ごとに分割したいとします (つまり、新しい部門がある場合、部門名を読み取るヘッダーをテーブルに配置し、その部門内のすべての連絡先の名前と電子メールをヘッダーの下に表示されます...これに似ています:
[                    Division 1                    ]
 Email                                           Name
    ....                                         ...
    ...                                          ...
    ...                                          ...
 [                   Division 2                    ]
  Email                                         Name
  ...                                           ...
 [                   Division 3                    ]
  Email                                        Name
 ...                                             ...
等...
頂点ページブロックでインラインでこれを行う方法はありますか? それとも、部門ごとに固有のページブロックを作成する必要がありますか?
この問題を解決するために私が取ることができる別のアプローチを誰かが持っていますか?