Cómo Usar la API de Oracle para Actualizar DFF - Guía Completa
Si necesitas actualizar un campo de DFF descriptiva Flex field lo puede hacer utilizando Postman y con como SOAP Web Services.
En esta publicación vamos hacer una actualización del valor de un Descriptive Flexfield - DFF a nivel factura de AR o de Cuentas por Cobrar utilizando un API de Oracle.
Como encontrar un API de Oracle
Primero vamos a la liga de documentacion https://docs.oracle.com/en/cloud/saas/sales/oesws/Sample-Payloads-for-CustomerAccount-Webservice-Requests-Landingpage.html
Vamos a utilizar la URL que viene en esa pantalla
Service WSDL URL: https://servername/fscmService/ErpObjectDFFUpdateService?WSDL
Vamos a entrar a Postman y desde ahí vamos armar el xml , primero vamos agregar un request
Guía de como ejecutar API desde POSTMAN
Luego vamos a poner el tipo Post y vamos a poner la URL que vimos dos pasos atrás, solo tengan cuidado de cambiar el nombre de su servidor URL: https://servername/crmService/fscmService/ErpObjectDFFUpdateService
Después vamos agregar nuestras credenciales de acceso a Oracle , en la sección de authorization , en la parte de Body vamos a marcar raw y XML.
Y en Body vamos a colocar el siguiente código de XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:typ="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/types/"
xmlns:erp="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">
<soapenv:Header/>
<soapenv:Body>
<typ:updateDffEntityDetails>
<typ:operationMode>SINGLE</typ:operationMode>
<!--Optional:-->
<typ:object>
<!--Optional:-->
<erp:EntityName>Receivables Invoice</erp:EntityName>
<!--Optional:-->
<erp:ContextValue>Contexto</erp:ContextValue>
<!--Optional:-->
<erp:UserKeyA>{{TransactionNumber}}</erp:UserKeyA>
<!--Optional:-->
<erp:UserKeyB>#NULL</erp:UserKeyB>
<!--Optional:-->
<erp:UserKeyC>#NULL</erp:UserKeyC>
<!--Optional:-->
<erp:UserKeyD>{{TransactionID}}</erp:UserKeyD>
<!--Optional:-->
<erp:UserKeyE>#NULL</erp:UserKeyE>
<!--Optional:-->
<erp:DFFAttributes>{"ATTRIBUTE1":"valor","ATTRIBUTE2":"valor2"}</erp:DFFAttributes>
</typ:object>
</typ:updateDffEntityDetails>
</soapenv:Body>
</soapenv:Envelope>
Los campos en negrita son los valores que deben cambiar
- Contexto , este el valor de tu contexto en donde esta el DFF
- {{TransactionNumber}} Es el numero de transacción o el numero de factura
- {{TransactionID}}, es el numero de ID, este se debe obtener de la factura de la tabla RA_CUSTOMER_TRX_AL
- "ATTRIBUTE1":"valor","ATTRIBUTE2":"valor2" , aquí hay que actualizar de acuerdo al campo que tu requieras es decir el attribut1 por el campo que tu utilices y el valor1 es el valor que tu quieres colocar
Te comparto un query que te puede servir para obtener los ID, puedes ajustarlo con los filtros como lo requieras
select
rca.CUSTOMER_TRX_ID,
rca.TRX_NUMBER
from RA_CUSTOMER_TRX_ALL rca
Con esto hemos actualizado nuestro DFF con la API de Oracle
Comentarios
Publicar un comentario