Compartir a través de


Uso de adaptadores basados en datos (DDAs)

 

Publicado: noviembre de 2016

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

Los adaptadores basados en datos (DDAs) son adaptadores aprovechados normalmente por el Kit de herramientas de aplicaciones hospedadas (HAT). Estos adaptadores son ensamblados genéricos que administran sólo la interacción con la interfaz de usuario y no contienen procesos de negocios. El SDK de Unified Service Desk se suministra con un DDA que proporciona un conjunto común de funciones que permiten hospedar y tener acceso a un gran número de aplicaciones. Sin embargo, es posible que requiera funcionalidad adicional según el tipo de aplicación. Existen varias formas de extender la funcionalidad existente, como crear un nuevo DDA (y usarlo en un DDA compuesto con DDAs externos) y ampliar un DDA existente.

En esta sección

Tipos de adaptadores basados en datos

Crear un DDA

Extender un DDA existente

Enlaces

Uso de DDAs en adaptadores de aplicación personalizados

Tipos de adaptadores basados en datos

Existen cuatro tipos de DDAs:

Crear un DDA

Puede crear un nuevo DDA simplemente heredando la clase DataDrivenAdapterBase.

La clase tiene el constructor que puede sobrecargarse.

Extender un DDA existente

En la sección anterior vimos cómo crear un DDA. No obstante, si la personalización es nominal, puede usar el DDA existente y extenderlo de acuerdo con los requisitos.

Puede usar las siguientes clases para ampliar los DDAs de la UII existentes:

Todas las clases anteriores se derivan de la clase DataDrivenAdapterBase.

Enlaces

Un adaptador basado en datos usa datos, denominados enlaces, para definir la forma en que se identifica un componente de interfaz de usuario de una aplicación hospedada. Por ejemplo, los enlaces pueden consistir en rutas de Document Object Model (DOM) para describir elementos en una página web. El siguiente ejemplo muestra una cadena de inicialización de la aplicación con un subárbol de enlace de DDA incrustado. Este es un ejemplo general, pero indica el patrón usado para implementar controles Acc en enlaces Windows.

Nota

Algunos de los parámetros de configuración se han quitado para mayor claridad.

<initstring>
    <interopAssembly>
      <URL>path to executable</URL>
      <Arguments>test argument</Arguments>
      <WorkingDirectory>c:\</WorkingDirectory>
      <hostInside/>
    </interopAssembly>
<!—- notice there is no custom application adapter specified here-->
    <displayGroup>None</displayGroup>
    <optimumSize x="800" y="600"/>
    <minimumSize x="640" y="480"/>
    <DataDrivenAdapterBindings>
      <Type>typeName, assemblyName</Type>
      <Controls>
        <AccControl name="combobox1">
          <Path>
            <FindWindow>
              <ControlID>1003</ControlID>
            </FindWindow>
          </Path>
        </AccControl>
</Controls>
    </DataDrivenAdapterBindings>
</initstring>

Si usa HAT Software Factory, creará la InitString. La aplicación a continuación se puede implementar al servidor desde la fábrica de software.

Si va a agregar directamente una aplicación hospedada mediante la interfaz de usuario de administración, no es necesario crear toda la InitString. Solo debe especificar la sección <DataDrivenAdapterBindings> y agregarla a la pestaña Automation Xml.

Uso de DDAs en adaptadores de aplicación personalizados

Aunque los DDAs se concibieron inicialmente para admitir automatizaciones dentro del Kit de herramientas de aplicaciones hospedadas (HAT), también pueden ser utilizados por adaptadores personalizados para lograr resultados útiles. El siguiente código de ejemplo, tomado de un adaptador personalizado, ilustra cómo los adaptadores personalizados pueden usar DDAs, e ilustra las ventajas generales de los DDAs. Como ilustra el ejemplo, el uso de DDAs permite una separación de código e información de configuración.

DataDrivenAdapter Dda;
public overrIDe bool Initialize()
{
   Dda=DataDrivenAdapter.CreateInstance(ApplicationInitString,ApplicationObject);
   return (Dda != null);
}
public overrIDe bool DoAction(Action action, ref string data)
{
if (action.Name == "AddToHistory")
   {
   Dda.ExecuteControlAction("combobox1");
   Dda.SetControlValue("textbox1", data);
   Dda.ExecuteControlAction("button1");
   }
}

La configuración de DDA, que se incrusta en la InitString de la aplicación, es XML, como en el siguiente ejemplo.

<DataDrivenAdapterBindings>
<Type> Microsoft.UII.HostedApplicationToolkit.DataDrivenAdapter.WinDataDrivenAdapter, Microsoft.UII.HostedApplicationToolkit.DataDrivenAdapter</Type>
  <Controls>
    <AccControl name="combobox1">
      <Path>
        <FindWindow>
          <ControlID>1003</ControlID>
        </FindWindow>
      </Path>
    </AccControl>
    <AccControl name="textbox1">
      <Path>
        <FindWindow>
          <ControlID>1001</ControlID>
        </FindWindow>
      </Path>
    </AccControl>
    <AccControl name="button1">
      <Path>
        <FindWindow>
          <ControlID>1002</ControlID>
        </FindWindow>
      </Path>
    </AccControl>
  </Controls>
</DataDrivenAdapterBindings>

El elemento <Type/> indica a la UII que cree una instancia dinámica del tipo indicado en tipo, formato de ensamblado, permitiendo así la carga y el uso de DDAs personalizados. El elemento <Controls/> contiene la lista de controles configurados, especificada de forma requerido por el DDA cargado.

Ver también

Trabajar con HAT Software Factory

Unified Service Desk 2.0

© 2017 Microsoft. Todos los derechos reservados. Copyright