This package adds the ability to store form submissions into a database and export the stored data as xlsx, xls, ods, csv or html.
To install the package simply run
composer require wegmeister/databasestorage
You can add the DatabaseStorage Finisher in the following ways:
Add the DatabaseStorage a finisher in your form definition/yaml file:
type: 'Neos.Form:Form'
identifier: 'some-identifier'
label: 'My form'
renderables:
# Your renderables / form fields go here
finishers:
-
identifier: 'Wegmeister.DatabaseStorage:DatabaseStorageFinisher'
options:
# The identifier is used to group your data in the database.
# You should avoid using the same identifier twice or your data could become a little messed up.
identifier: 'my-form-data'
You can also use the DatabaseStorage with the Neos.Form.Builder. You should be able to simply add DatabaseStorage as a finisher to your form.
Don't forget to set a (unique) identifier
!
You can also use the DatabaseStorage Neos.Fusion.Form action.
Add the following configuration to your form action definition:
databaseStorage {
type = '\\Wegmeister\\DatabaseStorage\\FusionForm\\Runtime\\Action\\DatabaseStorageAction'
options {
identifier = 'identifier-in-backend'
formValues = ${data}
}
}
The following settings are available and can be overridden by your Settings.yaml:
Wegmeister:
DatabaseStorage:
# Creator name of the exported files
creator: 'die wegmeister gmbh'
# Title for the exported files
title: 'Database Export'
# Subject for the exported files
subject: 'Database Export'
# DateTime format if the datetime is included in the export
datetimeFormat: 'Y-m-d H:i:s'
# Form element types that should not be stored by the finisher (for Node-based forms)
nodeTypesIgnoredInFinisher:
- 'Neos.Form.Builder:Section'
- 'Neos.Form.Builder:StaticText'
# Form element types that should not be part of the export (for Node-based forms)
nodeTypesIgnoredInExport:
- 'Neos.Form.Builder:Section'
- 'Neos.Form.Builder:StaticText'
- 'Neos.Form.Builder:Password'
- 'Neos.Form.Builder:PasswordWithConfirmation'