RptReport

RptReport — Manage report definition files and produces the xml report/print's file.

Synopsis




                    RptReport;
enum                RptReportSection;
RptReport*          rpt_report_new                      (void);
RptReport*          rpt_report_new_from_xml             (xmlDoc *xdoc);
RptReport*          rpt_report_new_from_file            (const gchar *filename);
void                rpt_report_set_database             (RptReport *rpt_report,
                                                         const gchar *provider_id,
                                                         const gchar *connection_string,
                                                         const gchar *sql);
void                rpt_report_set_page_size            (RptReport *rpt_report,
                                                         RptSize size);
void                rpt_report_set_page_margins         (RptReport *rpt_report,
                                                         gdouble top,
                                                         gdouble right,
                                                         gdouble bottom,
                                                         gdouble left);
void                rpt_report_set_section_height       (RptReport *rpt_report,
                                                         RptReportSection section,
                                                         gdouble height);
void                rpt_report_set_report_header_new_page_after
                                                        (RptReport *rpt_report,
                                                         gboolean new_page_after);
void                rpt_report_set_report_footer_new_page_before
                                                        (RptReport *rpt_report,
                                                         gboolean new_page_before);
void                rpt_report_set_page_header_first_last_page
                                                        (RptReport *rpt_report,
                                                         gboolean first_page,
                                                         gboolean last_page);
void                rpt_report_set_page_footer_first_last_page
                                                        (RptReport *rpt_report,
                                                         gboolean first_page,
                                                         gboolean last_page);
xmlDoc*             rpt_report_get_xml                  (RptReport *rpt_report);
xmlDoc*             rpt_report_get_xml_rptprint         (RptReport *rpt_report);
gboolean            rpt_report_add_object_to_section    (RptReport *rpt_report,
                                                         RptObject *rpt_object,
                                                         RptReportSection section);
void                rpt_report_remove_object            (RptReport *rpt_report,
                                                         RptObject *rpt_object);
RptObject*          rpt_report_get_object_from_name     (RptReport *rpt_report,
                                                         const gchar *name);

Object Hierarchy


  GObject
   +----RptReport

Signals


  "field-request"                                  : Run Last

Description

Details

RptReport

typedef struct _RptReport RptReport;


enum RptReportSection

typedef enum
{
	RPTREPORT_SECTION_REPORT_HEADER,
	RPTREPORT_SECTION_REPORT_FOOTER,
	RPTREPORT_SECTION_PAGE_HEADER,
	RPTREPORT_SECTION_PAGE_FOOTER,
	RPTREPORT_SECTION_BODY
} RptReportSection;


rpt_report_new ()

RptReport*          rpt_report_new                      (void);

Creates a new RptReport object.

Returns : the newly created RptReport object.

rpt_report_new_from_xml ()

RptReport*          rpt_report_new_from_xml             (xmlDoc *xdoc);

xdoc : an xmlDoc.
Returns : the newly created RptReport object.

rpt_report_new_from_file ()

RptReport*          rpt_report_new_from_file            (const gchar *filename);

filename : the path of the xml file to load.
Returns : the newly created RptReport object.

rpt_report_set_database ()

void                rpt_report_set_database             (RptReport *rpt_report,
                                                         const gchar *provider_id,
                                                         const gchar *connection_string,
                                                         const gchar *sql);

rpt_report : an RptReport object.
provider_id : a libgda's provider_id.
connection_string : a libgda's connection string.
sql : a valid SQL statement.

rpt_report_set_page_size ()

void                rpt_report_set_page_size            (RptReport *rpt_report,
                                                         RptSize size);

Sets page's size.

rpt_report : an RptReport object.
size : an RptSize.

rpt_report_set_page_margins ()

void                rpt_report_set_page_margins         (RptReport *rpt_report,
                                                         gdouble top,
                                                         gdouble right,
                                                         gdouble bottom,
                                                         gdouble left);

Sets page's margins.

rpt_report :
top :
right :
bottom :
left :

rpt_report_set_section_height ()

void                rpt_report_set_section_height       (RptReport *rpt_report,
                                                         RptReportSection section,
                                                         gdouble height);

Sets section's height.

rpt_report : an RptReport object.
section :
height : the section's height.

rpt_report_set_report_header_new_page_after ()

void                rpt_report_set_report_header_new_page_after
                                                        (RptReport *rpt_report,
                                                         gboolean new_page_after);

rpt_report : an RptReport object.
new_page_after :

rpt_report_set_report_footer_new_page_before ()

void                rpt_report_set_report_footer_new_page_before
                                                        (RptReport *rpt_report,
                                                         gboolean new_page_before);

rpt_report : an RptReport object.
new_page_before :

rpt_report_set_page_header_first_last_page ()

void                rpt_report_set_page_header_first_last_page
                                                        (RptReport *rpt_report,
                                                         gboolean first_page,
                                                         gboolean last_page);

rpt_report : an RptReport object.
first_page :
last_page :

rpt_report_set_page_footer_first_last_page ()

void                rpt_report_set_page_footer_first_last_page
                                                        (RptReport *rpt_report,
                                                         gboolean first_page,
                                                         gboolean last_page);

rpt_report : an RptReport object.
first_page :
last_page :

rpt_report_get_xml ()

xmlDoc*             rpt_report_get_xml                  (RptReport *rpt_report);

rpt_report : an RptReport object.
Returns :

rpt_report_get_xml_rptprint ()

xmlDoc*             rpt_report_get_xml_rptprint         (RptReport *rpt_report);

rpt_report : an RptReport object.
Returns : an xmlDoc, that represents the generated report, to pass to function rpt_print_new_from_xml().

rpt_report_add_object_to_section ()

gboolean            rpt_report_add_object_to_section    (RptReport *rpt_report,
                                                         RptObject *rpt_object,
                                                         RptReportSection section);

rpt_report : an RptReport object.
rpt_object : an RptObject object.
section :
Returns : FALSE if already exists an RptObject with the same rpt_object's name; TRUE otherwise.

rpt_report_remove_object ()

void                rpt_report_remove_object            (RptReport *rpt_report,
                                                         RptObject *rpt_object);

Removes the rpt_object from the rpt_report.

rpt_report : an RptReport object.
rpt_object : an RptObject object.

rpt_report_get_object_from_name ()

RptObject*          rpt_report_get_object_from_name     (RptReport *rpt_report,
                                                         const gchar *name);

rpt_report : an RptReport object.
name : the RptObject's name.
Returns : the RptObject object represented by the name name.

Signal Details

The "field-request" signal

gchar*              user_function                      (RptReport *rpt_report,
                                                        gchar     *field_name,
                                                        gpointer   data_model,
                                                        gint       row,
                                                        gpointer   user_data)       : Run Last

The signal is emitted each time there's into text's source attribute a field that doesn't exists.

rpt_report : an RptReport object that recieved the signal.
field_name : the name of the field requested.
data_model : a GdaDataModel; or NULL if there's no database source.
row : the current data_model's row; -1 if data_model is NULL.
user_data : user data set when the signal handler was connected.