Main Content

modifyQuery

Modify architecture view query and property groupings

Since R2021a

    Description

    modifyQuery(view,select) modifies the query select on the view view.

    modifyQuery(view,select,groupBy) modifies the query select on the view view and the property based groupings groupBy.

    example

    Examples

    collapse all

    Open the keyless entry system example and create a view. Specify the color as light blue, the query as all components, and group by the review status.

    import systemcomposer.query.*
    
    openProject("scKeylessEntrySystem");
    model = systemcomposer.loadModel("KeylessEntryArchitecture");
    view = model.createView("All Components Grouped by Review Status",...
       Color="lightblue",Select=AnyComponent,...
        GroupBy="AutoProfile.BaseComponent.ReviewStatus");

    Open the Architecture Views Gallery to see the new view All Components Grouped by Review Status.

    model.openViews
    

    Create a new query for all hardware components. Use the new query to modify the existing query on the view. Remove the property based groupings by passing in an empty cell array {}. Observe the change in your view.

    constraint = HasStereotype(IsStereotypeDerivedFrom("AutoProfile.HardwareComponent"));
    view.modifyQuery(constraint,{})

    Input Arguments

    collapse all

    Architecture view, specified as a systemcomposer.view.View object.

    Query to use to populate view, specified as a systemcomposer.query.Constraint object.

    A constraint can contain a subconstraint that can be joined with another constraint using AND or OR. A constraint can be negated using NOT.

    Example: HasStereotype(IsStereotypeDerivedFrom("AutoProfile.HardwareComponent"))

    Query Objects and Conditions for Constraints

    Query ObjectCondition
    PropertyA non-evaluated value for the given property or stereotype property.
    PropertyValueAn evaluated property value from a System Composer object or a stereotype property.
    HasConnectorA component has a connector that satisfies the given subconstraint.
    HasPortA component has a port that satisfies the given subconstraint.
    HasInterfaceA port has an interface that satisfies the given subconstraint.
    HasInterfaceElementAn interface has an interface element that satisfies the given subconstraint.
    HasStereotypeAn architecture element has a stereotype that satisfies the given subconstraint.
    IsInRangeA property value is within the given range.
    AnyComponentAn element is a component and not a port or connector.
    IsStereotypeDerivedFrom A stereotype is derived from the given stereotype.

    Grouping criteria, specified as a cell array of character vectors in the form '<profile>.<stereotype>.<property>'. The order of the cell array dictates the order of the grouping. If an empty cell array {} is passed into groupBy, all the groupings are removed.

    Example: {'AutoProfile.MechanicalComponent.mass','AutoProfile.MechanicalComponent.cost'}

    Data Types: char

    More About

    collapse all

    Version History

    Introduced in R2021a