Salesforce - экспорт настраиваемого представления контактов в Excel - PullRequest
0 голосов
/ 31 июля 2010

Можно ли экспортировать пользовательский вид контактов в Excel?У меня есть кнопка, которая переходит на страницу ExportContacts.page, которая определяется как:

<apex:page standardController="Contact" contenttype="application/vnd.ms-excel" recordSetVar="contacts" extensions="ExportContactsExtension" >
  <apex:pageBlock title="Contacts">
    <apex:pageBlockTable value="{!contacts}" var="contact">
      <apex:column value="{!contact.LastName}"/>
      <apex:column value="{!contact.FirstName}"/>
      <apex:column value="{!contact.Name}"/>
      <apex:column value="{!contact.MailingCity}"/>
      <apex:column value="{!contact.Phone}"/>
      <apex:column value="{!contact.Fax}"/>
      <apex:column value="{!contact.MobilePhone}"/>
    </apex:pageBlockTable>
  </apex:pageBlock>
</apex:page>

ExportContactsExtension.cls определяется как:

public class ExportContactsExtension {

  public ExportContactsExtension(ApexPages.StandardSetController controller) {
    //set the page size so all records will be exported
    controller.setPageSize(controller.getResultSize());
  }

}

Вопрос в том, могу ли я экспортировать конкретныеполя, указанные в представлении контактов?На странице ExportContacts.page я должен определить поля для экспорта, такие как фамилия, имя и т. Д. Теперь, если я создам новое представление контактов и добавлю, скажем, адрес электронной почты, я увижу его на странице, но еслиЯ нажимаю кнопку экспорта, она не включает адрес электронной почты.Можно ли сделать этот экспорт динамическим, чтобы включить все значения из текущего представления?

Ответы [ 3 ]

1 голос
/ 31 июля 2010

Почему именно такой вид нужен в первую очередь? Есть ли в контроллере какая-то сложная логика для выбора записей?

Если запрос для них может быть написан в стандартном SOQL (например, [ВЫБРАТЬ Имя, Фамилия, MailingCity, Телефон, Факс, Мобильный телефон ОТ КОНТАКТА]), то для вас может быть гораздо эффективнее экспортировать записи с помощью Data Loader или плагина Excel под названием " Excel Connector ".

А если вам нужно иметь возможность экспортировать и (предварительно) просматривать данные на странице Salesforce - подумайте о создании отчета? Это то, для чего они нужны, и есть встроенные функции для экспорта в Excel или CSV.

0 голосов
/ 14 октября 2010

К сожалению, то, что вы спрашиваете, невозможно с apex сегодня. Для этого вам потребуется запросить, какой макет страницы был для просматриваемой записи, а затем проверить, какие поля видны.

0 голосов
/ 02 августа 2010

Вы можете экспортировать свои результаты в Excel, используя атрибут contentType в компоненте страницы apex :. Смотрите следующий пост:

Visualforce Экспорт в Excel / IE Ошибка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...