Ejemplo: Solicitar datos de una aplicación financiera externa
En el ERP
En la Utilidad de solicitud de datos de interfaz externa de finanzas, si el campo Código de unidad 1 está seleccionado, la tarea ExtFinRequestUnitCd1 se envía. Esta tarea crea un documento de solicitud XML similar a esto:
<IDOREQUEST>
<RequestHeader Type="LoadCollection">
<RequestData>
<LoadCollection Name= EXTFIN.ExtFinRequestUnitCd1.unitcd1>
style="clear: none;" />
<Items>
<Item ID="unitcd1">
<Property>unit1</Property>
style="clear: none;" />
<Property>description</Property>
style="clear: none;" />
<Property>CreatedBy</Property>
style="clear: none;" />
<Property>UpdatedBy</Property>
style="clear: none;" />
</Item>
</Items>
</LoadCollection>
</RequestData>
</RequestHeader>
</IDORequest>
El documento XML se pasa al sistema financiero externo como está descrito en Actualizar datos de SyteLine a partir de los datos de una aplicación financiera externa.
En el sistema financiero externo
Una página ASP en ese sistema se debe configurar para:
- Recuperar el documento de solicitud XML que se envió por SyteLine.
- Sepa que la solicitud XML "LoadCollection" que recibió quiere obtener datos de una aplicación financiera externa y devolverla ha SyteLine.
- Extraer información sobre la tabla y las columna solicitada del XML (tabla (visualización) unitcd1; columna de tabla unidad1, descripción, CreatedBy y UpdatedBy).
- Asigne los datos a los datos correspondientes en la aplicación financiera externa:
(Consulte la nota al final de esta sección sobre como gestionar las columnas CreatedBy y UpdatedBy.)Table.Column ExtFin Table.Column unitcd1.unit1 ucode1.code unitcd1.description ucode1.description - Extraer valores de la base de datos de la aplicación financiera externa para las columnas solicitadas en la table ucode1. Esta tabla actualmente contiene dos filas:
Código Descripción 1000 Dept 1000 - Empaquetado 2000 Dept 2000 - Inspección - Utilice la información de asignación para crear una solicitud XML "actualizar colección" (consulte a continuación) para volver a SyteLine.
- Coloque la solicitud XML en la bandeja de entrada de SyteLine.
La solicitud XML "Actualizar recolección" sería similar a esto:
<IDORequest>
<RequestHeader UserName="ExtFin User" Password=Password_Value PasswordEncrypted="N" Type="UpdateCollection" New="1" SkipTriggers="0">
<SourceName>EXTFIN</SourceName>
<TargetName>SyteLineSite</TargetName>
style="clear: none;" />
<RequestData ObjectType="1">
<UpdateCollection Name="TABLE!unitcd1">
<Items>
<Item ItemNo="0" Action="Insert">
style="clear: none;" />
<Property Name="unit1" Modified="Y" xml:space="preserve">1000</Property>
<Property Name="description" Modified="Y" xml:space="preserve">Dept 1000 - Packaging</Property>
style="clear: none;" />
<Property Name="CreatedBy" Modified="Y" xml:space="preserve">ExtFin User</Property>
<Property Name="UpdatedBy" Modified="Y" xml:space="preserve">ExtFin User</Property>
</Item>
<Item ItemNo="1" Action="Insert">
style="clear: none;" />
<Property Name="unit1" Modified="Y" xml:space="preserve">2000</Property>
<Property Name="description" Modified="Y" xml:space="preserve">Dept 2000 - Inspection</Property>
style="clear: none;" />
<Property Name="CreatedBy" Modified="Y" xml:space="preserve">ExtFin User</Property>
<Property Name="UpdatedBy" Modified="Y" xml:space="preserve">ExtFin User</Property>
</Item>
</Items>
</UpdateCollection>
</RequestData>
</RequestHeader>
</IDORequest>