Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Python | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Python | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA | Python |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA | Python
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Databricks | Power Apps | Power Automate |
Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables | Power Apps | Power Automate
Power BI | Power Apps | Power Automate | SQL | VBA | Python | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables
Power BI | Power Apps | Power Automate | SQL | VBA | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
Romanian accountants and analysts live in SAGA and WinMentor, but reporting usually stops at Excel tables and printed listings. This article shows how to turn those exports into a clean Power BI model with automated dashboards, focusing on typical accounting and management reporting scenarios. If you want to go deeper into shaping models and visuals for management, a dedicated course on practical Power BI reporting helps you systematise what we cover here.
Before you build anything in Power BI, you need to understand the shape and quality of the exports you’re dealing with.
You’ll usually see:
Common characteristics:
dd.mm.yyyy dates)WinMentor tends to offer:
Common characteristics:
The goal in Power BI is always the same: turn these semi-structured exports into a star schema with clean fact tables (transactions) and dimension tables (master data).
Start with your reporting questions, then design the model backward.
For most SAGA / WinMentor scenarios, you’ll want at least:
Link your facts to:
FactJournal → DimAccount (many-to-one, single direction)FactJournal → DimPartnerFactJournal → DimDate (based on posting date)FactInvoices → DimPartnerFactInvoices → DimDate (invoice date, due date)If you keep this structure consistent across both SAGA and WinMentor, you can reuse measures and visuals with minimal changes.
Most of the work happens in Power Query. You want repeatable steps so you can refresh every month without manual fixes.
For each exported file:
Suppose you have a SAGA export with the first 4 rows as titles and a proper header on row 5. A typical Power Query script might look like:
let
Source = Excel.Workbook(File.Contents("C:\Data\SAGA\balanta.xlsx"), true),
TB_Sheet = Source{[Name="Balanta"]}[Content],
RemovedTopRows = Table.Skip(TB_Sheet, 4),
PromotedHeaders = Table.PromoteHeaders(RemovedTopRows, [PromoteAllScalars=true]),
RenamedColumns = Table.TransformColumnNames(
PromotedHeaders,
each Text.Replace(_, " ", "")
),
FilterTotals = Table.SelectRows(RenamedColumns, each Text.StartsWith([Cont], "TOTAL") = false),
ChangedTypes = Table.TransformColumnTypes(
FilterTotals,
{
{"Cont", type text},
{"D", type number},
{"C", type number},
{"Sold", type number}
}
)
in
ChangedTypes
This gives you a clean trial balance table that can be used either as a fact table or to validate your journal-based reporting.
WinMentor journals often have multiple header rows and Romanian date formats:
let
Source = Excel.Workbook(File.Contents("C:\Data\WinMentor\jurnal.xlsx"), true),
JurnalSheet = Source{[Name="Jurnal"]}[Content],
RemovedTopRows = Table.Skip(JurnalSheet, 6),
PromotedHeaders = Table.PromoteHeaders(RemovedTopRows, [PromoteAllScalars=true]),
ChangedTypes = Table.TransformColumnTypes(
PromotedHeaders,
{
{"Data", type date},
{"Document", type text},
{"ContDebit", type text},
{"ContCredit", type text},
{"Suma", type number},
{"Partener", type text},
{"CentruCost", type text}
}
),
FilterEmptyRows = Table.SelectRows(ChangedTypes, each [Document] <> null)
in
FilterEmptyRows
From there you can split debit and credit entries into a unified fact table.
Whether you use SAGA or WinMentor, a clean FactJournal is the backbone of accounting dashboards.
Recommended columns:
JournalID – unique row IDDocumentNoPostingDateAccountPartnerCodeCostCenterProjectDebitAmountCreditAmountIf your export has separate debit and credit account columns, you can normalise them:
let
Source = Excel.Workbook(File.Contents("C:\Data\WinMentor\jurnal.xlsx"), true),
JurnalSheet = Source{[Name="Jurnal"]}[Content],
Cleaned = // (use previous cleaning steps here),
// Create debit rows
DebitRows = Table.AddColumn(Cleaned, "EntryType", each "Debit"),
DebitRenamed = Table.RenameColumns(DebitRows, {{"ContDebit", "Account"}}),
DebitSelected = Table.SelectColumns(DebitRenamed, {"Document", "Data", "Account", "Partener", "CentruCost", "Suma", "EntryType"}),
// Create credit rows
CreditRows = Table.AddColumn(Cleaned, "EntryType", each "Credit"),
CreditRenamed = Table.RenameColumns(CreditRows, {{"ContCredit", "Account"}}),
CreditSelected = Table.SelectColumns(CreditRenamed, {"Document", "Data", "Account", "Partener", "CentruCost", "Suma", "EntryType"}),
// Merge debit and credit
Combined = Table.Combine({DebitSelected, CreditSelected}),
// Add signed amount
AddSignedAmount = Table.AddColumn(
Combined,
"Amount",
each if [EntryType] = "Debit" then [Suma] else -[Suma],
type number
)
in
AddSignedAmount
Now you have a single Amount column with sign, which makes DAX measures much simpler.
With a clean FactJournal, you can define reusable measures for most accounting views.
Total Amount :=
SUM ( FactJournal[Amount] )
Total Debit :=
SUM ( FactJournal[DebitAmount] )
Total Credit :=
SUM ( FactJournal[CreditAmount] )
Balance :=
[Total Debit] - [Total Credit]
Account Balance :=
CALCULATE ( [Balance], ALLEXCEPT ( DimAccount, DimAccount[Account] ) )
Use this in a matrix with DimAccount[Account] and DimAccount[AccountName] to replicate and extend the SAGA / WinMentor trial balance.
If your chart of accounts follows a standard structure (e.g., 7xx for expenses, 7xx/6xx for P&L), you can slice by ranges:
Total Expenses :=
CALCULATE (
[Total Amount],
FILTER (
DimAccount,
LEFT ( DimAccount[Account], 1 ) IN { "6", "7" }
)
)
Total Revenue :=
CALCULATE (
[Total Amount],
FILTER (
DimAccount,
LEFT ( DimAccount[Account], 1 ) = "7"
)
)
Profit :=
[Total Revenue] - [Total Expenses]
For cost center dashboards, just add DimCostCenter to your visuals and reuse the same measures.
The biggest pain point with SAGA and WinMentor is that data usually comes as monthly exports, not a live connection.
Use a simple folder-based approach:
C:\Data\SAGA\Imports (monthly files)C:\Data\WinMentor\ImportsSAGA_Journal_2024-01.xlsxWinMentor_Journal_2024-01.xlsxInstead of connecting to single files, connect to a folder and append all monthly exports:
let
Source = Folder.Files("C:\Data\SAGA\Imports"),
Filtered = Table.SelectRows(Source, each Text.StartsWith([Name], "SAGA_Journal")),
AddContent = Table.AddColumn(Filtered, "Data", each Excel.Workbook([Content], true)),
ExpandSheets = Table.ExpandTableColumn(AddContent, "Data", {"Name", "Data"}, {"SheetName", "TableData"}),
KeepJournalSheet = Table.SelectRows(ExpandSheets, each [SheetName] = "Jurnal"),
ExpandTable = Table.ExpandTableColumn(KeepJournalSheet, "TableData", Table.ColumnNames(KeepJournalSheet{0}[TableData])),
// Apply cleaning steps here (remove headers, set types, etc.)
Cleaned = // ...
AddPeriod = Table.AddColumn(Cleaned, "Period", each Date.FromText(Text.Middle([Name], 12, 7)))
in
AddPeriod
Once this is set, adding a new monthly file to the folder automatically extends your data on refresh.
Accountants are used to printed reports, not fancy dashboards. Start with familiar layouts and then add interactivity.
Matrix for trial balance
DimAccount[Account], DimAccount[AccountName]Total Debit, Total Credit, BalanceDimDate[Year], DimDate[Month]Matrix for P&L
Total Revenue, Total Expenses, ProfitDimCostCenter, DimProjectBar charts for top clients
DimPartner[PartnerName]Total RevenueLine chart for monthly evolution
DimDate[Month]Total Revenue, Total Expenses, ProfitFocus on:
Accountants will adopt dashboards faster if they can still reconcile numbers against SAGA / WinMentor reports, so keep a “control” page with a simple trial balance and journal listing.
If you do one thing after reading this, build a robust FactJournal table from your SAGA or WinMentor exports, with a signed Amount column and clean dimensions for accounts, partners, dates, and cost centers. Once that backbone is in place, every new dashboard—P&L, cost center, client profitability, VAT checks—becomes a matter of adding measures and visuals, not rebuilding data prep from scratch.
Power BI
New
Next Batches Now Live
Power BI
SQL
Power Apps
Power Automate
Microsoft Fabrics
Azure Data Engineering