Sei sulla pagina 1di 94

Report Builder 3.

0 – Version 2
The following document is a guide for creating your own reports with the Report Builder 3.0 or adjusting already existing
reports to your individual requirements.

The detailed description refers to the imos Version 11.0 SR2 and the Report Builder 3.0.
Content

Report Builder 3.0 – Version 2...............................................................................................................................................1


Content .................................................................................................................................................................................2
1. Technical Background ...................................................................................................................................................5
2. Administration ................................................................................................................................................................6
2.1 imos DB ..................................................................................................................................................................6
2.1.1 Tables ..............................................................................................................................................................6
2.1.2 Orderlist ...........................................................................................................................................................7
2.2 Element Manager ..................................................................................................................................................10
3. Output..........................................................................................................................................................................13
3.1 imos CAD ..............................................................................................................................................................13
3.2 Organizer ..............................................................................................................................................................14
4. Report Builder..............................................................................................................................................................15
4.1 User interface ........................................................................................................................................................15
4.1.1 Design Surface...............................................................................................................................................16
5. Create New Report ......................................................................................................................................................17
5.1 Creating Lists ........................................................................................................................................................17
5.2 Open Report Builder..............................................................................................................................................18
5.3 Define data sources ..............................................................................................................................................20
5.4 Define Datasets.....................................................................................................................................................22
5.5 Insert table ............................................................................................................................................................30
5.6 Create preview of the report ..................................................................................................................................31
5.7 Insert columns in table ..........................................................................................................................................33
5.8 Fill table with report data .......................................................................................................................................34
5.9 Grouping columns .................................................................................................................................................37
5.10 Modify column content .......................................................................................................................................44
5.11 Insert column heading .......................................................................................................................................46
5.12 Align background colour ....................................................................................................................................47
5.13 Define Barcode Display .....................................................................................................................................48
5.14 Set filter for profile..............................................................................................................................................50
5.15 Display column heading on every page ............................................................................................................. 52
5.16 Define frame for the table ..................................................................................................................................54
5.17 Alternating background ......................................................................................................................................56
5.18 Page format setup .............................................................................................................................................58
5.19 Define row height ...............................................................................................................................................59
5.20 Header...............................................................................................................................................................60
5.21 Define Report Items ...........................................................................................................................................61
5.22 Insert Report Items in Header ............................................................................................................................66
5.23 List header .........................................................................................................................................................70
5.23.1 Insert Logo .....................................................................................................................................................73
5.23.2 Embedded Logo .............................................................................................................................................73
5.23.3 Link external logo ...........................................................................................................................................75
5.24 Footer ................................................................................................................................................................76
5.24.1 Global Listing* ................................................................................................................................................81
6. Edit existing lists ..........................................................................................................................................................83
6.1 Adjust data source ................................................................................................................................................83
6.2 Controlled text message........................................................................................................................................84
6.3 Filter in Lists ..........................................................................................................................................................85
6.4 Visibility .................................................................................................................................................................87
7. Expert Tips ..................................................................................................................................................................89
7.1 Text style and colour on the basis of aligning a condition ...................................................................................... 89
8. Field descriptions .........................................................................................................................................................91
0BTechnical Background 5

1. Technical Background
The reports are based on the SQL Server Reporting Services (SSRS).
SQL Server Reporting Services (SSRS) are a server based report generator system from Microsoft which can be used in a
Client/Server environment with a report server or “local” (without report server). A report server is not installed with imos.
The reports are exclusively edited locally.

Different kinds of interactive or previously prepared reports can be used for the preparation and productive generation.
Reports in imos 11.0 SR1 are applied via the Report Builder 3.0 and must be also edited there.

The versions are not backwards compatible!

Reports
1BAdministration 6

2. Administration
2.1 imos DB
The database applied for imos has several elements which are important for administrating the reports.
1) Tables
2) Possible stored procedures
3) Views

2.1.1 Tables

Table Explanation
CMSBOMLINK The report principles displayed in the Element Manager are administrated via the imos table
CMSBOMLINK.

BINDATA The table BINDATA saves the actual report file as Blob (Binary Large Object).

Reports
1BAdministration 7

2.1.2 Orderlist
According to the program, a parameter is transmitted to the ReportViewer in the Organizer to transmit the PROADMIN.IDs
of the selected orders (e.g. 199, 209, 204,1366).

If you open a report for editing in the Report Builder to test these, one or several order IDs (PROADMIN.IDs) must be set.

Reports
1BAdministration 8

For finding out which order name has which ID, the following command must be entered in the SQL Management Studio:

SELECT * FROM PROADMIN WHERE NAME='<PROADMIN.NAME>'

Enter the searched order names for <PROADMIN.NAME> (e.g..: 'Kitchen_modern). In this example it would be ID “143”.

Reports
1BAdministration 9

The ID found can be now entered in the field ORDERLIST in the Report Builder and then confirm with ENTER. The Report
is executed now and shows the corresponding data of the corresponding order.
If it is not possible to
change in the preview,
then the data source
might have to be
adjusted. (see chapter
6.1).

It is possible to enter several IDs in the field as well. Thereby the IDs must be entered by separating with a comma and
without blank spaces. (e.g. 143,155,156)

Then the corresponding orders are processed sequentially and displayed on separate sheets in the preview.

Reports
1BAdministration 10

2.2 Element Manager


The reports are administrated via the Element Manager in the Organizer.
It is possible to start and finish reports via the settings in the Element Manager.

This means if an existing report has to be edited, then it must be led out via the function Export . By doing this, a
RDL file is created!
If the RDL is marked by double clicking, then it is opened directly in the Report Builder.

After completing the modifications, the modified report must be led into the Element Manager again via Import .

Reports
1BAdministration 11

Function Explanation
Comment Free editable text box.

File Name of the imported RDL File.

Show Report in With an activated function the report is loaded in the Organizer Registry Dashboard.
Dashboard
Only one report can always be activated.

Category Groups the reports in the respective nodes in the report-tree in the Organizer and in imos.
One of the following options can be selected:
• Quotations
• Bill of material
• Calculation lists

The category quotation is only shown in the Organizer - not in imos.

Output Screen(Preview):
When generating the report, the dialog with the report appears.

Send to printer directly:


When generating the report, a dialog does not appear, because the report is printed directly.

PDF-Export:
When generating the report, a dialog does not appear and therefore the report is output in
the PDF-Format in the <imos>\TEMP directory.

Word-Export:
When generating the report, a dialog does not appear and therefore the report is output in
the Word-Format in the <imos>\TEMP directory.

Reports
1BAdministration 12

Excel-Export:
When generating the report, a dialog does not appear and therefore the report is output in
the Excel-Format in the <imos>\TEMP directory.

Mode Standard:
The report is shown in the page layout (paper formats).

Interactive:
The report is not shown in the limited paper format, but interactive elements such as
expanding and collapsing nodes are applied.

Reports
2BOutput 13

3. Output
3.1 imos CAD

Reports can be output via the bill of material lists-


output in imos.

Please, note that lists of the type bill of material and


calculation lists can only be output via imos.

Quotations cannot be output via imos.

Reports
2BOutput 14

3.2 Organizer

In the Organizer the reports can be output via the same named function in the menu
and via the registry dashboard.

Only one report can always be output via the dashboard.


For more information, see chapter 2.2 Element Manager.

Reports
3BReport Builder 15

4. Report Builder
4.1 User interface
The Report Builder is divided into the following sections:

Menu

Design surface
Report data
pane

Properties pane

Grouping pane

Reports
3BReport Builder 16

4.1.1 Design Surface


The Design Surface of the Report Builder is the main working range for designing the reports.
Add report elements such as data ranges, text boxes, images, rectangles and rows from the ribbon to the Design Surface
to insert them in the report.

There you can add the report elements groups, expressions, parameters, filters, actions, visibility and formatting.

The Design Surface is divided into four sections:


1. Header (white surface)
2. Main range (white surface)
3. Footer (white surface)
4. Background (blue surface)

1 and 3.) Modify the header and footer properties (e.g. frame- and filling colour), by right clicking outside of the report
elements on the white surface of the Design Surface and then click on page header properties or footer properties.

2.) Modify the properties of the report‘s main part (e.g. frame- and filling colour), by right clicking outside of the report
elements on the white surface of the Design Surface and then click on properties of the report’s main part.
Modify the properties of the report elements, by right clicking on the elements and then click on the properties.

4.) Modify the properties of the report (e.g. page set-up), by right clicking on the blue surface around the design surface and
then click on the report properties.

Reports
4BCreate New Report 17

5. Create New Report


5.1 Creating Lists

The following example explains the functions of the Report


Builders.
This example is an edge list as shown on the left.

Reports
4BCreate New Report 18

5.2 Open Report Builder

Start the Report-Builder 3.0. via the Window’s Start


Symbol(1).

Select the option Blank Report on the right in the appearing


Getting Started dialog (2).

Reports
4BCreate New Report 19

In doing so, the dialog of the Report Builder opens.

Reports
4BCreate New Report 20

5.3 Define data sources


In the first step, the data source for the report must be defined.
The data source is only important for the definition of the data in the Design Mode.

With a right mouse click on the entry data source in the left window, call the
function add data source.

Now the dialog data source properties


opens.

1. Enter a name for the data source.

2. Here select the function use a


connection embedded in my report.
1
3. And then change to connection
properties via Build.
2

Reports
4BCreate New Report 21

In the connection properties the server, on which the data


base is used, must be selected first.

After that the database further down can be selected via the
pulldown menu.

Leave the dialog via OK again.

Afterwards leave the data source properties dialog via OK as


well.

Reports
4BCreate New Report 22

5.4 Define Datasets


Datasets provide the data for the report.

For defining the datasets, the entry datasets must be marked with a right mouse click and then the function add dataset
must be called.

2
Now the dialog dataset properties opens.

Reports
4BCreate New Report 23

In the option query the following parameters must be defined:

1. Enter a name for the dataset.

The name cannot be identical with the name of the data range.

2. Define it as an embedded dataset.

In imos it is not possible to use an enabled dataset from a report server because a report server is not installed in imos.

3. Select a data source as the basis for the dataset.

4. Select as query type text so that queries can be executed and data can be called from the database.

5. If text has been set as query type, then a window below appears in which the query can be entered.
The following queries are SELECT statements. The following statements specify the source of the Main-Select.

Schematic Setup of a SQL-Select:

Reports
4BCreate New Report 24

Enter the following query in the dialog:

-- Uncomment the following lines and insert PROADMIN.IDs to test the statement in SQL-Management-Studio
--
##################################################################################################
###
--Declare @ORDERLIST NVARCHAR (max)
--SET @ORDERLIST = '<PROADMIN.ID>,<PROADMIN.ID>,<PROADMIN.ID>,...';

With Orderlist AS
(
SELECT
ID AS PROADMIN_ID,
NAME
FROM PROADMIN
WHERE CHARINDEX( ',' + (CAST(PROADMIN.ID AS nvarchar(5))) + ',', ',' + @ORDERLIST + ',' ) != 0
)

select
Orderlist.PROADMIN_ID,
PROADMIN.CNT AS ORDERCNT,
PROADMIN.NAME AS ORDERNAME,
PROADMIN.COMM,
PROADMIN.ARTICLENO,
PROADMIN.EMPLOYEE,
PROADMIN.DATECREATE,
(--GET CUSTOMER
(SELECT NACHNAME FROM CMSCONTACTS
WHERE (CAST(CMSCONTACTS.ID AS uniqueidentifier) =(SELECT PROADMIN.LEVEL_1 FROM
PROADMIN WHERE ((PROADMIN.ID = Orderlist.PROADMIN_ID) AND (SELECT PROADMIN.LEVEL_1 FROM
PROADMIN WHERE PROADMIN.ID = Orderlist.PROADMIN_ID) <> ''))))+', '+
(SELECT VORNAME1 FROM CMSCONTACTS
WHERE (CAST(CMSCONTACTS.ID AS uniqueidentifier) =(SELECT PROADMIN.LEVEL_1 FROM
PROADMIN WHERE ((PROADMIN.ID = Orderlist.PROADMIN_ID) AND (SELECT PROADMIN.LEVEL_1 FROM
PROADMIN WHERE PROADMIN.ID = Orderlist.PROADMIN_ID) <> ''))))

Reports
4BCreate New Report 25

) AS CUSTOMER,
PROADMIN.CLIENT,
PROADMIN.PROGRAM,
PROADMIN.CONTYPE,
PROADMIN.DESIGN,
PROADMIN.SOURCE,
PROADMIN.SHIPPING_DATE,
PROADMIN.DELIVERY_DATE,
PROADMIN.INFO1,
PROADMIN.INFO2,
PROADMIN.INFO3,
PROADMIN.INFO4,
PROADMIN.INFO5,

IDBINFO.CPID AS ARTNAME,
IDBINFO.BOMFACTOR,

IDBGPL.ID,
IDBGPL.CNT,
IDBGPL.NAME1,
IDBGPL.TYP,
IDBGPL.CPID,
IDBGPL.ISPEC,
IDBGPL.MATID,
IDBGPL.MATNAME,
IDBGPL.MATCAT,
(SELECT MAT.TEXT from MAT WHERE MAT.NAME=IDBGPL.MATID) AS MAT_DESC,
(SELECT MAT.BESTELLUNG from MAT WHERE MAT.NAME=IDBGPL.MATID) AS MAT_ORDERNR,
(SELECT MAT.PRODUCER from MAT WHERE MAT.NAME=IDBGPL.MATID) AS MAT_PRODUCER,
IDBGPL.MATGROR,
IDBGPL.FLENG,
IDBGPL.FWIDTH,
IDBGPL.FTHK,
IDBGPL.CLENG,
IDBGPL.CWIDTH,

Reports
4BCreate New Report 26

IDBGPL.CTHK,
IDBGPL.RLENG,
IDBGPL.RWIDTH,
IDBGPL.RTHK,
IDBGPL.SURFTID,
IDBGPL.SURFBID,
IDBGPL.SURFTGROR,
IDBGPL.SURFBGROR,
IDBGPL.SURFTLEN,
IDBGPL.SURFTWIDTH,
IDBGPL.SURFTTHK,
IDBGPL.BARCODE,
IDBGPL.PARTPOSSTR,
IDBGPL.COLORTOP,
IDBGPL.COLORBOTTOM,
IDBGPL.AREA,
IDBGPL.NCNO,
IDBGPL.KMS,
IDBGPL.PRICE,
IDBGPL.WEIGHT,
--- <FLAGS ---
IDBGPL.BOM_FLAG,
IDBGPL.NC_FLAG,
IDBGPL.CUT_FLAG,
--- /FLAGS> ---

IDBATT.ATT_VALUE,
IDBATT.ATT,

IDBPRF.ID ASIDBPRF_ID ,
IDBPRF.PRFNAME,
IDBPRF.PRFNO,
IDBPRF.PRFID,
IDBPRF.RENDERP,
IDBPRF.PRFCPU,

Reports
4BCreate New Report 27

IDBPRF.PRFLEN,
IDBPRF.PRFHGT,
IDBPRF.PRFTHK,
IDBPRF.PRFHGTFIN,
IDBPRF.PRFTHKFIN,
IDBPRF.HEIGHT,
IDBPRF.PRFWS,
IDBPRF.PRFCOL1,
IDBPRF.PRFCOL2,
(SELECT PROFIL.TEXT from PROFIL WHERE (PROFIL.NAME=IDBPRF.PRFNAME) AND (PROFIL.NAME <> 'PRF_00')
AND (PROFIL.THK = IDBPRF.PRFHGTFIN) ) AS PROFIL_DESC,
(SELECT PROFIL.BESTELLUNG from PROFIL WHERE(PROFIL.NAME=IDBPRF.PRFNAME) AND (PROFIL.NAME <>
'PRF_00') AND (PROFIL.THK = IDBPRF.PRFHGTFIN) ) AS PROFIL_ORDERNR,
(SELECT PROFIL.SUPPLIER from PROFIL WHERE(PROFIL.NAME=IDBPRF.PRFNAME) AND (PROFIL.NAME <>
'PRF_00') AND (PROFIL.THK = IDBPRF.PRFHGTFIN) ) AS PROFIL_SUPPLIER

from
Orderlist
inner join PROADMIN ON Orderlist.PROADMIN_ID=PROADMIN.ID
inner join IDBGPL ON PROADMIN.NAME=IDBGPL.ORDERID AND IDBGPL.TYP <> 59
inner join IDBGRPS ON IDBGPL.ID=IDBGRPS.ID and IDBGPL.ORDERID=IDBGRPS.ORDERID
inner join IDBPRF ON IDBGPL.ID=IDBPRF.ID and IDBPRF.ORDERID=IDBGPL.ORDERID
left join IDBATT ON IDBPRF.ID=IDBATT.ID and IDBPRF.ORDERID=IDBATT.ORDERID
left join IDBINFO ON IDBINFO.ID=IDBGRPS.HIGHARTID and IDBINFO.ORDERID=IDBGRPS.ORDERID

A field description is in chapter 8. Field descriptions.

Reports
4BCreate New Report 28

In the option fields the fields are listed which have been defined with the Select query.

Reports
4BCreate New Report 29

A condition can be defined via the option filter so that only the parts, which are also transferred to the bill of material lists,
are displayed in the report.

Take care that that the


data type for the
BOM_FLAG is set on
Integer.

1
2

3
4

1. For defining a condition, click on add first.


Then the entry field appears below for the definition of the condition.
By clicking on the arrow next to expression, the list of the available expressions appears.
Select BOM_FLAG.

The available expressions are defined via the stored query from the option query.

BOM_FLAG is an entry from the IDBGPL and defines if the part is transferred or not to the bill of material.
• 1= Yes
• 0= No
2. Select “=“as Operator
3. And enter “1“ for the value.
Thereby only the parts, which are also transferred to the bill of material list, are output.

Reports
4BCreate New Report 30

5.5 Insert table

Next a table is inserted in the Body (main range) of the report.


In order to do this, change to the registry insert and select the function insert table
from the group data ranges.

Afterwards drag out a rectangle in the middle section by moving the mouse to create the table.

The size and the number


of columns can still be
subsequently adjusted.

Reports
4BCreate New Report 31

5.6 Create preview of the report

It is possible when creating the report in every stage to display a preview of the current status by clicking on the function
Run in the registry root.

Thereby, the view of the dialog changes and the preview window opens.

In this case an empty


table is displayed
because up to now no
parameters have been
defined to fill the tables
yet.

Reports
4BCreate New Report 32

Please, note the following points:

1. To fill the list with values, the parameter ORDERLIST value must be filled (refer chapter 2.1.2)
2. When modifying the design view, the button update must be pressed once before changing to the preview.
3. For viewing the print view of the report, use the function page layout.

For further editing the list, change to the design view again via Design.

Reports
4BCreate New Report 33

5.7 Insert columns in table


7 columns altogether are required for the list.
For inserting further columns, mark a column by right clicking and then call the function insert column/right.

Repeat this process till there are 7 columns in the


table.

For adjusting the width of the column, go to the


spaces between the columns and move these.

Reports
4BCreate New Report 34

5.8 Fill table with report data


There are two different procedures for filling the columns with the required values:

1. Variant:
Öpen the node Datasets on the left side in the report data range.
Select NAME1 in the list of the attributes and drag this to the first column while keeping the mouse button pressed.

Now the first column is filled with this value:

Reports
4BCreate New Report 35

2. Variant:

The second possibility for filling columns with report data is to go with the mouse over
the bottom data field and then click on the small table field.

By doing this, a list opens with the selection of data sets as well.

For this purpose, select BARCODE for the second


column.

Now proceed in the same way for the remaining columns and fill them with the following values:

Reports
4BCreate New Report 36

If you change to the preview via Run, the following picture appears:

In this example some


values for PRFHGT und
PRFTHK are on “0“,
because of the formatting
of the text box which
means that no fractional
digits are displayed.

Reports
4BCreate New Report 37

5.9 Grouping columns


At the moment the list is completely ungrouped and all parts are listed without a sequential order in the list.
For grouping the attributes, the extended mode must be activated.

To do this, click on the arrow next to column group in the grouping range and then activate the extended mode.

The mode is activated if the checkmark is set.

Thereby, the view changes in both columns:

Reports
4BCreate New Report 38

Now proceed as follows:

1. Mark the first column.


2. Then call the context menu in the row group by right
clicking.
3. There select Add Group/ Parent Group.

3
2

Reports
4BCreate New Report 39

By doing this, the dialog Tablix group appears:

Select ORDERNAME for after grouping. Leave Thereby it is grouped


the dialog via OK again. according to the order
names.

Now grouping is displayed in three places:


1. In the table in the design surface a bracket is also displayed in front of the column, in front of the three rows:

Serial list grouped list

2. The group is listed in the grouping range:

Reports
4BCreate New Report 40

3. In the design surface a further column has been inserted for grouping:

If you see the list in the preview now, the report is grouped according to the order and not by parts. This means that further
groups must still be defined.

Reports
4BCreate New Report 41

For grouping the report according to parts, mark the row ORDERNAME in the range of the row groups by right clicking and
then call the group attributes:

In the group attribute the current grouping is listed according to ORDERNAME.


Click on add (1) and then only group according to the NAME1 (2).

Reports
4BCreate New Report 42

In the last step the barcode still has to be grouped.

For this purpose, the row ORDERNAME must be marked in the range of the row groups by right clicking once and then call
add group/ Child group.

Here group according to BARCODE:

Reports
4BCreate New Report 43

Afterwards the following picture appears in the design surface:

And this picture in the preview:

Reports
4BCreate New Report 44

5.10 Modify column content


In the preview two things are noticeable:
1. The column Barcode is shown twice.
2. The part name should be listed and not the order name with the grouping.

Referring to 1.)
Delete the second barcode column by marking the column in the Design Surface and then call the context menu by right
clicking once. In the appearing context menu the function delete column must be selected.

Referring to 2.)
For applying the part name as the group name and not the order name, the entry ORDERNAME only has to be marked in
the column and can be deleted via delete.
Then the empty row can be filled with new report data again.
In this case apply NAME1.

Reports
4BCreate New Report 45

Now the column NAME1 must be deleted so that NAME1 does not appear twice in the report as well.

Then the following report appears in the preview:

Reports
4BCreate New Report 46

5.11 Insert column heading


For modifying the column heading, the existing entry must be marked and deleted.
Afterwards the desired term can be entered:

Now the other headings still must be modified so that the following picture appears:

Text properties such as


format and font type can
be modified via the menu
or the context menu.

Reports
4BCreate New Report 47

5.12 Align background colour


For aligning the background color of a row, it must be marked so that a thick grey frame appears around it.
Then the BackgroundColor can be defined via the properties under fill on the right side. Define all columns lightgrey as
the background colour.

Several rows can be marked at the same time via the Shift-Key as well.

Reports
4BCreate New Report 48

5.13 Define Barcode Display


The barcode display is defined with the font type.

In order to do this, the entry barcode must be marked in the table


and afterwards the font type must be converted to Code 128
and the font size to 24 point.

It is necessary to set an asterisk in front of and behind the entry [BARCODE] so that the barcode can be read. It is better to
do this before converting the font type. Afterwards it is important to convert the font type for the * as well.

Reports
4BCreate New Report 49

With the modified settings of the font, the display of the barcode in the design surface changes as well.

Afterwards the following lists appear in the preview:

Reports
4BCreate New Report 50

5.14 Set filter for profile


As shown in the previous displays, the edge is output without any material
allocation in the list up to now.

For filtering this edge, the complete Tablix must be marked and the
context menu must be called via a right click.
There the function Tablix-Properties can be called.

Then it is possible to define a condition via the option filter. In this


example the condition should look like this:

Reports
4BCreate New Report 51

So that only the edges with material are listed in the report:

In the following chapters the alignments regarding the appearance of the report are made.

Reports
4BCreate New Report 52

5.15 Display column heading on every page


For setting the display of the column heading on every page of the report, the row with the headers must be marked and
then the function Tablix-Properties is called via a right click.

Via General the option Repeat header column on each


page must be activated under Column Headers.

The option Keep together on one page if possible


enables to display the content of a group on one page.

Reports
4BCreate New Report 53

Furthermore, it is still necessary to make corresponding settings in each row.

For this purpose


1. The top row (which corresponds to the column part) in the row group must be marked.
2. The value for RepeatOnNewPage is set on True in the properties.

This process must be repeated for barcode and edge.

For checking this setting in the preview, it is important to change to the print layout.

Reports
4BCreate New Report 54

5.16 Define frame for the table


For displaying a frame for all rows for the inserted table, the table must be completely marked and then set on all via the
menu of the frames.

Then frames for the complete table are displayed


in the preview.

Reports
4BCreate New Report 55

If a frame has to be displayed around the complete main range in the preview, then it can be deleted by calling the context
menu in the main range in an empty space via a right click and then the function body properties is called.

In the appearing dialog properties of the report main part next to frames none can be set under presets.

Reports
4BCreate New Report 56

5.17 Alternating background


An alternating background can be defined for tables.
In order to do this, the relevant rows must be marked and then the background set in the properties.

Click on the arrow next to BackgroundColor and go to expression in the appearing menu.

Reports
4BCreate New Report 57

Now in the appearing dialog a condition can be defined for the background.

Enter the following term:


=IIF(RunningValue(Fields!PRFNO.Value,COUNTDISTINCT,NOTHING) MOD 2 = 0
,IIF(ROWNUMBER(NOTHING) MOD 2=0,"WhiteSmoke","Transparent")
,IIF(ROWNUMBER(NOTHING) MOD 2=1,"Transparent","WhiteSmoke"))

Then the report is displayed in the preview as follows:

Reports
4BCreate New Report 58

5.18 Page format setup


The page layout for printing the report can be adjusted via the report properties.
In order to do this, the same named function must be called via a right click in the blue section of the design surface.

Here the page format for printing the report can be defined under page setup.

If the columns do not fit on the page anymore, then these must be manually modified in their width. For this purpose, just
mark the column and then move it with the mouse.

Reports
4BCreate New Report 59

5.19 Define row height


The row height can be defined via the properties by just marking one of the rows and then defining the height under size
via the properties on the right side.

In this example the height is set with 10mm.

If the row height should always remain the same and does not conform to the
row content, then the setting can be set on False under General via
CanGrow and CanShrink.
CanGrow => row can become greater
CanShrink => row can become smaller

Reports
4BCreate New Report 60

5.20 Header
In the following chapters the header of the report is configured. In order to do this, the header must be inserted first.
The function Add header can be called in the menu via the tab Insert.

First a header is inserted in the top section.

The text box click to add


title can be deleted from
the report because in this
example the title is
entered in the header.

Reports
4BCreate New Report 61

5.21 Define Report Items


For applying the properties from the Body (main range of the design surface) in the header, it is important that these have
been previously defined via expressions.

First define text boxes for the definition of the expressions.


To do this, mark the last column of the table and insert a further column next to it on the right.

Now insert a rectangle in the bottom data field. To do this, select the function rectangle on the tab insert and then drag
this into the field by pressing the mouse key.

Reports
4BCreate New Report 62

Afterwards a text box must still be inserted in the rectangle.


Call the same named function and span a text box in the
rectangle with the mouse.

Then the text box must be marked by a right click and call the function text box
properties in the context menu.

Reports
4BCreate New Report 63

Then a value can be selected in the text box properties.

These values are filled with the information from the datasets!

In this example select DELIVERY_DATE as the value and enter DELIV for the name.

Now four further text boxes must be inserted in the rectangle in the same way. Following settings must be made for these
text boxes:

Name Value Description

EMP EMPLOYEE Name of the employee


CUSTOM CUSTOMER Name of the end customer
ARTICLE ARTICLENO Article number
ORD ORDERNAME Order name

Reports
4BCreate New Report 64

Now the following picture appears in the table:

The new inserted column should not be displayed in the report and therefore the column has to be marked by right clicking
and then call the function column visibility in the context menu.

The setting must be set on hide here.

Reports
4BCreate New Report 65

To immediately show that there are no elements displayed in the list, the text box can be set with a coloured background.

To do this, the complete rectangle is marked and afterwards a background color can be defined via the properties on the
right side.

Reports
4BCreate New Report 66

5.22 Insert Report Items in Header


Next, the header is designed to be able to insert text boxes.

Now a text box can be inserted in the header, for example, which is filled with the following texts:

Enter text and just insert


wordwrap via enter.

Afterwards a further text box can be inserted


next to it on the right. Then this text box is
marked by right clicking and the function
expression is called.

Reports
4BCreate New Report 67

In the appearing dialog the following expression must be defined:

=ReportItems!DELIV.Value

= ReportItems!<TEXTFELDNAME>.Value

In doing so, the definition of the text box name must be identical with the
name of the text box properties.
It is important to consider the small and capital letters!

The value is filled with the value from the text box.

Reports
4BCreate New Report 68

For defining further expressions underneath, a wordwrap must be made after the first expression and the function create
placeholder has to be called in the row below by right clicking once.

In the appearing dialog of the placeholder properties, change to the expression dialog via the button fx. Here the
expression for the EMPLOYEE can be defined.

Reports
4BCreate New Report 69

If no value is entered for the description in the placeholder properties, then only <<Expr>> is in the text box later.

Repeat this process for the other entries of the header as well and fill the field description at the same time.

Preview

Reports
4BCreate New Report 70

5.23 List header


A text box is inserted in the report again for the list header.

To do this, the function text box must be called via the menu insert and then span the field to the desired size with the
mouse.

Size and position of the text box can be subsequently


moved with the mouse.

Afterwards the required heading can be entered in the text


box.

Font and size can be adjusted via the menu:

Reports
4BCreate New Report 71

For inserting a dividing row below the header, the header properties must be called.
In order to do this, call the context menu in an empty space of the header by right clicking and call the same named
function there.

In the appearing dialog header properties a row below can be defined in the range frame.

Reports
4BCreate New Report 72

Now the report in the preview is displayed as follows:

A further possibility for defining e.g. a dividing row below the heading is to mark the text box so that it is displayed as a
dashed line and afterwards a frame can be defined below via the frame functions.

Vorschau

Reports
4BCreate New Report 73

5.23.1 Insert Logo


There are many variants to insert a logo in a list header.

5.23.2 Embedded Logo


An embedded logo is applied with the first variant. For this purpose, the function add
image must be called via the report data range on the left side by right clicking once
on the entry images.

Afterwards a logo can be selected.

In doing so, all current image formats are available.

Afterwards the selected image is listed in the node images.

Then an image can be inserted via the group report elements in the menu insert.
With the mouse it is possible to span the image to the desired size.

Reports
4BCreate New Report 74

If the image has been spanned, the dialog image properties appear.
If the option embedded is selected with use image source, then the previous defined logo can be selected via the pull
down menu under use this image.

Now the logo is displayed in the list header.

Reports
4BCreate New Report 75

5.23.3 Link external logo


Now with the second possibility an external logo is linked.
For this purpose, an image must be inserted (see previous chapter). In the appearing dialog image properties the option
extern is applied with select image source this time.

Afterwards the dialog expression is called via the button fx. Here an external image can be linked via the term
=file:\\\<File path>.
The advantage is that not all lists have to be manually adjusted when modifying the logo.

=“file:\\\<File path>“

Reports
4BCreate New Report 76

5.24 Footer
The footer has already been automatically inserted in the report and therefore it is not necessary to insert footer anymore.

The date and the page number have to be inserted in the footer which is shown as follows.

First of all, the already existing text box [&ExecutionTime] is


deleted from the footer!

Afterwards the following text is in the footer:

For example, the page number from the integrated fields can be moved per Drag & Drop in the footer then.

Reports
4BCreate New Report 77

Thereby, the current page number would be displayed in the report. But if
the current page number and the total number of pages have to be
displayed, then the expression can still be edited further.
To do this, the text boxes marked by a right click and the function text box
properties called.

The name of the expression can then be edited via the text box properties.

Change to the same named dialog via the fx-button to edit the expression.

Reports
4BCreate New Report 78

Currently, the expression is defined as follows:

=Globals! => Displays global variables, which are useful for reports such as the report name or the page number.
The global variables are always available!

For more information, refer to chapter 5.24.1 Global Listing.

If the following term is entered, the page number is set in the format 1/20.

=Globals!PageNumber & "/" & Globals!TotalPages

For inserting the date in the footer, a text box must be inserted in the footer first. Afterwards the placeholder properties
are called via the context menu of the text box. The following expressions are defined via fx:

Here the date can be defined via different functions.

Reports
4BCreate New Report 79

These functions can be selected in the Category under Common functions/ Date & Time.

Reports
4BCreate New Report 80

Please, note that this value may be overwritten by the settings in the text properties. This means that the type of date is
set differently via number and then the value in the report could refer to this.

Now the setting of a new edge list is completed!

Reports
4BCreate New Report 81

5.24.1 Global Listing*


The Global-Listing includes the global variables for the report. These variables are displayed with a commercial And-Sign
(&) as a prefix, e.g. [&ReportName] on the design surface. The elements of the Global Listing are explained in the following
table.

Member Type Description


ExecutionTime DateTime The date and the time when the report execution started.
PageNumber Integer The current page number in relation to the page breaks with which the page
number is reset. At the beginning of the report process the initial value is set on
1. The page number with every rendered page is incremented. For counting
pages within page breaks with a rectangle, a data range, data range group or a
card, set the ResetPageNumber-Property on True for the PageBreak-Property.
This is not supported in the hierarchy groups of the Tablix-Columns.
PageNumber can only be used in an expression in a page header or page
footer.
ReportFolder String The complete path of the folder with the report. This does not include the report
server-URL.
ReportName String The name, with which the report is saved in the report server database.
ReportServerUrl String The URL of the report server where the report is executed.
TotalPages Integer The total page numbers in relation to the page breaks with which the
PageNumber is reset. If no page breaks are set, this value corresponds with
OverallTotalPages-Value.
TotalPages can only be used in an expression in a page header or page footer.
PageName String The name of the page. When starting the report process, the initial value of the
InitialPageName for a report property is defined. If each report element is edited,
this value is replaced by a corresponding value of PageName, a rectangle, a
data range, data range group or a card. This is not supported in the hierarchy
groups of the Tablix-Columns. PageName can only be used in an expression in
a page header or page footer.

Reports
4BCreate New Report 82

OverallPageNumber Integer The page number of the current page for the complete report.
ResetPageNumber has no effect on this value.
OverallPageNumber can only be used in an expression in a page header or
page footer.
OverallTotalPages Integer The total number of the pages for the complete report.
ResetPageNumber has no effect on this value.
OverallTotalPages can only be used in an expression in a page header or page
footer.
RenderFormat RenderFormat Information for current rendering demand.
Further information is under "RenderFormat" in the next section.

*) This list is taken from the Support for Report-Builder 3.0.

Reports
5BEdit existing lists 83

6. Edit existing lists


Here in the following chapters are a few tips to consider when editing a list which has been delivered by imos.

6.1 Adjust data source


If an existing list has been taken from imos and this list has to be adjusted to your needs, then it is necessary to align the
data sources first.

In order to do this, the existing data source must be selected in the report data range on the left side by right clicking and
call the function data source properties in the context menu.

In the data source properties the server path and database is shown under connection string.

Adjust these to your needs!

Reports
5BEdit existing lists 84

6.2 Controlled text message


The existing reports in imos are controlled via the imos.msg, which means that the inserted texts are translated depending
on the language setting.

The definition for this takes place via the ValueLocID in the properties on the right side.

In this case the entry in the text box is controlled via the MSG Entry 1115!

This means that if your own lists should never be translated, the value next to ValueLocID must be deleted. Otherwise it
can happen that the entry in the text box is modified, but the expression from the MSG in the output reports is used!

Reports
5BEdit existing lists 85

6.3 Filter in Lists


In several lists existing in imos, the filters have been defined to only display certain parts.

For example, the following filter in the assembly list (i_ManufactList.rdl) in the dataset properties has been stored:

BOM_FLAG is an entry from the IDBGPL and defines if the part has to be transferred to the part list or not.
• 1= Yes
• 0= No

Reports
5BEdit existing lists 86

In the purchased part list a filter is stored for only allowing purchased parts to be listed in the list.

Reports
5BEdit existing lists 87

6.4 Visibility
In all list headers a field is inserted which is only then displayed if no objects are in the list.
For example, if no purchased parts are applied in the order, then the list is empty.
Therefore a text box is displayed in the list header with the text “No Purchased Parts existing“.

Reports
5BEdit existing lists 88

This definition is made via the text box properties. In the section visibility it defines if the text box Depending on the
expression show/hide is.

And the following term has been applied as the expression:


=IIF(ReportItems!NAME1.Value="",false,true)

Thereby, an empty report has been output as follows:

If edges exist in the report and the text box is not displayed, then the order header information behind it is displayed.

Reports
6BExpert Tips 89

7. Expert Tips
7.1 Text style and colour on the basis of aligning a condition
It is possible to manipulate visibility, colours and formats etc. via the expressions.
Example:
In a purchased part list the quantity of the purchased parts should be displayed red and bold if this exceeds a value of 50.

For this purpose, the text box of the quantity [CNT] in the table must be marked and then call the text box properties.

In the settings of the font you have to switch to the expressions via the fx-button.
Then the following expression must be defined for the format bold:
=IIF(Sum(Fields!CNT.Value)> 50, "ExtraBold" ,"Normal")

Reports
6BExpert Tips 90

Translated, the expression means:


If [IIF] the number of the connectors [Sum(Fields!CNT.Value)] is greater than “50“ [>50], then apply bold ["ExtraBold"] ,

otherwise apply normal ["Normal"]

Then to display the quantity red as well, the following expression must be defined for the color:
=IIF(Sum(Fields!CNT.Value)> 50, "Red" ,"Black")

Reports
7BField descriptions 91

8. Field descriptions
Field Descriptions Table
NAME Name of the order PROADMIN
COMM Commission on the order PROADMIN
ARTICLENO Article number PROADMIN
EMPLOYEE Name of the employee PROADMIN
DATECREATE Creation date of the order PROADMIN
CUSTOMER Name of the customer PROADMIN
CLIENT Name of the client PROADMIN
PROGRAM Program name PROADMIN
CONTYPE Construction type PROADMIN
DESIGN Design parameters PROADMIN
SOURCE User applied with the order/project PROADMIN
SHIPPING_DATE Shipping date PROADMIN
DELIVERY_DATE Delivery date PROADMIN
INFO1 PROADMIN
INFO2 PROADMIN
INFO3 PROADMIN
INFO4 PROADMIN
INFO5 PROADMIN

Field Descriptions Table


ID Precise Part -ID IDBINFO
TYPE TYPE 1, 2, 3 IDBINFO
POSSTR Composite position number IDBINFO
CPID Name which results from the structure of the part IDBINFO
GROUPNAME Translated group name IDBINFO
WIDTH Width of the article IDBINFO

Reports
7BField descriptions 92

DEPTH Depth of the article IDBINFO


HEIGHT Height of the article IDBINFO
WEIGHT Weight IDBINFO
CHECKSUM Checksum of the article IDBINFO

Field Descriptions Table


CONID Name of the purchased part IDBPURCH
COST_1: Price of the connector/purchased part IDBPURCH
CNT Quantity
ARTICLE_ID: Article ID of the manufacturer IDBPURCH
SUPPLIER Manufacturer/Supplier IDBPURCH
ORDER_ID Purchase item ID (connector)/ IDBPURCH
Serial ID (purchased part)
CONID Name imos Part IDBSPP
COST_1 Total price for SPP IDBSPP

ARTICLE_ID Article ID of the manufacturer IDBSPP


SUPPLIER Manufacturer/Supplier IDBSPP
ORDER_ID Purchase item ID (connector)/ IDBSPP
Serial ID (purchased part)

Field Descriptions Table


CONID Name imos Part IDBSPP
COST_1 Total price for SPP IDBSPP
ARTICLE_ID Article ID of the manufacturer IDBSPP
SUPPLIER Manufacturer/Supplier IDBSPP
ORDER_ID Purchase item ID (connector)/ IDBSPP
Serial ID (purchased part)

Reports
7BField descriptions 93

Field Descriptions Table


ID Precise Part -ID IDBGPL
CNT Number per unit, basically “1“ IDBGPL
NAME1 Name of the part IDBGPL
TYP Part type IDBGPL
CPID Name of the construction principle IDBGPL
ISPEC Classification of special parts IDBGPL
MATID Link to material IDBGPL
MATNAME Name of the material IDBGPL
MATCAT Material category IDBGPL
MATGROR Angle of the graining for the core material IDBGPL
FLENG Length (finish dimension) in mm IDBGPL
FWIDTH Width (finish dimension) in mm IDBGPL
FTHK Thickness (finish dimension) in mm IDBGPL
CLENG Length in mm (cutting dimension) IDBGPL
CWIDTH Width in mm (cutting dimension) IDBGPL
CTHK Thickness in mm (cutting dimension) IDBGPL
RLENG Length in mm (raw dimension) IDBGPL
RWIDTH Width in mm (raw dimension) IDBGPL
RTHK Thickness in mm (raw dimension) IDBGPL
SURFTID Surface top IDBGPL
SURFTBID Surface bottom IDBGPL
SURFTGROR Grain angle top IDBGPL
SURFBGROR Grain angle bottom IDBGPL
SURFTLEN Surface length IDBGPL
SURFTWIDTH Surface width IDBGPL
SURFTTHK Surface thickness IDBGPL
BARCODE Barcode IDBGPL
PARTPOSSTR Barcode-String from the position number of the part IDBGPL
COLORTOP Color top IDBGPL
COLORBOTTOM Color bottom IDBGPL
AREA Area of the part in square meter (sqm) IDBGPL

Reports
7BField descriptions 94

NCNO Number of the NC machine program IDBGPL


KMS Name of the part definition IDBGPL
WEIGHT Weight of the part IDBGPL
PRICE Addition of price for core material, surface material and edge material IDBGPL
without working hours
WEIGHT Weight of the part IDBGPL

Field Descriptions Table


ID Precise Part -ID IDBPRF
PRFNAME Link to the material of the profile IDBPRF
PRFNO Link for the edges IDBPRF
PRFID Link for the profile IDBPRF
RENDERP Render principle for the profile IDBPRF
PRFCPU Cost per unit IDBPRF
PRFLEN Profile length for purchase IDBPRF
PRFHGT Profile height for purchase IDBPRF
PRFTHK Profile thickness for purchase IDBPRF
PRFHGTFIN Real profile height IDBPRF
PRFTHKFIN Real profile thickness IDBPRF
HEIGHT Real profile height with trim IDBPRF
PRFWS Profile machining index IDBPRF
PRFCOL1 Code 1 from color principles IDBPRF
PRFCOL2 Code 2 from color principles IDBPRF

Reports