Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jet.api
Class MultipliedDesigner

    java.lang.Object
      jet.api.API
          jet.api.Designer
              jet.api.MultipliedDesigner

    public class MultipliedDesigner

extends Designer

The MultipliedDesigner class allows an application to create and manipulate JReport ReportSets (.cls) and its children objects. By building a MultipliedDesigner instance in a Java program, users can edit a ReportSet by methods provided by `API`.
ReportSets are also called Page Reports in JReport manuals.

JReport ReportSet and its objects are stored in a tree structure. An instance of `MultipliedDesigner` can retrieve each object in the ReportSet by its handle. The handle of an object is named by its qualified and unique instance name.

A ReportSet is composed of one or more reports (also called tabs or sheets) that are designed for the same purpose, or related purposes. Report developers can design, maintain, run and schedule these reports together or separately. The reports in the same ReportSet can share the same parameters and DataSets which reduces the number of queries to the DBMS.

A dataset is the set of data built from the result of a query, and can optionally have filters applied to it. A dataset contains not only DBFields, but also all formulas, summaries, and parameters that use the DBFields. A dataset has a name, which by default is the name of the resource on which it is created. When you create a data component, you specify whether to create a new dataset for it or use an existing one.

JReport reports are usually composed of multiple components. Components in JReport can be classified as follows:

- Static components - labels, images, barcodes, tabulars, groups, sections, subreports, UDOs.
- Data components - reports, tables, crosstabs, charts, and banded objects
- Fields - DBFields, formula fields, summary fields, parameter fields often referred to as mapping names (as opposed to actual DBMS table and column names)
- Drawing objects - lines, arcs, boxes, ovals, round boxes supported only in banded objects
- Special fields - Print Date, Print Time, Fetch Date, Fetch Time, Record Number and many more.

A label is an object that contains a string. It is typically a brief description used to identify a field or other value nearby.

An image is a digital representation of a picture. JReport supports the following image formats: .bmp, .gif, .jpg, and .png.

A table is composed of rows and columns, and each contains several cells. Tables give you great control over how to present data, including placing fields, grouping them, and sorting them. With such a structure a table is a good way to show any two-dimensional dataset.

A crosstab summarizes data and presents the summaries in a compact row and column format.

A chart organizes and graphically presents data in a way that makes it easy for end users to see comparisons, trends, and patterns in data. It represents the report data in a visually straightforward form. A chart is based on the chart platform. On the platform, the chart paper, the legend, and labels make up the chart. You can create a chart that contains only simple DBFields, or a complicated chart that contains DBFields, groups, summaries, and even formulas. Normally, DBFields, summaries, and formulas in a report are represented in a chart using chart data markers, and groups are used to produce category names and data series names. DBFields can also be used as category names.

A banded object is a component that can present grouped data and detailed data. A banded object is composed of several banded panels(sections) with which you can easily organize data fields and other elements.

A tabular is a component designed to lay out other components. Unlike a table component, which is used to display a dataset, a tabular is a set of cells that can each display a data component.

A report that is inserted into another report is referred to as the subreport. Subreports are inserted and managed just like a component in a primary report, but a subreport itself is created and managed just like a primary report. You can specify relationships between the primary report and the subreport as well as have JReport pass values to the primary report or the subreport. A primary report can have more than one subreport. They can be in the same ReportSet as the primary report or can be in different ReportSets.

Formula fields are calculated from DBFields, other formulas, summaries, parameters and constants, so they can present information that DBFields cannot do.

A summary is a special kind of formula. A summary generates a count, average, sum, standard deviation or other aggregation of a set of data values. A summary may apply to a defined group of data or can be a dynamic summary able to summarize on any group.

A parameter in JReport is a variable whose value is determined at runtime. The runtime parameters help you dynamically control your report results when used as parameters in a query.

Drawing objects can only be inserted into banded objects. You can add arcs, ovals, boxes, round boxes and lines to your report.

Some components can be bound with a dataset or inherit data from the dataset of their parents. These components are table, chart, crosstab, and banded object, and they are also referred to as data containers or data components. Depending on the location of the libraries you either need a Designer API License Key or a Server Designer API License Key. If you are using Designer libraries you need report.jar and JREngine.jar (Designer API License Key) If you are using Server libraries you need JRSRMI.jar (Server Designer API License Key)

For detailed explanation about the object properties, refer to the help document Getting property information

The following is one example of the use of the `MultipliedDesigner`. The code:

>       MultipliedDesigner dr = null;
>             try
>             {
>                       String path = "C:\\JReport\\Designer\\Demo\\Reports\\TutorialReports";
>             String catName = "TutorialReports.cat";
>             DesignerUserInfo userInfo=new DesignerUserInfo("UID", "designer API license key");
>                       dr = new MultipliedDesigner(path, catName,userInfo);
>                       CatalogAPI cat = dr.getCatalogAPI();
>              ......
>             }
>             finally
>             {
>                     dr.exit();
>             }

>        // To create a new ReportSet (Page Report) with a banded object using the above MultipliedDesigner (dr)
>        // 1. Create ReportSet
>        reportset = dr.createReportSet(name);
>        // 2. Add Dataset
>        dataset = dr.addDataset(reportset, queryname, dsname, null, Designer.DATASET_TYPE_QUERY);
>        // 3. Create a report tab inside the ReportSet
>        report = dr.addReport(reportset, name);
>        // 4. Insert a PagePanel into the report tab
>        page = dr.insertPage(report);
>        // 5. Insert the data component you want to use such as a banded object
>        banded = dr.insertBandedObject(reportbody, true, true, true);
>        // 6. Bind the dataset to the reportbody and set inherit from parent for the banded object
>        dr.bindDataSet(reportbody, queryname);
>        dr.set(banded, "dataInherit", true);
>        // 7. Get handles so that you can start adding objects to the report
>        handles = dr.getHandles(banded, Designer.PAGE);
>           ......
>        // 8. Add groups to the banded object page
>        GroupInfo ginfo = new GroupInfo(dbfield,GroupInfo.DESCENDING);
>        group = dr.insertSectionGroup(handles[0], ginfo);
>           .....
>        // 9. Exit and save changes
>        dr.exit();

Field Summary

Fields inherited from class jet.api.Designer
`ARC, AREA_ARRAY_2D, AREA_ARRAY_3D, AREA_PERCENT_2D, AREA_PERCENT_3D, AREA_STACK_2D, AREA_STACK_3D, AREACHART, BANDEDOBJECT, BANDEDOBJECT_FOOTER, BANDEDOBJECT_HEADER, BANDEDOBJECT_PAGEFOOTER, BANDEDOBJECT_PAGEHEADER, BAR_ARRAY_3D, BAR_PERCENT_2D, BAR_PERCENT_3D, BAR_PERCENT_AREA_STACK_2D, BAR_PERCENT_LINE_ARRAY_2D, BAR_PERCENT_LINE_STACK_2D, BAR_SIDEBYSIDE_2D, BAR_SIDEBYSIDE_3D, BAR_SIDEBYSIDE_AREA_STACK_2D, BAR_SIDEBYSIDE_LINE_ARRAY_2D, BAR_SIDEBYSIDE_LINE_STACK_2D, BAR_STACK_2D, BAR_STACK_3D, BAR_STACK_AREA_STACK_2D, BAR_STACK_LINE_ARRAY_2D, BAR_STACK_LINE_STACK_2D, BARCHART, BARCODEFIELD, BENCH_ARRAY_3D, BENCH_PERCENT_2D, BENCH_PERCENT_3D, BENCH_SIDEBYSIDE_2D, BENCH_SIDEBYSIDE_3D, BENCH_STACK_2D, BENCH_STACK_3D, BENCHARRAYCHART, BENCHCHART, BOX, BUBBLE_2D, CENTERBOTTOM, CENTERCENTER, CENTERTOP, CHART2DCOORDINATEPAPER, CHARTCOORDINATEPAPER, CHARTLABEL, CHARTLEGEND, CHARTPLATFORM, CODABAR, CODE_128, CODE_39, COLUMN, COMPUTEDCOLUMN, CROSSTAB, CTAGGFIELD, CTAGGINFO, CTDBFIELD, CTHDDBFIELD, CTHDTEXTFIELD, DATAOBJECT, DATASET, DATASET_TYPE_HDS, DATASET_TYPE_ONDEMAND, DATASET_TYPE_QUERY, DBFIELD, DETAIL, DIRECTION_BACKSIDE, DIRECTION_FORESIDE, EAN_13, EAN_8, FETCHDATE, FETCHTIME, FIELD_CATALOGPATH_ONDISK, FIELD_CATALOGPATH_ONSERVER, FIELD_REPORTPATH_ONDISK, FIELD_REPORTPATH_ONSERVER, FORMULA, GAUGE_BALLS_2D, GAUGE_BARS_2D, GAUGE_DIALS_2D, GROUP, GROUPFOOTER, GROUPHEADER, GROUPNAME, GROUPNUMBER, GROUPNUMBERS, IMAGE, JBROWSER, JHYPERLINK, JUSTIFYBOTTOM, JUSTIFYCENTER, JUSTIFYTOP, LABEL, LEFT, LEFT_UNDERSIDE_POINT, LEFT_UPSIDE_POINT, LEFTBOTTOM, LEFTCENTER, LEFTTOP, LINE, LINE_ARRAY_2D, LINE_ARRAY_3D, LINE_ARRAY_LINE_ARRAY_2D, LINE_PERCENT_2D, LINE_STACK_2D, LINECHART, MEDIAFIELD, MODIFIEDDATE, MODIFIEDTIME, MULTI_VALUE_BOX, NEWSTYLETABLE, OVAL, PAGE, PAGEBREAK, PAGEEND, PAGEFOOTER, PAGEHEADER, PAGENOFM, PAGENUMBER, PAGENUMBERS, PAGESTART, PARAGRAPH, PARALLELDETAIL, PARAMETER, PIE_SIDEBYSIDE_2D, PIE_SIDEBYSIDE_3D, PIECHART, PRINTDATE, PRINTTIME, RADAR_2D, RECORDNUMBER, RENDER_BARCODE, RENDER_BUTTON, RENDER_CHECKBOX, RENDER_DROPDOWNLIST, RENDER_IMAGE, RENDER_IMAGEBUTTON, RENDER_LIST, RENDER_RADIOBTN, RENDER_RANK, RENDER_RESETBUTTON, RENDER_SUBMITBUTTON, RENDER_TEXT, RENDER_TEXTAREA, RENDER_TEXTFIELD, REPORT, REPORTBODY, REPORTFOOTER, REPORTHEADER, REPORTSET, REPORTSHEET, RIGHT, RIGHT_UNDERSIDE_POINT, RIGHT_UPSIDE_POINT, RIGHTBOTTOM, RIGHTCENTER, RIGHTTOP, ROUNDBOX, RPTDATASOURCE, SCATTER_POINTS_2D, SCATTER_SMOOTH_LINES_2D, SCATTER_STRAIGHT_LINES_2D, SHAPE, SIDEBYSIDEBARCHART, SQLSTATMENT, STACKEDBARCHART, STACKEDBENCH, STOCK_HIGH_LOW_2D, STOCK_HIGH_LOW_CLOSE_2D, STOCK_OPEN_HIGH_LOW_CLOSE_2D, SUBLINK, SUBPARAMLINK, SUBREPORT, SUBRETVALUE, SUMMARY, SURFACE_3D, TABLE, TABLE_COMMONCOLUMN, TABLE_DETAILCOLUMN, TABLE_DETAILSECTION, TABLE_FOOTERSECTION, TABLE_GROUP_FOOTERSECTION, TABLE_GROUP_HEADERSECTION, TABLE_GROUPCOLUMN, TABLE_HEADERSECTION, TABLE_SUMMARYCOLUMN, TABLECELL, TABULARCELL, TEXT, TEXTBOX, UDO, UPC_A, UPC_E, USERNAME, ZORDER_BACKWARD, ZORDER_BOTTOM, ZORDER_FORWARD, ZORDER_TOP`

Fields inherited from class jet.api.API
`BOOLEAN, CAT, CENTIMETER, COLOR, DOUBLE, ENUM, FLOAT, INCH, INTEGER, LONG, PIXEL, REFERENCE, RPT, SELFRPT, STRING, TEXTRPT, UNKNOWN, XMLCAT, XMLRPT`

Constructor Summary
`MultipliedDesigner(java.lang.String path, java.lang.String name, java.lang.String suffix, DesignerUserInfo user)` Constructor.

Method Summary
`MultipliedCatalogAPI` | `getCatalogAPI()` Gets a MultipliedCatalogAPI instance with the specified catalog.

Methods inherited from class jet.api.Designer
`addDataset, addDisplayName, addDisplayName, addReport, appendTabularColumn, appendTabularRow, bindDataSet, canDeleted, canMergeTableCell, canMergeTabularCell, changeTabularCellHeight, changeTabularCellWidth, changeTabularHeight, changeTabularWidth, changeZOrder, close, closeReportSet, create, create, createReportSet, delete, deleteBandedObject, deleteCrossTabAggregations, deleteCrossTabColumns, deleteCrossTabRows, deleteDetailPanel, deleteGroup, deletePage, deletePageController, deleteReport, deleteReport, deleteReportFile, deleteSectionFooterPanel, deleteSectionHeaderPanel, deleteTableColumns, deleteTabularColumn, deleteTabularRow, exit, exitAndSave, getAllDisplayNames, getAllResourceNames, getCatalogName, getChangedByFields, getChartLabel, getControlField, getControlFields, getDatasetBLFilter, getDBFields, getDisplayName, getFormats, getFormulae, getFormulas, getGeometries, getGeometries, getGroupInfo, getGroupNames, getGroups, getIndex, getKey, getMinSectionHeight, getObjectInfo, getObjectType, getParameter, getParent, getProcedures, getProcedures, getQueries, getQueries, getQueryName, getReporthome, getReportSortInfo, getSections, getSections, getSections, getSortInfo, getSQLs, getSQLs, getSummaries, getTableColumnHandle, getTableColumnIndex, getTableWidth, getTabularCell, getTabularColumnCells, getTabularRowCells, getUDS, getUDS, getUID, getUserID, getViews, hasPageSecurity, hideTableColumn, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insert, insertBandedObject, insertChart, insertColumn, insertCrossTab, insertCrossTabAggregations, insertCrossTabColumns, insertCrossTabRows, insertDetailPanel, insertField, insertPage, insertPageBreak, insertPageStartEnd, insertSectionFooterPanel, insertSectionGroup, insertSectionHeaderPanel, insertSectionPanel, insertShape, insertSubReport, insertTable, insertTable, insertTableColumn, insertTableColumn, insertTableGroup, insertTabular, mergeTableCells, mergeTabularCells, moveCrossTabAggregations, moveCrossTabColumns, moveCrossTabRows, moveTableColumns, open, pivotCrossTab, pivotTable, quit, quit, removeDisplayName, removeTableGroup, resizeTable, resizeTabular, saveAs, saveSelfContainedReport, saveSelfReport, set, set, setControlFields, setCTAggFieldHeight, setCTAggFieldWidth, setCTAggTitleHeight, setCTAggTitleWidth, setCTColHeaderHeight, setCTRowHeaderWidth, setDataset, setDatasetBLFilter, setDefaultFormat, setPageWidth, setReporthome, setReportSortInfo, setSortInfo, setStyle, setStyle, setTableColumnWidth, setUserInfo, showTableColumn, splitTabularCell, updateDisplayName`

Methods inherited from class jet.api.API
`clearError, clearMsg, clearWarning, closeLog, containPropName, getBool, getChildren, getClassType, getColor, getDouble, getError, getFloat, getHandles, getHandles, getHandles, getHandles, getInstanceName, getInt, getLong, getPropNames, getPropType, getQualifyName, getString, getStringArray, getUnit, getWarning, set, set, set, set, set, setLog, setLog, setLog, setReference, setUnit, writeLog, writeLog`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MultipliedDesigner

    public MultipliedDesigner(java.lang.String path,
                              java.lang.String name,
                              java.lang.String suffix,
                              DesignerUserInfo user)
                       throws jet.jetc.ReadFailureException,
                              jet.universe.exception.UniverseFileException

  Constructor. Creates a MultipliedDesigner class instance. The MultipliedDesigner loads the catalog object with the specified catalog file's path and name. If the catalog file does not exist, a new catalog will be created. Since JReport version 13.5, JReport upgrades the universe in structure and functional level. MultipliedDesigner will load the universe and upgrade it automatically.

  Parameters:
    `path` - Indicates the path of the catalog file.
    `name` - Indicates the name of the catalog file.
    `user` - The DesignerUserInfo includes the product license of Design API.
    `suffix` - Indicates the suffix of the catalog file. Design API can save a catalog in binary or XML format. The suffix can be `XMLCAT` or `CAT`.
  Throws:
    `jet.jetc.ReadFailureException`
    `jet.universe.exception.UniverseFileException`
  Since:
    version 6.1.

Method Detail

### getCatalogAPI

    public MultipliedCatalogAPI getCatalogAPI()

  Gets a MultipliedCatalogAPI instance with the specified catalog.

  Overrides:
    `getCatalogAPI` in class `Designer`
  Returns:
    a reference of MultipliedCatalogAPI. If fails, a null value will be returned, you can use `getError()` to check the error message.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD