This extension enables the creation of dynamic HTML tables within Azure DevOps work items, allowing for sophisticated calculations and seamless data integration. It empowers users to quickly reference and manipulate work item fields within the table, providing a "poor man's worksheet" for real-time data analysis.
Last Updates
March, 2025 (v.1.17)
Bug Fixes
- Fixed HTML Encoding Issues in Table Cells: Resolved an issue where special characters, such as quotation marks, were incorrectly displayed as HTML entities (e.g.,
"Test3" ). Table cells now correctly render special characters as intended.
- Fixed Column Count Issues with Empty Cells: Addressed an issue where empty cells were causing incorrect column count calculations, leading to table layout problems. Empty cells are now properly handled, ensuring accurate column counts.
How to Use
Once the extension is installed, you can create dynamic HTML tables for work items with simple yet powerful calculations.
- Define Columns: List the column names for your table as a semi-colon separated string.
- Field References: Use work item fields within table formulas to perform real-time calculations (e.g.,
[$FieldName] ).
- CSV Output: Define a multi-line text field in your work item where the table content will be saved in CSV format.
- Advanced Configuration: Optionally, specify the initial row count, columns for summing values in the bottom row, and custom functions for each column.
Supported arithmetic functions:
- Addition (+): Adds two or more values.
- Subtraction (-): Subtracts one value from another.
- Multiplication (*): Multiplies two or more values.
- Division (/): Divides one value by another.
- Modulus (%): Returns the remainder of division between two values.
- Exponentiation (^ or ): Raises one value to the power of another.
Comparison Operators:
Less Than (<): Checks if one value is less than another.
Greater Than (>): Checks if one value is greater than another.
Not Equal To (!=): Checks if two values are not equal.
Equal To (==): Checks if two values are equal.
Supported Mathematical Functions:
min():
- Description: Returns the smallest number in a set of values.
- Example:
min(5, 3, 9) returns 3 .
max():
- Description: Returns the largest number in a set of values.
- Example:
max(5, 3, 9) returns 9 .
sum():
- Description: Calculates the total sum of all provided values.
- Example:
sum(5, 3, 9) returns 17 .
avg():
- Description: Computes the average (mean) of the given values.
- Example:
avg(5, 3, 9) returns 5.6667 .
abs():
- Description: Returns the absolute value of a number.
- Example:
abs(-5) returns 5 .
round():
- Description: Rounds a number to the nearest integer.
- Example:
round(4.7) returns 5 .
ceil():
- Description: Rounds a number up to the nearest integer.
- Example:
ceil(4.3) returns 5 .
floor():
- Description: Rounds a number down to the nearest integer.
- Example:
floor(4.7) returns 4 .
sqrt():
- Description: Returns the square root of a number.
- Example:
sqrt(9) returns 3 .
sumproduct():
- Description: Multiplies corresponding elements in two or more arrays and returns the sum of the results.
- Example:
sumproduct({[Column1],[Column2],[Column3]}, {1,2,3}) returns the sum of the products of corresponding values from [Column1] , [Column2] , and [Column3] with {1,2,3} .
- Note: Arrays used in the
sumproduct function should be enclosed in {} for the calculation to work correctly, allowing the use of table and work item field references inside the calculation.
When to Use
This extension is particularly valuable when you need to incorporate real-time calculations and data analysis directly within a work item, without relying on external attachments or manual calculations. Here are some practical examples:
1. Centralized Data Analysis within Work Items
- Scenario: You are managing a project with multiple work items, and each work item requires frequent calculations based on other fields (e.g., time tracking, cost estimation, resource allocation).
- Benefit: Instead of tracking these calculations in separate documents or spreadsheets attached to work items, you can perform the calculations directly within the work item itself, keeping everything in one place for easy tracking, reporting, and updates. It ensures that your team always works with the most up-to-date data without needing to open multiple files.
2. Simplifying Complex Estimations
- Scenario: You need to estimate cost savings or efficiency gains based on various parameters such as hours spent, hourly rates, and output produced.
- Benefit: With the ability to calculate values dynamically based on other fields within the work item, you can create more accurate and flexible estimations without relying on external spreadsheets. This reduces the risk of errors and ensures that estimations reflect any changes made to the work item fields in real time.
3. Automated Summing of Data
- Scenario: You manage a project where you track the progress of various tasks in terms of time or cost, and you need the sum of different values (e.g., total hours worked, total cost) calculated automatically at the bottom of each table.
- Benefit: You can define specific columns to sum automatically, reducing manual effort and errors. This makes it easy to track project progress and adjust plans quickly without worrying about maintaining separate tracking documents.
4. Quick Analysis and Decision-Making
- Scenario: You need to quickly analyze the impact of different variables (e.g., budget allocation, timeline shifts) on your project’s outcome.
- Benefit: With dynamic formulas and field references, you can change values directly in the work item and see the updated results instantly. This allows for faster decision-making, as there’s no need to open multiple documents or recalculate manually.
5. Cost Tracking and Financial Reporting
- Scenario: You need to track project costs across different activities and calculate total costs dynamically based on hourly rates and hours worked.
- Benefit: Using this extension, you can create tables that automatically calculate costs, total hours, or savings, and export the results to CSV format for easy reporting. This reduces the need for external financial tools and allows for more agile financial tracking within Azure DevOps.
Key Features
- Dynamic Tables: Create and manage dynamic HTML tables directly within work items, supporting calculations across rows and columns.
- Field References: Reference work item fields within table calculations using an intuitive field reference format (e.g.,
[$FieldName] ).
- Real-time Calculations: Perform basic arithmetic operations such as addition, subtraction, multiplication, and division within table columns.
- CSV Output: Easily export table content to a multi-line CSV format for further analysis or reporting.
- Temporary Function Testing: Test and apply temporary changes to column functions directly in the table interface. These changes are reset when the page or work item is reloaded, providing a quick way to experiment before committing to permanent settings.
- Smart Field Handling: Automatically convert non-numeric field values to numbers when possible, or retain their original text format without quotation marks when they are purely textual.
- Tooltip Insights: Tooltips for calculated fields display both raw functions and calculated values, offering users better context and transparency about table operations.
- CSV Output: Easily extract table content to a multi-line CSV format for further analysis or reporting.
- CSV Import: Users can easily import work item data from CSV files, streamlining the process of adding multiple records at once.
Column Names:
Short description;As-is (h/year);To-be (h/year);Gain/Saving (h/year);EUR/h;Annual_saving_in_KEUR
Column Functions:
;;;[As-is (h/year)]-[To-be (h/year)];;[Gain/Saving (h/year)]*[EUR/h]/1000
Row Count:
2
Columns With Sum:
Gain/Saving (h/year);Annual_saving_in_KEUR
CSV Output:
outputCSV
Decimal Separator:
,
Test changes for column functions:

Importing external CSV data:

Important Notes
- When using work item field references (e.g.,
[$FieldName] ), please note that changes to the field values will only be reflected in the table calculations after refreshing the browser. This ensures that calculations are based on the most up-to-date field values.
- Please note that the Temporary Function Testing does not persist inputs between edits if the changes are not saved. It is under consideration to enable temporary edits to the functions to persist without saving the work item.
Feedback and Issues
If you have any questions, feel free to leave them in the Q&A section. For feedback or suggestions on new functionalities, please provide them via the Ratings & Review section.
You can also always reach us via email. We appreciate your input and strive to improve the extension based on your needs!
Change Log
March, 2025 (v.1.17)
Bug Fixes
- Fixed HTML Encoding Issues in Table Cells: Resolved an issue where special characters, such as quotation marks, were incorrectly displayed as HTML entities (e.g.,
"Test3" ). Table cells now correctly render special characters as intended.
- Fixed Column Count Issues with Empty Cells: Addressed an issue where empty cells were causing incorrect column count calculations, leading to table layout problems. Empty cells are now properly handled, ensuring accurate column counts.
March, 2025 (v.1.16)
Improvements:
Simplified field references: Removed the need for full field path references (e.g., System/Custom prefix).
- Now, both custom control configuration values and field references within table calculations can be specified using just the field name.
- Full field references (including the System/Custom prefix) are still supported for compatibility.]
Enhanced table readability: Improved dark mode visibility by removing the background color from the table header.
March, 2025 (v.1.15)
Bug Fixes
- Fixed Incorrect Handling for Text Values in Cells: Resolved an issue where text values in table cells were incorrectly processed as NaN when populating the table from CSV data. Non-numeric values now retain their original format.
March, 2025 (v.1.14)
New Functionalities:
- Alternative Decimal Separator Input: Added a new input field for users to specify an alternative decimal separator for table values, offering greater flexibility for different regional settings.
Improvements:
- Custom Decimal Separator Handling: Users can now choose a custom decimal separator (other than the default comma) for table calculations. The custom separator will be used on the page for displaying and calculating values. However, for CSV export, the decimal separator will automatically convert to a comma to maintain CSV format standards.
- Automatic Column Sum Calculation: Column sums are now automatically calculated upon page load. Any columns configured for summation will display their total values without requiring user input or manual calculation.
February, 2025 (v.1.13)
Improvements:
- Enhanced Column Summing: Previously, only columns with calculation formulas could be summed up. Now, summing also supports columns containing input fields, allowing for more flexible and dynamic calculations.
February, 2025 (v.1.12)
New Features:
- Data Import: Added a feature for importing data from a CSV file directly into the table. Users can now upload CSV files to quickly populate the table with bulk data.
February, 2025 (v.1.11)
Improvements:
- Text Area Resizing: The height of textareas now automatically adjusts based on the resized table cells, ensuring a more responsive and cohesive layout.
January, 2025 (v.1.10)
Improvements:
- Enhanced User Interface: Input fields have been changed to textareas for a better user experience when creating tables. This allows for easier entry of longer, multi-line text values, especially useful in tables that do not require calculations.
- Font Size Adjustment: The font sizes in tables have been reduced for a better user experience when dealing with larger tables, ensuring better readability and reducing unnecessary scrolling.
New Features:
New Mathematical Function - sumproduct: A new mathematical function sumproduct has been added, allowing users to multiply corresponding values in two or more arrays and then sum those products. This is useful for more complex data analysis within tables.
Table Cell Resizing: Added support for both horizontal and vertical resizing of table cells, allowing users to adjust the size of columns and rows for better data visibility and interaction.
January, 2025 (v.1.9)
Improvements:
- Updated the calculation logic to ensure non-numeric values default to
0 in mathematical operations, preventing errors and improving consistency.
- Improved formula evaluation to handle dependencies between calculated fields more effectively.
Bug Fixes
- Fixed issues where mathematical functions did not process correctly under certain conditions.
- Resolved an issue where referenced columns containing calculations resulted in incorrect values during evaluation.
January, 2025 (v.1.8)
Bug Fixes
- Enhanced Column Function Parsing: Fixed an issue where column functions containing work item field references ([$FieldName]) were not correctly parsed in certain cases. The parser now ensures accurate recognition and calculation of referenced fields, improving reliability.
- Consistent Function Handling: Adjusted column function evaluation to handle empty or missing values more gracefully, preventing calculation errors and ensuring smooth table updates.
January, 2025 (v.1.7)
Improvements:
- Default Column Functions Handling: Improved the handling of column functions by automatically initializing them to a list of empty strings when not provided in the input. The number of empty strings now matches the number of defined column names, preventing incorrect table structure creation.
January, 2025 (v.1.6)
Bug Fixes:
- Table Calculation Errors: Fixed an issue where tables without any work item field references were causing unexpected errors.
January, 2025 (v.1.5)
New Functionalities:
Enhanced Math Function Support:
*The extension now supports the following mathematical functions:
- min(): Returns the smallest number in a set of values.
- max(): Returns the largest number in a set of values.
- sum(): Calculates the total sum of all provided values.
- avg(): Computes the average of the given values.
- abs(): Returns the absolute value of a number.
- round(): Rounds a number to the nearest integer.
- ceil(): Rounds a number up to the nearest integer.
- floor(): Rounds a number down to the nearest integer.
- modulus (%): Returns the remainder of division between two values.
- exponentiation (^ or **): Raises one value to the power of another.
The extension now supports the following comparison operators:
- Less Than (<): Checks if one value is less than another.
- Greater Than (>): Checks if one value is greater than another.
- Not Equal To (!=): Checks if two values are not equal.
- Equal To (==): Checks if two values are equal.
January, 2025 (v.1.4)
New Functionalities:
- Auto-fit Table Height: Added support for automatically adjusting the table height based on the number of rows. This ensures a better user experience by eliminating unnecessary whitespace, optimizing the use of space within the work item interface, and displaying all rows at once without requiring scrolling.
Bug Fixes:
- Temporary Function Testing: Fixed an issue where temporary function testing failed to work for empty tables when no data was saved to the output CSV field. The functionality now handles empty tables gracefully, allowing users to define and test column functions even without pre-existing data.
January, 2025 (v.1.3)
New Functionalities:
- Temporary Function Testing: Introduced the ability to test and apply temporary changes to column functions without permanently saving them. These changes will reset upon reloading the page or work item, allowing users to experiment and refine functions more easily before committing to changes in the custom control settings.
Improvements:
- Enhanced Field Referencing: Non-numeric fields can now be referenced in table columns without being treated as zero. If the content can be converted to a numeric value, it will be converted; otherwise, the original text value will be preserved for display.
January, 2025 (v.1.2)
New Functionalities:
- Tooltip enhancements: Added raw functions and calculated values to the tooltip text of the calculated fields, providing better context and real-time information for users interacting with calculated values.
Improvements:
- Enhanced CSV input handling: Added improvements to handle cases where the CSV string is manually modified within the multiline text field, ensuring smoother user experience and error handling.
January, 2025 (v.1.1)
New Functionalities:
- Added support for work item field references within table formulas, enabling dynamic updates based on field values from the work item itself.
| |