Download the PHP package sourcepot/datapool without Composer
On this page you can find all versions of the php package sourcepot/datapool. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download sourcepot/datapool
More information about sourcepot/datapool
Files in sourcepot/datapool
Package datapool
Short Description The Datapool PHP framework
License AGPL-3.0-or-later
Homepage https://datapool.info
Informations about the package datapool
Datapool
Many organizations run big software packages and flexibility is not necessarily their strong point. Simple customer specific adjustments are very expensive and might not survive the next software update. Moving data between the packages is even more challenging. This framework aims to fill the gap between the big software packages such as SAP and e.g. UNYCOM in the setup of an IPR or patent department. The software is designed to relieve people from mindless repetitive tasks, allowing them to focus on the valuable tasks.
The figure shows a typical application example in a company software setup including SAP and UNYCOM. UNYCOM is used by patent departments of larger enterprises. UNYCOM manages patent files including cost records. There can be a substantial amount of incoming invoices. The payment is usually dealt with by SAP but the invoice data (content) as well as the documentation of the payment made through SAP needs to end up in the correct UNYCOM patent case.
This example requires the following steps:
- Parsing: content extraction from the invoice. SAP relevant data as well as patent case specific data.
- Matching an SAP accounting record with the patent case.
- Mapping: adjusting data formats and types to create a UNYCOM compatible dataset.
The Datapool framework can achieve exactly this in a very transparent manner!
Features
- Very lightweight web-application with data-processing, calendar, user account and rights management, a multimedia app and forum
- Data sources can be media-files, pdf-documents, spreadsheet-files either uploaded manually or downloaded from an email inbox
- External devices can provide data or files through a client interface
- The result of the processing can be spreadsheet-files, zip-files, emails or SMS-messages
- Data processing can be controlled manually or by trigger derived from values or calendar events
- Processes can be easily designed and adopted via a graphical user interface
- Processes can easily be exported or imported to other systems running Datapool
Hosting the web-application
Requirements
This software is designed to run on a server, i.e. the user interface is the web browser. It requires PHP 8+ and a database. Depending on the application requirements access to an email account might be required.
Installation
For the installation and creation of the first user account please refer to the video below.
- Choose your target directory on your web server or your computer and run composer
composer create-project sourcepot/datapool {add your target directory here}
. This will create, among other things, the../www/
-subdirectory, which is the www-root and should be accessible via the network, i.e. from a client web browser. - Create a database and a corresponding database user. Set the database collation to utf8mb4_unicode_ci.
- Call the webpage through a web browser. This will create an error message since the database access needs to be set up. (Check the error log which can be found in the
../debugging/
-subdirectory. Each error generates a JSON-file containing the error details.) - Calling the webpage creates the file
../setup/Database/connect.json
which contains the database access credentials. Use a text editor to update or match the credentials with the database user credentials. - Refresh the webpage. This will create an initial admin user account. The user credentials of this account can be found in
../setup/User/initAdminAccount.json
. Register your own account and use the initial admin user account to change your own account to admin access level. Delete the initial admin user account after you have set up your own admin account. - Make sure only the
../www/
-subdirectory is visible to the public.
Example installation using Composer
on a notebook computer running MS Windows, XAMPP server and MariaDB:
https://github.com/SourcePot/datapool/assets/115737488/10464f44-4518-45e0-8654-0bc19e9b1bb0
Initial adjustments
After you have set up your admin account you should login and update the webmaster email address Admin → Admin → Page settings → EmailWebmaster. Allways use the ✓ button the save changes.
Architecture
Datapool is based on an object collection or oc
, i.e. a collection objects instantiated from PHP-classes in the ../php/
folder. The object collection is created by the constructor of class ../php/Root.php
each time the web-application is called.
../php/Root.php
provides the collection to all instantiated classes which implement the method init(array $oc)
. Typically the classes have a private property oc
which is set/updated by the init method of the class.
The configuration file ../setup/objectList.csv
determines the order of creation of objects. With the private property registerVendorClasses
of class ../php/Root.php
vendor classes can be added to the object collection.
Otherwise, an instance of a vendor class can be created within the source code when required.
All versions of datapool with dependencies
phpoffice/phpspreadsheet Version ^1.28
michelf/php-markdown Version ^2.0.0
monolog/monolog Version ^3.5.0
psr/log Version ^3
smalot/pdfparser Version >=v2.7.0
guzzlehttp/guzzle Version ^7.0
spatie/pdf-to-text Version >=1.52.0
hfig/mapi Version >=v1.3.0
sourcepot/ops Version >=v1.0.0
sourcepot/mediaplayer Version >=v2.0.0
sourcepot/sms Version >=v2.0.0
sourcepot/piview Version >=v2.0.0
sourcepot/fhginvoices Version >=0.1.2
sourcepot/statistic Version >=0.1.0
sourcepot/bankholidays Version >=v1.0.0