Skip to main content
Question

Batch create customer invoice database task for multiple customers

  • November 14, 2024
  • 4 replies
  • 109 views

Forum|alt.badge.img+1

Hello,

We received a request to setup 110 customers to auto invoicing so we usually setup the scheduled database tasks called batch create customer invoice and batch print customer invoice. However, it seems these database tasks only accepts one customer number per scheduled database task setup. Is there a way to automate multiple customers for these scheduled tasks instead of per each customer number? Note that these customers belong to different companies. Please advise. Thanks 

Note: We are currently in IFS10

4 replies

Forum|alt.badge.img+12
  • Hero (Partner)
  • November 25, 2024

Hi, Unless you want to filter your customers based on their ID, you can use the wild card (%) as the customer identity and rely on other parameters such as Priority, Salesman etc to narrow down the selection.

Hope this helps


untsrikanth
Sidekick (Customer)
Forum|alt.badge.img+4
  • Sidekick (Customer)
  • September 7, 2026

@NAUBENF Have you found a solution for this? We have around 100 customers, 9 order types, and 40 companies. This would result in approximately 35,000 tasks being created, which I don't believe is a practical solution.


Piyal Perera
Hero (Partner)
Forum|alt.badge.img+12
  • Hero (Partner)
  • September 7, 2026

hi ​@untsrikanth 

 I do belive that the following options are worth to try.

Option 1: Grouping by Company & Order Type / Coordinator (No Code / Out-of-the-Box)

Instead of creating tasks per customer, create scheduled tasks per Company using additional parameter filters available in standard IFS:

  • Use a Dedicated Order Type or Salesperson/Coordinator:
    • Assign the customer orders for these 110 customers to a dedicated Order Type (e.g., AUTO_INV) or specific Salesman / Coordinator Code.
  • Task Setup:
    • Company[Company ID]
    • Order Type / Order IDAUTO_INV
    • Customer No% (all customers under that Order Type)
  • Result: You only need 1 creation task and 1 print task per Company (e.g., 10-15 tasks total instead of 220+).

If the 110 customers cannot be distinguished by Order Type or Customer Group, the standard industry practice in IFS is to build a Custom Database Task.

  1. Flag the Customers - Using a Custom Field or custom mapping table
  2. Create a PL/SQL Wrapper Package -  invoke the standard API routines:
  3. Register as a Scheduled Task:

regards,

Piyal


Forum|alt.badge.img+9
  • Hero (Employee)
  • September 8, 2026

Please review and advise if the following infration helps to accomplish this.  Thanks!  Jane

 

In IFS Applications 10 (APP10), standard scheduled database tasks like Batch Create Customer Invoice and Batch Print Customer Invoice (CUSTOMER_ORDER_FLOW_API) are designed to run within a single Company context and accept either a single Customer ID or a wildcard (%).

Setting up 110 individual database tasks is inefficient to maintain. Below are the standard and recommended ways in APP10 to automate this process for multiple customers across different companies.

Option 1: One Task per Company using Wildcards (%) (Recommended Standard Approach)

Instead of creating 110 tasks per customer, create one scheduled task per Company.

  1. Configure Parameters:

    • Company: [Company ID]

    • Customer No: % (Wildcard)

  2. How to control which customers get auto-invoiced:

    • Control auto-invoicing at the Customer Order Type or Customer / Invoicing Basic Data level rather than restricting the database task by Customer ID.

    • Ensure the Customer Orders for these 110 customers use a Customer Order Type configured for automatic invoice creation/printing upon delivery.

    • Orders for other customers that require manual review can be held at earlier stages (e.g., requiring manual invoice creation), so running the task for % will naturally pick up only ready/auto-eligible orders.

Option 2: Use Database Task Chains (Single Schedule for All Companies)

If your 110 customers are spread across multiple companies (e.g., 5 companies) and you want to manage everything under a single schedule:

  1. Navigate to Database Task Chains in IFS APP10.

  2. Create a new task chain (e.g., BATCH_AUTO_INVOICE_CHAIN).

  3. Add steps for Batch Create Customer Invoice:

    • Step 1: Company A (Customer No = %)

    • Step 2: Company B (Customer No = %)

    • Step 3: Company C (Customer No = %)

  4. Add subsequent steps for Batch Print Customer Invoice for each company.

  5. Schedule this single Database Task Chain to run automatically at your desired interval.

Option 3: Custom Database Task (PL/SQL Wrapper)

If you strictly need to target only these 110 specific customers across companies without opening the task to all orders in those companies:

  1. Create a Custom PL/SQL Package/Procedure:

    • Write a PL/SQL block that reads from a custom table or list containing the 110 Customer IDs and their respective Company IDs.

    • The PL/SQL procedure loops through each record and invokes the standard IFS API:

 

 

 

Customer_Order_Flow_API.Create_Invoice(order_no_, ...);

  1. Register as a Custom Database Task:

    • Go to Database Task Maintenance > Database Task and register your PL/SQL procedure.

  2. Schedule the Job:

    • Create a Scheduled Database Task for your custom procedure to run automatically.