17Migrating Page Layouts

Page Layouts

A page layout defines the appearance of pages, such as the edit, detail, or create pages for Oracle CRM On Demand records by hiding or adding sections or fields to the page. Page layouts can be one of the following:

  • Static. Indicates that specific fields are defined by role. This chapter applies only to static page layouts.

  • Dynamic. Indicates that the page layouts show different sets of fields for different records of the same record type, depending on the picklist value that you select in a certain field on the record.

  • For more information about dynamic layouts, see Migrating Dynamic Page Layouts.

The following table describes the Oracle Migration Tool On Demand client commands used with page layouts. For more information about running these commands, see Migrating Page Layout Field Information.

Table Commands Used with Page Layouts in Oracle Migration Tool On Demand

Command Description

ReadAll PageLayoutField

This command exports all field setup and field layout information for page layouts, as defined in Step 2 and Step 3 of the Oracle CRM On Demand Page Layout Wizard.

ReadAll PageLayoutRelatedInformation

This command exports all related information for page layouts, as defined in Step 4 and Step 5 of the Page Layout Wizard.

ReadAll PageLayoutSection

This command exports all section setup and layout information for page layouts.

Upsert PageLayoutField PageLayoutFieldXML

This command updates or inserts field setup and field layout information for page layouts. The page layout is derived from an XML file definition.

Upsert PageLayoutRelatedInformation PageLayoutRelatedXML

This command updates or inserts page layout related information. The page layout is derived from an XML file definition.

Upsert PageLayoutSection PageLayoutSectionXML

This command updates or inserts page layout section information. The page layout is derived from an XML file definition.

Note: Nonadministrative Oracle CRM On Demand users can run the ReadAllcommand for PageLayoutField, PageLayoutRelatedInformation, and PageLayoutSection.

Privileges Required for Migrating Page Layouts

The following privileges are required for the user account running the Oracle Migration Tool On Demand client commands:

  • For the ReadAll command: Enable Web Services Access.

  • For the Upsert command: Enable Web Services Access and Customize Application.

For information about setting and checking privileges, see Oracle CRM On Demand Online Help.

Elements and Sections in the Page Layout Field Information XML Output File

The following table describes the elements and sections in the page layout field information XML output file.

Table Elements and Sections in the Page Layout Field Information XML File

Description Element or Section

<ObjectName> contains the system name of the record type (object), which never changes.

<data:ObjectName>Account</data:ObjectName 

<LayoutName> contains the name of the page layout.

<data:LayoutName>My Custom Account Page 
 Layout</data:LayoutName> 

<Description> contains the description of the page layout.

<data:Description>My Custom Account Page 
 Layout Description</data:Description>

The <ListOfPageLayoutField> section contains the field layout information. For more information, see Example of the Values for Page Layout Field Information.

<data:ListOfPageLayoutField>
  <data:PageLayoutField> 
    <data:FieldName>Name</data:FieldName>
    <data:ReadOnly>false</data:ReadOnly>
    <data:Required>true</data:Required>
    <data:Section>0</data:Section>
    <data:Column>0</data:Column>
    <data:Row>0</data:Row>
  </data:PageLayoutField>
. . .
</data:ListOfPageLayoutField> 

    Example of the Values for Page Layout Field Information

    The following image illustrates how the section, column, and row values that the XML output generates map to the field layout for a page layout.

    Example of the Values for the Page Layout Field Information

    The UI Name might not match the value contained in the <FieldName> element. Use the section, column, and row values provided in the XML file to appropriately determine the value that it represents in the UI. For example, consider the following portion of the XML output, which is based on the configuration in the preceding image:

    <data:PageLayoutField>
      <data:FieldName>Type</data:FieldName>
      <data:ReadOnly>false</data:ReadOnly>
      <data:Required>false</data:Required>
      <data:Section>1</data:Section>
      <data:Column>0</data:Column>
      <data:Row>0</data:Row>
    </data:PageLayoutField>
    

    Using the preceding image and the values for the <Section>, <Column>, and <Row> elements in the XML code, you can observe that <FieldName>Type</FieldName> corresponds to the UI value of Account Type in the Account Sales Information section.

      Elements and Sections in the Page Layout Section XML Output File

      The following table describes the elements and sections in the page layout section XML output file.

      Table Elements and Sections in the Page Layout Section XML File

      Description Element or Section

      <ObjectName> contains the system name of the record type (object), which never changes.

      <data:ObjectName>Account</data:ObjectName>
      

      <LayoutName> contains the name of the page layout.

      <data:LayoutName>myPageAccountLayout
      </data:LayoutName>
      

      The <ListOfPageFormSection> section contains the details of the sections for the page layout.

      <data:ListOfPageFormSection>
        <data:PageFormSection>
          <data:SectionSequence>3
          </data:SectionSequence>
      . . .
        </data:PageFormSection>
      . . .
      </data:ListOfPageFormSection>
      

      The <PageFormSection> section contains the details of one section in the page layout.

      <data:ListOfPageFormSection>
        <data:PageFormSection>
      . . .
        </data:PageFormSection>
      . . .
      </data:ListOfPageFormSection>
      

      For information about the <SectionSequence> element, see Example of the Values for Page Layout Sections.

      <data:ListOfPageFormSection>
        <data:PageFormSection>
          <data:SectionSequence>3
          </data:SectionSequence>
      . . .
        </data:PageFormSection>
      . . .
      </data:ListOfPageFormSection>
      

      The <ListOfFormSectionTranslation> section contains the translation values for the section name.

      <data:ListOfPageFormSection>
        <data:PageFormSection>
      . . .
          <data:ListOfFormSectionTranslation>
      . . .
          </data:ListOfFormSectionTranslation>
        </data:PageFormSection>
      . . .
      </data:ListOfPageFormSection>
      

      The <FormSectionTranslation> section contains the translation values for one language:

      <data:ListOfPageFormSection>
        <data:PageFormSection>
      . . .
          <data:ListOfFormSectionTranslation>
            <data:FormSectionTranslation>
              <data:LangId>ENU</data:LangId>
              <data:DisplayName>myPageAccountLayout
              </data:DisplayName>
            </data:FormSectionTranslation>
      . . .
          </data:ListOfFormSectionTranslation>
      . . .
        </data:PageFormSection>
      . . .
      </data:ListOfPageFormSection>
      

        Example of the Values for Page Layout Sections

        In a page layout section XML file, the <SectionSequence> element specifies the location of a section relative to the other sections in the layout. The first section at the top of the page layout has a <SectionSequence> of 0 which increments by 1 as the sequence moves down the sections in the page layout.

        For example, consider the following portion of a page layout section XML file, which shows the values for the Additional Information: section:

        <data:SectionSequence>2</data:SectionSequence>
        <data:ListOfFormSectionTranslation>
        <data:FormSectionTranslation>
        <data:LangId>ENU</data:LangId>
        <data:DisplayName>Additional Information:</data:DisplayName>
        </data:FormSectionTranslation>
        </data:ListOfFormSectionTranslation>
        

        The <SectionSequence> element in the XML output is set to 2 for the Additional Information: section, which corresponds to the position of the Additional Information: section in the list of sections shown in the following image. The Additional Information: section is the third section in the list.


        Example Page Layout Section Setup

          Migrating Page Layout Field Information

          The following topics provide examples of how to use the Oracle Migration Tool On Demand client to migrate page layout field information:

          When using the Oracle Migration Tool On Demand client to migrate page layout field information, observe that field management information takes precedence over page layout field information when a field is set as required or read-only through field management. For example, if the field management XML for an extract operation specifies a field as required, but the page layout XML for an extract operation specifies the field as not required, then the field is displayed as required in the page layout in the Oracle CRM On Demand UI after migrating this information. To completely extract and migrate a company's field management information, you must extract and migrate both the field management and page layout information. For more information about extracting and migrating field management information, see Migrating Custom Fields.

          Note: Back up your configuration data and all other relevant data before running the Oracle Migration Tool On Demand client.

            Extracting All Page Layout Field Information

            This topic describes how to extract all page layout field information from your Oracle CRM On Demand environment (customer test environment or production).

            Syntax

            The following is the syntax for using the Oracle Migration Tool On Demand client to extract all page layout field information:

            migrationtool -u UserID -s ServerURL ReadAll PageLayoutField 
            

            where:

            • UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.

            • ServerURL is the URL for the Oracle CRM On Demand server where your company resides.

            Note: The Oracle Migration Tool On Demand client requests your Oracle CRM On Demand password, which can be redirected (using the pipe command) to the client program from standard input; that is, from a file, from the command line, or from another program.

            Example of Extracting All Page Layout Field Information

            The following is an example of extracting all page layout field information from your Oracle CRM On Demand server:

            migrationtool -u UserID -s ServerURL ReadAll PageLayoutField
            

              Updating or Inserting Page Layout Field Information for a Single Object (Upsert)

              This topic describes how to update page layout field information for a single object (if it exists) or insert this information (if it does not exist) in your Oracle CRM On Demand environment (customer test environment or production).

              Syntax

              The following is the syntax for using the Oracle Migration Tool On Demand client to update page layout field information for a single object (if it exists) or insert this information (if it does not exist):

              migrationtool -u UserID -s ServerURL Upsert PageLayoutField PageLayoutFieldXML 
              

              where:

              • UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.

              • ServerURL is the URL for the Oracle CRM On Demand server where your company resides.

              • PageLayoutFieldXML is the fully qualified path name of the page layout field information XML file for a single object such as Account, for example:

                C:\My Files\PageLayoutFieldInformation\Account.xml
                

              Example of Updating or Inserting Page Layout Field Information for a Single Object

              The following is an example of updating page layout field information for a single object such as Account (if it exists) or inserting this information (if it does not exist) in your Oracle CRM On Demand server:

              migrationtool -u UserID -s ServerURL Upsert PageLayoutField "C:\My Files\PageLayoutFieldInformation\Account.xml"
              
              Note: Quotation marks are required only if the name contains spaces.

                Migrating Page Layout Section Information

                The following topics provide examples of how to use the Oracle Migration Tool On Demand client to migrate page layout section information:

                Note: Back up your configuration data and all other relevant data before running the Oracle Migration Tool On Demand client.

                  Extracting All Page Layout Section Information

                  This topic describes how to extract all page layout section information from your Oracle CRM On Demand environment (customer test environment or production).

                  Syntax

                  The following is the syntax for using the Oracle Migration Tool On Demand client to extract all page layout section information:

                  migrationtool -u UserID -s ServerURL ReadAll PageLayoutSection
                  

                  where:

                  • UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.

                  • ServerURL is the URL for the Oracle CRM On Demand server where your company resides.

                  Note: The Oracle Migration Tool On Demand client requests your Oracle CRM On Demand password, which can be redirected (using the pipe command) to the client program from standard input; that is, from a file, from the command line, or from another program.

                  Example of Extracting All Page Layout Section Information

                  The following is an example of extracting all page layout section information from your Oracle CRM On Demand server:

                  migrationtool -u UserID -s ServerURL ReadAll PageLayoutSection
                  

                    Updating or Inserting Page Layout Section Information for a Single Object (Upsert)

                    This topic describes how to update page layout section information for a single object (if it exists) or insert this information (if it does not exist) in your Oracle CRM On Demand environment (customer test environment or production).

                    Syntax

                    The following is the syntax for using the Oracle Migration Tool On Demand client to update page layout section information for a single object (if it exists) or insert this information (if it does not exist):

                    migrationtool -u UserID -s ServerURL Upsert PageLayoutSection PageLayoutSectionXML 
                    

                    where:

                    • UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.

                    • ServerURL is the URL for the Oracle CRM On Demand server where your company resides.

                    • PageLayoutSectionXML is the fully qualified path name of the page layout section information XML file for a single object, such as Account, for example:

                      C:\My Files\PageLayoutSection\Account\AccountPageLayoutSection.xml
                      
                    Note: The Oracle Migration Tool On Demand client requests your Oracle CRM On Demand password, which can be redirected (using the pipe command) to the client program from standard input; that is, from a file, from the command line, or from another program.

                    Example of Updating or Inserting Page Layout Section Information for a Single Object

                    The following is an example of updating the page layout section information for a single object, such as Account (if it exists) or inserting this information (if it does not exist) in your Oracle CRM On Demand server:

                    migrationtool -u UserID -s ServerURL Upsert PageLayoutSection "C:\My Files\PageLayoutSection\Account\AccountPageLayoutSection.xml"
                    
                    Note: Quotation marks are required only if the name contains spaces.