Compartir a través de


Crear un panel

 

Publicado: enero de 2017

Se aplica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Los paneles de propiedad se pueden crear con SDK de Microsoft Dynamics 365 o mediante la personalización del formulario de entidad en Microsoft Dynamics 365 al modificar el archivo customizations.xml.

Nota

Algunos paneles que están creados mediante el SDK o a través de la personalización del formulario de entidad no son compatibles con el diseñador de paneles en la aplicación web. Para obtener más información, consulte Limitaciones: Creación de paneles mediante el SDK o a través de la personalización del formulario más adelante en este tema.

Antes de crear un panel, tenga en cuenta lo siguiente:

  • Tipo de panel: Si desea que los paneles estén disponibles en la organización y no desea administrar los niveles de acceso en un nivel más detallado, puede crear un panel de propiedad de la organización. Sin embargo, si está preocupado por los privilegios de acceso y la seguridad de su panel, considere la posibilidad de crear un panel propiedad del usuario donde tenga más control sobre quién puede obtener acceso a éste.

    Para crear paneles de propiedad de la organización, debe tener el rol de Administrador del sistema o Personalizador del sistema.

  • Diseño de panel: Cuando cree los paneles, tendrá que usar FormXML para definir los componentes y el diseño del panel. Para obtener información sobre cómo trabajar con FormXML para definir un panel, consulte Componentes del panel y elementos de FormXML. Para algunos FormXML de ejemplo de diferentes tipos de paneles, consulte Paneles de ejemplo.

En este tema

Crear un panel mediante el SDK

Crear un panel de propiedad de la organización al personalizar el formulario de entidad

Limitaciones: Creación de paneles mediante el SDK o a través de la personalización del formulario

Crear un panel mediante el SDK

Para crear un panel, cree una instancia de SystemForm para un panel que pertenece a una organización o UserForm para un panel propiedad del usuario. El siguiente ejemplo muestra cómo crear un panel de propiedad de una organización.


//This is the language code for U.S. English. If you are running this code
//in a different locale, you will need to modify this value.
int languageCode = 1033;

//We set up our dashboard and specify the FormXml. Refer to the
//FormXml schema in the Microsoft Dynamics CRM SDK for more information.
SystemForm dashboard = new SystemForm
{
    Name = "Sample Dashboard",
    Description = "Sample organization-owned dashboard.",
    FormXml = String.Format(@"<form>
            <tabs>
                <tab name='Test Dashboard' verticallayout='true'>
                    <labels>
                        <label description='Sample Dashboard' languagecode='{0}' />
                    </labels>
                    <columns>
                        <column width='100%'>
                            <sections>
                                <section name='Information Section'
                                    showlabel='false' showbar='false'
                                    columns='111'>
                                    <labels>
                                        <label description='Information Section'
                                            languagecode='{0}' />
                                    </labels>
                                    <rows>
                                        <row>
                                            <cell colspan='1' rowspan='10' 
                                                showlabel='false'>
                                                <labels>
                                                    <label description='Top Opportunitiess - 1'
                                                    languagecode='{0}' />
                                                </labels>
                                                <control id='TopOpportunities'
                                                    classid='{{E7A81278-8635-4d9e-8D4D-59480B391C5B}}'>
                                                    <parameters>
                                                        <ViewId>{1}</ViewId>
                                                        <IsUserView>false</IsUserView>
                                                        <RelationshipName />
                                                        <TargetEntityType>opportunity</TargetEntityType>
                                                        <AutoExpand>Fixed</AutoExpand>
                                                        <EnableQuickFind>false</EnableQuickFind>
                                                        <EnableViewPicker>false</EnableViewPicker>
                                                        <EnableJumpBar>false</EnableJumpBar>
                                                        <ChartGridMode>Chart</ChartGridMode>
                                                        <VisualizationId>{2}</VisualizationId>
                                                        <EnableChartPicker>false</EnableChartPicker>
                                                        <RecordsPerPage>10</RecordsPerPage>
                                                    </parameters>
                                                </control>
                                            </cell>
                                            <cell colspan='1' rowspan='10' 
                                                showlabel='false'>
                                                <labels>
                                                    <label description='Top Opportunities - 2'
                                                    languagecode='{0}' />
                                                </labels>
                                                <control id='TopOpportunities2'
                                                    classid='{{E7A81278-8635-4d9e-8D4D-59480B391C5B}}'>
                                                    <parameters>
                                                        <ViewId>{1}</ViewId>
                                                        <IsUserView>false</IsUserView>
                                                        <RelationshipName />
                                                        <TargetEntityType>opportunity</TargetEntityType>
                                                        <AutoExpand>Fixed</AutoExpand>
                                                        <EnableQuickFind>false</EnableQuickFind>
                                                        <EnableViewPicker>false</EnableViewPicker>
                                                        <EnableJumpBar>false</EnableJumpBar>
                                                        <ChartGridMode>Grid</ChartGridMode>
                                                        <VisualizationId>{2}</VisualizationId>
                                                        <EnableChartPicker>false</EnableChartPicker>
                                                        <RecordsPerPage>10</RecordsPerPage>
                                                    </parameters>
                                                </control>
                                            </cell>
                                        </row>
                                        <row />
                                        <row />
                                        <row />
                                        <row />
                                        <row />
                                        <row />
                                        <row />
                                        <row />
                                        <row />
                                    </rows>
                                </section>
                            </sections>
                        </column>
                    </columns>
                </tab>
            </tabs>
        </form>",
    languageCode,
    defaultOpportunityQuery.SavedQueryId.Value.ToString("B"),
    visualization.SavedQueryVisualizationId.Value.ToString("B")),
    IsDefault = false
};
_dashboardId = _serviceProxy.Create(dashboard);

'This is the language code for U.S. English. If you are running this code
'in a different locale, you will need to modify this value.
Dim languageCode As Integer = 1033

'We set up our dashboard and specify the FormXml. Refer to the
'FormXml schema in the Microsoft Dynamics CRM SDK for more information.
Dim dashboard As SystemForm =
 New SystemForm With {
  .Name = "Sample Dashboard",
  .Description = "Sample organization-owned dashboard.",
  .FormXml = String.Format("<form><tabs><tab name='Test Dashboard' verticallayout='true'>" &amp; _
                           "<labels><label description='Sample Dashboard' languagecode='{0}' />" &amp; _
                           "</labels><columns><column width='100%'><sections>" &amp; _
                           "<section name='Information Section' showlabel='false' showbar='false' columns='111'>" &amp; _
                           "<labels><label description='Information Section' languagecode='{0}' />" &amp; _
                           "</labels><rows><row><cell colspan='1' rowspan='10' showlabel='false'><labels>" &amp; _
                           "<label description='Top Opportunitiess - 1' languagecode='{0}' /></labels>" &amp; _
                           "<control id='TopOpportunities' classid='{{E7A81278-8635-4d9e-8D4D-59480B391C5B}}'>" &amp; _
                           "<parameters><ViewId>{1}</ViewId><IsUserView>false</IsUserView><RelationshipName />" &amp; _
                           "<TargetEntityType>opportunity</TargetEntityType><AutoExpand>Fixed</AutoExpand>" &amp; _
                           "<EnableQuickFind>false</EnableQuickFind><EnableViewPicker>false</EnableViewPicker>" &amp; _
                           "<EnableJumpBar>false</EnableJumpBar><ChartGridMode>Chart</ChartGridMode>" &amp; _
                           "<VisualizationId>{2}</VisualizationId><EnableChartPicker>false</EnableChartPicker>" &amp; _
                           "<RecordsPerPage>10</RecordsPerPage></parameters></control></cell>" &amp; _
                           "<cell colspan='1' rowspan='10' showlabel='false'><labels>" &amp; _
                           "<label description='Top Opportunities - 2' languagecode='{0}' /></labels>" &amp; _
                           "<control id='TopOpportunities2' classid='{{E7A81278-8635-4d9e-8D4D-59480B391C5B}}'>" &amp; _
                           "<parameters><ViewId>{1}</ViewId><IsUserView>false</IsUserView><RelationshipName />" &amp; _
                           "<TargetEntityType>opportunity</TargetEntityType><AutoExpand>Fixed</AutoExpand>" &amp; _
                           "<EnableQuickFind>false</EnableQuickFind><EnableViewPicker>false</EnableViewPicker>" &amp; _
                           "<EnableJumpBar>false</EnableJumpBar><ChartGridMode>Grid</ChartGridMode>" &amp; _
                           "<VisualizationId>{2}</VisualizationId><EnableChartPicker>false</EnableChartPicker>" &amp; _
                           "<RecordsPerPage>10</RecordsPerPage></parameters></control></cell></row><row /><row />" &amp; _
                           "<row /><row /><row /><row /><row /><row /><row /></rows></section></sections></column>" &amp; _
                           "</columns></tab></tabs></form>",
                           languageCode,
                           defaultOpportunityQuery.SavedQueryId.Value.ToString("B"),
                           visualization.SavedQueryVisualizationId.Value.ToString("B")),
  .IsDefault = False
 }
_dashboardId = _serviceProxy.Create(dashboard)

Para un ejemplo completo, consulte Ejemplo: crear, recuperar, actualizar y eliminar un panel. Para ver un ejemplo a fin de crear un panel de propiedad del usuario y asignarlo a otro usuario, consulte Ejemplo: asignar un panel propiedad del usuario a otro usuario.

Crear un panel de propiedad de la organización al personalizar el formulario de entidad

El archivo customizations.xml que se exporta con una solución no administrada contiene las definiciones de los paneles y los formularios de entidad. Puede agregar o modificar el archivo customizations.xml para agregar o actualizar un panel.

Cree un panel al personalizar el formulario de entidad

  1. Inicie sesión en Microsoft Dynamics 365.

  2. Exporte una solución. Para obtener más información acerca de cómo hacerlo, consulte Exportar, preparar para modificar e importar la cinta de opciones.

  3. Explore el archivo customizations.xml en la carpeta de la solución exportada y, ábrala para editar.

  4. Explore detalladamente el área de paneles en el archivo customizations.xml y busque la siguiente etiqueta: </Dashboards>

  5. Antes de la etiqueta </Dashboards> , agregue lo siguiente para definir un nuevo panel:

    <Dashboard>
       <LocalizedNames>
          <LocalizedName description="Dashboard_Name" languagecode="1033" />
       </LocalizedNames>   
       <IsCustomizable>1</IsCustomizable>
       <IsDefault>0</IsDefault>
       <FormXml>
          <forms type="dashboard">
            *** Dashboard definition goes here.*** // See “Sample Dashboards” topic for the FormXML content to be used here.
          </forms>
       </FormXml>
    </Dashboard>
    
  6. Guarde el archivo customizations.xml.

  7. Importe el archivo .zip como una solución en Microsoft Dynamics 365.Más información:Exportar, preparar para modificar e importar la cinta de opciones.

Limitaciones: Creación de paneles mediante el SDK o a través de la personalización del formulario

Algunos paneles que están creados o modificados mediante el SDK de Microsoft Dynamics 365 o a través de la personalización del formulario de entidad no son compatibles con el diseñador de paneles en la aplicación web. Evite lo siguiente mientras crea o edita un panel mediante el SDK o a través de la personalización del formulario.

General

  • Problema: Puede crear un panel que contenga una pestaña sin ninguna sección definida en el FormXML.

    Resolución: Asegúrese de crear un panel con al menos una sección definida para cada pestaña del FormXML.

  • Problema: Puede crear un panel que no tenga el mismo número de elementos de <row> (FormXml) para una sección como se especifica en la propiedad de rowspan de un elemento de <cell> (FormXml) de la sección en el FormXML. En el mejor de los casos, el valor de propiedad de rowspan de un elemento de <cell> (FormXml) y el número de elementos de <row> (FormXml) en una sección deben ser la misma.

    Problema: Asegúrese de crear un panel que tenga el mismo número de elementos de <row> (FormXml) para una sección como se especifica en la propiedad de rowspan de un elemento de <cell> (FormXml) de la sección.

Cuadrículas

Problema: Puede crear un panel que contiene las cuadrículas con el valor de parámetro de <AutoExpand> (FormXml) establecido en Auto para la cuadrícula.

Resolución: Asegúrese de especificar el valor de parámetro de <AutoExpand> (FormXml) como Fixed para las cuadrículas en el FormXML mientras crea un panel.

IFRAME

Problema: Puede crear un panel que contenga un IFRAME. Esto ocurre si no especifica un valor del parámetro de <Url> (FormXml) para el control de IFRAME en el FormXML.

Resolución: Asegúrese de especificar un valor para el parámetro de <Url> (FormXml) mientras crea un IFRAME en el FormXML.

Ver también

Analizar datos con paneles
Comprender los paneles: FormXML y componentes de panel
Acciones en los paneles
Paneles de ejemplo
Ejemplo: crear, recuperar, actualizar y eliminar un panel
Personalizar los formularios de entidad

Microsoft Dynamics 365

© 2017 Microsoft. Todos los derechos reservados. Copyright