PHPackages                             sbc/auto-reporting-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PDF &amp; Document Generation](/categories/documents)
4. /
5. sbc/auto-reporting-bundle

ActiveSymfony-bundle[PDF &amp; Document Generation](/categories/documents)

sbc/auto-reporting-bundle
=========================

Send daily PDF reports about the application's activity

0200PHP

Since May 14Pushed 8y ago1 watchersCompare

[ Source](https://github.com/SBCDevelopers/AutomaticReportingBundle)[ Packagist](https://packagist.org/packages/sbc/auto-reporting-bundle)[ RSS](/packages/sbc-auto-reporting-bundle/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependenciesVersions (1)Used By (0)

AutomaticReportingBundle
========================

[](#automaticreportingbundle)

Send daily PDF reports about the application's activity.

Installation
============

[](#installation)

1. `composer require sbc/auto-reporting-bundle`
2. Enable the bundle in AppKernel.php `new SBC\AutomaticReportingBundle\AutomaticReportingBundle(),`

Usage
=====

[](#usage)

### Step 1:

[](#step-1)

Set the configuration:

```
# AutomaticReportingBundle configuration
automatic_reporting:
    app_name:   'Your applciation name' # will be displayed in the email
    recipients: ['mail1@site.com', 'mail2@site.com'] # multiple recipients

```

### Step 2:

[](#step-2)

Call `@Report` Annotation in the entities you want to follow:

```
/**
 * Post
 *
 * @ORM\Table(name="post")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\PostRepository")
 *
 * @Report(
 *  dateColumn="creationDate",
 *  reportingName="Poste"
 * )
 */
class Post
{
...
}
```

### Step 2 (differentiation solution):

[](#step-2-differentiation-solution)

You can also separate result for the same entity using the DifferentiationColumn Annotation:

```
/**
 * Post
 *
 * @ORM\Table(name="post")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\PostRepository")
 *
 * @Report(
 *  dateColumn="creationDate",
 *  differentiationColumn="type",
 *  differentiations={
 *     @DifferentiationColumn(value="A", reportingName="Post of type A"),
 *     @DifferentiationColumn(value="B", reportingName="Post of type B")
 *  }
 * )
 */
class Post
{
...
    /**
     * Type of the Post entity
     * @var string
     *
     * @ORM\Column(name="type", type="string", length=255)
     */
    private $type;
}
```

### Step3

[](#step3)

- Call `php bin/console reporting:generate` to build and send the report
- Or create a cron job that trigger this command every day

What will actually happen ?
===========================

[](#what-will-actually-happen-)

After calling the command the bundle will parse and get all the entities with the `@Report` annotation and count all the rows that being created in the current day using the `dateColumn` attribute, after that the bundle will generate and send a PDF attachment to the recipients containing the summary using the `reportingName` attribute for each entity.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/ac8d2f956c480143187589bd5dfddcb30756de85bc9f7ab89c55f7b5ddb118f9?d=identicon)[SlimenTN](/maintainers/SlimenTN)

---

Top Contributors

[![SlimenTN](https://avatars.githubusercontent.com/u/17424180?v=4)](https://github.com/SlimenTN "SlimenTN (6 commits)")

### Embed Badge

![Health badge](/badges/sbc-auto-reporting-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/sbc-auto-reporting-bundle/health.svg)](https://phpackages.com/packages/sbc-auto-reporting-bundle)
```

###  Alternatives

[phpoffice/phpspreadsheet

PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine

13.9k293.5M1.3k](/packages/phpoffice-phpspreadsheet)[spatie/browsershot

Convert a webpage to an image or pdf using headless Chrome

5.2k32.1M102](/packages/spatie-browsershot)[smalot/pdfparser

Pdf parser library. Can read and extract information from pdf file.

2.7k34.5M216](/packages/smalot-pdfparser)[barryvdh/laravel-snappy

Snappy PDF/Image for Laravel

2.8k24.8M48](/packages/barryvdh-laravel-snappy)[openspout/openspout

PHP Library to read and write spreadsheet files (CSV, XLSX and ODS), in a fast and scalable way

1.1k57.6M131](/packages/openspout-openspout)[keboola/csv

Keboola CSV reader and writer

1451.8M21](/packages/keboola-csv)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
