Download the PHP package visualbuilder/filament-export-scheduler without Composer

On this page you can find all versions of the php package visualbuilder/filament-export-scheduler. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package filament-export-scheduler

Configure scheduled routines for filament exporters

Latest Version on Packagist run-tests Total Downloads GitHub commit activity

Email automated exports on a defined schedule - keep the management happy with timely reporting and minimise effort.

Export Schedules pack shot

Empower users to create their own reports

List Schedules

Any Filament Exporter can be used as the starting point

Setup Schedules

Filter By Available Relationships

Filter by relations

Easy Frequency Selection

Setup Schedules

Customise query data range

Users can choose which columns to include

Edit Columns

Attractive HTML Email templates

Email

Installation

You can install the package via composer:

Copy views and migrations, run the migration

Optionally seed an example schedule for the users table This will export all Users on the 1st of every month.

Schedule Command in Laravel

To enable automatic sending you must add the console command to your scheduler.

1. Modify the Scheduler

Open app\Console\Kernel.php:

2. Check servers cron

Ensure your server is set up to run Laravel's scheduler by adding this cron entry

3. Review the config file

Here you can

4. Ensure you have added the filament Export migrations

If you don't have an exports table you can add it with:-

Check the docs at: https://filamentphp.com/docs/3.x/actions/prebuilt-actions/export

Polymorphism - Using different user classes

This package uses this by default, please ensure your exports migration has this line:-

This will create the columns user_type and user_id to allow any user type to be associated with an export.

Note: This code has already been included in the package service provider so you don't need to include it.

Add the plugin to your filament panel provider

Make some export classes with

New Feature - Filtering Exports by a related model

Typical scenario might be exporting all Orders but filtered by a specific Organisation. In order to filter by organisation we need to know the field that should be searchable. This requires adding the InteractsWithExportSchedulerFilter to the Models that can be filtered.

The trait has the $filterOptionLabel property allowing us to define which column should be used for the filter label. And excludeFilterableRelations allows you to exclude relations which should not be included in the filter, by default all belongsTo relations will be included. NB. Next release will include morphsTo relation options.

}

Testing

To prove the integrity of the system the test suite creates these schedules and simulates running the tasks every day for 4 years to ensure leap years are handled correctly.

Test Name Schedule Frequency Cron Expression Expected Report Time Verification Method (Example)
User Export Daily DAILY N/A Every day at 3:00 AM Check for a new file/email at 3:00 AM each simulated day.
User Export Weekly (Monday) WEEKLY N/A Every Monday at 4:00 AM Check for a new file/email at 4:00 AM every Monday.
User Export Monthly (Day 15) MONTHLY N/A The 15th day of every month at 5:00 AM Check for a new file/email at 5:00 AM on the 15th of each month.
User Export Monthly (Last Day) MONTHLY N/A The last day of every month at 6:00 AM Check for a new file/email at 6:00 AM on the last day of each month.
User Export Yearly YEARLY N/A January 1st of every year at 7:00 AM Check for a new file/email at 7:00 AM on January 1st.
User Export Leap Year Test YEARLY N/A February 29th (during leap years) at 10:00 AM Check for file/email on Feb 29th in leap years; verify handling in non-leap years.
User Export Quarterly (Jan 10) QUARTERLY N/A January 10th, April 10th, July 10th, October 10th at 8:00 AM Check for a new file/email on these dates at 8:00 AM.
User Export Half-Yearly (Jul 1) HALF_YEARLY N/A July 1st and January 1st of every year at 9:00 AM Check for a new file/email on these dates at 9:00 AM.
User Export Weekdays 10:30 AM CRON 30 10 * * 1-5 Every weekday (Monday-Friday) at 10:30 AM Check for a new file/email at 10:30 AM each weekday.
User Export Quarter Ends 2:00 AM CRON 0 2 1 3,6,9,12 * The 1st day of March, June, September, and December at 2:00 AM Check for a new file/email on these dates at 2:00 AM.

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.


All versions of filament-export-scheduler with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
filament/filament Version ^3.0
illuminate/contracts Version ^10.0|^11.0
spatie/laravel-package-tools Version ^1.15.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package visualbuilder/filament-export-scheduler contains the following files

Loading the files please wait ....