Report Builder

From nuBuilderPro
Jump to: navigation, search

nuBuilderPro has a built in drag and drop Report Builder.

This is used for designing the layout of a Report created with a temporary table via the #TABLE_ID# Hash Variable in the Reports Button under the Setup Tab.

Grouping

This Report Builder can cater for up to 8 grouped fields each with a Section Header and Section Footer.

Along with a Detail Section and Report and Page Headers and Footers.

Objects-ReportBuilder.png

These sections can contain any number of 3 different Object Types..

Objects

Field

An Object who's value will change because it displays the value of a field from a temporary table created with the Hash Variable #TABLE_ID#. Other than a fieldname from a table, a field Object in a nuBuilder Report can also accept 1 of 2 functions:

  • SUM(a)
  • AVERAGE(a,b)

Both are for use in Header Sections or Footer Sections SUM(a) will add all of the rows of a together for that section. AVERAGE(a,b) will essentially evaluate as SUM(a) / SUM(b) for that section.

SUM and AVERAGE require at least 1 report group (other than Report and Page groups) to give a result


Conditional formatting is available in nuBuilder for changing the background and font color of a Field Object.

By prefixing a value with 10 characters eg. '#B#66FF99|' will change the background color to #66FF99 (red).

By prefixing a value with 10 characters eg. '#F#FF0000|' will change the font color to #FF0000 (light green).

By prefixing a value with 20 characters eg. '#B#66FF99|#F#FF0000|' will change both font and background colors.


A PHP example setting the colours depending on the values is:

$s = '
CREATE TABLE #TABLE_ID# SELECT * FROM customer
INNER JOIN invoice ON customer_id = inv_customer_id
';

nuRunQuery($s);
$s = "ALTER TABLE #TABLE_ID# CHANGE inv_number inv_number VARCHAR(100) NOT NULL";
nuRunQuery($s);

$s = "Update #TABLE_ID# set inv_number = concat('#B#66FF99|',inv_number) WHERE inv_number < 60";
nuRunQuery($s);

$s = "Update #TABLE_ID# set inv_number = concat('#F#FF0000|',inv_number) WHERE inv_posted = 1";
nuRunQuery($s);


This fill create a Report formatted something like this..

Capture.PNG

Label

A hard-coded value that does not change with the exception of when it contains a Hash Variable like Page, Pages Year etc.

The Available Hash Variable to the Label Object are..

  • page
  • pages
  • description
  • code
  • year
  • month
  • day
  • hour
  • minute
  • second

Image

An Object that displays the path to an image file.

This can be from 1 of 3 places. (And is checked for in this order.)

  1. Contained in a field within the the temporary table.
  2. The Code of an image stored within nuBuilder's Image table.
  3. A hard-code URL accessible by the browser.

Report Menu

New Object

Creates a default Field Object in the Detail Section, that can be dragged with-in the current Section or into other Sections with the mouse.

Clone Object

Clones all highlighted Objects and moves these Cloned Objects 2 pixels to the right and highlights them while un-highlighting the original Objects.

Select Objects

Report-Builder-Select.png

Displays a list of all Objects in this Report, ordered by the Sections they belong to. Highlighting any will in turn highlight the Objects themselves.

Adjust Objects

Report-Builder-Adjust.png

Adjust all highlighted Objects as described by the button title.

Object Properties

Report-Builder-Object-Properties.png


  • F=Available to Field
  • L=Available to Label
  • I=Available to Image


Object Name

(F,L,I)

Object Type

(F,L,I)

Top

(F,L,I)

Pixels

Left

(F,L,I)

Pixels

Height

(F,L,I)

Pixels

Width

(F,L,I)

Pixels

Background Color

(F,L)

hex or name eg #6495ED or cornflowerblue.

Border Width

(F,L,I)

Pixels

Field

(F,L)

Maximum Rows

(F)

Maximum rows to display in a paragraph

Minimum Rows

(F)

Minimum rows to display in a paragraph

'setting Minimum Rows to -1 on a Report Object will hide that field all together if it is empty.'

(not actually 0 as you would think.)

Font Color

(F,L)

hex or name eg #6495ED or cornflowerblue.

Font Family

(F,L)

Format

(F)

Date or Number

Text Align

(F,L)

Field, Code or URL

(I)

A field within the temporary table that matches the Code in nuBuilderPro's File table.

OR

The Code of an image stored within nuBuilder's Image table.

OR

A hard-coded URL accessible by the browser.

Z Index

(F,L,I)

On top or behind other Objects (number between 100 and 900)

Group Properties

Report-Builder-Group.png

The group properties pop-up will already have the default groups at fixed positions within it. It is possible to add up to 8 extra groups. This allows you to group fields in the details group by other fields. The name of the group must be the name of a field in the database table #TABLE_ID#.

Any groups you add can be sorted in either ascending or descending order. It is possible to establish a hierarchy within groups by using the move group up and move group down buttons.

You can set properties of each section within a group such as: section name, height, background colour, and if it goes to a new page at the end of the section.

If the height of a section within a group is set to 0, then that section is not displayed. This is useful if you only require the header (or footer) of a particular section within a group.

Report Properties

Report-Builder-Report.png

Width

Width in millimeters

Height

Height in millimeters

Paper Type

  • A4
  • A5
  • Letter
  • Legal

Orientation

  • Portrait
  • Landscape

Copy Changes

Save changes back to Report record. These changes are not saved until the Report record is saved.

Report Builder Short Cuts

The report builder has a variety of shortcuts to reduce the amount of time required to create a report.

These shortcuts are:

  • Double clicking an object will open that objects properties.
  • The arrow keys will move the selected object(s) by 1px.
  • The Ctrl key allows selecting of multiple objects by clicking on objects with the mouse.
  • Double clicking on a group opens the group properties popup with the clicked group selected.
  • Combining the Shift key and arrow keys the selected objects are resized.
    • arrow left: decrease width by 1px.
    • arrow right: increase width by 1px.
    • arrow up: decrease height by 1px.
    • arrow down: increase height by 1px.
  • Ctrl key + c will copy the selected objects.
  • Ctrl key + v will paste (clone) the copied objects.
  • The delete key will delete the selected objects if no property popups are open.