Aug 2023 Genesys Report Writer

Model-Based System Engineering with CORE ®

Course Material Fundamentals of Writing Reports in GENESYS TM Course Material

Vitech Corporation 2070 Chain Bridge Road Suite 100 Vienna, Virginia 22182-2536 703.883.2270 www.vitechcorp.com 2270 Kraft Drive Suite 1600 Blacksburg, VA 24060 540.951.3322 www.vitechcorp.com

Copyright © 1995-2022 Zuken Vitech Inc. All rights reserved. No part of this document may be reproduced in any form, including, but not limited to, photocopying, translating into another language, or storage in a data retrieval system, without Vitech’s prior written consent. Restricted Rights Legend Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.277-7013 or subparagraphs (c)(1) and (2) of the Commercial Computer Software - Restricted Rights at 48 CFR 52.227-19, as applicable, or their equivalents, as may be amended from time to time. Zuken Vitech Inc. 2270 Kraft Drive, Suite 1600 Blacksburg, VA 24060 540.951.3322 www.vitechcorp.com

is a trademark of Zuken Vitech Inc. and refers to all products in the GENESYS software product family. Other product names mentioned herein are used for identification purposes only, and may be trademarks of their respective companies.

(Revision Date – December 2022)

Writing Reports in GENESYS

2021 Ver -

1

Administrative Details

• Prerequisite: MBSE with GENESYS Course • Schedule • Preferred start and end time • Breaks • Questions and answers • Parking lot items

Introductions

2

Course Overview

• Introduce the basics of the GENESYS Report Writer • Create a number of customized reports • Discuss the application of scripting to reports • Review a sample of existing reports

Get set to let the reporting genie out of the bottle!

3

Course Outline

• Introduction to the Report Writer • Intro to Banded Report Writer Concepts • Report Writer Interface • Label Controls • Panels, Shapes and Lines • Report Bands • Project Data and Report Bands • Entity Bands • Relationship Bands • Target Bands • Hierarchy Iterate • Controls – Shrink and Compress

• Sub Reports and Parameters • Sub Reports • Report Parameters • Sorting and Filtering • Sort Blocks • Filters in Reports • Tabular Data • Column Layout • Table, Rows, and Cells • Summary Fields • Diagrams

• Entity Diagrams • Importing Images

4

Course Outline, Cont.

• Document Map

• Table of Contents • List of Figures and List of Tables • Scripting Discussion • Existing Report Survey • SSDD • SSS • IRS • DoDAF Views • Course Wrap up

5

Introducing the GENESYS Report Writer

6

GENESYS Report Writer

• Provides a development environment for the development and editing of a report • Selecting any report opens the report editor (a customized IDE) with the Report Template populated with controls for that report • When the report is run the report viewer is opened to show the contents (or results) of running the report

7

Understanding Report Bands

• A report consists of a number of bands, each of a different type • A Report Band represents a specific area on a page, used to access data • Detail Bands are used to access project information • Any Detail Band may contain a report control • A control is used within a band to display data • Controls how the data is rendered in the report on the printed page

Control

Report Band

Detail Band

8

Importing a Project File into GENESYS

Get started by importing a sample project to work with throughout this course 1. Select the application menu 2. Select “Import” 3. Navigate to the specified folder 4. Select “Geospatial Library Sample.gnsx” 5. Click “Open”

C:\Program Files (x86)\Vitech\GENESYS #### Collaborative Edition\Samples\Project Samples

9

Stepping through the Import Wizard

10

Accessing Reports

Reports are available in the Reports folder in the Project Explorer Reports can be stored in folders just like entities The Project Explorer contains a report folder at the bottom of the tree All pre-defined and user-defined reports are located in these folders A description of the report is provided in the right-hand pane, once a report has been selected 1. Expand the Reports sub-menu in the project explorer panel 2. Select a report in the browser panel Selecting a report allows you to use features of the Home Ribbon – Reports button Running the Risk Report 1. Click the triangle in front of “Reports” at the bottom of the project explorer panel to expand the Reports folder 2. Select “Risk Report” to see the available reports in this folder 3. Select “Risk Report” in the browser panel 4. Right-click and select Run from the context menu 5. Specify a file name and location using the Windows save dialog 6. Select the parameters to control how the report is generated 7. Set RunSetRiskRatingScriptto “Yes” 8. Click Submit

11

12

Reviewing Risk Report Output

13

Accessing the Report Writer

The Report Writer is used to create and modify reports in GENESYS 1. Select “Risk Report” Folder 2. Select “Risk Report” 3. Right-click on “Risk Report” and select “Edit” -or 4. Select the “Reports” button in the ribbon and then “Edit” or double-click the Risk Report to open the editor

14

Report Writer IDE Interface

Close Report Writer

Toolbox with Standard Report Controls Save Report and Preview Buttons

Field List

Report Explorer

Report Writer pane

Property Grid

Status bar and Zoom Controls

15

Report Writer IDE Interface

We need to set some basic Report Writer settings Changing the following will allow for easier positioning of labels and controls in the report 1. Select somewhere in the grey background 2. Select the “Report” in the Property Grid 3. In the “Design Group” select “Snapping Mode” and select “Snap Lines”

16

Report Writer Ribbon

Save Report

Window Selection

Layout

Text Size, Color, Cell Alignment

Preview Report

Zoom Control

Alignment

Scripts Editor

17

Creating a New Report

Create a new report in the Project Explorer in the Reports folder 1. Create a new report by using the quick create control at the top of the browser pane -Or 2. Or right-click in the browser to reveal menu, and select “New Report Definition” 3. Enter “EX.1 My First Report” 4. Select the new report and enter a description

18

Create Folder and Move New Report

Create a new folder to organize the examples we will be creating in this class and move your first report into the folder. 1. Right-click the Reports folder to access the context menu 2. Select “New Folder” 3. Create new folder titled “1) Report Writer Class” 4. Select your “EX.1 My First Report” and drag-drop it into the newly created “1) Report Writer Class” folder.

19

Exporting a Single Report

GENESYS provides the capability to export a single report from the Project Explorer 1. Select “Reports” in Project Explorer 2. Right-click on the report to be exported to open the context menu and select “Export” 3. Save the report to the desired location and click “Save” Exporting reports allows you to share the reports to other users, or other repositories Reports exist at the Repository level

20

Exporting All Reports

GENESYS provides the capability to export all reports The export allows transfer of custom reports to other repositories The export also allows a separate backup of reports and an archive capability 1. Select “File” 2. Select the Export menu item 3. Select “Reports” from the drop-down menu 4. Select “OK”

21

Introducing Label and Page Controls

22

Label and Page Controls

• Objective: • Learn to add labels and other page controls onto the workspace • Exercise: Open and run “EX 1. - My First Report” • Report will output: • Simple label-based content • Date stamp

23

Opening the Report Writer Editor

1. Select “1) Report Designer Class” Folder 2. Select “EX.1 My First Report” 3. Right-click on “EX.1 My First Report” and select “Edit”

24

Blank Report with Detail Band

A new report opens with a blank Detail Band at the top of the page Take not of the margins drawn onto the workspace: Top/Bottom margins Left/Right Margins

25

Adding Label Control

Label Controls are used to output data on the printed page. 1. Click the Label control and drag-drop onto the center of the page under the detail band Note: with the label selected, it’s also selected in the Report Explorer on the right side of the IDE. 2. Select the Name field under the Design group and change it to “myFirstLabel” 3. Select the Text field in the data group and change it to “My First Report”

26

Laying Out Label Controls

Add more predefined text to our first report 1. Add another label to the detail band 2. Double-click the new label control and change the text to, “by [insert your name]” 3. Select “name” in the Design group, and change to “myAuthorLabel”

27

Laying Out Label Controls Cont. Centering the labels and centering the text within the labels is accomplished utilizing the centering controls available in the ribbon menu 1. Shift-click both labels 2. Select the Center Horizontally button to center the labels in the band. 3. Select the Center Text button to center the text within the band

28

Laying Out Page Info Controls

Inserting page info controls allows the easy addition of page numbers and date information. 1. Drag-drop the Page Info control onto the page 2. Select the caret to open the dialog box 3. Select Current Data and Time from the Page Information drop-down menu This changes the default page number to the date and time that we want in the header 1. Drag-drop the page info control on the page, center the text, center vertically and center horizontally 2. Save Report 3. Select Preview button

29

Preview Report Ribbon

Close Preview

Watermark/ Color Control

Print Options

Navigate the Document

Zoom Control

Alignment

Export Options

30

Preview Window Ribbon Controls

Export Options

Zoom Controls

Page Setup

Print Report

31

Report Preview

Close the Preview window. 1. Select Close Print Preview to close Preview window

32

Inserting Panels, Shapes and Lines

33

Label and Inserting Panels, Shapes and Lines Page Controls • Objective: • Learn to insert Panels, shapes and lines in a report • Exercise: Modify “EX 1. My First Report” • Open “EX 1. My First Report” in the Report Writer • In this section we’ll add in different panels, shapes and lines to the reports and get a feel for their use • Panels are boxes that can be added to the report and are useful for grouping objects on the page or drawing focus to an area • Lines are used to visually separate information in the report • Shapes can be inserted into the report as well • Standard set of shapes available

34

Inserting Panels and Lines

1. Drag the detail band lower to make room in the report 2. Drag a “Panel” control on the center of the page. 3. Set the new Panel’s “Border” property to “All” 4. Drag a “Line” control onto the screen and size across the page 5. Drag another “Line”control onto the screen and size across the page 6. Save report 7. Select Preview button

35

Inserting Shapes

1. Remove the Panel from the workspace 2. Drag a “Shape” control onto the workspace 3. Resize the shape 4. Save report 5. Select Preview button Note: If you do not want the borders around the shape, set the “Borders” control in the property grid to none.

36

Introduction to Report Bands

37

Understanding Report Bands

Report Bands allow us to navigate thru the data in a repository

Repository – has a number of Projects Project – has Data associated with it Data – is organized into Folders (or Classes) Folder – contains a series of Entities

Report Band is a collection of data

Report Bands in a report are used to get to the desired data in the project.

For example: if you wanted to create a report on Requirements, you will need to get to the REQUIREMENTs Folder in the Current Project

38

Report Bands within Entities

Once the Report Bands are down to the Entity level, you can: 1. Use attributes of database entities in your report 2. Use Relationship data in your report 3. Follow relationships to other entities

39

Band Structure – “ReportBand”

1. Project Band - Select the project for the report scope 2. Data Band – Selects the Data in the project for access. 3. Folder Band – Select the folder that contains the entities for the report. a) Output Folder name/data 4. Entities Band – Output the selected Entities Attributes 5. Relationship Band – Output the selected Relation attributes and select the relationships to follow and obtain target entities 6. Relationships Targets Band – Output the targeted entities attributes.

40

Band Structure – “detailBand”

Project data output here

Folder data output here Entities data output here Relationship data output here

Target data output here

41

Different Types of Bands

Some bands carryover to different sections, pages, or the entire report

For Example: a Page Header band will show up in the header area of each page. Detail Bands, which is where we navigate through the project model, are only used in their specific group

Ref: DevExpress Website, Getting Started with DevExpress Reporting, (https://documentation.devexpress.com/XtraReports/2587/Creating-Reports-in-Visual-Studio/Getting-Started-with-DevExpress Reporting/Quick-Tour-of-Visual-Studio-Report-Designer/Introduction-to-Banded-Reports), last accessed 6 Feb 2018

42

Entity – Target relation

For Example:

Entity

Component

Requirement

related to

built from

specifies

Component

Target

Component

Parent – Child Relation

Entity Relations

The next two slides, as a refresher, provide the basic schema relations …

43

Gathering Entity related to Target Collections

44

Simplified Engineering Metamodel

Revision Date: 4 August 2021

45

Connect System Solution and Operational Need with Discipline System Architecture Domain Operational Architecture Domain

Architecture

composed of

composed of

built from

achieves

built from

implemented by

Performer

Component

Mode

contains

contains

specifies

encompasses

exhibits

connected to

decomposed by

exhibits

State

Document

performs

incorporates

performs

incorporates

entered by

exitsby

Transition

connected to

documents

includes

implemented by

Needline

Link

triggered by

includes

transfers

specified by

decomposed by

specified by

responsible for

Event

responsible for

decomposed by

transfers

Operational Item

refined by

refined by

implemented by

Item

Capability

Requirement

implemented by

inputs / outputs

inputs / outputs

specifies

basis of

basis of

Operational Activity

implemented by

Selected Classes

Function

decomposed by

Exit

exits by

exits by

decomposed by

achieves

captures / consumes / produces

captures / consumes / produces

Resource

includes

achieves

Organization

Operational Task

achieves

includes

Mission

responsible for

Selected Classes

includes

46

Selected Classes

causes

Risk

Change Request Package

impacted by

causes

causes

decomposed by

impacts

Program Management Domain

Program Activity

inputs / outputs

includes

accomplished by

Selected Classes

decomposed by

Program Element

Product

supplies

supplies

implemented by

built from

built from

implemented by

Performer

Component

composed of

composed of

Architecture

Operational Architecture Domain

System Architecture Domain

performs

performs

captures / consumes / produces

achieves

exits by

refined by

refined by

implemented by

Capability

Requirement

basis of

specifies

basis of

specifies

Operational Activity

implemented by

Selected Classes

Selected Classes

Function

Exit

exits by

exits by

decomposed by

decomposed by

captures / consumes / produces

achieves

captures / consumes / produces

Resource

includes

Organization

Operational Task

achieves

includes

Mission includes

responsible for

Selected Classes

47

Working with Project, Data and Folder Bands

48

Project, Data and Folder Bands

• Objective: • Learn the purpose of Project, Data and Folder bands • Learn to insert Project, Data and Folder bands in the report • Exercise: Create “EX.2 Component Report” • Create “EX.2 Component Report” in the Report Writer • Use the Report Band concept to navigate through Repository, Project, Data, Folders to get to a particular Entity. • Build a report that contains a list of Components with their description

49

Setting the Scope of the Project Band

1. Right-click the “detail” band 2. Select “Insert Detail Report” menu 3. Select “Projects” menu item 4. Select the Project Band and then the caret to open the dialog box 5. Select the project “[Current]” from the Projects drop-down menu 6. Click and drag this line to close space between the “projectReportBand1” and “Detail band” Note details in Field List tab and Report Explorer tab

50

Bind Project Name to Label

In this step we will bind the project field to a label allowing access to the project properties 1. Drag-dropLabel control on to “detailBand1” 2. Drag-drop “Project” from the Field List onto the new label

51

Add Data Band This step adds the Data Detail Band to the report. Note: nothing to set on the data band. You are essentially binding all the project data to your report. 1. Right-click in “detailBand1” 2. Select “Insert Detail Report” menu from the context menu 3. Select “Data” menu item

52

Cleaning up Data Band

Moving bands creates or removes white space in the diagram 1. Click and drag the “DetailReportBandDefault1 – “Projects.Data” band below the [Project] label

53

Add the Folders Band In this step we will insert the Folders Band in our report in order to access the folders in our project 1. Right-click in the “detailBand2” 2. Select “Insert Detail Report” menu 3. Select “Folders” menu item

54

Select Folder in Folders Band

In this step we select the folder we want to access the entities in 1. Click and drag the “FoldersReportBand1” to close the space between it and “detailBand2” 2. Select the smart tag to open the dialog box 3. Select the “Component” checkbox from the Folders drop-down menu

55

Bind Folder to the Label In this step we’ll bind the folder from the field list to the label to output the name of the folder to our report 1. Drag-drop a “Label” control on to detailBand3 2. Expand the Folders hierarchy and drag drop the “Folder” entity on to the inserted label control 3. Save report 4. Select Preview button

56

Project, Folder, and Detail Band Report Preview

Recap: Inserted Report Bands Navigated within the Repository to the (current Project) Navigated to select the (complete) Data set for the Project Navigated to the Folders (or Classes) in the Project Selected a particular Folder (e.g. Component) to work with Added Controls to display data available in a Report Band Learned how to manage the “white space” in a report

57

Working with the Entities Band

58

Entities Band

• Objective: • Learn how to output data from entities (within a Folder/Class) in a report band using controls • Select the Data to be used • Sort the Data in a particular way • Control how the information is displayed on the page • Exercise: Modify “EX.2 Component Report” • Continue to modify EX.2 Component Report

59

Insert Entities Detail Report Band

In this step we’ll insert the Entities Detail Report band 1. Right-click in “detailBand3” to access the context menu 2. Select “Insert Detail Report” 3. Select the “Entities” menu item

60

Entities Detail Report Band Sortblock Selection

Selecting the sort block to be applied to the entities modifies the order in which the entities will be output 1. Click and drag the band to close the white space between the “entitiesReportBand” and the “[Folder]” label in detailBand3 2. Select the caret to open the dialog box 3. Select the “Numeric” Sortblock from the Sortblock drop-down menu

61

Bind the Entity to a Label Control We need to bind the entity from the Field List to the label in order for it to display entity information 1. Drag and Drop a “Label” control onto detailBand4 2. Resize the new label to span the workspace

3. Expand the “Field List Entities” hierarchy and drag-drop the “Entity” item onto the “Label” control

62

Modifying the Entity Information for Display We can modify the presentation of the information for display by building out the presentation format using the “Entity Representation” 1. Select the caret on the Label and open the Label Task Dialog box 2. Select the ellipse to open the Entity Representation dialog box

63

Modifying the Entity Information for Display Cont. In this step we will complete building out the Entity information for display in the report 1. Select “Insert” and then the “Text” type in the drop-down. 2. Type “Component: “ (note: there’s a space after the “Component: ”) 3. Select “Insert” and then “EntityAttribute”. 4. Select Number 5. Select OK

64

Adding Entity Description to the Report

Add the description of the entity to the report. 1. Drag-drop another label onto “detailBand4” 2. Size label across page, note the indent 3. Drag-Drop “ Entity” Field onto the label to bind it to the label 4. Select the caret on the new label 5. Select the ellipses next to “Entity Representation” 6. Select the Field drop-down and select “description” 7. Save Report 8. Select Preview button

65

EX.2 Component Report Preview

66

Student Exercise: EX.3 Link Report

• Make a report to provide a list of all the Links in a project. • Name the Report “EX.3 Link Report” • Retrieve all the Links in a project • Sort the list Numerically • Provide Link Number and Name • Provide Link Description • Include Current Date in the Header (in header, right justified) • Include page number (only) in lower right hand corner of the page

Two methods: (a.) Make a New Report and follow steps used in EX.2 Component Report (b.) Duplicate EX.2 Component Report, rename, and make changes to the report

67

Duplicating Reports

1. Select “EX 2. Component Report”, 2. Right-click, Select “Duplicate”

68

Duplicating Reports Cont.

1. Select name attribute and enter new name. 2. Tab or click out of the box to commit the name change. 3. Edit description.

69

EX.3 Link Report Review

Recap: Inserted Entity Band Inserted Labels (controls) Used the Label Tasks menu box and Entity Representation to control what was produced as text in the report. Learned how to manage the “white space” in a report Learned how to Duplicate a Report How to make changes to the Report

70

Working with the Relationship Band

71

Requirement Relations

Document

documents

documents

documents

Requirement (Constraint)

Requirement (Functional)

Requirement (Performance)

specifies

specifies

basis of

Function

Color Code

Requirement Element

Functional Element

allocated to

Physical Element

Interface Element

Component

Verification Element

Other Element

72

Relationship Bands

• Objective: • Use relations to the Requirement class to create a report that outputs Requirements, and related entities. • Exercise: Create “EX.4 Requirement Report” • Output the Folder name of the requirements • Provide the Requirement Number and Name • Provide the Requirement Description • List the relation (basis of) and the target of the relation for the Requirement • Provide Number and Name of the target

73

Build a New Report

Build a report from scratch utilizing the skills we’ve learned so far 1. Create a new report named: “EX.4 Requirement Report” 2. Insert the needed detail report bands to get to the Requirement folder Hint: Project -> Data -> Folders, then select the folder starting point for the report (Requirement), then add the Entity band

74

Build out the Report 1. Insert Label to display the Folder 2. Insert Labels for the Requirement Number, Name and Description 3. Insert the the Class property in the Requirement Number and Name labels Entity Representation 4. Sort the Entities with a numeric sort 5. Save report 6. Select Preview report Don’t forget to bind the bands to the correct field! Note: don’t forget the “ “ in the suffix of the number field to ensure proper spacing

75

Report Preview

76

Keep Band Content Together

Sometimes we need to keep content together across page breaks 1. Select the caret to open the dialog box in the “detailBand4” 2. Check the “Keep Together” checkbox 3. Save report 4. Select Preview button Text in detailBandis now kept together

77

Add the Relationship Band

In this step we will add the Relationships band to the report

1. Right-click in detailBand4 2. Select Insert Detail Report 3. Select “Relationships”

78

Set Relationships Band Values

In this step we’ll set the relationship “basis of” to pull the functions related to the Requirement 1. Select the caret to open the dialog box 2. Select the Relationships drop-down menu, then check the “basis of” relationship 3. Select the “Alphabetic” Sortblock

79

Add Labels and Data to the Relationships Band We need to insert a label for the relationship name and one for the relationship target

1. Drag-drop two labels onto detailBand5 2. Expand the Relations hierarchy and drag drop “RelationDefintion” onto the first Label control 3. Drag-Drop “RelationTarget” onto the 2 nd Label Control

80

Relationships Band Output

1. Select the caret on “RelationshipDefinition” Label 2. Select the “Entity Representation” ellipses 3. Select “Entity Attribute” in the Type, and “name” in the Field 4. Select the caret on the “RelationshipTarget” Label 5. Select the “Entity Representation” ellipses 6. Select “Entity Attribute” in the Type, and “number” in the Field 7. Add “: “ in the suffix field 8. Insert a new field 9. Select “Entity Attribute” in the Type, and “name” in the Field 10.Select “RelationshipDefintion”label and align text to the right 11.Select “RelationshipTarget” label and align text to the left 12.Close empty space in detailBand5

81

Requirement Report Preview

1. Save Report 2. Select Report Preview button Report looks good!

We need to make sure the content stays together and is not split across multiple pages

82

Keep Parent and Child Band Content Together

We need to keep the parent “relationshipsReportBand1” together with it’s child “detailBand5” 1. Select the caret on “detailBand5” to open the dialog box 2. Select the “Keep Together” checkbox

83

Keep Parent and Child Band Content Together: detailBand 4 and 5 We also need to keep the Requirement information grouped together with the relationship target information 1. Select the caret on “detailBand4” to open the dialog box

2. Select the “Keep Together” checkbox and the “Keep Together with Detail Reports” checkbox 3. Save report

84

Student Exercise

• Create a Report that lists all of the Components in the project and all of the “built from” components associated with the parent Component. • Title new report: “EX.4.A Component Report” • Add in Project Title • Provide Number, Name and Description of the Component • Provide the “built from” component’s Number and Name • Note: Similar report to the Requirement Report just created – but using components

85

EX.4.A Component Report output

86

Working with the Target Band

87

Target Bands

• Objective: • Target Bands come after the Relation Band. • The Relationship Band is used to select a relation • The Target Band allows the report to access the target entities of the relation specified in the Relation Band • Exercise: Create “EX.5 Requirement Report with Basis of Targets” • Duplicate report EX.4 Requirement Report • Rename the report to EX.5 Requirement Report with Basis of Targets

88

Modify Requirement Report to Include Targets 1. Select the RelationshipTargetlabel in the relationshipsReportBand1 and delete it. 2. Left justify the RelationDefintion label and stretch the label across the workspace 3. Right-click in detailBand5 select “Insert Detail Report” then select “Targets”

89

Bind Target Entity to a Label

1. Drag-drop a Label control into detailBand6 2. Expand the Target hierarchy in the Field list 3. Drag-drop the TargetEntity onto the Label control

90

Set up Output Data in Report

1. Select the “TargetEntity” Label and select the caret to access the label tasks 2. Select the “Entity Representation” ellipses 3. Add in the number field of the entity attribute 4. Add in a “ “ to the suffix field 5. Close the space between the report footer and the bottom of the label control in detailBand6

91

Target Band Report Layout Preview Note: the relationship name is duplicated Note: blank space left when there are no relationship targets We can fix these problems using controls to suppress and shrink!

92

Working with the Hierarchy Iterate

93

Report with Hierarchy Iterate in a Class

• Objective: • Construct a report on Component Class using the Hierarchy Iterate feature to list all the Components • NOTE : this an alternative approach to merely listing all of the elements in a Class. • Hierarchy Iterates allow the descent through named relations to the desired entities to be output • Useful for starting somewhere in your model, and following relationships to other entities and outputting information (or not) from every entity in the hierarchy • Exercise: Create “EX.6 Component Hierarchy Report” • Duplicate EX.2 Component Report • Rename to “EX.6 Component Hierarchy Report

94

Insert Hierarchy Entity Report Band

In this step we will make room in the detailBand4 and insert the HierachyEntities band 1. Drag down page footer margin to make space at the bottom of detailBand4 2. Right-click in detailBand4, select “Insert Detail Report”, then select “HiearchyEntities” from the menu

95

Move Entity Labels to Hierarchy Band In this step we will move the entity labels from the entities band to the hierarchy iterate band 1. Shift-select both labels in “detailBand4” and move to “detailBand5” 2. Select the boundary between the “hiarchyEntityReportBand1” and drag it up to the bottom of “detailBand4”

96

HierachyEntity Report Band Controls Here we will set the HierarchyEntity band controls to sort numerically, restrict the hierarchy descent to 1 level, choose not to output duplicate targets, and follow the “built from” relation 1. Select the caret on HerarchyEntityReportBand 2. Select “Numeric” sort 3. Set “Maximum Levels” to 1 4. Select the Relations drop-down and select the “built from” relationship 5. Uncheck “Report Duplicates” 6. Close the space between the report footer and the bottom of the label control in hierarchyEntityReportBand1. 7. Save report 8. Select Preview button

97

HierarchyEntity ReportBand Preview The HierarchyEntity looks at ALL elements in the class and uses the selected relation to included elements in the report.

98

Student Exercise: EX.6.A Components and Requirements in One Report • Make a report to provide a list of all the Components and associated Requirements in one report that uses the Hierarchy Iterate. • Name the Report “EX.6.A Component and Requirement Hierarchy Report” • Provide a description of the report • Sort the list Numerically • Provide Component Number and Name • Follow the “specified by” relation to retrieve the requirement • Provide the Requirement Number and name • Include page number (only) in lower right hand corner of the page Two methods: (a.) Make a New Report and follow steps used in EX.6 Component Report (b.) Duplicate EX.6 Component Report, rename, and make changes to the report

99

Reporting on Multiple Entity Classes In order to get both classes (Component and Requirement) in the output, both folders must be selected in the folders band 1. Select the caret on the foldersReportBand1 2. Select “Requirement” as well as “Component” 3. Save report 4. Select Preview button

100

Reporting Multiple Entity Classes Preview If you run the report using just the change made in the prior slide you will get this result:

NOTE: The mistake in the report is due to Label control hard coded to display a Text Field: “Component:”

101

Editing Entity Representation

We need to change the fixed text added to the Entity Representation to a “Class Property” with the field of Name selected 1. Select the caret to open the dialog box 2. Select the ellipses to open the Entity Representation dialog 3. Edit the Entity Representations, change the “Text” Type to “ClassProperty”, select “Name” in the field and add a “: “ in the Suffix field 4. Save report 5. Select Preview button

102

Reporting Multiple Entity Classes Preview

Success!

103

Suppressing and Shrinking Controls

104

Suppressing and Shrinking Controls

• Objective: • Controls are available to handle suppressing or shrinking of white space when an entity or target is not available. • We’ll use controls to eliminate the relation duplication and remove white space in the document • Exercise: Modify “EX.5 Requirement Report with Basis of Targets” • Edit EX.5 Requirement Report with Basis of Targets

105

Suppressing and Shrinking Controls 1. Select the “RelationDefintion” Label 2. In the Property Grid, set the “Process

Duplicates Mode” and “Process Null Values” to “Suppress and Shrink”

106

Suppressing and Shrinking Controls, Cont.

1. Select the “TargetEntity” Label 2. In the Property Grid, set the “Process Duplicates Mode” and “Process Null Values” to “Suppress and Shrink” 3. Save report 4. Select Preview button

107

Suppressing and Shrinking Results

Blank space removed when no relationship targets Relationship name duplication removed

108

Student Exercise: Modifying EX.4.A to use the Target Band • Modify EX.4.A Component Report to report to use the Target band and shrink and suppress the white space. • Duplicate EX.4.A Component report and rename it EX.7 Component Target Band Report (we will reuse this report later)

109

Preview EX.7 Component Target Band Report

Report output now uses the target band output the built from targets, and suppresses the output of empty relations.

110

Introduction to Subreports

111

Reports and Sub Reports • Objective: • Learn how to create sub reports and connect them to calling reports • Reports are standalone database queries • Any report you create can be used within another report • We can embed multiple report within another report, in effect creating sub reports within a main report • Exercise: Create a report with sub reports • Create two basic reports (EX.8.A and B Sub Report 1 and 2) • Create a main report (EX.8 Main Report) • Embed the two sub reports within the main report

112

Sub Report 1 Creation and Layout

Create report EX.8.A Sub Report 1 and then we will add some basic content 1. Drag-drop line controls onto the Detail band 2. Drag-drop a label onto Detail band 3. Change label text to “Sub Report 1” 4. Change font size to 12, bold and center text 5. Save report

113

Sub Report 2 Creation and Layout

Duplicate Sub Report 1, and modify to create Sub Report 2 1. Duplicate Sub Report 1, name new report “EX.8.B Sub Report 2” 2. Change label text to “Sub Report 2” 3. Save report

114

Main Report Creation and Layout

Create EX.8 Main Report 1. Drag-drop “Sub Report” control onto the detail band 2. Select the caret on the Sub Report control to open the dialog box 3. Select the “SubreportName” ellipses 4. Navigate to the folder with Report Writer

Class work and sub reports in it 5. Select “EX.8.A Sub Report 1” 6. Select Ok

115

Main Report Creation and Layout, Cont. 1. Drag-drop “Sub Report” control onto the detail band below “subReport1” control 2. Select the caret on the Sub Report control to open the dialog box 3. Select the “SubreportName” ellipses 4. Navigate to the folder with Report Writer

Class work and sub reports in it 5. Select “EX.8.B Sub Report 2” 6. Select Ok

116

Complete Main Report

Completed Main Report 1. Save report 2. Select Preview button

117

Main Report Preview

Main report includes both Sub Report 1 and Sub Report 2’s content Note: Space between sub reports based on sub report construction

118

Working with Report Parameters

119

Report Parameters • Objective: • Parameters can be passed into the report • Provides the ability to pass in a chosen entity or other information into the report • Also provides the ability to pass information into another report or sub report • Note: This is a report parameter, not a parameter as used in the GENESYS model • Exercise: create “EX.9.A Parameterized Function Sub Report” and EX.9 Main Requirement Report” • Duplicate “EX.4.A Component Report” and name the new report “EX.9.A Parameterized Function Sub Report” • Select “EX.5 Requirement Report with Basis of Targets”, and duplicate this report with the name: “EX.9 Main Requirement Report”

120

Requirement basis of Function and allocated to Component

121

Modifying Parameterized Sub Report

Edit EX.9.A Parameterized Function Sub Report and modify 1. Delete “[Projects.Project]” and “[Folder]” label controls and remove whitespace 2. Change the Folder band Folders to “Function” 3. Change the relationships band to point to the “allocated to” relationship 4. Save report

122

Main Report Requirements Layout

Using EX.9 Main Requirements Report 1. Select the caret on “relationshipsReportBand1” 2. Set the Targets drop-down to “Function” 3. Save report 4. Preview report

123

Add Parameter to the Sub Report

We must add a report parameter to the report to pass information to the sub report – switch back to the “EX.9.A Parameterized Function Sub Report” 1. Right-click on Parameter in the Field List 2. Select “Add Parameter”

124

Setup the Sub Report Parameter

We need to set up the report parameter for our use in the report 1. Select the new Parameter “Parameter1” 2. Set the “Data Type” field drop-down to “Entity” in the property grid pane 3. Rename as “subreportParameter” using the “Name” field in the property grid pane 4. Set “Filter On” collection to “Function”

125

Enable Sub Report to use the Main Report Parameter We must enable the sub report to use the report parameter in the entities band 1. Select the caret on the “entitiesReportBand1” 2. Select the “Parameter Entities” drop down 3. Select the check mark for our newly created “subreportParameter” 4. Save report 5. Preview report

126

Functions Sub Report Preview

1. Select the “subreportParameter” drop down 2. Select “_Perform System Context Functions”

3. Click Submit button 4. View report preview

127

Make Parameter not Visible

This step hides the report parameter selection from the sub Report, allowing the parent report to pass the parameter to the sub Report 1. Select “subreportParameter” from Parameters in the Field List 2. Select “No” from the “Visible” property drop-down in the Property Grid

128

Enable Main Report to use Report Parameter

Now we will insert the sub report into the main report 1. Switch back to the Main Report 2. Delete the “[TargetEntity]” label in detailBand6

129

Enable Main Report to use Report Parameter, Cont. Insert and link the sub report 1. Add “Sub Report Control” to detailBand6 2. Select the caret in the Sub Report control 3. Select the “SubreportName” ellipses 4. Select the EX.9.A Parameterized Function Sub Report

130

Enable Main Report to use Report Parameters

1. Select the caret in the “subReport1” control 2. Select the “Parameter Binding” ellipses to open the dialog box 3. Set “BindTo” attribute to “CurrentColumn” 4. Edit “Value” attribute to “TargetEntity” 5. Click Save

131

Suppress the Sub Report when Targets are Empty In the Main Report, suppress running the sub report when the relationship targets are empty 1. Select “entitiesReportBand2” 2. Set “Print when Data Source is Empty” (under “Report Print Options”) in the Property Grid to “No” 3. Adjust the “[RelationDefintion]” label indent 4. Adjust the “subReport1” control indent 5. Save report 6. Preview report

132

Main Requirement Report Preview

Review: Step 1: Create a Sub-report Step 2: Create a Main Report Step 3: Enable Sub-report to use Parameters Designate / Add Parameter Set-up Parameter Data Type, Design, and Filter Bind Parameter to Report Band Preview Sub-report to check functionality Hide Parameter selection prior to incorporation in Main Report Step 4: Enable Main Report use of Parameter Add Sub-report Control Select Sub-report Name Bind to Parameter Set Print Options to remove extra space

133

Working with Sort Blocks

134

Creating and Editing Sort Blocks - Review • Sort blocks allow us to configure the order and representation of entities in a list • An easy way to create a new sort block is

to duplicate an existing sort block and modify the new one to achieve the desired sort and representation • A best practice is to always display the fields on which you are sorting (a list sorted by number but displaying only the name would be quite confusing) • Exercise: create “EX.10 Component Report Reverse Order” • Duplicate “EX.2 Component Report” and rename “EX.10 Component Report Reverse Order”

135

Duplicating Sort Block

In this example we’ll modify an existing sort block to a reverse alphabetic order 1. Expand or collapse Project Explorer Tree to navigate to the Utilities folder 2. Select “Alphabetic”, right-click and select “Duplicate” from the context menu

136

Rename Sort Block

Rename the duplicated sort block to “Descending” 1. Select bort block “Copy of Alphabetic” 2. Select Name attribute and rename to “Alphabetic Reverse” 3. Tab or click out of the attribute to commit the name change to the database 4. Select the “Descending” radio button

137

Change Sortblock to Alphabetic Reverse Open the EX.10 Component Report Reverse Order report and change it to use the new Alphabetic Reverse sort block 1. Select the caret on the entitiesReportBand1 to open the dialog box 2. Select the “Alphabetic Reverse” Sortblock from the Sortblock drop-down menu 3. Save report 4. Select Preview button

138

Sortblock Report Recap

In this section: Modified a project Sort Block Duplicated a Report Used the revised Sort Block in the Duplicated Report

139

Using Filters

140

Filtering Objectives

• Objective: • Review how to create and modify Filters • Use Filters in Report generation • Exercise: Create EX.11 Filtered Requirements Report • Create a new report that outputs the following: • Report Title: “Report: Addressed Requirements” • Project name • Requirement Folder name • Requirements – Number and Name

141

Duplicating an Existing Filter

We need to create a new filter by copying and revising an existing filter 1. Select the Filters folder 2. Select and right-click on the “Unaddressed Requirements” filter, and then select “Duplicate”

3. Enter the name “My Addressed Requirements” for the duplicate

142

Modifying the Filter

We need to modify the filter for use in our report 1. Select the OR radio button 2. With the “My Addressed Requirements” selected remove the criteria for “Target refined by is Empty” 3. Check the “Not” boxes on the two remaining criteria

143

Applying New Filter to Report

We need to apply our filter to the entities band in our report 1. Select the caret on “entitiesReportBand1” to open the dialog box

2. Select the Filter drop-down 3. Select the “My Addressed Requirements” filter 4. Set the Sortblock to “Numeric” 5. Save the report 6. Preview the report

144

Preview – EX.11 Filtered Requirements Report

145

Setting up Column Layouts

146

Column Layout Objectives

• Objective: • Output data in a single column to a report • Output data in a two-column format to a report

• Exercise: Create “EX.12 Column List of Requirements Report” • Duplicate “EX.11 Filtered Requirements Report” to start this exercise • Name the duplicated Report: “EX.12 Column List of Requirements Report” • To begin the exercise: Modify new EX.12 Column List of Requirements Report • Remove Filter • Sort alphabetically in one column

147

Update EX.12 Column List of Requirements

1. Change entities band Filter and Sortblock to “All Entities” and “Alphabetic” 2. Select the “[entity]” label, then select the caret 3. Remove the Entity Attribute “Number” so that “name” only remains

148

Adding Multi-Column Mode

In this step we set the Multi-Column Mode and Layout 1. Select “detailBand4” caret to open the dialog box 2. Set Multi-Column Mode to: “Use Column Count” (note: column count is set to 1) 3. Set Multi-Column Layout to: “First Down, then Across” 4. Save report 5. Select Preview

149

Ex.12 Column List of Requirements Preview

Review results All requirements are output to a single column

150

Change Report to Output Two Columns

1. Select “detailBand4” caret to open the dialog box 2. Change the Column Count to 2 3. Change Multi-Column Layout to “First Across, then Down” 4. Adjust the entity label in “detailBand4”to half the workspace 5. Save report 6. Preview report

151

Two Column Report Preview Report now puts the data into two columns. Report outputs data across the page, before going to the next line

152

Change Layout to Landscape

In this step we will change the page orientation to landscape 1. Click on the grey background to select the report “vitechXtraReportBase1” will be displayed in the property grid 2. Set the “Landscape” property under “Page Settings” to “Yes” or if properties are sorted A-Z, then just select “Landscape” 3. Save report 4. Preview report

153

Landscape Report Review Report is now set in a landscape orientation Note the title label needs to be re-centered

154

Working with Tables, Rows and Cells

155

Tables, Rows and Cells Objectives

• Objective: • Create a table output that includes multiple rows and individual cells • Create table headers that repeat across pages and contain header titles for each column • Exercise: Create “EX.13 Table Requirements Report” • Start with new report • Build out new table based requirements report

156

Create New Report and Set to Landscape

1. In the Reports folder in GENESYS create a new report and title it, “ EX.13 Table Requirements Report” 2. Click on the grey background to select the report “vitechXtraReportBase1” will be displayed in the property grid 3. Set the Landscape property to “Yes”

157

Setup Requirement Table Report In this step we will set up the Requirement Table Report using skills learned previously in the class 1. Insert Projects Band 2. Insert Label control and bind to project entity 3. Insert Data band 4. Insert Folders band and select “Requirements” folder 5. Remove unnecessary whitespace 6. Insert Label control for “Project Name” and bind “Project” entity to the label 7. Insert Label control and bind to “Folder” entity 8. Save Report

158

Made with FlippingBook - Share PDF online