Properties View

The Properties view lets you examine and modify settings for components in an EventFlow. It is not available for StreamSQL applications. To display properties for a component or arc (arrow), select its icon in the EventFlow Editor. Properties are organized in a series of tabs, which you click to bring to the front. By default, the Properties view is located in the top center portion of the SB Authoring perspective.

Properties View Tabs

Every Properties view has a General tab, where you can change the default name given to the component by StreamBase, and optionally add a comment. For example, when you drag the first Input Stream icon from the palette to an EventFlow, StreamBase names it InputStream1. You might change it to a name that reflects the type of data it contains, such as StockIn.

The other tabs and functions available in a Properties view vary for each component, and they are discussed in the help for each component. This topic discusses features that are available in most components. The sample figure below shows the Properties view for a Map operator called StockMap, with the Output Settings tab selected.

When you edit values for fields in one tab and then move to another tab (such as the Output Settings tab), the values you entered on the first tab will persist during the session. To save the changes in the application for future sessions, you must save it. You are prompted to save after certain actions; but you can click FileSave at any time.

Properties View Buttons

The Properties view has the following buttons on the top right side of the view:

Button Name Description
Apply and Typecheck Apply any changes made in the Properties view tabs for the currently selected component. Does not save the application.
Revert Undo changes for the currently selected component, reverting to the last-saved version.
Show Expressions Pane Show or hide the Expressions pane.
Help on Current Tab Invoke the Help page for the currently selected component in the EventFlow Editor.

Messages and Error Indicators

Look for messages at the top of any Properties tab. Some messages are simply informational, as indicated by the button. For example, the message at the top of the preceding figure offers a hint about what to do next.

Problems are indicated by either a yellow warning or red error icon. As you work on properties, StreamBase Studio continually validates your changes. If the resulting properties are incomplete or incorrect, a warning or error icon is displayed with a brief problem description.

In the example below, a new Input Stream has been created. The error indicates that the component is not valid (does not typecheck) because you have not yet created any fields.

You can fix problems within the application, like the preceding one, by changing properties as required. In most cases, StreamBase automatically applies your changes as you work - for example, when you press Return after entering a required table row, or clicking anywhere in StreamBase Studio outside the Properties view. To force typechecking, click the Apply and Typecheck button near the top right area of the Properties view, or press Ctrl-T. The error icon and message disappear as soon as typechecking is successful. Note that applying changes validates the application, but does not save it.

Note

Problems indicated in the Properties view are also listed in the Typecheck Errors View, which also allows you to navigate to components where the problems occur.

If your application contains Java operators or adapters, you may see error messages about them, such the following example:

Failures to load classes can occur if you change your build path or add or update a Java operator or adapters. For example, your Java source might specify a dependency whose resource you forgot to put on the build path. When there is a problem with the build path, the operator or adapter may not appear in the palette, so that it is unavailable for use in your application.

When a Java problem occurs creating an instance of an adapter or operator, a message like the following includes a link to display the stack trace:

 Could not create a new instance of class. Click for Java error details.

Remember that you can also use the Error Log view to see stack traces, as described on Error Log View.

As always, after modifying sources to fix a build path problem, refresh your project's typecheck environment by selecting the EventFlow Editor and pressing Ctrl-F5.

Expressions Pane

The Expressions pane is the three-tabbed subwindow on the right side of the Properties view. You can hide or display the Expressions pane by clicking the Show Expressions pane button.

The Expressions pane show the schemas of currently selected streams, and provides information to help you write expressions, such as the names and syntax of functions in the StreamBase expression language.

The Expressions pane has three tabs:

Streams Tab

The Streams Tab shows the schema of the stream flowing into the currently selected component in the EventFlow Editor, or out of that component, or both:

  • If the current selection is an input stream, this tab shows the schema of its outgoing stream.

  • If the current selection is an output stream, this tab shows the schema of its incoming stream.

  • For certain components such as Map and Filter operators, this tab shows the schema of both incoming and outgoing streams.

  • For other components, this tab shows the schema of either the incoming or outgoing streams, as appropriate for the component type.

The following example shows both incoming and outgoing streams of the BollingerEMA component of the Bollinger Band sample in the Input and Ouput subtabs, respectively.

The top summary line for each stream shows the number of fields in the schema and the approximate sum of their sizes. This size is calculated (indicated by the asterisk) from nominal values declared or allocated in the schema, and is not necessarily the actual amount of memory used. (For more information about how this size is calculated, see the footnote in Saved Schemas View.)

You can expand or hide each stream to see its fields, data types, and sizes. If a schema includes a tuple value, use the plus next to the tuple field to expand its subfields.

You can right-click and copy a field in the Input subtab of the Streams Tab, then paste it into a field in the primary pane.

Functions Tab

This tab provides quick access to information about StreamBase functions. The following figure shows an example:

The Functions Tab has two subtabs of its own:

Chooser Sub-Tab

The Chooser Tab lists all the StreamBase functions that you can use in expressions. Functions are grouped first into Aggregate and Simple functions, and then into types, such as Statistical and Math functions. You can expand and collapse each group by clicking the plus/minus button. You can also navigate by entering a function name, beginning of a name, or a regular expression in the filter control. The list is then filtered on any matching names. Click the document-with-X button to the right of the search field to return to the full, unfiltered view of the function list.

Note that functions are first listed by name; if you expand on a function name, its expression syntax is displayed below, as shown in the example. This feature can help you build expressions in the main Properties pane: By right-clicking and copying the syntax line, then pasting it into your own expression, you can avoid typing (and typing errors).

In the example, the firstvalfunction syntax has been copied and pasted into the expression for the firstSeqnum output field. What remains is to substitute the name of an actual int field in the argument part of the expression. (Of course, you could copy and paste this name from the Streams tab.)

To get help on a function, double-click its name or syntax line: the Details tab opens and displays information about the functions.

Details Tab

The following figure shows Details tab help for the function (firstval) that was selected in the previous figure:

Click Return to chooser to view functions in the Choose tab.

Click Show in help to open the entire StreamBase Expression Language and Functions topic in the Help browser. This topic documents all the StreamBase expressions.

Expression QuickRef Tab

The Expression QuickRef tab provides brief summary information about the StreamBase expression language, including data types, basic syntax, and function types. Where appropriate, it also provides links to fuller information in the StreamBase Expression Language and Functions topic.

Properties Tables

Many tabs in the Properties view allow you to enter values in a tabular format. You edit the tables by adding and removing rows, and modifying fields in each row. The following buttons support table editing:

Button Name Description

Add button

Add Adds a row to the end of the table. If you click the arrow to the right of the button, you can specify whether the row should be added above or below the currently selected row. When you add a row, the newly created row is highlighted. To start entering information, click in the cell you want to edit. (Note that some cells are not user-editable.)

Remove button

Remove Removes the currently selected row. If you click the arrow to the right of the button, you can tell StreamBase Studio to remove all rows in the table.

Fill All Rows button

Fill All Rows (Map operators only) Displayed if you select the delta Output Type option. Prefills the table with all output fields from the previous component. You then specify the changes you want to make by applying the Add, Replace, or Remove action to each field. The arrow to the right of the button lets you load specific input fields instead of all fields.

Smart Fill button

Smart Fill (Query operators with write operations only) Displayed if you select the explicit Output Type option. Replaces any values in the expression column of the table with values that match the operator's input fields, adding a prefix to avoid conflicts. For example, an input field named Color may be referenced in the expression as input.Color.

Pass All button

Pass All (Map, Gather, and Join operators) Displayed if you select the explicit Output Type option. Fills the table with all output fields from the previous component. Selected fields are passed through unchanged. If you click the arrow to the right of the button, you can load specific input fields.

Move Up and Move Down buttons

Move Up and Move Down (Edit Schema tabs only) Move Up selects the previous row in the table if one exists; Move Down selects the next row.

Copy From button

Copy Schema (Edit Schema tabs only) Prefills the table with a schema that already exists in another component. The component can be selected from any application within any project in your Package Explorer.

Assign All button

Assign All (Module Reference Input Port and Output Port tabs only) Automatically assigns input streams from the referenced application to the Module Reference input or output ports. The streams are assigned to ports in sorted order. Also creates any missing ports needed for the assignment.

Check/Uncheck All button

Check/Uncheck All (Query operator Output Settings tab) Add or remove check buttons in all checkboxes in the associated table.

Some tables, such as the Schema tab on an Output Stream, are displayed for convenience purposes only, and cannot be edited. You can recognize these read-only tables by the absence of the buttons previously described.

For information about keyboard shortcuts for table editing operations, see Studio Tips and Tricks.