Друзья, привет, я новичок в salesforce и ищу совет.
Есть страница стандартного объекта с несколькими блоками (допустим создание нового объекта). Реально ли как нибудь вытянуть эти блоки и отобразить их на созданной VisualForce странице?
Из гугла нашел только <apex:iform>, и то, непонятно, как его обрезать.
Не совсем понятно что именно тебе нужно.
Если тебе нужно страницу редактирования объекта, то страница будет примерно следующей(пример для Account):
<apex:page standardController="Account">
<apex:form>
<apex:pageBlock title="My Content" mode="edit">
<apex:pageBlockButtons>
<apex:commandButton action="{!save}" value="Save"/>
</apex:pageBlockButtons>
<apex:pageBlockSection title="My Content Section" columns="2">
<apex:inputField value="{!account.name}"/>
<apex:inputField value="{!account.site}"/>
<apex:inputField value="{!account.type}"/>
<apex:inputField value="{!account.accountNumber}"/>
</apex:pageBlockSection>
</apex:pageBlock>
</apex:form>
</apex:page>
Если для отображения объекта:
<apex:page standardController="Account">
<apex:pageBlock title="My Content" mode="maindetail">
<apex:pageBlockSection title="My Content Section" columns="2">
<apex:outputField value="{!account.name}"/>
<apex:outputField value="{!account.site}"/>
<apex:outputField value="{!account.type}"/>
<apex:outputField value="{!account.accountNumber}"/>
</apex:pageBlockSection>
</apex:pageBlock>
</apex:page>
Для отображения чего то из стандартной страницы, нужно это верстать по новой. Советую для начала разобраться с apex тегами, там есть много чего интересного.
Понятно, спасибо. Жаль, что придется верстать по новой. Там, скажем так, обычными тегами не отделаешься и придется писать javascript, что ж, как раз научусь..
Посмотри вот это: apex:detail
Его можно использовать для вставки Standard Layout в Custom Visualforce страницу.
Но тут загвоздка что вставится именно view режим, не edit (хотя можно включить inlineEdit=true и редактировать прямо на странице).
А так правильно Alex заметил, страницы edit обычно делают с нуля.
можно конечно извратиться, но накидать поля на страницу проще ![]()
Или можно использовать апех пакет для создания страницы редактирования из стандартного лайаута.
А что за пакет?
Он создает кастомную страницу редактирования один раз, предварительно, или каждый раз динамически, на лету?
1 раз. не помню как точно пакет назывался вроде Etoros. Поишите плиз на апексчендже.
Спасибо всем. Тем не менее, решился изобретать велосипед, для опыта будет полезно:)
Если срочно, то скинь лайаут в виде xml, я сгенерю тебе страницу.
я к слову пытался как-то выгрузить метадату в Эклипс. Но там выгружаются пустые файлы.
например в папке Workflow есть xml name.workflow - но в нем только две строки...
не скажу что я очень старался разобраться в ситуации - не было в этом рабочей необходимости, но если поскажите как это сделать правильно, то буду премного благодарен
Тут 2 варианта
1. У тебя нет воркфлов для объекта
2. У тебя проблемы с package.xml
ого!!! я только сейчас увидел-осознал что выгруженные файлы в папке workflows - это не "буквальное повторение" раздела "Settings -> Workflow & Approvals"! Все завязано на объектах, и выгрузились xml файлы для всех объектов (где вероятно возможны ВФ). И если у объекта нет ВФ- то и файл пустой.
спасибо