thinkwise-software-factory-prefilters

Creates and configures prefilters and prefilter groups in Thinkwise Software Factory data models.

5|Updated Aug 25, 2026
One-click install
npx skills add https://github.com/rkortThinkwise/sf-mcp-skills-temp --skill thinkwise-software-factory-prefilters-rkortthinkwise
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: thinkwise-software-factory-prefilters
Source: https://github.com/rkortThinkwise/sf-mcp-skills-temp/tree/main/thinkwise-software-factory-prefilters
Command: npx skills add https://github.com/rkortThinkwise/sf-mcp-skills-temp --skill thinkwise-software-factory-prefilters-rkortthinkwise

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Modeling prefilters in a Thinkwise Software Factory requires knowing the exact entity structure (tab_prefilter, tab_prefilter_grp, tab_variant_prefilter_overview), the difference between column-based and query-based filter logic, and subtle behaviors like match-all vs. match-any semantics and per-context prefilter states. This Skill provides a verified reference so an AI agent working through an MCP connector creates, inspects, and troubleshoots prefilters correctly instead of guessing entity names or field values. ## Core Features & Use Cases - Verified entity reference: Documents the fields, enums, and write behavior of tab_prefilter, tab_prefilter_grp, and tab_variant_prefilter_overview, confirmed against a live Software Factory model. - Column-based vs. query-based guidance: Explains when to use a prefilter column (validated, no SQL) versus a hand-written SQL fragment aliased as t1, including the verified gap where prefilter column rows are not exposed as an entity set. - Group semantics and states: Covers match-all vs. match-any combination logic, mandatory and exclusive groups, the five prefilter states (including On hidden for data authorization), and variant override rules. - Use Case: A user asks the AI to add an "Overdue" prefilter to an orders table. The Skill directs the agent to plan the prefilter for confirmation, write the query fragment t1.due_date < getdate(), set an icon and tooltip, place it in a sub_menu group, and verify translations across all branch languages. ## Quick Start Ask the AI to create a prefilter on a specific table in your Software Factory model, for example to show only overdue records, and let it plan and stage the prefilter through the MCP connector.

Frequently Asked Questions about thinkwise-software-factory-prefilters

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a prefilter in Thinkwise Software Factory?

Add a row to tab_prefilter scoped to the target table, choosing prefilter_type query or prefilter_col, then set its description, states, icon, and optional group. Both tab_prefilter and tab_prefilter_grp support the plain add/edit/commit write flow through an MCP connector, gated by the connector's role rights.

What is the difference between column-based and query-based prefilters?

Column-based prefilters pick a column, filter condition, and value with no SQL and are validated by the Software Factory. Query-based prefilters insert a hand-written SQL fragment into the where clause with the table aliased as t1, needed for joins, subqueries, or dynamic values like the current user or date.

Should a prefilter group use match-all or match-any?

Use match-any (OR) for mutually exclusive category values like statuses, since a row cannot satisfy two of them at once under match-all. Note that match-any only works in the Universal UI; the Windows GUI keeps at most one prefilter active per group regardless.

Can prefilter columns be edited through the MCP connector?

The prefilter columns grid behind a prefilter_col-typed prefilter is not exposed as a plain entity set in the checked domains, and tab_prefilter.query returns empty for those rows. Check the connector's domain metadata first; otherwise model the equivalent condition as a query-based prefilter.

How do prefilters work as row-level security in Thinkwise?

Set a prefilter's state to On hidden so the condition always applies invisibly, then force it per role through Access control model rights. In a mandatory match-any group, setting a member to Off hidden removes that toggle for the role rather than blocking the data.

Why does a multi-field prefilter update silently drop a field?

Batched property writes have intermittently reset one field back to its prior value without indicating rejection. Patch one field at a time and read back the fields you care about, especially tab_prefilter_grp_id and query, before committing.