Class DatevImportScheduler

  • All Implemented Interfaces:
    org.imixs.workflow.engine.scheduler.Scheduler

    public class DatevImportScheduler
    extends Object
    implements org.imixs.workflow.engine.scheduler.Scheduler
    The DatevImportScheduler implementation imports workflow data (e.g. invoices) from a DATEV csv file.

    The class implements the interface _org.imixs.workflow.engine.scheduler.Scheduler_ and can be used in combination with the Imxis-Workflow Scheduler Service.

    Author:
    rsoika
    See Also:
    SchedulerService
    • Constructor Detail

      • DatevImportScheduler

        public DatevImportScheduler()
    • Method Detail

      • run

        public org.imixs.workflow.ItemCollection run​(org.imixs.workflow.ItemCollection configuration)
                                              throws org.imixs.workflow.engine.scheduler.SchedulerException
        This is the method which processes the timeout event depending on the running timer settings.
        Specified by:
        run in interface org.imixs.workflow.engine.scheduler.Scheduler
        Parameters:
        timer -
        Throws:
        org.imixs.workflow.exceptions.QueryException
        org.imixs.workflow.engine.scheduler.SchedulerException
      • processInvoices

        protected void processInvoices​(org.imixs.workflow.ItemCollection datevExport,
                                       List<org.imixs.workflow.ItemCollection> invoices,
                                       org.imixs.workflow.ItemCollection event,
                                       org.imixs.workflow.ItemCollection configuration)
                                throws org.imixs.workflow.exceptions.AccessDeniedException,
                                       org.imixs.workflow.exceptions.ProcessingErrorException,
                                       org.imixs.workflow.exceptions.PluginException,
                                       org.imixs.workflow.exceptions.ModelException
        This method expects a list of Subprocess definitions. The method updates and processes each existing invoice.

        The definition is expected in the following format (were regular expressions are allowed)

         
         <item name="invoice_update">
            <modelversion>1.0.0</modelversion>
            <task>100</task>
            <event>20</event>
         </item>
         
         
        Parameters:
        datevExport - - datev export workitem
        invoices - - list of invoices
        event - - current datev export event containing the invoice_update definition.
        Throws:
        org.imixs.workflow.exceptions.AccessDeniedException
        org.imixs.workflow.exceptions.ProcessingErrorException
        org.imixs.workflow.exceptions.PluginException
        org.imixs.workflow.exceptions.ModelException
        See Also:
        org.imixs.workflow.engine.plugins.SplitAndJoinPlugin.java