Latest Updates

Documenting code, one commit at a time.

Keying into Performance: Setting the Primary Key for TopExceptionsWidget

In the Reimpact platform, we're always striving to optimize performance and ensure smooth operation. Recently, we encountered an interesting issue with the TopExceptionsWidget model that highlights the importance of correctly defining primary keys, especially when dealing with subqueries.

The Problem

Filament, our admin panel framework, relies on $record->id to uniquely identify rows in

Read more

Simplifying Widget Queries in Reimpact/platform

When developing widgets in Reimpact/platform, efficiency is key. A recent update addresses an issue with Filament's default sorting behavior in subqueries, specifically within the TopExceptionsWidget. Let's explore the problem and the solution.

The Problem

Filament, a PHP framework, automatically applies ORDER BY model.id when using HasRecords. This default behavior becomes problematic

Read more

Enhancements to Exception Reporting and Data Presentation in Reimpact Platform

Introduction

The Reimpact platform is undergoing continuous improvements to enhance its monitoring and reporting capabilities. Recent updates focus on refining how exceptions are tracked and how data is presented to users, ensuring a more informative and user-friendly experience.

Addressing Query Builder Compatibility

One of the key updates involves resolving a compatibility issue within

Read more

Enhancing Data Presentation in Reimpact/platform with Filament Tables

The Reimpact/platform project is focused on [description]. Recent development efforts have concentrated on improving the way DPR (Data Protection Report) data is presented and managed within the platform. This involved transitioning from a static HTML table to a dynamic Filament TableWidget, offering enhanced features such as pagination, search, filtering, and translation support.

Read more

Filament Tables: Collapsed Details and Translated Filters

Working with large datasets in Filament can sometimes be overwhelming. Displaying all the information at once can make it difficult to quickly grasp key insights. This post explores how to enhance Filament tables by collapsing details by default and using translated filters for a more user-friendly experience, as recently implemented in the Reimpact/platform project.

Collapsing Details by

Read more

Enhancing Filament Tables with Manual Filtering, Searching, Sorting, and Pagination

Introduction

When working with Filament, especially when displaying data from sources other than Eloquent models, you might encounter situations where the built-in features for filtering, searching, sorting, and pagination don't work out of the box. This post describes how to manually implement these features for array-based report tables within Filament admin panels.

The Challenge: Array

Read more

Enhancing Report Generation in Reimpact/platform: Storing and Displaying Report Data

This post discusses recent enhancements to the report generation process within the Reimpact/platform project, focusing on storing and displaying the generated report data.

The Feature

The primary goal of these changes is to persist generated report data and provide flexible views for different report types. This involves adding a report_data column to the packaging_generated_reports

Read more

Improving Error Handling in the Reimpact/platform Project

This post details improvements to error handling within the Reimpact/platform project, focusing on delete operations and providing more specific and informative error messages.

The Problem

Previously, the platform had a generic catch-all for delete errors. This made it difficult to distinguish between expected errors, such as foreign key violations, and unexpected errors, hindering debugging

Read more

Handling Large Uploads and Improving Error Notifications in a Filament Application

When working with the Reimpact/platform project, we encountered an issue with large upload deletions that resulted in failures and an unhelpful JSON response. This post describes how we resolved the deletion failure and improved the user experience by displaying a Filament notification instead of a raw JSON page.

The Problem

Deleting a large number of generated reports and calculated data

Read more