Auto Import runs Import Definitions automatically on created assets
This bundle allows running DataDefinitions (https://github.com/w-vision/DataDefinitions/) imports automatically for created assets.
composer require divanteltd/pimcore-auto-import
Enable and install the Bundle in admin panel or in command line:
./bin/console pimcore:bundle:enable AutoImportBundle ./bin/console pimcore:bundle:install AutoImportBundle
Bundle listens on event:
pimcore.asset.postAdd- handled by \Divante\AutoImport\EventListener\AssetEventListener::onPostAdd
import_definition.*- handled by \Divante\AutoImport\EventListener\ImportDefinitionsEventListener
- ProcessManager (https://github.com/dpfaffenbauer/ProcessManager)
- DataDefinitions (https://github.com/w-vision/DataDefinitions/)
After installation open up Website settings and fill in:
AutoImport_INTEGRATION- integration name
AutoImport_DEFINITION- name of the Import Defintion
AutoImport_FOLDER- folder which bundle will monitor for incoming files
From now on, all assets added to the configured folder (
product in example above) will be used as an input to defined Import Definition.
Executable in Process Manager will be createad automatically, alongside with additional folder structure,
as subfolders of the one defined in Website Settings (if needed):
/processing- files being currently imported
/done- files sucessfully imported
/error- files which import ended with an error
You can define additional watch folders and definitions, by adding additional Website Settings:
AutoImport_INTEGRATION_sampleName- last part is used to find other configuration lines
If external system is uploading the file to the filesystem directly (not using admin panel, GraphQL or WebDAV), you can easily synchronize the filesystem changes using Pimcore Devkit (https://github.com/DivanteLtd/pimcore-devkit):
./bin/console devkit:asset:synchronize /ERP/ingoing
Using Process Manager's build-in cron functionality, you can easily run this command periodically.
If your integration is entirely based on file exchange, you can use this bundle with Scheduled Export (https://github.com/DivanteLtd/pimcore-scheduled-export) to configure complete integration in Pimcore admin panel.
If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.
Pimcore Scheduled Export source code is completely free and released under the GNU General Public License v3.0.
This module respects all Pimcore code quality rules and our own PHPCS and PHPMD rulesets.
We are a Software House from Europe, existing from 2008 and employing about 150 people. Our core competencies are built around Magento, Pimcore and bespoke software projects (we love Symfony3, Node.js, Angular, React, Vue.js). We specialize in sophisticated integration projects trying to connect hardcore IT with good product design and UX.
We work for Clients like INTERSPORT, ING, Odlo, Onderdelenwinkel and CDP, the company that produced The Witcher game. We develop two projects: Open Loyalty - an open source loyalty program and Vue.js Storefront.
We are part of the OEX Group which is listed on the Warsaw Stock Exchange. Our annual revenue has been growing at a minimum of about 30% year on year.
Visit our website Divante.com for more information.