november 30, 2021

XML Publisher Report från XML data Template

jag brukade undra hur man utvecklar XML Publisher rapporter utan att använda rdf eller sql eller pl/sql samtidiga program. Det traditionella sättet är att

  1. skapa en RDF-eller SQL-eller PL/SQL-procedur
  2. registrera RDF-eller SQL-eller PL/SQL-rapporten som ett samtidigt program och ställ in utmatningen till XML
  3. kör ovanstående rapport och få utmatningen och spara den som en XML-fil
  4. använd XML-data för att bygga mallen med Microsoft Word

detta verkade vara lite besvärligt för mig. Så jag letade efter alternativ. Sedan snubblade jag över följande lösning. Och jag hoppas att detta hjälper er alla. Detta är en del av en serie bloggar. Hoppas du gillar detta och komma med frågor och förslag. Så låt oss ta en titt på hur vi kan skapa xml-rapport från xml-datamall.

XML – datamallen är ett XML-dokument som består av fyra grundläggande avsnitt:

  1. parametrar
  2. utlösare
  3. datafråga
  4. datastruktur

denna struktur visas i följande bild:

XML-Mall

steg för steg Guide för att skapa ett exempel på XML – Datamall:

Bestäm SQL-frågan

i exemplet försöker vi få följande data från tabellen AP_INVOICES_ALL

  1. INVOICE_NUM
  2. INVOICE_CURRENTCY_CODE
  3. INVOICE_AMOUNT

frågan för samma kommer att vara som nedan:

SELECT invoice_num ,invoice_currency_code ,invoice_amount FROM ap_invoices_all;

Bestäm parametrarna

vi kommer att använda två parametrar för att begränsa data som hämtas:

  1. ORG_ID
  2. VENDOR_ID

den resulterande frågan kommer att vara som:

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

det är allt vi behöver för att konstruera XML-Datamallen.

<?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>

om du ser ovanstående XML-Datamall har vi angett parametrarna som används och även SQL-frågan som hämtar data. SQL-frågan använder parametrarna som definieras under avsnittet Parametrar. Jag har också inkluderat en jpeg-bild av XML-Fildefinitionen. Ibland när du kopierar XML-definitionen från bloggen kan du stöta på ”ogiltiga tecken” som kan orsaka problem. Så kolla jpeg-bilden och använd den.

xml_template_definition

spara samma som ”.xml ” – fil i ditt lokala system. När du har sparat filen bör du kunna öppna den i webbläsaren. Dubbelklicka på xml-filen och filen ska öppnas. Filen kommer att se ut som visas nedan:

xml_file

öppna ord. Gå till Tillägg. Du kommer att kunna se BI Publisher-menyn. Under menyn väljer du Data > Ladda XML-Schema. Välj den xml-fil som vi just skapade.

BI Publisher Word Addon

om data laddas framgångsrikt får du meddelandet nedan:

Data laddas framgångsrikt

klicka på OK och för att fortsätta. Välj Infoga > tabell / formulär

du kommer att få nedanstående skärm:

dra och släpp g Inv-element från datakälla till Mallregionen som visas nedan

Välj släpp alla noder från valen. Vi kommer att få nedanstående skärm:

tryck på OK. Vi kommer att få nedanstående Mall i Word-dokumentet. Spara samma som XXINV_DETAILS.rtf.

Inv nummer valuta belopp
f INV_NUMMER valuta belopp E

gå till ADMINISTRATÖRSANSVAR för XML Publisher och skapa en ny Datadefinition. Ange följande för fälten:

namn-XXINV_DETAILS

kod-XXINV_DETAILS

Application-Provisioning (eller din anpassade applikation)

startdatum-automatiskt befolkade

tryck på” Lägg till fil ” bredvid Datamall. Bläddra och ladda upp XML-Datamallen som vi har skapat här.

gå till Datamallar och skapa en ny Datamall. Ge följande detaljer:

välj den Datadefinition som vi hade skapat före detta.

Välj språk som Amerikansk Engelska och ladda upp RTF-filen som vi har skapat (XXINV_DETAILS.rtf).

navigera till Systemadministratör > samtidig > program > definiera.

skapa ett nytt samtidigt Program och ge följande detaljer.

den körbara filen ska alltid vara XDODTEXE.

klicka på parametrar och ge följande detaljer:

tilldela programmet till förfrågningsgruppen och kör programmet.

du kan ladda ner exempelutdatafilen här.

hoppas detta hjälper. Låt mig veta dina tankar och gärna ställa frågor som du kan ha. Kolla också in nästa blogg som har utlösare som anropas från XML-mallfilen. Du kan kolla det här.

kolla också in mer avancerat ämne på XML-mallar-XML-Malldel 3

Lämna ett svar

Din e-postadress kommer inte publiceras.