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 CloudSuite Industrial 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 CloudSuite Industrial.
  • Sepa que la solicitud XML "LoadCollection" que recibió quiere obtener datos de una aplicación financiera externa y devolverla ha CloudSuite Industrial.
  • 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:
    Table.Column ExtFin Table.Column
    unitcd1.unit1 ucode1.code
    unitcd1.description ucode1.description
    (Consulte la nota al final de esta sección sobre como gestionar las columnas CreatedBy y UpdatedBy.)
  • 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:
    Ctgría Nº curso
    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 CloudSuite Industrial.
  • Coloque la solicitud XML en la bandeja de entrada de CloudSuite Industrial.

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>CloudSuite IndustrialSite</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>

Nota:  Los valores de las propiedades CreatedBy y UpdatedBy se deberían establecer en el valor del RequestHeader UserName. En el ejemplo anterior, el valor es ExtFin User.
Temas relacionados