Cepheus
How-To Guide
navis@cepheusonline.com
The complete pipeline at a glance
navis init                         # creates spec.toml — edit the paths inside
navis-extract spec.toml            # pull data and definitions from source
navis analyze spec.toml            # portfolio assessment + License Request PDF
                                   # → email PDF to navis@cepheusonline.com
navis verify-license spec.toml     # confirm license is valid
navis convert spec.toml            # convert to Power BI
navis-deploy spec.toml             # wire data so output opens populated

# Open the converted output in Power BI — your reports are ready.

Requires Python 3.9, 3.10, or 3.11

🔗

navis is the short form. This guide uses navis, navis-extract, and navis-deploy throughout. If you have more than one Navis migration package installed on the same machine, use the explicit forms — navis-ta-pbi, navis-ta-pbi-extract, navis-ta-pbi-deploy — so the right converter is invoked.

Create Your Spec File

All Navis commands read from a configuration file you point them at. Run init to generate one with all required fields pre-filled:

navis init

This creates spec.toml in your current directory. You can pass a different filename if you prefer — every subsequent command just takes the file as its argument. Open it and fill in the paths:

spec.toml — the lines you need to edit
[pipeline]
input   = "/path/to/source/files"     # folder containing your source files
working = "/path/to/working"          # staging folder (created automatically)
output  = "/path/to/output"           # where converted output is written

[analyze]
license_output_folder = "/path/to/license-requests"  # where the License Request PDF goes

[convert]
license = "/path/to/cepheus-license.pdf"  # the license file Cepheus sends you
📄

One file, every command. Every step in the pipeline reads from the same configuration file. Set your paths once and run each command in sequence — no flags, no other arguments to remember.

Cepheus Navis

Tableau → Power BI Migration

Convert Tableau Desktop / Tableau Server workbooks to Microsoft Power BI. Proven calculation equivalence, tamper-evident audit trails, airgapped operation.

spec.toml — minimal example
[general]
epoch = "2025-11-14T09:00:00-05:00"  # pin this — same epoch reproduces byte-identical output

[pipeline]
input   = "C:/Workbooks"  # folder of .twb / .twbx files
output  = "C:/Output"
working = "C:/Working"  # staging folder for pre/deploy steps

[analyze]
license_output_folder = "C:/Reports"

[convert]
license = "cepheus-license.pdf"

[deploy]
# No additional config required

Every command reads from spec.toml. Relative paths resolve from the spec file’s directory.

Extract Source Data

The extract step pulls the data embedded in your .twbx files, exports it as CSV files into your working folder, and makes it available to the deploy step so Power BI Desktop shows live data as soon as you open the converted project.

The converter itself does not require this step. Analyze and convert read the .twbx directly. This step only benefits the post-bind (data verification) workflow.

navis-extract spec.toml

No additional settings required beyond input, working, and output in spec.toml.

Analyze Your Workbooks

Scan .twb / .twbx files to assess what can be automatically migrated before committing to a conversion.

Complexity Ratings
Per-workbook complexity assessment across the portfolio
Automation Rate
How many calculations can be auto-converted with proven accuracy
Fidelity Gap Report
Features that need manual attention, disclosed upfront
SHA-256 Checksums
Embedded in the PDF for license issuance
navis analyze spec.toml

Submit the License Request PDF to navis@cepheusonline.com. The PDF embeds cryptographic fingerprints of your workbooks. Cepheus replies with a license file.

Why checksums? The license is tied to your workbook files as they existed when analyzed. Modified files won’t match and conversion is blocked — preventing accidental conversion of untested workbooks.

Get & Verify Your License
  1. Run navis analyze and save the License Request PDF
  2. Email the PDF to navis@cepheusonline.com
  3. Receive a license file back
spec.toml
[convert]
license = "cepheus-license.pdf"
navis verify-license spec.toml
StatusMeaning
VALIDLicensed and ready to convert
MISMATCHLicensed, but file has changed since the license was issued
UNLICENSEDNot covered by this license

Checksum mismatch? The workbook file changed after analysis. Re-run analyze and request an updated license.

Convert
navis convert spec.toml

What Navis produces

For each workbook: a .pbip folder (Power BI Project), plus a _CEC.zip Evidence Capsule.

How calculations are converted

Every DAX formula Navis produces has been individually tested against actual Tableau output to verify identical results. This isn’t approximate translation — it’s proven equivalence. If Navis encounters a calculation it cannot convert with proven accuracy, it flags it rather than guessing.

Deploy

Windows only. The converter produces a .pbip project with the correct semantic model and DAX measures, but the M queries point to placeholder data sources. The deploy step writes the source data as CSV files alongside the project and repoints the M queries at those CSVs — so you can open the project in Power BI Desktop and see live data immediately.

Verification aid only. The CSV data and M query rewrites are a temporary scaffold for demo and QA. Your data team will reconnect to production sources using Power BI Desktop's Change Source dialog or the Admin portal.

Reads the data exported by the extract step from your working folder. No additional configuration required.

spec.toml
[deploy]
# No extra keys needed — Navis picks up the extracted data from your working folder automatically
navis-deploy spec.toml

After the deploy step, open the .pbip file in Power BI Desktop — all visuals will populate with data. Review the conversion, check the Evidence Capsule PDF for any fidelity gaps, and hand off to your data team.

Open in Power BI Desktop

Navigate to the _wired folder for any converted workbook and open the .pbip file in Power BI Desktop (File → Open report). Your report pages load with data immediately.

You're done. Walk through each report page and compare against the original. Open _CEC.zip for the full audit PDF. When satisfied, hand the wired project off to your data team to reconnect to the production data source.

Connecting to production data

In Power BI Desktop: Home → Transform data → Data source settings. Select the CSV source and click Change Source. The semantic model and all measures are already correct — no other changes needed.

What Gets Converted
TableauPower BI
WorksheetsReport pages with chart visuals
DashboardsReport pages with positioned visuals
Bar, line, area, pie chartsMatching Power BI chart types
Text tablesPower BI table visuals
MapsPower BI map visuals
Scatter plotsPower BI scatter charts
Calculated fields (SUM, AVG, COUNT, etc.)DAX measures
LOD expressions (FIXED, INCLUDE, EXCLUDE)DAX CALCULATE
Table calculations (Running Total, Rank, etc.)DAX WINDOW / OFFSET / RANKX
IF/THEN/ELSE, CASE/WHEN, IIFDAX IF / SWITCH
String functions (UPPER, LOWER, LEN, TRIM, etc.)Equivalent DAX functions
Date functions (DATETRUNC, DATEPART, DATEDIFF)DAX date functions
Math functions (ROUND, ABS, SQRT, trig)Equivalent DAX functions
Categorical filters (include/exclude)Power BI basic filters
Range and date filtersPower BI advanced / relative date filters
Top N filtersPower BI Top N filters
ParametersPreserved as metadata in the semantic model
Data model (tables, columns, types)Semantic model with TMDL definitions
What Needs Manual Attention

Review the PDF report inside the Evidence Capsule for anything flagged:

  • Data connections — connect to your production data source after import.
  • Unmapped calculations — formulas without a proven equivalent yet; clearly marked so you can write them manually.
  • Dashboard actions (filter, URL, highlight) — noted as fidelity gaps; need manual recreation.
  • Custom images and decorative elements — not transferred.
  • Tableau Server / Cloud features — live connections, user filters, etc. need manual reconfiguration.
  • Gantt charts — no direct Power BI equivalent; flagged.
  • Parameters — preserved as metadata; wire to Power BI slicers manually.
  • Nothing is ever silently skipped. If Navis can’t convert something, it tells you.
Understanding the Output

Power BI Project folder

SalesDashboard/
  SalesDashboard.pbip              <-- open this in Power BI Desktop
  SalesDashboard.Report/
    definition.pbir
    report.json
  SalesDashboard.SemanticModel/
    definition.pbism
    definition/
      model.tmdl
      database.tmdl
      tables/
  _CEC.zip                         <-- Evidence Capsule

Open SalesDashboard.pbip in Power BI Desktop. The semantic model and all DAX measures are fully defined — you only need to point the data source at your production data.

The _CEC.zip Evidence Capsule contains the PDF audit report with formula-level conversion evidence, SHA-256 checksums, and any fidelity gaps.

Evidence Capsule (_CEC.zip)

Every conversion produces a _CEC.zip alongside the converted output. It contains:

  • A signed PDF with formula-level translation evidence
  • SHA-256 checksums of all input files
  • A machine-readable JSON manifest of all conversions and fidelity gaps
  • A timestamp and license reference

The capsule is tamper-evident: any modification to the converted output invalidates the checksums in the PDF. Keep _CEC.zip alongside your converted project as your audit record.

Digital Signing

The Evidence Capsule PDF is cryptographically signed by Cepheus. The signature certifies:

  • The workbooks that were analyzed match the license issued
  • The conversion was performed by an authentic, unmodified Navis binary
  • The formula translations are the ones Cepheus has validated

Signature verification does not require internet access. The public key is embedded in the license file.

Audit Logs

Every command writes a structured log alongside the output. Log entries include:

  • Per-workbook conversion decisions and fidelity gaps
  • SHA-256 of each input file at conversion time
  • Formula translation records (source expression → target expression)
  • Any warnings or skipped elements

Logs are in JSON Lines format for easy ingestion into SIEM or audit tooling.

Troubleshooting

License errors

ErrorFix
MISMATCHFile changed after analysis. Re-run analyze, request new license.
UNLICENSEDFile not in the license. Check path matches analyzed workbook.
EXPIREDLicense past validity date. Contact navis@cepheusonline.com.
INVALID_SIGLicense file corrupted or modified. Request replacement.

Common issues

SymptomFix
No workbooks foundCheck the input path in your spec file. Use absolute paths.
Fidelity gaps in every workbookExpected — review the PDF. Gaps are documented, not hidden.
Output folder not createdCreate the parent directory first; Navis creates the final folder.

For other issues: navis@cepheusonline.com

Named Pathlists

To analyze or convert a specific subset of workbooks, name the batch in your spec file and list the files you want:

spec.toml
[pipeline]
input = "my_batch"
working  = "C:/Working"
output   = "C:/Output"

[pathlists.my_batch]
base  = "C:/Workbooks"
files = [
    "Sales.twbx",
    "Finance.twbx",
    "subfolder/HR.twbx",
]

Each path in files is resolved relative to base. Use a named batch when you want to hand-pick specific files rather than converting an entire folder.