June 3, 2025

Episode 421: Business Central Buzz: Agents, Page Scripting and Fire Fighting

Get ready for a mind-blowing episode of Dynamics Corner as hosts Kris and Brad sit down with Vincent Nicolas to dive into the whirlwind of AI and Microsoft Dynamics 365 Business Central innovation! Fresh from a conference, Vincent spills the tea on how AI transforms everything from page scripting to tenant communication. From automating testing with smart test data to wrestling with security and human oversight, this convo is packed with insights on orchestrating AI agents and building trust in faceless tech. Plus, they tackle the big question: how will AI reshape jobs without replacing you? With plenty of “mind-blowing” moments and practical takeaways, this episode is a must-listen for anyone ready to ride the AI wave in Business Central!

Send us a text

Support the show

#MSDyn365BC #BusinessCentral #BC #DynamicsCorner

Follow Kris and Brad for more content:
https://matalino.io/bio
https://bprendergast.bio.link/

00:00 - Episode Introduction

09:44 - Vincent Migayrou's Role and Experience

18:14 - AI Adoption Challenges in Business

27:06 - Page Scripting Development and Future

47:15 - AI and LLMs in Business Central

54:38 - Faceless ERP and Agent Technology

01:03:27 - MCP Service and Cross-Application Agents

01:13:46 - Security Considerations for AI Agents

01:16:45 - Episode Closing

WEBVTT

00:00:00.641 --> 00:00:04.190
Welcome everyone to another episode of Dynamics Corner.

00:00:04.190 --> 00:00:06.205
My mind is blown.

00:00:06.205 --> 00:00:07.530
I don't even have a line for it.

00:00:07.530 --> 00:00:09.105
I'm your co-host, Chris.

00:00:10.621 --> 00:00:11.303
And this is Brad.

00:00:11.303 --> 00:00:14.952
This episode was recorded on April 22nd 2025.

00:00:14.952 --> 00:00:22.992
Chris, chris, chris Another mind-blowing episode and we were able to talk about one of my favorite topics page scripting.

00:00:22.992 --> 00:00:31.222
We also talked a lot about Business Central with the AI agents, and we also talked a lot about MCP service With us today.

00:00:31.222 --> 00:00:54.555
We had the opportunity to All right, good afternoon, how are you doing?

00:00:56.857 --> 00:00:57.637
That's better.

00:00:57.637 --> 00:00:59.945
I can hear you and see you guys now.

00:00:59.945 --> 00:01:00.948
Oh, excellent.

00:01:00.969 --> 00:01:01.289
That's cool.

00:01:01.350 --> 00:01:02.072
Excellent.

00:01:02.612 --> 00:01:04.278
Excellent, but I don't know what's worth, no, that you go.

00:01:04.298 --> 00:01:05.000
Excellent, excellent, excellent.

00:01:09.227 --> 00:01:09.829
No, that's good.

00:01:09.829 --> 00:01:11.012
Good afternoon, how are you doing?

00:01:11.012 --> 00:01:14.528
Hope you recovered from the wonderful trip to Vegas.

00:01:15.161 --> 00:01:17.909
Yeah, actually I'm just back.

00:01:17.909 --> 00:01:19.004
I'm still in the jet lag.

00:01:19.004 --> 00:01:23.990
We took a vacation and went to Costa Rica after Vegas.

00:01:24.763 --> 00:01:28.587
Oh, very cool, nice, nice we just landed on Sunday.

00:01:30.180 --> 00:01:33.230
So yeah, still recovering a little bit from the jet lag.

00:01:34.341 --> 00:01:35.186
Oh, the time difference.

00:01:35.186 --> 00:01:45.888
I have a three-hour time difference and I only went to Vegas for the conference and back and it took me, I think, a few days to recover just from the three-hour time difference and being there for a few days, to recover just from the three hour time difference and being there for a few days.

00:01:45.888 --> 00:01:50.614
So you have an opportunity to get used to the time difference.

00:01:50.655 --> 00:02:12.155
Then have to go back must be a little more challenging three hours is nothing man, that was my point is three hours isn't a lot, uh, someone like yourself who I think you had eight hours, I believe, for Vegas or nine hours, excuse me, yeah, it's almost a full day.

00:02:12.155 --> 00:02:14.902
It makes for a challenge to go through it too.

00:02:14.902 --> 00:02:18.858
So how was your experience at the conference?

00:02:18.858 --> 00:02:22.024
I thought that was one of the best conferences that I had attended.

00:02:22.525 --> 00:02:28.093
Yeah, it was great to interact with partners and the community.

00:02:28.093 --> 00:02:28.594
As usual.

00:02:28.594 --> 00:02:37.954
We were discussing internally how much we come with specific intentions.

00:02:37.954 --> 00:02:41.088
We want to drive a message and drive a.

00:02:41.088 --> 00:02:41.830
We have an agenda.

00:02:41.830 --> 00:02:47.032
We want the channel to basically ramp up on this whole AI thing.

00:02:47.032 --> 00:03:01.620
It was mostly one of the big things in the conference and we really want people to start doing things with that fantastic new technology.

00:03:01.620 --> 00:03:09.824
So that's the message we're trying to deliver at that conference and I hope we succeeded.

00:03:09.824 --> 00:03:17.610
I mean, you guys you tell me I hear a lot of.

00:03:17.610 --> 00:03:22.819
So my personal impression is that the channel is very there's a whole spectrum.

00:03:22.819 --> 00:03:24.311
It goes from people realize that there's a whole spectrum.

00:03:24.311 --> 00:03:35.991
You know people, you know it goes from people realize that, um, there's something there which probably is going to be interesting for their uh and valuable for their businesses, but they haven't started yet.

00:03:37.235 --> 00:03:59.221
Uh, until you know people were deep into it and already doing you know prompt engineering and have their own you know ai feature and and then there's everything in between, but I think it's partly also because this thing is going so fast that even we have a hard time to keep up with it.

00:03:59.221 --> 00:04:06.895
So I imagine that it's hard for everybody to figure out what should I do.

00:04:06.895 --> 00:04:10.038
There are some challenges with it.

00:04:11.081 --> 00:04:17.439
I think the big point that you made is it's going too fast and it's faster than I think users can adopt.

00:04:17.560 --> 00:04:44.588
And the conversations I typically have is if you look at the advances in civilization, it took us 50,000 years to make an ax and then, as time progressed, the amount of time before new technologies released now is it's almost like Moore's laws with the chips it's you can only go so fast and the window and window is getting smaller and smaller, where it almost feels like every day there's a new feature and I don't know if our brains can keep up with it.

00:04:44.639 --> 00:04:52.262
But it's also from the customer's point of view how can they change their business to adopt these technologies so quickly as well?

00:04:52.262 --> 00:04:54.408
So it's not always sometimes the partner point of view.

00:04:54.408 --> 00:04:59.651
It's the partner point of view to be able to accept the technology, to be able to work with customers to implement it.

00:04:59.651 --> 00:05:01.543
But it's also customers to be able to have.

00:05:01.543 --> 00:05:11.149
How can I in some instances have a radical shift in my business to be able to take advantage of these new features and functionality?

00:05:11.149 --> 00:05:18.283
And at the rate where it's coming out, it's almost like trying to change the wheels on the bus as the bus is driving down the highway in some cases.

00:05:19.605 --> 00:05:28.947
And I think that's a big challenge, brad, because I know it's a partner-focused event with ISVs right, and the challenge is two parts.

00:05:28.947 --> 00:05:30.485
It's the way I see it.

00:05:30.485 --> 00:05:38.091
One, you know, considering there's different sizes of partners too, so there's small partners, large partners, medium partners.

00:05:38.091 --> 00:05:47.963
How do you utilize the co-pilot within the organization first, and then you're expected to implement it for a client.

00:05:47.963 --> 00:06:03.331
So not only you're trying to figure out how would you use this day-to-day within your organization and then also, at the same time, convince your customers, your clients, how do you use co-pilot when, in fact, you're also still trying to figure out yourself?

00:06:03.331 --> 00:06:06.629
So can you build a solution for a small partner?

00:06:06.629 --> 00:06:08.146
That's a little tough.

00:06:08.146 --> 00:06:12.363
You're like building a solution around Copilot At the same time.

00:06:12.363 --> 00:06:17.536
You're a small shop and then, at the same time, trying to convince your client to use Copilot.

00:06:17.536 --> 00:06:18.600
That's a big challenge.

00:06:18.639 --> 00:06:29.089
Yes, I do have one big takeaway from the conference and I think it's not narrowed on the ai and something that I realized from conversations with partners in some of the sessions.

00:06:29.089 --> 00:06:32.529
But before we jump into that, uh, would you mind telling us a little bit about yourself?

00:06:34.524 --> 00:06:37.250
uh, yeah, you mean like in general introduce yourself.

00:06:37.310 --> 00:06:40.021
Yes, yes, yes so yeah, my name is vincent miguelis.

00:06:40.021 --> 00:06:42.685
Uh, I am the chief architect for business Central.

00:06:42.685 --> 00:07:01.853
I've been working with Business Central for, I think, more than 10 years now and yeah, so we have a relatively small team working for me and what we look into is mostly innovation, new technology.

00:07:01.853 --> 00:07:15.333
So obviously we do a lot of things with AI at the moment because that's a new thing, and so we're trying to kind of do the groundbreaking stuff.

00:07:15.333 --> 00:07:17.367
What's the next big thing?

00:07:17.740 --> 00:07:24.480
So other things we're working with we'll never make it to the product, but some of them you might see in two, three, four releases from now.

00:07:24.480 --> 00:07:28.451
We'll never make it to the product, but some of them you might see in two, three, four releases from now.

00:07:28.451 --> 00:07:42.744
Uh, so we try to be a little bit ahead of the um, you know, ahead of the, the game and um, and at the same time, you know when we have you know if there is something like if there's a fire burning, like we have these, you know, major performance issue or something, then they install men's on deck.

00:07:42.744 --> 00:07:50.482
So we, you know some of our folks are some of the best folks we have in our organization, so they go in and try to fix whatever needs to be fixed.

00:07:50.482 --> 00:07:54.387
That's kind of the charter of what I do.

00:07:55.771 --> 00:08:05.170
You're the innovative firefighters, so you're working on keeping things moving forward, but when there's a fire, you're the special reaction team that jumps into working with it.

00:08:05.170 --> 00:08:05.416
That's a fire?

00:08:05.416 --> 00:08:06.725
You're the special reaction team that jumps into working with it.

00:08:06.725 --> 00:08:22.374
That's a big responsibility and I'm interested to hear if you know some of the things we just talked about with innovation and how fast it's coming out, how to plan three or four releases ahead, because the way technology is moving, we don't know what tomorrow will bring in a sense.

00:08:22.374 --> 00:08:24.480
We don't know what tomorrow will bring in a sense.

00:08:24.480 --> 00:08:32.010
But to go back to the one big thing and I had mentioned it just in the previous episode, I think that came out of it is we have a lot of features and functionality.

00:08:32.010 --> 00:08:38.428
I think this is across the board and it's stemmed from conversations during some of the sessions and also some of the networking events.

00:08:39.301 --> 00:09:09.157
We have a lot of features and functionality within the application and it's it's great to say that we have these features and functionality within the application and it's great to say that we have these features and functionality a lot of us that work with it from the partner point of view, and this is the responsibility of the community, the partners, and it's not a fault with Business Central, because Business Central to me it's been my life and I'm a super fan of it and I realized in conversation is we have all these features and functionalities and I think what's being missed in some cases is how to apply it in the real world.

00:09:09.157 --> 00:09:19.866
So we have features and functionality that are added, but what is a good user story for how to use the features and functionality and, more importantly, when to use it?

00:09:19.866 --> 00:09:30.100
Because in some cases, you could set something up one way or set it up another way or use a different part of the application to help make for a better implementation.

00:09:30.100 --> 00:09:40.395
So I think that was a big takeaway that I had from some of the sessions, because the sessions themselves did have good user stories for when to use the features and functionality.

00:09:40.395 --> 00:09:44.667
And that's what I realized like ah, this is.

00:09:44.667 --> 00:09:48.186
It was like an aha for me of it's not just the lateral.

00:09:48.186 --> 00:09:49.509
We can do this.

00:09:49.549 --> 00:09:50.693
Now we have an AI agent.

00:09:50.693 --> 00:09:52.780
We have, you know, project orders.

00:09:52.780 --> 00:09:53.282
We have this.

00:09:53.282 --> 00:09:53.844
It's okay.

00:09:53.844 --> 00:09:55.567
Well, now you have an AI agent.

00:09:55.567 --> 00:09:56.912
This would be a good case.

00:09:56.912 --> 00:09:59.865
When to use the AI agent, this would be a good case.

00:09:59.865 --> 00:10:04.572
When to use a production order, this would be a good case to use an assembly order as such.

00:10:06.080 --> 00:10:06.875
So I think that's something.

00:10:06.875 --> 00:10:16.168
So I'm glad to hear that, because that kind of so, from the Microsoft side, we will ship some AI-based features.

00:10:16.168 --> 00:10:17.091
We'll keep doing that.

00:10:17.091 --> 00:10:28.388
But I think very Personally, I think very quickly, we'll be somewhat I don't want to say limited, because there's tons of things we can do.

00:10:28.388 --> 00:10:42.350
But the real value back to your point, christophe, before the real value will come from the partner channel, because we will never implement an AI feature which is industry-specific.

00:10:42.350 --> 00:10:44.847
But that's, I think, where the real value is.

00:10:46.221 --> 00:10:58.664
If you're working, I don't know, in construction, business or wineries or whatever, I'm sure there are tons of scenarios there that can leverage AI and that will need to come from you guys, that will need to come from the community and the channel.

00:10:58.664 --> 00:11:08.562
Our hope is that at a conference like this one, when you see what others are doing, get inspired, even if it's not.

00:11:08.562 --> 00:11:17.686
You might not be your own domain or your own industry, but you can inspire, say, okay, they are doing that, maybe I can do, maybe that could somehow translate to my domain, to my customers.

00:11:17.686 --> 00:11:21.530
You know what they are doing and the solutions I'm working on somehow.

00:11:21.530 --> 00:11:22.611
So that's you know.

00:11:22.611 --> 00:11:34.207
I think that's one of the great thing with these conferences, that too, if that type of osmosis can happen, then then that I think that's great, and that's how we will, you know, be, you know, be successful, you know all together.

00:11:35.301 --> 00:11:37.668
No, absolutely, and that that was my takeaway from that.

00:11:37.668 --> 00:11:52.686
It's with right, along with what you were saying is is it is us to be able to have that good user story, like you said, because you have the features, you have the functionality and it's up to the community of almost how to apply it or to come up with the ways to apply it for specific functions.

00:11:52.686 --> 00:11:58.571
Because we all know, even with what we do downstream from what you with the product, it's a challenge.

00:11:58.571 --> 00:12:04.183
You can't have something that solves everybody without a little change and maybe a configuration.

00:12:04.183 --> 00:12:17.116
You know even some people use variants, some people don't right, but the functionalities in there and how you use it is all part of the implementation, which is good you had mentioned you work with the implementation.

00:12:17.116 --> 00:12:29.995
We can talk about some firefights afterwards, but with technology moving so fast and technology changing, how do you plan three or four releases out?

00:12:29.995 --> 00:12:34.448
Do you have more detail for the next release and then three or four releases out?

00:12:34.448 --> 00:12:36.139
You have sort of a broad stroke desire.

00:12:39.822 --> 00:12:45.484
Yeah, so we have, as you know, we have a six-month cadence, so we plan at six-month cadence.

00:12:45.484 --> 00:12:48.065
We plan at minimum six months ahead.

00:12:48.065 --> 00:12:54.207
But still, I would say we still have a quite agile process.

00:12:54.207 --> 00:13:06.994
We need to make some kind of plan because we need to tell everybody what's going to be in the next release.

00:13:06.994 --> 00:13:25.326
But, that said, we still have a little bit of wiggle room to modify the plan in the six-month period Because, again, we have a pretty successful, I would say, agile process.

00:13:25.326 --> 00:13:26.471
So that's for what already is planned.

00:13:29.167 --> 00:13:38.056
But we never plan, we don't do detailed planning more than six months ahead, because you know, we realize this is the big learning, I think, in our industry.

00:13:38.056 --> 00:13:41.929
Like you know, these waterfall models, they just don't work right.

00:13:41.929 --> 00:13:48.164
So you know, whatever you plan beyond six months probably is not going to happen or it's going to look totally different.

00:13:48.164 --> 00:13:50.581
Yeah, but the world is changing Now.

00:13:50.581 --> 00:13:54.629
The world is changing so fast that there's literally no point in doing that.

00:13:54.629 --> 00:14:07.264
No, I mean so that's, you know, overall, from a BC engineering team standpoint, in particular in my team, you know we do a lot of experimentation and prototyping.

00:14:07.264 --> 00:14:11.346
As I was mentioning before.

00:14:11.346 --> 00:14:15.746
Some of it don't make it to the product or maybe not yet.

00:14:16.642 --> 00:14:22.807
We have some things in a drawer that we haven't had for a while.

00:14:22.807 --> 00:14:29.029
We have tons of ideas and things we could, things we could do, but we choose not to do because we prioritize other things.

00:14:29.029 --> 00:15:01.106
And you know, one of the things I'm you know, I sometimes have some interesting conversation with my peers is, you know, okay, I have this thing which I really wanted to get in the product and, you know, depending on what other priorities there is, we can have interesting discussions about it, right, but you know, and but there's, you know, in the end it's all matter of prioritizing again things against each other, and and you can say, there are, there are always things that would be, would come on top, things like security.

00:15:01.106 --> 00:15:03.821
You know, they're like priority zero.

00:15:03.821 --> 00:15:09.033
With any security things we need, any security work always take precedence.

00:15:09.139 --> 00:15:12.610
Then there's things like compliance that we need also to do.

00:15:12.610 --> 00:15:18.808
So these are the things that are not negotiable, so they're always on the top of our backlog.

00:15:18.808 --> 00:15:25.167
And then after that, everything is a question of you know what we want to prioritize.

00:15:25.167 --> 00:15:38.980
That everything is question of you know what we want to prioritize and when we try to do, is we so at the leadership, leadership team level, we, we try to set some strategic goals for the product.

00:15:38.980 --> 00:15:44.481
Uh, you know um and uh.

00:15:44.481 --> 00:15:47.051
Then we try to align the backlog and or we execute on this strategy you know uh, afterwards in the d.

00:15:47.051 --> 00:15:49.239
So that's more of a detailed planning of it.

00:15:50.000 --> 00:16:02.202
You must have the best job to be able to create some ideas and like maybe we should do this next or we have some little bit of time.

00:16:02.202 --> 00:16:08.049
Let's try to scoot this in there and be creative as possible.

00:16:09.841 --> 00:16:13.649
It's a really great job in that sense that you know you get to.

00:16:13.649 --> 00:16:26.705
But you know I mean, okay, I make it sound, you know, maybe a little more romantic than it is, because you know it's not like we just spend all time prototyping and then you know having fun and you know whatever next to the product.

00:16:26.705 --> 00:16:28.467
So we do have.

00:16:28.467 --> 00:16:37.306
You know, I can't go and spend all my resources on some things which are not relevant for the product, so these things need to be to some extent relevant to the product.

00:16:37.306 --> 00:16:47.791
So right now we are doing a lot of things around AI because that's our, you know, number one strategic goal at the moment.

00:16:47.791 --> 00:16:50.966
I can share a little bit of what we're working on.

00:16:50.966 --> 00:16:57.774
I mean, some of it is confidential, but I can share the part which is not.

00:16:57.774 --> 00:17:02.309
So we're doing some more experiment with a page scripting thing.

00:17:07.982 --> 00:17:17.039
You can't even that right there you just lost me at that, because I am the I don't want to say the biggest, but one of the biggest fans of page scripting.

00:17:17.160 --> 00:17:18.846
So, let's talk about some of the things you have.

00:17:18.846 --> 00:17:20.707
I will tell you what I love about page scripting.

00:17:20.707 --> 00:17:39.529
I saw the roadmap and I wish that what was listed on the roadmap, like you, could fast forward everything, because I did two, uh, regional sessions on it and I was shocked that I don't even want to interrupt you on this, but I I had to because you, you hit like a trigger for me.

00:17:39.529 --> 00:17:44.443
Uh, I was shocked that no one in the room knew of the page scripting.

00:17:44.443 --> 00:18:08.144
But after the session both of those sessions ran over and everyone had so many visions of how they could apply page scripting from the conversation and then also at Directions, we did a lengthy page scripting session that encompassed a little bit more than the page scripting use for user accepting tests, but some other things that you could do with it.

00:18:08.185 --> 00:18:10.173
So keep going with your list, but we can definitely.

00:18:10.173 --> 00:18:13.406
That's a long-term, that's a long-term favorite man.

00:18:14.309 --> 00:18:24.315
You know, it's like what I usually say when we discuss priorities there's you know, there's hardly any feature.

00:18:24.315 --> 00:18:25.403
People will literally.

00:18:25.403 --> 00:18:39.542
So I showed that you early, I think tech days, even before it was shipped or it was the prototype, and at that time I said, well, this is something that might or might not make it to the project man.

00:18:39.542 --> 00:18:52.208
The feedback I got was totally overwhelming and people literally at conferences, like direction, they would stop me in the hallway and ask me when are you going to ship the page scripting?

00:18:52.208 --> 00:18:58.171
I never experienced that with any other thing we put in the product.

00:18:58.171 --> 00:19:04.771
So that's clearly something that people see a lot of potential in.

00:19:04.771 --> 00:19:14.362
So the first thing we need to do is to remove this preview tag.

00:19:14.362 --> 00:19:18.204
So we want to, because it still has a preview tag, so we need to remove that.

00:19:18.204 --> 00:19:24.028
But that's just a matter of it's not because it's not production quality, but there's a few things around you know.

00:19:24.028 --> 00:19:30.193
You know complying things around the, you know accessibility and documentation.

00:19:30.193 --> 00:19:32.516
I think like that, get in the control.

00:19:33.516 --> 00:19:35.298
Is that what the preview tag is?

00:19:35.298 --> 00:19:47.380
Because I have had the question on what preview means for a feature in the product because there have been other features that had the preview tag.

00:19:47.380 --> 00:19:54.527
Yes, and I was asked in a session what does the preview tag mean?

00:19:54.527 --> 00:19:56.799
So maybe, before we continue with that, not to interrupt you again, which, like I said, you have me super excited now.

00:19:56.799 --> 00:20:03.423
So I'll probably interrupt you on the pay scripting, but can you explain the significance of the preview tag and what it means for the feature within the product?

00:20:03.544 --> 00:20:03.904
question.

00:20:03.904 --> 00:20:09.352
So the preview tag essentially uh means several things.

00:20:09.352 --> 00:20:12.316
So it means first of all, there's limited to no support.

00:20:12.316 --> 00:20:16.188
Uh meaning, like you, you can use the feature.

00:20:16.188 --> 00:20:23.641
It's mostly when we put a feature out there with a purview tag means that we want to get a feedback on that feature before we actually put it in production.

00:20:23.641 --> 00:20:27.791
But but there's no guarantee that we'll ever ship the feature.

00:20:27.791 --> 00:20:28.181
We can't.

00:20:28.181 --> 00:20:38.469
You know if the feedback is, you know, very negative, or we realize there's too much work, or you know it's just, you know, not good enough, we can always pull it back.

00:20:38.469 --> 00:20:44.000
I don't recall any example where we ever done it, but this is a possibility.

00:20:44.000 --> 00:20:48.647
We could potentially pull the whole thing back and say, okay, we're not going to do it anyway.

00:20:48.647 --> 00:21:01.068
So that's one of the meaning of the preview, of the preview tag Limited support to no support.

00:21:04.944 --> 00:21:17.186
And there might be some things, you know, which are not quite finished and polished, although we tend to have a pretty high bar anyway, even though we put the preview tag on.

00:21:17.186 --> 00:21:21.045
But you know there are such a thing as we call it in terms of the Microsoft tax.

00:21:21.045 --> 00:21:24.223
You know all the features we release, they need to be accessible.

00:21:24.223 --> 00:21:27.107
You need to go through security review.

00:21:27.107 --> 00:21:31.433
That we have to do anyway because you know, obviously it has to be secure.

00:21:31.433 --> 00:21:37.162
Even though it's preview, we need it to be fully documented.

00:21:37.162 --> 00:21:39.205
And then there's things like version.

00:21:39.205 --> 00:21:40.147
I'll give you an example.

00:21:40.729 --> 00:21:53.924
You know, with the page scripting, we're discussing whether, if we make it production ready and remove the preview tag, we have this YAML format behind it.

00:21:53.924 --> 00:22:01.237
We've been discussing so far we have been free to make changes to it.

00:22:01.237 --> 00:22:01.859
We can change.

00:22:01.859 --> 00:22:05.987
Tomorrow we can decide to change whatever format we save the scripts in YAML it.

00:22:05.987 --> 00:22:09.412
Tomorrow we can decide to change whatever format we save the scripts in YAML.

00:22:09.412 --> 00:22:17.528
And then if we break your scripts, we don't care, because it's preview.

00:22:18.108 --> 00:22:21.593
You might have tons of scripts or they won't work because we changed the format.

00:22:21.593 --> 00:22:40.490
That's just the way it is when it's preview, whereas when we put it in production then we can't do that anymore, meaning we'll have to, at minimum, either document the format, which is part of the feature, or we need to be backward compatible with the previous uh, the previous um versions of the format, right?

00:22:40.490 --> 00:22:42.213
Or have some kind of migration path.

00:22:42.213 --> 00:22:50.207
You know, one way or the other, you know you, you might have to reload the script and save it again or things like that, to update it to the next moment.

00:22:50.207 --> 00:22:54.531
So all these things need to be in place where things are not in preview anymore.

00:22:56.362 --> 00:23:02.060
Yeah, I think where page scripting is one of the favorites across the board, it's certainly.

00:23:02.060 --> 00:23:14.362
For me, it's a solution that solved a problem that spans across all different areas of business and spans across a partner and as well as a client and as well.

00:23:14.362 --> 00:23:37.997
So those kinds of things, you know, although it doesn't seem like it's, you know, not like AI driven, you know co-pilot driven, yet but it's such a great feature that anybody can pick it up and use it for, you know, to solve a problem or use it to simplify a process or some testing, things like that.

00:23:37.997 --> 00:23:42.632
And, again, it's usable across all business aspects.

00:23:42.632 --> 00:23:44.626
That's probably one of my favorites, for sure.

00:23:45.840 --> 00:23:47.929
Oh it's, you can't stop with me.

00:23:47.929 --> 00:23:49.527
It was 2023.

00:23:49.527 --> 00:23:51.406
I mentioned it at Directions.

00:23:51.406 --> 00:23:58.368
Duilio and I did a session together on PageSkip and we did mention when you introduced it I think it was June 2023 at BC Tech Days.

00:23:58.368 --> 00:24:21.530
Ever since I saw that, I've been on board with it and just the uses of it are creative, from documentation to training materials outside of the user acceptance testing, and I've also talked with some that they got creative on ways to enter data because you can change the YAML file so that they automated doing some tasks.

00:24:22.382 --> 00:24:31.930
This is another reason why we have kept it in preview for so long, because you know, we knew from the very beginning that there was a wide range of possible usage of it.

00:24:31.930 --> 00:24:47.990
And you know it's both a blessing and a curse, because you know, if you start saying this is something you can use for documentation or troubleshooting, then you also need to support the scenarios and test it for that.

00:24:47.990 --> 00:25:11.813
So all of a sudden, the range of potential utilization expands, which needs more testing for us, more support, whereas if we say, okay, the scope of this is end-user testing, so it's a much more limited scope and allows us to say, okay, if you use it for anything else, that's at your own risk.

00:25:11.813 --> 00:25:20.054
Right, we don't prevent anybody to use it for other things, which I can hear you've been, you know, diligently doing, which is fine, you know.

00:25:20.054 --> 00:25:33.776
But we might, you know, we might you know, if we come up with, hey, I have this scenario when I do documentation or record, troubleshooting or whatever, we might say this is not something we support at this stage.

00:25:35.541 --> 00:25:38.519
So this is another reason why we have the preview tag.

00:25:38.519 --> 00:25:42.371
So we just, you know I can share a bit of news with you.

00:25:42.371 --> 00:25:46.777
Just, you know, I can share a bit of news with you.

00:25:46.777 --> 00:25:52.444
So we've been very focused on the user and user testing partner.

00:25:52.444 --> 00:25:54.230
That's basically how we basically presented that feature.

00:25:54.230 --> 00:26:02.040
But I think we're shifting the focus a little bit now to be more partner-oriented, because we realize, you know, partners are using it also a lot.

00:26:02.040 --> 00:26:03.253
Partners are using it also a lot.

00:26:03.253 --> 00:26:12.286
So we have we are taking a broader perspective on the page scripting than just the user.

00:26:13.623 --> 00:26:23.503
I'm so happy to hear that and, again, as I agree with what you're saying, it's the use, as people do get creative, but the ability to test.

00:26:23.503 --> 00:26:29.431
And is there anything that you can share from the roadmap that will be out soon, or is it all?

00:26:29.694 --> 00:26:30.039
confidential.

00:26:30.039 --> 00:26:33.611
I can put my top 10 wish list, if you want I want that, okay.

00:26:34.641 --> 00:26:42.508
Well, if you can sneak in the, you don't have to say anything, but if you can sneak in the editing of it, I can tell you what we're experimenting with, and again it's the disclaimer.

00:26:42.528 --> 00:26:43.874
It might not make it to editing of it something which is not which.

00:26:43.874 --> 00:26:46.643
I can tell you what we're experimenting with, and again it's the you know disclaimer.

00:26:46.643 --> 00:26:49.229
It might not make it to the product at all.

00:26:49.229 --> 00:27:01.163
But some of the ideas we have was you know um, is to somehow, you know, imagine when you, when you do your step, you could somehow involve an lm at some stage.

00:27:02.285 --> 00:27:07.612
And I'm not gonna say anymore you and I would be talking about that.

00:27:07.612 --> 00:27:13.905
I think we had spoken to others as well about like our wish list and I think it was around that.

00:27:13.905 --> 00:27:17.653
So, yes, I that would be fun mine.

00:27:17.673 --> 00:27:35.630
Mine, to start, is you can edit the yaml file and load it would be to be able to edit the script while it's there, to delete a step, to add a step, to reorganize a step, because sometimes I'll go through a script scripting, then I want to put a conditional or a validation, and then the conditional I forget to put the end in.

00:27:35.630 --> 00:27:45.494
So you know I have to either edit the yaml file or I have to record over again and also merge two scripts.

00:27:45.494 --> 00:27:53.347
I understand that the concept of the scripts is to have small use cases for users, but the ability to maybe take two of them together.

00:27:53.347 --> 00:28:04.320
I know we can use replay, which I think was a great addition as well to be able to do a wide range of testing, and now with AL Go you can also use page script tests and there is like it's just.

00:28:04.320 --> 00:28:07.284
I have to slow down my excitement, I'm sorry.

00:28:07.284 --> 00:28:08.566
I feel like a kid.

00:28:08.566 --> 00:28:09.606
I lose focus here.

00:28:10.067 --> 00:28:11.509
All of these things are on the backlog.

00:28:11.509 --> 00:28:16.835
So there you know, all of these features are obvious, so to speak.

00:28:16.835 --> 00:28:21.861
So you know everybody wants them, so they will.

00:28:21.861 --> 00:28:22.041
You know.

00:28:22.041 --> 00:28:23.288
I'm pretty confident they will make it to the product.

00:28:23.288 --> 00:28:28.631
I can't tell you exactly when and how we'll prioritize it, even for the next upcoming six months.

00:28:28.631 --> 00:28:32.086
I think we're still discussing what's going to be, but there's going to be some things.

00:28:32.086 --> 00:28:38.632
It might be depending on how we allocate resources.

00:28:38.632 --> 00:28:49.269
It might be a little bit disappointing in that sense that it might be the only thing we do is remove the preview tag, so that's like the most boring version of it.

00:28:49.269 --> 00:28:54.367
But that means that that that means that the next release we can you know all the resources we'll be using on page.

00:28:54.388 --> 00:29:10.689
We will be for new features right we will be able to also add some new stuff for um, we have a, you know, peter boring, which I'm which you know is the PM responsible for page scripting, and he's managing that backlog and he's doing a great job at it.

00:29:12.761 --> 00:29:13.886
No, I understand it's not easy.

00:29:13.886 --> 00:29:15.707
There's a lot that goes into the product.

00:29:16.643 --> 00:29:23.627
There's so much demand and so much usage of it, so we'll keep working on it.

00:29:23.627 --> 00:29:24.911
I'm very happy to hear that.

00:29:25.010 --> 00:29:32.372
Thank you, so I interrupted you when you were talking about some of the things that you were working on.

00:29:32.372 --> 00:29:33.636
You jumped on the page scripting, but it's almost.

00:29:33.636 --> 00:29:34.058
I almost feel it was.

00:29:34.058 --> 00:29:40.593
You know, it's something that just took me for a side rail here because of my passion for that.

00:29:40.593 --> 00:29:43.490
I could talk about that every day in every conference with everyone.

00:29:43.490 --> 00:29:47.673
So what are some of the other things that you have?

00:29:47.673 --> 00:29:58.106
The backburner, the pipeline or some of the cool things, and AI within PageScripting would be cool too, because for it to be able to dynamically change yeah, real-time response.

00:29:59.080 --> 00:30:05.030
Talking about it just a hint right Some of the things you can try, some stuff with patch scripting and AI.

00:30:05.030 --> 00:30:07.115
Today Let me tell you how.

00:30:07.115 --> 00:30:14.413
I've done some experiments with it and it's actually there's some potential there.

00:30:14.413 --> 00:30:31.287
So here's the thing LLMs are really really good at generating structured output, especially if you use few-shot prompting and that kind of this kind of techniques where I'm telling them you know this is the kind of output they want.

00:30:31.287 --> 00:30:54.347
So you can do things like you know, take a Yammer recording you know, put, put it into the prompt and ask the LLM to you know, generate more tests doing other things and output that particular format and give examples of recordings you have, and actually that works pretty well.

00:30:54.347 --> 00:30:57.095
So you can do cool stuff.

00:30:57.922 --> 00:30:59.980
I'm trying that after this conversation.

00:30:59.980 --> 00:31:03.851
I assure you I am trying that because that is.

00:31:03.851 --> 00:31:08.744
I've used LLMs going the other way to create user documentation, not to create tests.

00:31:08.744 --> 00:31:10.226
I can honestly say I didn't try that.

00:31:11.560 --> 00:31:13.428
So go explain with it because you know so.

00:31:13.428 --> 00:31:25.486
First of all, you know, llms are really really good at generating structured output, and especially if it's things like they have seen a lot of like there's a lot of YAML on the internet.

00:31:25.506 --> 00:31:45.873
There's a lot of JSON, and JSON is even better because these days, I'm sure you know but these GPT models they even train specifically to be good at generating JSON, so they're really good at it, but they're doing a pretty good job with YAML, which is not too far from it anyway.

00:31:45.873 --> 00:31:49.680
So try to play around with that.

00:31:49.680 --> 00:31:51.124
That's fun.

00:31:51.906 --> 00:32:00.113
I will try that and if I have some issues, I'll use the new feature for converting JSON to YAML and vice versa.

00:32:00.113 --> 00:32:17.000
So I will do some tests with, as you had mentioned, if there's not a lot of YAML with the structure, maybe trying a script with YAML converting it to JSON, telling it to make some changes, then converting it back to YAML to C no-transcript.

00:32:17.000 --> 00:32:17.715
What do you mean?

00:32:17.715 --> 00:32:18.198
What do I use?

00:32:18.450 --> 00:32:18.872
Use a chat.

00:32:18.872 --> 00:32:20.297
Gpt Copilot.

00:32:20.538 --> 00:32:22.938
Use a I use it depends what I'm working on.

00:32:22.938 --> 00:32:26.299
I use Copilot for coding and such.

00:32:26.299 --> 00:32:28.096
I'll use GitHub Copilot.

00:32:28.096 --> 00:32:31.997
I'll have files open in the editor and then I'll choose the different models.

00:32:31.997 --> 00:32:39.973
I found Cloud Sonnet with AL seems to work better, yeah, and then the other models work, depending on what I'm going to work with.

00:32:39.973 --> 00:32:42.961
But I think with the YAML I'll try to see what Claude Sonnet does with creating the tests.

00:32:43.000 --> 00:32:46.576
You can try to try Azure AI Foundry if you haven't tried it.

00:32:46.576 --> 00:32:50.636
Azure AI Foundry I haven't worked with it that much.

00:32:51.451 --> 00:32:52.476
There's only so much I can work with.

00:32:52.476 --> 00:32:58.133
I've been working with some of the LM for local language models primarily other than GitHub.

00:32:58.333 --> 00:33:03.022
GoPilot Marcel wrote a blog about how he used Azure AR Foundry.

00:33:04.992 --> 00:33:05.757
It's just a UI.

00:33:05.757 --> 00:33:31.160
It's a front-end too, but the thing that's good about it is that it can tweak some of the parameters in the UI, which is one thing, but also it has actually a drop-down box where you can ask specifically generate results in JSON, and that will leverage the OpenAI API, because it's supported at the API level actually.

00:33:31.160 --> 00:33:42.502
So what it does is actually when it sends the request, there's a flag you can set in there in the request you send that says to the ELM the response as, as a structure, jason, and it will.

00:33:42.502 --> 00:33:43.875
You will get a Jason back.

00:33:43.875 --> 00:33:47.615
You have to tell.

00:33:47.695 --> 00:33:54.919
Funny enough, in the in the prompt you have to say it has to be in Jason, even though you have the run, but whatever, otherwise you'd get an error.

00:33:54.919 --> 00:33:56.623
But that's you know.

00:33:56.623 --> 00:34:01.859
When you use it directly from the API, you don't have to do that, but in Azure AI Foundry, somehow you have to.

00:34:01.859 --> 00:34:09.184
So it works really really well with the so-called few-shot examples.

00:34:09.184 --> 00:34:24.041
There's also a UI for that in Azure AI Foundry where you can enter some examples of what you want, the format you want as a response, and that works extremely well if you want to play around with it.

00:34:24.891 --> 00:34:25.835
I'm putting that on the list.

00:34:25.835 --> 00:34:29.481
I will use Azure AI Foundry.

00:34:30.572 --> 00:34:31.456
It's a mouthful for me.

00:34:33.235 --> 00:34:34.210
But I will try that as well.

00:34:34.210 --> 00:34:48.277
I'm super excited and I appreciate the idea suggestions for testing with page scripting with some LLMs to help create additional tests.

00:34:48.277 --> 00:34:49.498
It's yeah, that's exciting.

00:34:49.498 --> 00:34:50.400
So what is?

00:34:50.621 --> 00:34:55.094
LLMs are very good at generating large you know large datasets.

00:34:55.094 --> 00:35:05.514
It's you know if you need to generate large data set for whatever purpose, you know LLM is really good at that For testing data.

00:35:05.514 --> 00:35:08.458
That's the other experiment that I wanted to try with it.

00:35:09.690 --> 00:35:11.056
Again, it's unfortunate.

00:35:11.056 --> 00:35:22.907
We have all this great technology and there's so much that I want to play with and there's so much that I want to do that it's a challenge for getting some of that information.

00:35:22.907 --> 00:35:27.737
So I will also want to play with my idea with it, as you had said.

00:35:27.737 --> 00:35:46.195
Mentioning test data, because I think several, even maybe a year or so ago, I had a conversation on one of the podcasts about having open source test data, because we have the Contoso data now, now used to be the Kronos data for the applications, but it's not good for every scenario.

00:35:46.195 --> 00:35:56.731
But now if we could have LLMs create test data following the structure of Business Central, use paid scripting to load the data or configuration packages.

00:35:56.731 --> 00:36:00.603
However, whatever is a quick and easy way to do it.

00:36:00.603 --> 00:36:03.494
Configuration packages would be a little more standard.

00:36:03.494 --> 00:36:10.335
I think it would be a great experiment for it to create test data for customers, sales, orders, items.

00:36:10.335 --> 00:36:17.115
That way you could get a volume, and you know I'm an expert at making bicycles and coffee machines.

00:36:18.132 --> 00:36:20.914
So I'll tell you another interesting anecdote about that.

00:36:20.914 --> 00:36:27.257
So you've seen our sales order agent, right, we demo at directions, right.

00:36:27.257 --> 00:36:37.376
So when we started testing it we realized we got a pretty good accuracy in some of the tests we had.

00:36:37.376 --> 00:36:39.335
And so the scenario was send that mail and order some chairs or some furniture.

00:36:39.335 --> 00:36:40.278
And tests we had and it was like this.

00:36:40.278 --> 00:36:43.369
So the scenario was you know, send that mail and order, you know, some chairs or some you know furniture and a coffee machine.

00:36:43.369 --> 00:36:47.619
So basically, the demo data we have in BC, right.

00:36:50.010 --> 00:36:51.476
And it was working actually pretty well.

00:36:51.630 --> 00:37:01.619
And then, you know, some people tried some other scenario with some other data and then it was all of a sudden accuracy dropped significantly and at the start we couldn't really understand why.

00:37:01.619 --> 00:37:10.141
How come, you know, if we order chairs and stuff, that works fine, but if we order something else that doesn't work?

00:37:10.141 --> 00:37:25.034
And then when we realized, you know, because we went and did some experiment, you know totally outside of BC, just as you know, we chat GPT it's like we realized you know our test data in BC, just as you know, chat GPT is like we realize you know our test data in BC.

00:37:25.034 --> 00:37:29.414
They are out there, they are on the internet and LLMs have seen it.

00:37:29.414 --> 00:37:33.958
You know this means they know about the Amsterdam share, they know about the.

00:37:33.958 --> 00:37:39.356
You know all the things we have in the BC database because it has been around for so many years now.

00:37:40.715 --> 00:37:43.976
And you know, know, lms are trained on on the internet, so they have seen that data.

00:37:43.976 --> 00:37:47.831
So they are yeah, they are pretty good at recognizing it.

00:37:47.831 --> 00:38:01.784
Um, so you know, that's one of the interesting things about you know, uh, you know interesting side effect of training on the content of the internet, that on certain things.

00:38:01.784 --> 00:38:16.139
So what we had to do was so we created back to your point, bernd we created actually a test set which we don't publish, but we created new test data, also using NLM actually.

00:38:16.139 --> 00:38:30.036
So basically, we created a toy shop with children, toys and all the things, which is totally different than what we had to test our feature, and that's what we're using to test our AI feature, and we make sure we don't put that out there.

00:38:30.472 --> 00:38:50.480
so, lms, don't come buy this data and get biased on this track it does know it because I did a blog post on bulk image import to change and I did go and search and I used copilot and said create me an image of an amsterdam chair.

00:38:50.480 --> 00:38:53.597
And it looked like the blue or whatever color.

00:38:53.597 --> 00:39:00.775
I forget the colors of the chairs, but it created similar chairs to the pictures that were in the sample data.

00:39:01.217 --> 00:39:01.797
I'm sure you can.

00:39:01.797 --> 00:39:02.539
I'm sure you can ask.

00:39:02.539 --> 00:39:04.442
You know I didn't, I didn't try it, but I'm sure you can ask.

00:39:04.442 --> 00:39:05.003
You know what?

00:39:05.003 --> 00:39:06.545
What are?

00:39:06.545 --> 00:39:08.096
Go go chat GPT and ask what?

00:39:08.096 --> 00:39:11.000
What are the chairs in business central?

00:39:11.000 --> 00:39:12.536
And I'm sure it will come up with a list.

00:39:12.536 --> 00:39:18.351
I'm pretty sure that works.

00:39:18.391 --> 00:39:21.574
It's it, I will try that, but I'm pretty sure that works.

00:39:21.574 --> 00:39:23.916
This is all just amazing.

00:39:23.916 --> 00:39:30.481
We've gone from pen and paper just in my lifetime.

00:39:30.481 --> 00:39:54.472
From pen and paper to a computer or a system, an LMM I don't even know what you refer to it, as it's almost becoming, I feel like I'm talking to a human, sometimes with the information that it gives back in the conversations, even now, with a lot of the voice chats that you can have with some of the applications, and I just can't believe in my lifetime what I've changed and the the generations now that are growing up with it.

00:39:55.335 --> 00:39:58.159
it's all they know it will be all they know to.

00:39:58.159 --> 00:40:06.989
That would be the day, brad, about using Copilot voice in Business Central one day.

00:40:06.989 --> 00:40:09.389
That would be fascinating.

00:40:09.389 --> 00:40:18.018
When he talks back to you, that's going to be amazing that's not really hard, that's not far.

00:40:19.335 --> 00:40:24.001
I'm sure you can, you probably can do that today somehow.

00:40:24.001 --> 00:40:29.034
You know, I mean you can get access to the.

00:40:29.034 --> 00:40:31.115
You know you could write an add-in that does that somehow.

00:40:31.115 --> 00:40:39.384
I mean it's just scaffolding, because these services, you know, all there is is, you know they have these text to speech and speech.

00:40:39.384 --> 00:40:52.103
You know models which are not lms model, all the models, right, uh, and they're just, you know, it's just wiring them, it's just plumbing in the end, right, you just wire them to the next thing.

00:40:52.103 --> 00:40:53.568
Well, and then that works.

00:40:53.688 --> 00:41:07.460
Actually, we did, we, we, um, I didn't, I didn't manage to show that because when I showed Petscript now we're back to Petscript when I showed Petscripting, you said it was in 2023, so I take your word for it.

00:41:07.460 --> 00:41:12.737
You know, michael from my team, we implemented.

00:41:12.737 --> 00:41:14.682
I didn't implement that Michael from my team did.

00:41:14.682 --> 00:41:41.443
We actually had a prototype where we had the wild whisper, which was back then, the speech-to-text protocol, into that and you could basically talk to BC and say, hey, do this and that, and it would generate a page scripting, script and execute it.

00:41:41.965 --> 00:41:43.369
Dude, that's awesome.

00:41:43.369 --> 00:41:45.659
Can I ask?

00:41:45.659 --> 00:41:49.074
I'll ask you this question and you don't have to answer it.

00:41:49.074 --> 00:41:54.599
Obviously you don't have to answer it, but obviously if it's confidential, don't answer it, but if it's a theory, you talk.

00:41:55.914 --> 00:42:03.059
I see ERP software becoming faceless, and what I mean by faceless is the user, the.

00:42:03.059 --> 00:42:06.539
You'll have the data layer, the data layer you know separate that.

00:42:06.539 --> 00:42:32.094
You have the ui, the business logic and the data layer where you can go to an implementation, in essence, have the ui created and have a core set of actions that you use to create it to even to the point where you're using the voice because I know you could do it now with email with a sales order agent is getting there, where some of the data input will be just specifically what you need for an implementation from a core set of actions.

00:42:32.094 --> 00:42:51.201
Or even if a salesperson's in a car, they had a conversation and they could say, create a sales order for Chris for an Amsterdam chair and a sport bicycle with these rims and give him a 20% discount, and automatically the sales order is created, is put into the process and system.

00:42:51.751 --> 00:43:02.434
I have seen AI have the ability and someone demonstrated for me on Business Central to be able to find the actions on the page, and it's outside of Business Central, it's not something within it.

00:43:02.434 --> 00:43:04.833
This is how creative people are getting where.

00:43:04.833 --> 00:43:09.338
It actually was able to find the actions and the buttons on the page and do something.

00:43:09.338 --> 00:43:14.539
So my thought was now that's we won't have a standard UI in that sense.

00:43:14.539 --> 00:43:16.333
Is that a vision?

00:43:17.557 --> 00:43:26.670
Yeah, for sure, there's lots of yeah, so this, you know what you're saying is you know, everything is an agent, basically, right.

00:43:26.690 --> 00:43:26.750
Yes.

00:43:28.572 --> 00:43:38.661
So there's a lot of discussions around that and there surely be I'm sure there'll be a future where we'll have, you know, ai.

00:43:38.661 --> 00:43:47.300
I mean right now, agent is a big thing, uh, and and agents needs don't need to be, you know, you've seen the ourselves already.

00:43:47.300 --> 00:43:59.657
Agent demo, right, we, we keep the human in the loop a lot, like you know, you have to basically approve, uh, what the ai is doing and the agent is doing, and you know many, many of the steps.

00:43:59.657 --> 00:44:05.195
Like you know, when you get an email, you have to, you know, look at the email and say, okay, proceed right.

00:44:05.195 --> 00:44:14.961
And when the agent, you know, creates a sales quote, you get to look at the sales quote before and the email they actually crafted, before it gets sent to the customer.

00:44:14.961 --> 00:44:21.438
So there's, you know, but you know we program these steps right.

00:44:21.438 --> 00:44:27.965
I mean, it's not the nature of LLMs or agents to have the human in the loop.

00:44:27.965 --> 00:44:34.021
We implement it that way and we could just have skipped this.

00:44:34.021 --> 00:44:53.643
But now there's tons of reasons why, at this stage of the technology, and also the maturity of the technology, and also, you know, the maturity of the technician, but also how you know how people psychologically respond to this level of automation, that we want humans to be in the loop, right, uh, and and and but.

00:44:53.722 --> 00:45:00.637
But our, you know uh, jacob, which is our ux uh expert for bctm, he has a great way to talk about this.

00:45:00.637 --> 00:45:23.432
He talks about, you know, you have this dial of things where you know, on one end, if you dial all the way to the right or left, I don't know, you have, you know, human very involved at basically all the steps and the agent is only progressing and executing the different steps, as you know, as, as, as you know, as long as you approve every steps.

00:45:23.432 --> 00:45:40.760
So that's the very, you know, you know, um conservative approach, uh, and then you can, you know, potentially dial all the way, uh to no human in the loop, where the agents are, um, just doing what they're supposed to do and and there's no human intervention.

00:45:40.760 --> 00:45:43.324
So there's also another way to look at it.

00:45:43.324 --> 00:45:46.489
You know people are using the analogy with self-driving cars.

00:45:46.489 --> 00:46:01.320
You know there's these levels level 1, 2, 3, and 4 in the self-driving car witness and people are talking about agents doing the same analogy with, basically, level 4 is the fully autonomous version of it.

00:46:01.320 --> 00:46:04.715
That's right, and so I have no doubt we'll uh, we'll get there.

00:46:05.737 --> 00:46:18.422
Uh, for you know, I, you know it's very, I think it's very hard, I think it'll be presumptuous to try to you know if I try to tell you what the future will look like, but uh, that, because so many things are happening, can go in so many directions.

00:46:18.422 --> 00:46:23.980
But but I think you know if I should venture a guess, there there are, there are a few things that are emerging.

00:46:23.980 --> 00:46:33.940
There will be a certain level of, you know um, you know self, you know autonomous agent.

00:46:33.940 --> 00:46:35.384
There will be a certain number of these.

00:46:35.384 --> 00:46:38.835
Uh, you know how autonomous I think hopefully will be.

00:46:38.835 --> 00:46:42.483
You be depending on what the scenario is, or critical it is.

00:46:42.483 --> 00:46:44.614
You don't want an Asian to run.

00:46:44.614 --> 00:46:47.362
I don't know a nuclear power plant, probably.

00:46:51.112 --> 00:46:55.523
I have a full self-driving vehicle and the car drives better than other people on the road.

00:46:55.829 --> 00:47:04.940
There are things like these, which are a little bit sensitive, like these, which are still a bit sensitive.

00:47:04.940 --> 00:47:20.317
You might, you might, you know, uh, you might agree that some ai, you know, decides when to pull down the shades in your home, you know, just to take another, your rather, you know, uh, you know, harmless, uh example, right, and then I think there'll be a whole bunch of things in between.

00:47:20.317 --> 00:47:31.173
Again, it's not going to be an either, or There'll be something that you will trust the AI to do, and some, you will require more control for sure.

00:47:31.295 --> 00:47:47.811
Yeah, I like the human in the loop and I like the point where you're talking about where you can dial it up because you do have to build for lack of better terms, and again, it's almost like everyone's interacting with ai, like it's, it's, it's a person, but you do have to build up trust so that you can see that it's going to react.

00:47:47.891 --> 00:47:52.327
And I can understand and see a point where you're talking in some cases.

00:47:52.327 --> 00:48:00.804
Now, as I had mentioned, I have a full self-driving vehicle and my daughter was with me and she told me that the car drives better than I do and I feel that it's again it's through a progression.

00:48:00.804 --> 00:48:34.630
So, if you take it, even from the business point of view, with the sales agent, to have the human in the loop gates to where, maybe, as the product or the feature or the agents mature for lack of better terms, now it can be I want to see all emails or I don't want to see emails, unless this or some feature, just to use one of the points you have where the user in the implementation, depending upon what they're working on, can gate it where they feel appropriate, versus every step of the way yeah, you still have some sense of like the ability to pull the levers right.

00:48:34.731 --> 00:48:37.521
I mean, there there's a sense of control.

00:48:37.521 --> 00:48:39.789
But at the same time you have an option.

00:48:39.789 --> 00:48:43.400
Like you know, I'm at this point now where I really don't need to interact.

00:48:43.400 --> 00:48:47.079
I can turn off the human interaction from my side.

00:48:47.079 --> 00:48:54.364
I can still turn it off, but I don't need it to prompt me to decide about something, to go and take action.

00:48:54.364 --> 00:49:00.023
I'm up to a point as a business owner if you're, you know you have a business running Business Central.

00:49:00.023 --> 00:49:10.844
You get to a point where, like, okay, I trusted enough to not have to ask me to get an approval because it does a 99.9% success rate.

00:49:10.844 --> 00:49:17.402
Why do I need to go and interact with it, knowing that it'll do it successfully 99.9% of the time?

00:49:17.402 --> 00:49:19.356
Then I can just turn off the number.

00:49:20.380 --> 00:49:20.704
You know.

00:49:20.704 --> 00:49:24.894
So in the you know early previews we have, you know we have.

00:49:24.894 --> 00:49:26.800
You know it's very conservative.

00:49:26.800 --> 00:49:40.197
It asks you very steps in the way and then when we see that people, when they, when it doesn't take very long, like a few minutes of usage, people go okay, approve, approved, because you know they kind of uh, but, but it's, I mean you're totally right.

00:49:40.197 --> 00:49:43.922
I mean the whole point of it is also to to build some.

00:49:43.981 --> 00:49:45.483
There's psychological things around.

00:49:45.483 --> 00:49:51.164
You know, letting go from the things that you were in control and it's it's important to build.

00:49:51.164 --> 00:50:02.983
You know, as technologists and you know software developers, we need to build that trust in the systems with our users so they, they kind of they can, they can see that uh and that that it's working as expected.

00:50:02.983 --> 00:50:13.137
Another thing we do is that I don't know if you've noticed, but any sales quote or document that has been created by the agent is marked afterwards.

00:50:13.137 --> 00:50:25.938
So if you can go, even if you turned off the reviewing part of it, you can go afterwards and look at the records and you can see that it has been created by AI.

00:50:25.938 --> 00:50:33.958
So you can go and review it even after the fact and say, okay, even if the sales score has been created and the mail has been sent, you can go and say okay, this was created by AI.

00:50:33.958 --> 00:50:35.775
I still want to take a look at it.

00:50:36.719 --> 00:50:43.813
Yeah, yeah, and you can go back and say, okay, maybe I don't trust it again and I can go and turn the checks and balances.

00:50:43.813 --> 00:51:12.315
Just to make sure that I'm comfortable, where you know, if I say, hey, if you can get 99 or 90, whatever, like, if you have that control, then I'm okay to let it do its thing and then not worry about it.

00:51:12.315 --> 00:51:19.856
Maybe I'll check here and there and do quick audits, but I'm comfortable enough that I can let it run autonomously.

00:51:22.159 --> 00:51:38.469
With the agents and as we talked, I mean, I think everything can be an agent and I think I had some conversations at Directions where agents will have specific tasks that do those specific tasks well, just like some individuals may be specialized.

00:51:38.469 --> 00:51:45.351
What I start to think about is cross-stack agents being able to work together.

00:51:45.351 --> 00:51:51.353
So right now we set up an email inbox and the email again to go back to the sales order agent.

00:51:51.353 --> 00:52:06.858
The sales order agent works, but is there a way to trigger and communicate with other agents, maybe within Outlook, word Excel, some of the other Microsoft suites where Copilot is being embedded in agents?

00:52:06.858 --> 00:52:09.523
So now we have one flat stack.

00:52:09.523 --> 00:52:16.824
You can have an agent manager that manages the agents for Business Central and other Microsoft products.

00:52:17.630 --> 00:52:18.010
So that's funny.

00:52:18.010 --> 00:52:22.893
You mentioned that because that's you know, I just got out of a series of meetings exactly on that subject.

00:52:22.893 --> 00:52:32.344
So there's this new standard if you haven't heard of it, you should check it out which comes from Entropic.

00:52:32.344 --> 00:52:41.681
Originally it's called the Model Context Protocol, you know, abbreviated NCP.

00:52:41.681 --> 00:52:43.884
There's a lot of hype around this right now.

00:52:43.884 --> 00:52:51.550
In essence, it's more or less what you described.

00:52:51.710 --> 00:52:58.637
It is interesting because it is a standard, the way it works.

00:52:58.637 --> 00:53:03.724
If you're not familiar with it, it's a really simple standard, right, but it is a standard.

00:53:03.724 --> 00:53:04.824
That's why it's interesting, right?

00:53:04.824 --> 00:53:22.239
Basically, it has a discovery component in it, meaning that you can have an agent or a service or something and basically publish what it can do and can be discovered by a client.

00:53:22.239 --> 00:53:26.449
And it's also dynamic.

00:53:26.449 --> 00:53:32.862
It doesn't have to be, you know, it can change as you go.

00:53:34.010 --> 00:53:41.034
So, for example, let's say you have a web API, that's something you like, and then you can change the API.

00:53:41.034 --> 00:53:55.838
It will still work, right, because the magic is, you know, when you're a client, what you do is that you inject an LM in the mix, and LMs are pretty good at, you know, figuring out.

00:53:55.838 --> 00:54:02.846
Okay, here's the API description, so I can call that, and then if you change tomorrow, then we'll figure it out.

00:54:02.846 --> 00:54:07.987
Right, here's the API description so I can call that and then if you change tomorrow, then we'll figure it out.

00:54:07.987 --> 00:54:27.391
So what it allows you to do is do things like so there's this notion of an MCP server, so basically you think of it as your BC could be, business central, could be an MCP server, and then you could have a you know, another MCP server, right, which is?

00:54:28.175 --> 00:54:37.661
So I'll give you an example, and it's not totally constructed because I was playing around with it and that's basically the prototype that I built, just to, you know, get my head wrapped around this.

00:54:37.661 --> 00:54:39.675
So, you know, I just exposed the.

00:54:39.675 --> 00:54:45.297
You know we have this API for the top 10 customers, so I just exposed that as an MCP server.

00:54:45.297 --> 00:54:55.057
And then we have then Google Maps, instead of the, has also an MCP server, and so you can write an application.

00:54:55.057 --> 00:54:56.447
So you need a client, you know.

00:54:57.110 --> 00:55:02.018
So I use Visual Studio Code because it's it has a built-in MCP client in that.

00:55:02.018 --> 00:55:04.456
But there's also this thing called Cloud Desktop that has it.

00:55:04.456 --> 00:55:07.434
But you can build your own and what it allows you to do.

00:55:07.434 --> 00:55:10.396
So basically you register, you say, well, here's the tools that I have.

00:55:10.396 --> 00:55:17.641
So I have BC as one tool, I have Google Maps as another tool and you can have like a weather tool as well, which is also an MCP server.

00:55:23.311 --> 00:55:30.878
And then you can go in the chat and you can say, oh, okay, look up the address for that customer and then give me driving directions in the chat, right, and so what it does is kind of orchestrate, you know.

00:55:30.878 --> 00:55:33.257
So it figures out, okay, how do I close at my disposition.

00:55:33.257 --> 00:55:51.123
You know I can go and look up the address for that particular customer in the BC, you know, using the BC API, and then you know, getting that address information, it figures out how to feed it into the Google Maps API or Bing API, right, and gives you the driving direction there.

00:55:51.123 --> 00:55:52.797
And then you can ask, hey, what's the weather there?

00:55:52.797 --> 00:55:57.601
And then you know it will, you know, call the weather MCP server track.

00:55:57.601 --> 00:56:10.804
And so what's interesting with this is that you can have a whole range of tools at your disposal that you know the your client will figure out how to use right and open ai.

00:56:10.804 --> 00:56:34.271
I will support that standard uh very soon in chat gpt meaning, uh, you know, if you have in the JET GPT that you know from OpenAI, you can go there and you can use any MCP server that are at your disposal and there's a bunch of these already out there so you can go and have all sorts of things.

00:56:34.271 --> 00:56:37.400
You can ask things about BC and do things like that.

00:56:37.460 --> 00:56:45.764
So is the idea would be eventually, as a business, right?

00:56:45.764 --> 00:56:51.023
So I'm putting myself in the shoes of a business owner and I have all these Microsoft products.

00:56:51.023 --> 00:57:19.614
Is the idea in the near future and again we can't tell if this is going to happen is to have an agent that orchestrates within your tenant, maybe within your tenant, to pull all these different agents based upon your prompt, based upon your need, and just let it do its own orchestration of pulling all these different api calls, yeah, and then just let it do its one thing and and that's all it does.

00:57:19.614 --> 00:57:23.382
That would be amazing, because then you have a specific agent.

00:57:23.889 --> 00:57:27.059
So you need a client and that client can be many things.

00:57:27.059 --> 00:57:29.637
Right, that can be, you know.

00:57:29.637 --> 00:57:35.219
So in the scenario you're describing, you work from a client.

00:57:35.219 --> 00:57:40.735
Let's say, for example, that could be, you know, imagine it could be Teams, you know.

00:57:40.735 --> 00:57:51.739
So you could do a chat in teams and you can go, hey, uh, give me the latest top 10 customers and what's the driving directions, and then teams would have these mcp servers.

00:57:51.739 --> 00:57:59.070
You would have like a bc as an mcp server and it would have google maps as an answer and other servers at his disposal to answer your question.

00:57:59.070 --> 00:58:08.934
But then you can also imagine that you know BC, business Central itself, you know, in its UI, you know, could act as a client as well.

00:58:08.934 --> 00:58:11.936
And Business Central could.

00:58:11.936 --> 00:58:28.371
If we choose to implement that, it could support other MCP servers like, for example, the weather, whatever, or another Microsoft product, microsoft Sales, for example, which may be a little more interesting in terms of business scenarios.

00:58:28.371 --> 00:58:32.775
So that's exactly where you discover.

00:58:32.775 --> 00:58:37.887
That's the idea behind this whole MCP thing.

00:58:39.275 --> 00:58:40.360
That is wild.00:58:40.681 --> 00:58:41.264


I love it.00:58:41.264 --> 00:58:57.005


It's mind-blowing because you can take it back to what I was saying, whereas it becomes faceless, because now the customer of a product or the user of a product doesn't have to be a customer, and sometimes I get drawn to terms that I think aren't as appropriate.00:58:57.005 --> 00:59:09.561


You're dynamically using the application, so you have a bunch of services together and then the agent's going to orchestrate the services from the servers to give you the results, and I like that.00:59:09.561 --> 00:59:15.505


The top 10 driving directions, even where are they are geographically and, like you had mentioned, bring in the weather.00:59:15.505 --> 00:59:26.963


I mean, I could see so much information and it's going to become where it's creating these servers or the endpoints, and them having access to the business logic in the data.00:59:26.963 --> 00:59:29.802


That will give us the interface that we need.00:59:32.259 --> 00:59:35.655


Here's the wild thing about this too I don't even know what's going to happen to us as a civilization.00:59:36.135 --> 00:59:38.262


The new thing about it is that it is a standard.00:59:38.262 --> 00:59:47.382


As always, as all standards, it's only going to work if it actually takes hold, like if people are adopting and starting.00:59:47.382 --> 01:00:05.224


But there's a pretty good chance because Microsoft is a big player in that, open AI is a big player, and Tropic, which are all really frontrunners in terms of AI, so the big companies and the big players, the big actors in the AI world, are behind this.01:00:05.224 --> 01:00:21.005


So there's a pretty good chance they will take hold and there's already a lot of interest on this technology and so it's interesting because it's a standard and yeah, and that, will you know, allow these things.01:00:21.005 --> 01:00:26.362


But if it really takes hold, there's a lot of, you know, cool things that can happen for sure.01:00:27.615 --> 01:00:31.976


Brad, if you talk about the faceless component of this, here's what.01:00:31.976 --> 01:00:36.679


And again, I'm just I'm dreaming at this point, right Like it's going to require some effort.01:00:36.679 --> 01:00:58.905


But if you imagine, if you have your own central agent for your tenant and you do a business with somebody that happens to have the same capability maybe this another tenant using Business Central at some point all you have to do is connect two tenants together, with those two agents talking, and then it'll do its business on its own right.01:00:58.905 --> 01:01:08.121


Based on what I know about the business and what it knows about my business, just have both two tenants talk to each other and I'm hands-off at that point.01:01:08.121 --> 01:01:10.246


That's amazing.01:01:11.936 --> 01:01:14.003


Basically, what's really new in that?01:01:14.003 --> 01:01:17.322


Because we've had stand standards before in our industry.01:01:17.322 --> 01:01:23.880


I'm sure you're aware there's been a lot of attempts to and standards are only like you know.01:01:23.880 --> 01:01:24.382


We have these.01:01:24.382 --> 01:01:30.010


A lot of the things we're doing today are API-based, so you have an API.01:01:30.010 --> 01:01:31.159


We have a lot of services.01:01:31.159 --> 01:01:33.855


Basically, we live in a service world.01:01:33.855 --> 01:01:35.764


There is a web API for this and a web API for that, and you can do a lot of services.01:01:35.764 --> 01:01:36.688


Basically, we live in a service world.01:01:36.688 --> 01:01:38.920


There is a web API for this and a web API for that, and you can do a lot of things.01:01:38.920 --> 01:01:43.782


You can query about the weather, you can check out, I don't know.01:01:43.782 --> 01:01:45.947


Airbnb probably has an API as well.01:01:45.947 --> 01:01:47.221


Everybody has APIs.01:01:47.822 --> 01:02:10.659


But if you want to write an application that kind of aggregates this data and do different know, do different calls to this api, that's a lot of work and and first of all, you need to learn how to use this api, because they're not, you know, necessarily self-descript scripting, right, and also your code will break as soon as somebody changes something in this api, right?01:02:10.659 --> 01:02:15.038


What's new here is basically what you do is that you say first of all, you describe this api.01:02:15.038 --> 01:02:15.085


There's a.01:02:15.085 --> 01:02:18.824


Here is basically what you do is that you say first of all, you describe this API, there's a standard for describing what they do, right.01:02:18.824 --> 01:02:32.619


And then the magic comes from the LLM, because the LLMs are really good at figuring out these changes and getting okay, you get this API, okay, it looks like this, so I figure out, they can figure out how to call it.01:02:32.619 --> 01:02:42.266


And if, two seconds after, somebody publish an update to this service and change the API, then ELM will figure it out.01:02:42.266 --> 01:02:44.510


That's the new thing.01:02:44.510 --> 01:02:46.442


That's basically the magic of it.01:02:46.675 --> 01:02:52.987


So, whatever client you are, as you described, you have a client leveraging multiple of these MCP servers.01:02:52.987 --> 01:02:53.969


It will keep working.01:02:53.969 --> 01:02:57.882


Client you're leveraging multiple of these mcp servers.01:02:57.882 --> 01:03:00.130


It will keep working and, moreover, you can add more servers, more services to it.01:03:00.130 --> 01:03:01.614


You know, in in a seamless fashion, but that's pretty exciting.01:03:01.614 --> 01:03:02.436


You know there's a lot of.01:03:02.436 --> 01:03:06.755


You know there's a lot of interesting application on that, for sure and it's.01:03:07.137 --> 01:03:12.327


I am super thrilled for this, but I have to ground it a little bit from just again.01:03:12.327 --> 01:03:14.601


It's the conversations that I have with individuals.01:03:14.601 --> 01:03:21.380


We're talking about AI creating sales orders.01:03:21.380 --> 01:03:21.902


We're talking about AI.01:03:21.902 --> 01:03:26.976


Chris, your idea of having it be in tenants was extremely beneficial and helpful, but now we have a lot of information within a tenant.01:03:26.976 --> 01:03:29.757


We have documents, we have data.01:03:29.757 --> 01:03:30.757


We have a lot of points.01:03:30.757 --> 01:03:31.679


We have a lot of points.01:03:32.818 --> 01:03:45.485


How can we manage the security from the context of the individual making the call, to be able to differentiate when it's creating, when the AI is creating this data, when it creates the vectors?01:03:45.485 --> 01:03:54.610


For example, vincent, you know you're responsible for the product group and you may have access to finance information and human resource information.01:03:54.610 --> 01:03:59.092


I work for a different function within your group and I shouldn't have access to that.01:03:59.092 --> 01:04:06.521


What is to prevent and how can you put measures when AI is training on this information?01:04:06.521 --> 01:04:16.648


To use some of the terms, what considerations and what do you put in place to make sure that I don't have access to the payroll files when I'm doing a query or a call and you are?01:04:16.648 --> 01:04:30.141


And then also, chris, if we're crossing tenants somebody coming in how do we scope what they can do in this world of all this automation, because security is a big concern to a lot of individuals.01:04:30.684 --> 01:04:33.842


That's a very good question, and so I can give you some.01:04:33.842 --> 01:04:39.956


And yes, that's something that when you develop AI feature, you should be concerned about.01:04:39.956 --> 01:04:49.182


For sure you don't want to give you know, but that goes for any automated piece of software.01:04:49.182 --> 01:04:58.567


You write as soon as you write, whether it's an agent or there's ai involved or not, you know if something is doing something in in an automated way.01:04:58.567 --> 01:05:02.559


You need to be concerned about security and and what it does.01:05:02.559 --> 01:05:05.166


And then it doesn't access data that it shouldn't be accessing.01:05:05.166 --> 01:05:06.097


So so what?01:05:06.097 --> 01:05:09.811


So the way we and and so that's you know that's a very good question.01:05:09.811 --> 01:05:11.114


So the way, I can tell you a little bit.01:05:11.135 --> 01:05:13.577


By the way, we addressed it in Business Central.01:05:13.577 --> 01:05:27.927


So in Business Central, our agent is executing with the credentials that the user you have.01:05:27.927 --> 01:05:34.271


So we have a security model where you give, we have this, have this permission system.01:05:34.271 --> 01:05:37.655


You know, in Business Central I'm sure you're familiar with it.01:05:37.655 --> 01:05:44.367


So you grant the agent the permission that you need to have and nothing more.01:05:44.367 --> 01:06:06.007


Right permission system, and the agent is acting with a certain set of permissions.01:06:06.007 --> 01:06:11.780


You cannot grant a permission wider than what you have as a user, obviously, and moreover, we took an extra step.01:06:11.780 --> 01:06:22.623


So the way our agent works, our sales agent works, is that actually it's working like it's a true agent.01:06:22.623 --> 01:06:24.581


It means it's working like a human.01:06:24.581 --> 01:06:32.425


It's not calling APIs, it's actually manipulating the products through the UI.01:06:33.795 --> 01:06:34.947


So it's looking at the page.01:06:34.947 --> 01:06:37.608


So it's not, you know, it's faceless, but basically that's what.01:06:37.608 --> 01:06:38.434


What's what happened?01:06:38.434 --> 01:06:49.231


So we take, you know we we take the page you are on, we show it to the other them say hey, here's a page, this how it looks like, here's what you need to do.01:06:49.231 --> 01:06:53.201


So in our case it could be like create a source code, what's next?01:06:53.201 --> 01:06:57.728


And the ELM says okay, click that button, then we do that.01:06:57.728 --> 01:07:03.262


Then you get to a new page and we show the page again to the ELM and say hey, here's the new page.01:07:03.262 --> 01:07:04.367


What do I do now?01:07:04.367 --> 01:07:12.494


Then the ELM goes okay, fill with that value, then we do that, and so on and so forth.01:07:12.494 --> 01:07:13.628


So that's how our agent works.01:07:13.628 --> 01:07:16.746


Basically, okay, value, then we do that, and so on, and so forth.01:07:16.846 --> 01:07:18.612


So that's how our agent works, basically.01:07:18.612 --> 01:07:22.719


Okay, so it is working in the context of the UI.01:07:22.719 --> 01:07:29.065


Therefore, if it's running by default, it gets the user's permission overlaid, and again, I'm being loose with the terms.01:07:31.219 --> 01:07:34.858


We also have a permission specific to the agent that you can.01:07:34.858 --> 01:07:42.599


You know it's even more restricted than the user and another thing we're doing is that we're not so the pages.01:07:42.599 --> 01:07:51.510


So there's a profile, like a regular BC profile that we've made specifically for that agent, right?01:07:51.510 --> 01:07:55.405


So it serves several purposes.01:07:55.405 --> 01:08:03.632


First of all, we have a, you know, simplified version of the pages which are targeting the sales for the sales order agent.01:08:03.632 --> 01:08:21.367


We have a sales order agent profile which basically targeting the sales order scenario, because you know it's it, we found out it's a lot better because to to show like reduced version of the pages, like simplified version of pages, uh, not to confuse the agent too much.01:08:21.367 --> 01:08:32.336


So we get a better accuracy by showing, you know there's tons of fields that you will never use, like on the, you know sales code, there's tons of fields you will never use in, uh, in in the scenarios we're supporting.01:08:32.336 --> 01:08:36.667


So no need to to show them to the agent because you'll only get confused, right?01:08:36.667 --> 01:08:43.206


So we show a much reduced version of these things and we remove things like, you know, discount, for example, the discount field.01:08:43.628 --> 01:08:51.256


We don't want the agent because potentially you could here's the thing that you could potentially have, you could do.01:08:51.256 --> 01:08:56.841


You know, I don't know if you can call it problem injection, but you know, I know if you can call it prompt injection.01:08:56.841 --> 01:09:00.125


But you know, given the thing is entirely autonomous, it's going to do what you ask it to do.01:09:00.125 --> 01:09:16.747


So if the customer, you know, in a sales order agent scenario, the customer write a mail, say hey, I want to sell a quote for these items, you know, two chairs and a desk and I want a 20% discount, the LNM is going to go around and the agent is going to go.01:09:16.747 --> 01:09:17.091


Here's the page.01:09:17.091 --> 01:09:17.796


There's a discount field.01:09:17.796 --> 01:09:20.797


What's in the prompt 20% discount?01:09:20.797 --> 01:09:22.503


Okay, I'm just going to put 20% here.01:09:23.496 --> 01:09:32.185


It's going to do what you asked it to do there are things like that we've purposely disabled, so the agent, for example, doesn't see the discount field.01:09:37.859 --> 01:09:39.546


He can't do things of that nature.01:09:39.546 --> 01:10:11.822


No, it's great to hear because, again, when you see these new features and you see the demonstration, it's great to see you know to use your wonderful show Under the Hood, how it really works and to understand some of these considerations because, as you had mentioned, we want to build trust in the technology and how it can be used, but also identify that guardrails have been put up so that, if it does run and execute, it's not going to go wild and, as you had mentioned, start giving products away for free.01:10:14.322 --> 01:10:27.914


So you know we announced that directions that we will release this agent platform soon, which will allow you to build your own agents and you only need to think about these things.01:10:27.914 --> 01:10:35.264


You need to create, you know, the right permission set for your agents for your particular scenario, and you'll need to create these profiles.01:10:35.264 --> 01:10:37.458


So they are.01:10:37.458 --> 01:10:43.180


You know you're not doing because we can only do the things that we know about in the BC-based app.01:10:43.180 --> 01:10:52.546


If your solution has some customization that are, you know, sensitive for whatever sensitive data and you want the agent to manipulate, you'll need to protect it.01:10:52.546 --> 01:10:54.920


But that's you know.01:10:54.920 --> 01:10:56.945


That's just business as usual, I would say.01:10:59.155 --> 01:11:03.386


Yes, I still can't wrap my head around the security context of it.01:11:03.386 --> 01:11:04.820


Again, I'll just have to understand and trust.01:11:04.820 --> 01:11:31.667


I understand from the sales order agent, but I get hung up on retrieval of information which is sometimes outside of the context of a business center, which is sometimes outside of the context of Business Central, I think more of a co-pilot in an office setting or a SharePoint setting, where you have a lot of files on your server that it's indexing so that you can have employee self-service, for example, within an organization, or even customer self-service, which is just amazing.01:11:31.667 --> 01:11:42.189


It's the efficiencies that we gain from a lot of these tasks and I'm still just looking for a good photo AI agent that will organize all of my photos.01:11:42.956 --> 01:11:57.926


I think that's going to be a hurdle for a long time is the security component, because we move so fast in processes and being efficient, and typically security has to catch up, you know.01:11:57.926 --> 01:12:22.845


And so it's a fine balance right, because you want to make this huge progress, but then at the same time, you're going to, like, hold on, like, you know, you got to pull the ropes back a little bit and making sure that the security is in place before you let it do its thing, and I think that's going to be like that for quite some time, unless somebody comes up with some simplification of security where it just learns how to do it on its own.01:12:23.296 --> 01:12:26.863


The security is always something you know you need to be taking seriously for sure.01:12:26.863 --> 01:12:41.981


I mean, I believe that we're in pretty good shape with our agent platform, in that sense that we've built, you know, the necessary tools and guardrails you can put in place to prevent the agent from doing things you don't want it to do.01:12:41.981 --> 01:12:47.109


That said, you always need to be careful and how you know.01:12:47.109 --> 01:12:47.309


So.01:12:47.309 --> 01:13:04.371


We've done a due diligence with BC, right, we do a lot of testing around security and we do a lot of what we call responsible AI as well and try to prevent all the prompt injections, all the misusage of items, all these things.01:13:04.371 --> 01:13:11.675


But in the end, again, when you implement your own engine, you'll need to go through the work as well.01:13:11.675 --> 01:13:12.664


So there's no work through the work as well.01:13:12.664 --> 01:13:12.948


So there's no.01:13:12.948 --> 01:13:13.453


You know they still work.01:13:13.453 --> 01:13:15.319


You know we're not going to get unemployed.01:13:15.319 --> 01:13:20.877


You know, contrary to what everybody says, we're not going to get unemployed anytime soon.01:13:20.877 --> 01:13:21.939


I guarantee you that.01:13:23.622 --> 01:13:24.704


No, I don't see it.01:13:24.704 --> 01:13:26.750


They've been saying that for years.01:13:26.750 --> 01:13:33.444


You know, if you go back to the horse and buggy with the motor vehicle vehicle or the automobile, the nature, of the work might change.01:13:33.743 --> 01:13:35.507


You know I find myself these days.01:13:35.507 --> 01:13:43.518


You know you know when I, when I do, I don't do a lot of coding, but when I do I, you know I approach it very differently than I used to.01:13:43.518 --> 01:13:47.275


You know all the boilerplate code we used to write for you know basic stuff.01:13:47.315 --> 01:13:57.475


You don't do that anymore, you just have it, yeah no, and one thing, chris, I know when to jump in, but one thing, as I say, it's ai isn't going to replace you.01:13:57.475 --> 01:14:00.042


Someone with ai is going to replace you.01:14:00.042 --> 01:14:01.425


That's what it is it's.01:14:01.425 --> 01:14:03.237


It's not the ai is going to replace you.01:14:03.237 --> 01:14:09.363


It's people who are using ai to become more efficient and understand where to use it and when to use it and how to apply it.01:14:09.363 --> 01:14:11.573


It's not the ai that's replacing you.01:14:11.573 --> 01:14:18.387


It's somebody that has skills just like any other profession and job that you have to continue to advance with.01:14:18.387 --> 01:14:22.284


Yeah, and I wanted to kind of finish on that.01:14:22.426 --> 01:14:32.421


You know, using AI and the security component, I think my dream of it being tenant specific and have two tenants communicating to each other, two tenants communicating each other.01:14:32.421 --> 01:14:34.783


It's going to like you had described, vincent.01:14:34.783 --> 01:14:43.630


For you to build that agent, you have to set security parameters specific to that agent and, if you have it, talk to all the different agents.01:14:43.630 --> 01:14:46.252


Right, you have to also consider all.01:14:46.252 --> 01:14:52.761


Whoever's building them will also have to consider all the security.01:14:52.761 --> 01:15:00.567


So I think it's going to take some time, but I think we'll get there eventually, unless someone comes up with a simplification or standard of security across the board.01:15:00.567 --> 01:15:05.724


That will be the hurdle, in my opinion.01:15:05.724 --> 01:15:12.603


Of course, at the same time, when you set the security, you have to build that trust too, with the business owners as well.01:15:12.603 --> 01:15:16.470


They're running people that are running the business you know itself.01:15:16.470 --> 01:15:19.462


So exciting times, I think.01:15:19.462 --> 01:15:21.948


In my opinion, super exciting.01:15:23.076 --> 01:15:23.578


No, there is.01:15:23.578 --> 01:15:24.622


There's a lot of excitement.01:15:24.622 --> 01:15:27.564


I'm super excited with all the new features in 2025 wave one.01:15:27.564 --> 01:15:31.326


Can't wait for 2025 wave two to see the new features.01:15:31.326 --> 01:15:41.184


I'm super excited about the page scripting future, even, like you said, even if it's that small removal of the preview tag, because at least we know that now there's a little gas behind it.01:15:41.855 --> 01:15:43.159


I mean, this is not going anywhere.01:15:43.159 --> 01:15:44.564


I can tell you that?01:15:44.623 --> 01:15:45.487


No, I hope not.01:15:45.487 --> 01:15:46.417


That will.01:15:46.417 --> 01:15:52.444


I'll be the biggest opponent of its removal and I'll refuse to allow it to be removed.01:15:52.444 --> 01:16:15.287


No, it's a great tool and I'm super excited to see where Business Central goes with the use of agents and responsible use of agents and the responsibility with the humans in the loop to build the trust within the application, and to Chris's point of being able to communicate with other tenants or other servers for automating tasks or letting AI run and go with it.01:16:15.287 --> 01:16:18.363


We do appreciate you taking the time to speak with us today.01:16:18.363 --> 01:16:20.462


I'm super excited for the conversation.01:16:20.462 --> 01:16:22.141


It took me a long time to calm down from it.01:16:22.141 --> 01:16:25.164


It was great seeing you at Directions North America in Las Vegas.01:16:25.164 --> 01:16:30.462


If anyone would like to get in contact with you, what's the best way to reach you?01:16:30.875 --> 01:16:32.001


They can reach me through LinkedIn.01:16:32.001 --> 01:16:33.805


It's probably the best way.01:16:34.975 --> 01:16:38.082


Great, great great, great, all right, great, thank you.01:16:38.082 --> 01:16:39.005


Thank you again for your time.01:16:39.005 --> 01:16:41.719


We really appreciate it and look forward to speaking with you again soon.01:16:41.719 --> 01:16:42.761


Thank you, vincent.01:16:42.761 --> 01:16:45.525


All right, thank you, ciao, ciao, bye, bye, bye.01:16:45.525 --> 01:16:54.740


Thank you, chris, for your time for another episode of In the Dynamics Corner Chair, and thank you to our guests for participating.01:16:54.841 --> 01:16:56.382


Thank you, brad, for your time.01:16:56.382 --> 01:16:59.886


It is a wonderful episode of Dynamics Corner Chair.01:16:59.886 --> 01:17:03.350


I would also like to thank our guests for joining us.01:17:03.350 --> 01:17:09.105


Thank you for all of our listeners tuning in as well.01:17:09.105 --> 01:17:20.887


You can find Brad at developerlifecom, that is D-V-L-P-R-L-I-F-E dot com, and you can interact with them via Twitter D-V-L-P-R-L-I-F-E.01:17:20.887 --> 01:17:34.247


You can also find me at Mattalinoio, m-a-t-a-l-i-n-o dot I-O, and my Twitter handle is Mattalino16.01:17:34.247 --> 01:17:37.944


And you can see those links down below in the show notes.01:17:37.944 --> 01:17:39.300


Again, thank you everyone.01:17:39.300 --> 01:17:40.860


Thank you and take care.

Vincent Nicolas Profile Photo

Vincent Nicolas

Chief Architect, Microsoft Dynamics 365 Business Central