Skip to content

feat(script): migration path for Tabular Editor C# scripts — porting guide and tx script run #409

Description

@bgarcevic

What are you trying to do?

Give teams moving from Tabular Editor 2/3 a migration path for the C# scripts and macros they already have: in CI (“run this script before deploy”), and from the TE community script library. This issue is about migration, not new scripting. For new automation, tx commands in a script already cover most cases (see below).

What do we do today?

What would tx do?

1. Porting guide (do first, cheap)

A docs page, “Coming from Tabular Editor scripts”:

  • The common TE script patterns side by side with their tx equivalents: set format strings, hide key columns, create time-intelligence measures, format DAX, add or rename display folders, generate measures from columns.
  • A .tx script file example run through tx interactive, and a CI example.
  • Mappings for TE macros: tx aliases and profiles.

Do this first. It shows which scripts actually need the C# runtime.

2. tx script run (C# compatibility)

tx script run fix-formats.csx
tx script run fix-formats.csx --selected "Sales/Measures/*"
  • Roslyn scripting, with globals Model and Selected modelled closely enough on TE's API that common library scripts run without changes. Measure the coverage against the TE script library and publish it.
  • Scripts run against a provider-neutral object API in Tomix.App, never raw TOM. Writes go through the normal mutation path, so the change journal, undo and --dry-run work, and in a live session a script is one transaction.
  • Security: scripts are arbitrary code. They run only from a local file or stdin, never from a URL.

Acceptance criteria

  • The porting guide covers at least the six patterns above, and its examples run as written against samples/.
  • tx script run: an agreed set of TE community scripts runs unchanged, and a script that throws leaves the model unchanged.

Out of scope

  • A new scripting DSL or batch file format: tx interactive with a script of tx commands already does this.
  • TE2 command-line flag compatibility.

Activity

  1. added
    enhancementNew feature or request
    area:modifyadd, set, mv, rm, replace, format, script, incremental-refresh
    on Oct 7, 2026
  2. changed the title [-]feat(script): batch apply and C# scripts — run many changes in one model load[/-] [+]feat(script): migration path for Tabular Editor C# scripts — porting guide and tx script run[/+] on Oct 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:modifyadd, set, mv, rm, replace, format, script, incremental-refreshenhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions