noviembre 30, 2021

Informe de Editor XML desde la Plantilla de datos XML

Solía preguntarme cómo desarrollar informes de editor XML sin usar el programa concurrente rdf o sql o pl/sql. La forma tradicional es

  1. Crear un procedimiento RDF o SQL o PL/SQL
  2. Registrar el informe RDF o SQL o PL/SQL como un programa simultáneo y establecer la salida en XML
  3. Ejecutar el informe anterior y obtener la salida y guardarla como un archivo XML
  4. Utilizar los datos XML en la construcción de la plantilla con Microsoft Word

Esto me pareció un poco engorroso. Así que estaba buscando alternativas. Entonces me topé con la siguiente solución. Y espero que esto os ayude a todos. Esta es la primera parte de una serie de blogs. Espero que disfrutes de esto y se te ocurran preguntas y sugerencias. Así que echemos un vistazo a cómo podemos crear un informe xml a partir de una plantilla de datos xml.

La plantilla de datos XML es un documento XML que consta de cuatro secciones básicas:

  1. Parámetros
  2. Desencadenadores
  3. Consulta de datos
  4. Estructura de datos

Esta estructura se muestra en el siguiente gráfico:

Plantilla XML

Guía paso a paso para crear una plantilla de datos XML de muestra:

Decida sobre la consulta SQL

En el ejemplo, estamos tratando de obtener los siguientes datos de la tabla AP_INVOICES_ALL

  1. INVOICE_NUM
  2. INVOICE_CURRENCY_CODE
  3. INVOICE_AMOUNT

La consulta para el mismo será como a continuación:

SELECT invoice_num ,invoice_currency_code ,invoice_amount FROM ap_invoices_all;

Decida los parámetros

Usaremos dos parámetros para limitar los datos que se recuperan:

  1. ORG_ID
  2. VENDOR_ID

La consulta resultante será como:

SELECT invoice_num ,invoice_currency_code ,invoice_amount FROM ap_invoices_all WHERE org_id = :p_OrgId AND vendor_id = :p_VendorId;

Eso es todo lo que necesitamos para construir la Plantilla de datos XML.

<?xml version="1.0" encoding="UTF-8" ?><dataTemplate name ="invoiceData" description="Invoice Data" Version="1.0" ><parameters><parameter name="p_OrgId" dataType="number" /><parameter name="p_VendorId" dataType="number" /></parameters><dataQuery><sqlStatement name="Q1"><!]></sqlStatement></dataQuery><dataStructure><group name="G_INV" source="Q1"><element name="INV_NUMBER" value="invoice_num" /><element name="CURRENCY_CODE" value="invoice_currency_code" /><element name="AMOUNT" value="invoice_amount" /></group></dataStructure></dataTemplate>

Si ve la Plantilla de datos XML anterior, hemos especificado los parámetros que se están utilizando y también la consulta SQL que obtendrá los datos. La consulta SQL utiliza los parámetros que se definen en la sección Parámetros. También he incluido una imagen jpeg de la Definición del archivo XML. A veces, cuando copia la definición XML del blog, puede encontrarse con «caracteres no válidos» que pueden causar problemas. Así que compruebe la imagen jpeg y haga uso de ella.

xml_template_definition

Guardar la misma «.archivo xml » en su sistema local. Después de guardar el archivo, debería poder abrirlo en el navegador. Haga doble clic en el archivo xml y el archivo se abrirá. El archivo se verá como se muestra a continuación:

xml_file

Palabra Abierta. Ve a Complementos. Podrá ver el Menú de Editor de BI. En el Menú, Seleccione Datos > Cargar esquema XML. Seleccione el archivo xml que acabamos de crear.

 Complemento de Word de BI Publisher

Si los datos se cargan correctamente, recibirá el siguiente mensaje:

Los datos se cargaron correctamente

Haga clic en Aceptar y para continuar. Seleccione Insertar > Tabla / Formulario

Obtendrá la siguiente pantalla:

Arrastre y suelte el elemento G Inv desde la Fuente de datos a la Región de la Plantilla como se muestra a continuación

Seleccione Soltar todos los nodos de las opciones. Obtendremos la siguiente pantalla:

Presiona OK. Obtendremos la siguiente plantilla en el documento de Word. Guarda lo mismo que XXINV_DETAILS.rtf.

Número de Inv Moneda Cantidad
F NÚMERO DE INV_ MONEDA CANTIDAD E

Vaya a Responsabilidad del Administrador del Editor XML y cree una nueva Definición de datos. Proporcione lo siguiente para los campos:

Nombre-XXINV_DETAILS

Código-XXINV_DETAILS

Aprovisionamiento de aplicaciones (o su aplicación personalizada)

Fecha de inicio-Rellenado automáticamente

Presione «Agregar archivo» junto a la Plantilla de datos. Navegue y cargue la Plantilla de datos XML que hemos creado aquí.

Vaya a Plantillas de datos y cree una nueva Plantilla de datos. Los siguientes detalles:

Seleccione la Definición de los Datos que habíamos creado antes de esto.

Seleccione el idioma como Inglés estadounidense y cargue el archivo RTF que hemos creado (XXINV_DETAILS.rtf).

Vaya a Administrador del Sistema > Concurrente > Programa > Definir.

Cree un nuevo Programa simultáneo y proporcione los siguientes detalles.

El ejecutable siempre debe ser XDODTEXE.

haga Clic en Parámetros y dar los siguientes datos:

Asigna el programa a la solicitud del grupo y ejecutar el programa.

Puede descargar el archivo de salida de muestra AQUÍ.

Espero que esto ayude. Hágame saber sus pensamientos y siéntase libre de hacer cualquier pregunta que pueda tener. Además, echa un vistazo al siguiente blog que tiene Disparadores que se llaman desde el archivo de plantilla XML. Puedes comprobarlo aquí.

También consulte el tema más avanzado sobre Plantillas XML – Plantilla XML Parte 3

Deja una respuesta

Tu dirección de correo electrónico no será publicada.