Let's set the scene. You have an external planning system that is smart enough to tell you what you need, but too lazy to execute it. It gives you a CSV with the basics: Vendor, Branch/Plant, Item, and Quantity.

The usual approach? Take that file, open JDE, and start the manual grind. A process prone to errors, boring, and zero value-add.

I decided it was time to dust off our Orchestrator challenges. Today's goal is to automate the full flow: CSV -> Purchase Order -> PDF to Vendor -> Attachment in the system.

But wait, here comes the strategy. We can't just jam everything into one giant block. The solution requires us to divide and conquer:

  1. The Ringmaster (Orchestrator 1): This one reads the CSV and transforms it into an Array. Its job is to iterate (loop) through each supplier and branch.

  2. The Specialist Worker (Orchestrator 2): This one is called by the first one for each supplier/branch. It creates the order, launches the print UBE, sends the email, and handles the PDF attachment to the order header.

Here is what the finished workflow should look like:

💡 Important Technical Note:

To handle the direct CSV-to-Array conversion without headaches, you need Tool Release 9.2.7.4 or higher. It’s a game-changer that saves us a ton of scripting.

Stuck on an older version? Don't worry. Try the "lite" challenge: focus on creating the sales (or purchase) order, printing it, and attaching the PDF automatically. It's still a killer exercise to understand outputs.

By the way, if you need a reference, Oracle has a great example for sales orders that you can use as a base in here.

Summary:
End-to-End purchasing automation.
Elimination of manual data entry.
Advanced use of Arrays and nested calls.

Are you up for it?

I'd love for you to write to me (DM or below) with your own challenges. Whether it's something you managed to solve and feel proud of, or that process that’s driving you crazy and you don't know where to start. I'll pick the best ones to break down and share with the community.

Let's get to work! 🚀

Reply

or to participate