Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los adaptadores controlados por datos (DDA) son los adaptadores que se usan generalmente en Hosted Application Toolkit (HAT). Estos adaptadores son ensamblados genéricos que controlan solo la interacción con la interfaz de usuario y no contienen procesos empresariales. El SDK de Unified Service Desk incluye un DDA que proporciona un conjunto común de funciones que le permite hospedar y acceder a una amplia gama de aplicaciones. Sin embargo, es posible que necesite funcionalidad adicional en función del tipo de aplicación. Hay varias maneras de ampliar la funcionalidad existente, como la creación de un nuevo PDD (y su utilización en un PDD compuesto con PDD externos) y la ampliación de un PDD existente.
En esta sección
Tipos de adaptadores controlados por datos
Uso de DDA en adaptadores de aplicaciones personalizados
Tipos de adaptadores controlados por datos
Hay cuatro tipos de DDAs:
Crear un DDA
Puede crear un nuevo DDA 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. Sin embargo, si su personalización es nominal, puede utilizar el DDA existente y ampliarlo según los requisitos.
Puede usar las siguientes clases para ampliar los DDAs de la UII existentes:
WinDataDrivenAdapter: crea un adaptador basado en WinDDA.
WebDataDrivenAdapter: crea un adaptador basado en WebDDA.
JavaDataDrivenAdapter: crea un adaptador basado en JavaDDA.
UIADataDrivenAdapter: crea un adaptador basado en UIADDA.
Todas las clases anteriores se derivan de la clase DataDrivenAdapterBase .
Vinculaciones
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, las asignaciones pueden consistir en rutas de Document Object Model (DOM) para describir elementos en una página web. En el ejemplo siguiente se muestra una cadena de inicialización de aplicación con un subárbol de enlace DDA incrustado. Este es un ejemplo general, pero indica el patrón utilizado para implementar los controles Acc
en vínculos de Windows.
Nota:
Algunos de los parámetros de configuración se han eliminado 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, este crea la InitString
. A continuación, la aplicación se puede implementar en el servidor desde la fábrica de software.
Si agrega directamente una aplicación hospedada mediante la interfaz de usuario de administración, no es necesario crear toda la InitString
. Solo necesita especificar la <DataDrivenAdapterBindings
> sección y agregarla a la Automation Xml
pestaña.
Uso de DDA en adaptadores de aplicaciones personalizados
Aunque los DDA se concibieron inicialmente para admitir automatizaciones dentro del Hosted Application Toolkit (HAT), los adaptadores personalizados pueden utilizarlos para lograr resultados útiles. En el siguiente ejemplo de código, tomado de un adaptador personalizado, se muestra cómo los adaptadores personalizados pueden usar DDA y las ventajas generales de los DDA. Como se muestra en el ejemplo, el uso de DDA permite separar el código y la 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 está incrustada en el archivo InitString
, está en formato XML, como en el ejemplo siguiente.
<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 <Controls/>
elemento contiene la lista de controles configurados, especificados de la manera requerida por el DDA cargado.