Introducing: The Function Executioner 🪓 (A Testing Tool)

Classic version

Updated OP with clear / bettter instructions on how to install using a CAB. Seems to work without issue in a virgin system 2024.1>= :crossed_fingers:

6 Likes

This worked for me on 2024.2, just had to add the company in the function security. Everything else came through just like the screenshots.

:clap:

3 Likes

Sweet I added that bit to the instructions now. Thanks for your help!

1 Like

So clean, thank you Jose for another incredible tool.

1 Like

Season 2 Episode 3 GIF by Parks and Recreation

9 Likes

Kevin!

4 Likes

No it goes like this

7 Likes

This is amazing! Thank you for this, and everything else you do for the community :smiling_face:

I have one improvement suggestion, which is to facilitate allowing a DataSet as a function input. I’m not sure how the mechanics would work or I’d make the update myself, but maybe a Text Area control that allows properly formatted JSON? I have no idea if this is a big lift, or even possible.

This tool is great as is, this is just a suggestion based on a limitation I ran into.

Hmm I didn’t test any with a dataset but I just assumed you’d get a textbox. I’ll take a look.

2 Likes

Nope, no textbox (I am using a native Epicor Panel and I suspect they got lazy) let me look into it.

2 Likes

Yuup Epicor noped out of it… #LeSigh

This is technically a bug it means that you can’t currently schedule a function in Epicor if the Input type is DataSet.

As far as lifts goes I think its a big one but I’ll have to play and see. I don’t think there exists a component (other than a simple textbox) that can take JSON input.

4 Likes

Seth Meyers Omg GIF by Late Night with Seth Meyers

I’d love to be able to pass JObjects or Nodes in parameters.

1 Like

Oh that’s dirty!!

Well I found one I think I can highjack from AppStudio its called “EpJsonEditor”

More tomorrow

6 Likes

Ok, I’ve updated the OP with a new copy of the cab that now supports DataSet Input types

There is a bit of a quirk because of the way that the JSON Editor works, when you focus on the JSON Editor it hides the execution panel, but simply click execute function again and it will keep all your changes. (See below)

ExecWithDS

Here’s a sample “DataSet” to use with the SayHelloWithDS Demo (its a mirror function it just gives you back what you give it plus a little meta data

{
  "Customers": [
    { "CustomerID": 1, "Name": "Alice" },
    { "CustomerID": 2, "Name": "Bob" }
  ],
  "Orders": [
    { "OrderID": 100, "CustomerID": 1, "Amount": 250.0 },
    { "OrderID": 101, "CustomerID": 2, "Amount": 175.5 }
  ]
}
4 Likes

Sorry for the late reply, I was on PTO last week. This is awesome @josecgomez , thank you!

1 Like