guides:programming:programmers_reference_manual:exporting_your_report_to_a_rtf_pdf_or_html_file

Exporting Your Report to a RTF, PDF, or HTML File

The following program shows how to export a report into PDF, RTF or HTML output. The OIPI does not export into Text files- too much formatting would be lost.

By varying the INIT message of Set_Printer(), the export file type can be changed.

Subroutine OIPI_Export_Example(Parent)

/*

--------------------------------------------------------------------------

This program is proprietary and is not to be used by or disclosed to

others, nor is it to be copied without written permission from Revelation Technologies, Inc.

VERSION : OI 3.7.5

PURPOSE : An example program to show how to use OIPI to export reports into

common file formats

AUTHOR : Mike Ruane

CREATED : October, 2001

PROCEDURES : This module may be called either as a stored procedure or as an internal

subroutine.

WARNINGS :

THEORY OF OPERATION :

This program lets a developer run reports written in Basic+ using the OIPI to

generate reports into HTML or RTF file formats.

REVISION HISTORY (Most CURRENT first) :

DATE IMPLEMENTOR FUNCTION

-------- ----------- --------

MM-DD-YY initials Modification

---------------------------------------------------------------------------*/

DECLARE FUNCTION Set_Printer, Msg

$INSERT OIPRINT_EQUATES

$Insert Colors

*---

* print to a PDF File

*---

Filename = 'Text Test Print':@FM:''  :@FM: 6 :@FM: 'C:\temp\pdf_file.pdf'

x = Set_Printer("INIT",FILENAME,'','','',5:@VM:@VM:1)

text = 'Export to PDF Example'

x = Set_Printer("TEXT",TEXT)

For I = 1 To 10

  TEXT = 'Line ':I

  x = Set_Printer("TEXT", TEXT)

Next I

*---

* print a table

*---

table = "1,2,3,4":@fm

table := "5,6,7,8/"

table := "9,10,11,12/"

table := "Row Number 4 - Column Number 1,Row Number 4 - Column Number 2,"

table := "Row Number 4 - Column Number 3,Row Number 4 - Column Number 4"

convert "," to @vm in table

convert "/" to @fm in table

head = "Column 1":@VM: "Column 2":@VM: "Column 3":@VM: "Column 4"

Column_Defs = "+<2160":@VM: "_^2160":@VM: "~>2160":@VM: "=2160"

x = Set_Printer("TEXT", @FM: "Here's a Table":@FM)

x = Set_Printer("ADDTABLE", Column_Defs, head, table, Red$, Cyan$, 0, TB_ALL)

x = Set_Printer("TERM")

*

---

* print to an RTF File

*---

Filename = 'RTF Test Print':@FM:'' :@FM: 1 :@FM: 'C:\temp\rtf_file.rtf'

x = Set_Printer("INIT",FILENAME,'','','',5:@VM:@VM:1)

text = "Export to RTF Example"

x = Set_Printer("TEXT",TEXT)

For I =1 TO 10

  TEXT = 'Line ':I

  x = Set_Printer("TEXT", TEXT)

Next I

*

---

* print a table

*---

table = "1,2,3,4":@fm

table := "5,6,7,8/"

table := "9,10,11,12/"

table := "Row Number 4 - Column Number 1,Row Number 4 - Column Number 2,"

table := "Row Number 4 - Column Number 3,Row Number 4 - Column Number 4"

convert "," to @vm in table

convert "/" to @fm in table

head = "Column 1":@VM: "Column 2":@VM: "Column 3":@VM: "Column 4"

Column_Defs = "+<2160":@VM: "_^2160":@VM: "~>2160":@VM: "=2160"

x = Set_Printer("TEXT", @FM: "Here's a Table":@FM)

x = Set_Printer("ADDTABLE", Column_Defs, head, table, Red$, Cyan$, 0, TB_ALL)

STAT = Set_Printer("TERM")

*

---

* Print to an HTML File

*---

Filename ='HTML Test Print':@FM:'' :@FM: 4 :@FM: 'C:\temp\HTMLfile.HTML'

x = Set_Printer("INIT",FILENAME,'','','',5:@VM:@VM:1)

text = "Export to HTML Example"

x = Set_Printer("TEXT", TEXT)

*

---

* Print 10 Lines

*---

For I = 1 TO 10

  TEXT = 'Line ':I

  STAT = Set_Printer("TEXT", TEXT)

Next I

 

*

---

* print a table

*---

table = "1,2,3,4":@fm

table := "5,6,7,8/"

table := "9,10,11,12/"

table := "Row Number 4 - Column Number 1,Row Number 4 - Column Number 2,"

table := "Row Number 4 - Column Number 3,Row Number 4 - Column Number 4"

convert "," to @vm in table

convert "/" to @fm in table

head = "Column 1":@VM: "Column 2":@VM: "Column 3":@VM: "Column 4"

Column_Defs = "+<2160":@VM: "_^2160":@VM: "~>2160":@VM: "=2160"

x = Set_Printer("TEXT", @FM: "Here's a Table":@FM)

x = Set_Printer("ADDTABLE", Column_Defs, head, table, Red$, Yellow$, 0, TB_ALL)

x = Set_Printer("TERM")

x = msg('','Process has completed')

return 0
  • guides/programming/programmers_reference_manual/exporting_your_report_to_a_rtf_pdf_or_html_file.txt
  • Last modified: 2024/06/19 20:20
  • by 127.0.0.1