De-Risk Your Epicor 10.x Upgrade Webinar
Do you have a question for our Epicor experts? Looking to upgrade or in the process of upgrading your Epicor system? Let us know.
[pardot-form id=”1302″ title=”Ask Us”]
Video Transcript
Ben Nixon: First thing you’re going to notice is you’re going to see an increase in performance to reduced risks. One thing to keep in mind, Microsoft is very upfront as far as when server releases, workstation, operating systems are going to end support and you’ll notice this.
Ben Nixon: Standard support dates are coming very quickly. Some of these end in January 2020. It’s not that far away. We’re coming up on January 2018 already. What you’re also going to notice moving forward is reduced risks as long as you stayed current. Upgrading is going to keep you current. As you run into a patch or a bug that’s not supported, you’re not going sit and have you IT Team wasting time searching for fixes. It can keep you moving forward. Very vital. If you run a compliant business, you’re always taking chance to losing your compliant standards.
Ben Nixon: You need to stay current. The risk of downtime and finding old hardware to replace something is also a big risk. I’ve seen company waste a lot time chasing down 32-bit operating systems or machines that will support 32-bit.
Jeff Klaubert: Hey, Ben. One of the key things that struck me too is the change in platform here in terms of what we were in Epicor 8 and 9 and the major structural changes made in Epicor 10. You want to talk about that for a moment.
Ben Nixon: Sure. Moving to a simplified stack. I know a lot of people look forward to this. It’s been a great change. I know in the past, you always have the progress layer involved that added many layers that you didn’t need. Epicor 10 moved to what we call Cure of Microsoft Stack, running Microsoft IIS on SQL server. It creates a more efficient system, very efficient to use. It takes away a lot of the technology challenges –
Jeff Klaubert: Great! Okay. I guess that’s part of challenge of running remotely these events, but it’s how we can bring him out to you. The key thing here is you’re now moving to a standard-based stack. That’s you going to see much greater performance. This whole multithreading is a big one as I’m sure you know that, so I’m not going to get too far in the weeds plus I started going beyond my depth. We’ve just talked in a few minutes talking about the imperatives for upgrading your system.
Jeff Klaubert: You’re probably saying, “Yeah, I know all that, Jeff,” and hopefully, I validated some of those reasons for upgrade. Now, let’s address some of the concerns that you might be looking at and probably one of the reasons why you signed up for this event today. With that, I actually want to turn it over to Brad, who’s going to take us through those hurdles and how to deal with those hurdles. I’m going to stop sharing here Ben. I’m going to give it to you, make you the presenter.
Brad Feakes: All right, great! Thank you, Jeff. I wanted to welcome everyone to our session. Thank you all for thanking your time out of your busy day to come and listen to us as we give our spiel. My name is Brad Feakes. I am speaking to you here from Savannah, Georgia. The home of Victorian Architecture and boiled peanuts of which I’m a fan of both. I want to just thank you again for coming and thank my customer for thanking the time to allow me to step aside, skunk out and give this presentation and really I want to underscore some of the things that we have covered in the past that we’ve took and consolidated to try to help some of our potential new customers make some of those hurdles.
Brad Feakes: I will just turn my own camera off here. All right. Okay, great. The question of why to upgrade I think is pretty clear. I think Ben’s slides begin at least to speak to some of the values of a consolidated stack in a consistent platform and some of the benefits that come from being on such a platform. Nevertheless, there are a lot of companies that are still very much in a concerned point in terms of how to upgrade, whether to upgrade and normally this is due to a couple of basic challenges that I have seen in the past and continued to show themselves and our discussion today will be working to address some of those.
Brad Feakes: In principle, it’s really great to keep your software up to date and everyone agrees that, “Yeah, this is really good. We should keep our software where it is.” What often happens in practices that there are some genuine and understandable practical barriers to getting to keep your software up to date. Quite often, this would be manifested as time, as resources, the people you have to do with, the cost required to make these upgrades because we’re not speaking of simple software. Enterprise software is vast scale and understandably some costs come along with that and one big concern that really generates a lot of others is just the basic risk that’s involved in moving from a legacy platform to a very new platform.
Brad Feakes: That change in platforms comes with all kinds of risks that are involved, and what I’ve seen in working with customers, the most common concerns keep coming up the same time. Those would be how to address the Customizations that we’ve done in the previous system, the Configurators, Product Configurators that we built in the legacy systems or the Custom Crystal Reports that we’ve developed. These all sort of form around a common thread. This is business-specific functionality that’s been built by the customer in order to address specific needs that we’re at the time out of the capability of the system and those present great challenges because those often become the most difficult things to migrate into the new system.
Brad Feakes: What I want to underscore here is that these risks can be minimized. When we start to approach the idea of an upgrade, what I found that a lot of the decisions that are made at the onset really can impact these risks and how they are addressed. They give you more or fewer approaches and cards in your pocket to play in order to successfully mitigate some of these risks and one of the first decisions that I have encountered has to do with the Data Migration Approach. This really has to do with the data level. How are you going from a legacy database to an Epicor database? Some of your options may be limited to what you’ve had in the past.
Brad Feakes: Some of these options are little different based on how easy it is to extract data from your existing system into the new, but I’ve seen in general two basic models. The first is what we would call Straight Conversion. That is the use of Epicor’s Conversion Tools to move from the legacy system to the 10 Platform. That would the running of all of those conversion routines and such to take your data and reshape it gently into the form that it needs to take to fit into a version 10. Another version of this approach that I have seen is what I like to call Data Reimplementation.
Brad Feakes: In this case, the customer chooses to reimplement in 10 entirely and not upgrade their data. Rather, they extract their data, they cleanse it and then they load it into the new system as a function of a new installation. The pluses and minuses of these approaches generally are pretty clear. When you’re speaking of a reimplementation, you’re probably looking at more time, but what it gives you is more flexibility to better utilize the new system potentially and to maybe purge yourself with some bad data that was haunting you from your previous configuration.
Brad Feakes: Most often I see this for customers who have been on the Epicor Platform for a long time, and since the time they went live and initially configured the system, their market has changed, their product line has changed, the way they respond to the industry has changed and such they’ve seen that, “Okay, a very significant reconfiguration might be beneficial,” and reimplementation sometimes is the easiest way to make that happen. As you might understand, this process could greatly affect your underlying customizations and reports in such that are part of that.
Brad Feakes: Another decision that I found is being very important has to do with your functional solution. In this case, I’m talking about your business processes, your procedures, how you’re getting from [inaudible 00:18:20] to cash and some of those things can potentially change significantly depending on the new functionality that’s available. Now, I’ve seen sort of again two different paths. These are sort of aggregates and there’s a lot of slices in between, but you might classify these functional solution approaches a functional migration where you basically take over, take your existing processes, carry them over into your new system into the legacy 10 or into the 10 System and you basically run business as usual.
Brad Feakes: I see this most often with companies that are time constrained or budget constrained where they really just need to get up and get out of the risks of staying on their existing platform and get into 10. For other customers, I’ve seen what you might call more of a Functional Reimplementation and this is where you do a significant reevaluation of the capabilities of Epicor 10 and you look to see where your functionality might change, how you might approach things differently and quite often, this might give you opportunity to replace some of your custom solutions that were developed in a legacy version with standard functionality at 10.
Brad Feakes: Because really one of the reasons that you create custom solutions in a system is to bridge some gap that was present that you need to figure out a way to still do something to run the business. Those gaps may have been closed in the interim by new functionalities, functionalities having implemented originally in 803. I can speak to this from experience that the capabilities of the 10 Platform are quite different in a lot of ways than the earlier 803 versions and the iteration since then. These would include some things like package control, some of the financial transaction and driving methodologies for driving transactions in different directions, some of the reporting.
Brad Feakes: Customization tools themselves have changed significantly and that all gives a lot of reasons to potentially look at, reevaluating how you do your own business. A third decision that I see a lot of customers is doing has to do with how you’re exactly going to host this application. With the change from the new system comes the possibility and the questions of is my hardware adequate to host this new application and a lot of customers start looking at what they have been doing in the past with a truncated server stack and closet and decided, “Well, maybe we want to approach this a little differently? Maybe we want to host externally into a cloud or externally hosting a solution instead of maintaining with on-premises stack?”
Brad Feakes: There’s still a good number of folks who still want to keep it internal and use their internal capabilities in order to host an application. Having gotten through some of these big decision, then you start worrying about, “Now that that’s done, what do I need to do to get over some of these significant challenges in implementing the new system in tech?” Really, the biggest step at this point and it seems like the simplest but it’s the one that I have seen missed the most and I have seen companies benefit from it the most and that’s organize.
Brad Feakes: Really, if you’re looking at your custom solutions, these being reports, configurations or various custom tools from the Epicor stack, understanding what they are and organizing yourself around what is the scope to bring all this functionality up to 10. Really because I’ve seen with a lot of customers the really common is what is the scope of your activity, how much custom functionality do you have, and quite often, I get some wide-eyed looks that say, “I don’t know,” because turnover exists, companies come new and new management comes in, new IT management may takeover systems that they did not themselves bring up.
Brad Feakes: Now they’re in the position of not necessarily knowing where they were and how they were and I can also speak from an experience that it’s very easy when you’re implementing to make a lot of little changes, a lot of little customizations here, there, or adding UD fields or adding a little BPM here or what have you. It’s very easy for those to happen and it happen in a manner where they are not documented and understood. At the time, the impact of the lack of information is pretty minor, but as time goes on and as you start to get things like major upgrades, those little negligence can be magnified significantly and really the importance here is by getting yourself organized and understanding what you have and start to get a shape of how big an effort this really is. I say the two biggest things are identification of what you had and then understanding of how much these things are being used and we will jump into that a little bit more.
Brad Feakes: Analyzing and understanding what your custom footprint looks like. There are a number of ways of doing this. Epicor has made great strides for upgrades with their Analyzer tool and I’ve seen that in action and that produces a really nice of list of a lot of the different things, custom reports, custom dashboards, embedded customizations, BPMs and the like that in an existing system and will thus be needed potentially to be managed in their upgrades. Depending on your version, you can do some similar work right out of the gate in what you have if you were in a version let’s say 905 and using Solution Manager as a way of querying out what do you all have custom that would need to be concerned with.
Brad Feakes: If all else fails, there are enough tools in the system to allow you to hunt-and-peck through what you have to understand there’s probably 10 places in the systems where you would need to go in terms of report styles, report data definitions, embedded customizations that are on a menu, the BPMs that you have, the BAMs that you have. There’s a pretty small list of things that are out there that you would go and find. These are all of the things that we built out there that we may potentially need to organize and put together.
Brad Feakes: Now determining usage is in a lot of ways a more tricky step to take, but I would say it’s immensely valuable in understanding how these items are being used. I know I stepped onsite once with a customer and they had probably 200 Custom Crystal Reports and I asked, “How many of these are being used?” and it wasn’t known. They really didn’t know at this point how many of these Crystal Reports were still in use. Now, they have been lived in 803 for 10 years and a lot of reports understandably had been developed over the years.
Brad Feakes: It wasn’t entirely certain which ones had been used in replacement of others and which ones had sort of fallen out of usage because they address the problem that was no longer the case. Now what I find is a customer generally benefits from a good one-to-two-month sample of usage. That’s generally represented. If I say it’s always good if you can cross a fiscal month end and understand what’s happening there because there are some special things that happen only at month end that wouldn’t otherwise, that gives you a good idea of what all really is being used.
Brad Feakes: One area where I think it’s valuable, I see a lot of customers use this to great effect is querying the Sysstack History to try to understand what reports or any custom processes are being used in the background. What I’ve seen kind of very inversion in some instances, they’ll extract that every time they restart the app server and the first take an extra [inaudible 00:26:04] that is system monitor.
Brad Feakes: Others will build BAQs and Dashboards to look at that information created out that way. I think Sysstack History, querying those related tables that has to do with the task agent and its functioning on the back-end server can provide a lot effort, a lot of value. UD fields, we’ll talk more about UD fields, but in this case, probably the best way of understanding their usage is to identify how much data is actually in this UD fields, is it being entered consistently and when these UD fields are related to common business objects you can get a feel for, how often recently have these fields been updated say for instant, you have constant UD fields on the order header.
Brad Feakes: Order header naturally has an order date on it and you can use that to compare and see, “Okay, have these fields not been used since 2013?” That might raise the questions. “Are these fields that we still need in the future and the related functionality that might be built around them, do we need that as well?” With embedded customizations, normally the best way at least out of the gate is to understand what’s deployed to a menu. I have seen, I would say on average, with most of my customers there’s probably for every customization has deployed to a menu, there’s a customization that’s sitting underneath.
Brad Feakes: That is it and you really don’t want to spend any time on working on projects that aren’t actually deployed to a menu. I would say that is normally your starting point. There’s others probably some ways or one to try to see if there’s more value that you can get in terms let’s say a customization attached to UD Table. Obviously you can query out that UD Table and try to understand where that is. Now for server height such as BPMs, what I see in some customers do in their existing systems before they even start the update process is they’ll add some simple logic, simple progress codes that are BPMs or what have you to write to the server log and then review their server logs at an interval to see how often this BPM is actually firing and doing something.
Brad Feakes: Trying to understand that helps go a long way to understanding. These are things that I might need in the future. Now I would say similarly a lot of these things are retrospective, but you really want to try to look forward as well with your new solution and try to think of, “When I build custom solutions in my 10 version, do I also want to build in some way of understanding their usage so that I might find myself in the same position in five years, 10 years needing to evaluate or reevaluate?” It would be helpful basically at any time to know this information as to what is actually being used out in your system.
Brad Feakes: When I’m looking at customizations what we found with customers upgrading to 10 is that there are a lot of different challenges that did provide solution type, speaking to embedded customization sometimes just called form customizations. I haven’t seen too much by way of issues. Mostly the issues we have seen have been like things let’s say method signatures might change in the event that you’re front ending some business objects automation and the method signature has changed from version to version, seeing some of the issues with UD fields and getting their bindings correct especially if you’re making changes to your UD fields. We’ll talk about that as well.
Brad Feakes: BAQs and dashboards, those are probably I would say the most limited of challenges. The Epicor toolset there is pretty well defined and they tend to upgrade without issue. Now as you get into updated BAQs and Dashboard, the situation sort of flips and we’ve encountered number of issues with these mostly due to the fact that in earlier versions of Epicor, there were capabilities that were permitted in the system that were not exactly perfect. I call this flood the function. You are able to set up an updateable BAQ and Dashboard, but certain amounts of data were missing from that set up and this missing set-up data gets caught by the upgrade utility and these items you’re not able to get them to compile essentially and I found that there’s been issues where it needed to go in and find where the upgrade mapping is.
Brad Feakes: Mostly if you’re familiar with the upgrade tool, there are a couple of tabs you have for upgrade and they are the mapping between query fields and business object fields. Some of those end up being missing in earlier versions and addressing those is generally the issues that we run in to. BPMs, these are kind of one of two flavors. If they are menu-driven or wizard-driven BPMs, they tend to update reasonably well. If they’re making call outs to a lot of custom code, this is a bigger challenge. Again this is some I’d like to defer to some of the other folks out there as to what the current version of Epicor does by way of providing a standard upgrade of the progress 4GL, ABL code to C# and what’s available there.
Brad Feakes: Really if you’re looking at a major custom code transition, those are areas where I’ve seen some rewriting required and this gets to be a challenge depending by business on how well you understood the ABL code you’re using and how well you understand the C# coding framework that you’re working into. We’ll talk about this again as we hit product configurator. I said basically one of the biggest challenges has to do that migration from ABL to C#. Now, with UD fields, another major change occurred with the platform and how they address UD fields is between what they’ve done in 8, 9 and 10.
Brad Feakes: In 803 and 905, you basically have 20 extended fields of varying data types on each table and users were able to consume those as needed for their purposes. Now in 10, they’ve created an extended table functionality. They had something similar in 905 and they’ve used that basically as a de facto for version 10, and now if you want to add fields to a table, you do it explicitly, you can strongly type them, strongly name them and add them to a table as an extension. Epicor’s upgrading tool does this by default. It creates new fields based on any fields in the old database that had data in them. Now the challenge to that of course is they create them, still calling them number –
Jeff Klaubert: Hey, Ben. If you are still here, if you could carry on, that would be terrific. All right folks, I’m going to try to get Brad back. Apologize for the technology glitch here. Hey Tim, I can’t –
Tim Grubbs: Yeah, I think one of the things Brad was talking about here had more to do with the UD fields and the way the UD fields work by default is –
Tim Grubbs: Connection in and out. By default, the UD fields will convert assuming there’s data in them. If you use the UD field in 803 or 905, if populate it with data than in the conversion, just the Standard Conversion tools, those fields will be created with the same exact name in 10.1 or 10.2. What does happen from a database standpoint is that it actually physically creates a new table, so customer.1 changed to essentially customer_ud.1, but the system will do all that for you and it actually creates views, so behind the scenes you don’t really need to worry too much about it.
Tim Grubbs: Now the opportunity you have as you upgrade those is to make more meaningful names of those UD fields. Again, it depends on how you want to do the upgrade, if you want to do it quickly and just get things converted or if you want to start leveraging some of those new capabilities. Do you have the next set of slides, Jeff?
Jeff Klaubert: Okay. Yeah, I’m actually going to bring them up right now. I appreciate you jumping in so thank you so much.
Tim Grubbs: One of the things that was mentioned earlier which was really interesting with the updatable Dashboards, one of the things that happened the way those worked was with ABL code, so we wrote all the web services with the progress code or ABL code. That was one reason you’d be in need to essentially regenerate them and that’s usually the easiest thing do, is essentially just recreate them. I mean the Dashboards themselves will convert, but if you just basically say, “Hey, regenerate all my code behind it.” That works pretty well unless you had a lot of custom code. So I just want to comment on that. All right.
Jeff Klaubert: That’s great! Can you see the slides now?
Tim Grubbs: I can. I think we covered most of that.
Jeff Klaubert: Tim, [inaudible 00:36:04] to have a Principal Technical Solutions Architect from Epicor to run this all. That just works great.
Tim Grubbs: Yeah, sometimes that does work pretty well. I’m sure. The only other thing I wouldn’t mention on this was with the BPMs. What we found is that exactly as Brad was saying, if you have ABL code, of course, you got to rewrite those. The wizard ones do work pretty well. One exception is if you use queries and conditions, so there was a capability to say, “Hey, for these records by writing a query or only do this if it hits these records.” You have the opportunity to actually go in and edit that query, and if you get that, then it typically won’t upgrade automatically.
Tim Grubbs: One of the things you really need to think through is that a lot of that stuff we’re talking about is replaced by better functionality. Now, there’s a BMP Wizard where I really don’t need to write as much ABL code or C# code because I used to do that because I had a hard time accessing fields from other tables, so I almost had to write code for that. Well now, there’s a lot of capabilities to be –
Jeff Klaubert: Sure.
Tim Grubbs: All right. We’ll move on to the next one. All right, reports here, this is where I’d love to have Brad back because this is probably my weakest are here, but you guys probably know one of the things that has changed is that Epicor’s Go-Forward Strategy with reports as SSRS whereas an 803 and 905, most of those were in Crystal. I think in 905 maybe had the SSRS ones as well. The Crystal ones technically will still run. A lot of them will, and even if you customize them, you may be able to kind of tweak them and they’ll still run. There’s some extra work that has to take place. The problem with that, it’s kind of two fold. One if you decide you want to move forward with the product like APR, the new print routing capability.
Tim Grubbs: That only worked with SSRS, so that’s one problem. The other problem is unlike customizations when you modify a report you’re kind of version locked, so meaning if I modify a report in 803, I’m still running that same 803 version of the report in 10.1 or 10.2 because it doesn’t get the latest and greatest. Now fortunately, most reports don’t change much, so it’s not that big of a deal, but there might be new functionality missing. This speaks to them, the different types. We kind of differentiate between the BAQ reports, the standard reports and the external reports and here’s kind of another differentiation of database reports and Dashboard reports as well.
Tim Grubbs: As mentioned, each of those you need to think about different things. Do you really need them going forward because there might be a new report especially for Dashboards? Can you use the standard out of the box one because that may have some new capabilities? Is it a cosmetic change? If it’s cosmetic, it’s probably pretty easy just to grab new one and slap a new logo on it rather than trying to migrate it or convert it.
Jeff Klaubert: That’s terrific. Hey, I’m also looking at the time here. I wonder because Brad only had just a couple of slides left here. I wonder if we want to jump into your section now because we’re about 20 minutes or so left and give you a plenty of time to cover that.
Tim Grubbs: Absolutely, let’s go ahead and do that. Thanks.
Jeff Klaubert: Would you like me … I’ll pass presenter over to you if there’s any issues that I can drive, but let’s –
Tim Grubbs: Sure. Let me see if I can. That would be great.
Jeff Klaubert: Here’s the interesting is you’re going to come in as Daryl I believe. Folks, a little behind-the-scenes action here. There is our first demo webinar, so you’re bearing some of our learning curve. We practice a lot ahead of time, but nothing goes perfect especially in front of a live audience. Daryl is another marketing person and was helping Tim. It’s Tim actually presenting when it says Daryl.
Tim Grubbs: Okay, if I start sharing here, it will probably ask me which screen, so we’re going to go to this one here I think. All right. You should be seeing the PowerPoint that we’re just looking through. I will get to my part of the presentation here.
Jeff Klaubert: Great!
Tim Grubbs: We will start with that. Oh, I may have opened up the wrong one.
Jeff Klaubert: Hey, while you’re doing that, we heard that Brad is back on, so welcome back to the world of the connective living, Brad. You did an awesome job. Thank you very much. I know you’re remote and there are technology issues. Awesome! Great! Thank you very much and we’re going to –
Brad Feakes: Yes. Apologize. I get talking and I start to forget that I have an audience and at some point, my computer didn’t like what I was saying and I –
Jeff Klaubert: You got censored. That was great stuff, Brad. I have a number of folks saying that you’re just doing great. Thank you.
Tim Grubbs: I want to make sure we’re seeing the right screen. Are we seeing the Epicor Upgrade slide screen or are we seeing a different one?
Jeff Klaubert: That’s correct.
Tim Grubbs: Excellent, so I’m going to skip that. One of the things that was mentioned was there is a lot of analysis that needs to be done upfront. Obviously there are ways you can do that. You can use the existing tools. Solution Manager was mentioned. There are other tools that have been developed by the SS Group that certainly can help you evaluate that environment, but what would be nice would be obviously a tool that you could just run and run as often as you want and kind of see what the state of your environment is even if you weren’t necessarily planning on upgrading. Of course, that’s something that has been pretty obvious.
Tim Grubbs: That’s one of the things that was developed recently and so we have this thing called Epicor Cloud Upgrade Services and there’s a little bit of wheel and you guys can kind of see it. The Analyzer is the piece that I would encourage all of you guys to download, contact your partner or your Channel Account Managers appropriate and ask them for access to this Analyzer. Currently, it runs on 803, 305 and above up through E9, so any version 9. It should be ready fairly quickly with any version of 10.x, but the focus of these tools has been primarily on the 803, 305 through 9 trying to get customers converted from that.
Tim Grubbs: The rest of these tools would be leveraged more on that. The idea of this is what we try to do is kind of packaged up a quick and easier way to help you upgrade and these tools are available to you as well as to our partners, so SS Group would have access to these as well. What happens is once you run the Analyzer and I’ll show some screenshots and maybe we’ll get a chance to take a look at it of what that looks like and then once you analyze your environment, you want to move forward with an upgrade then these other tools come in. Basically, the Packager and Transfer, as you can see, it’s going to take a backup of your database.
Tim Grubbs: It’s going to upload to a Cloud Environment and then it’s going to do the conversion there. That’s that automated data conversion, so it will do the data upgrades and data migrations primarily. CC those two pieces. The piece on the bottom, that’s really where all of the things that Brad talked about, some things will convert, okay, and some are going to have to be manually manipulated, so again the SS Group Epicor, whoever your partner, who you’re working with can help you with that or you guys can do that yourself as well if you have those capabilities.
Tim Grubbs: One other piece of this puzzle then is something called Cloud View. What you can do is you can actually run through this process and it will create a Cloud View environment as well, meaning an environment in the cloud where your converted data will exist. Depending on the service and the package you sign up for, you’ll be able to immediately see your data converted with the new version. You don’t have to have your hardware ready or anything like that because I know some times that delays projects, so that’s an option.
Tim Grubbs: Finally, the Epicor Learning Center. There’s some custom content that we’ve developed for this upgrade purpose that talks about, “Hey, what’s difference between 9 and 10.1 in 8 and 10.1 as well?” That’s kind of the overall solution. Now, what I’m going to do is just to introduce the pieces of it and then we’ll hopefully jump into the tooling as well. When you’re Provision, so what Provisioning means is we’ll give you a User Account, so that again can be done by your Channel Account Manager or your partner, that will give you the ability to go into this portal.
Tim Grubbs: Basically, the idea is typically you’re going to kind of come in initially and run this Analyzer. You’ll download the Analyzer. You’ll download it on your application server and then what it’s going to do is it’s going to show your report which will see examples of in a minute. Now, there’s other pieces as well, but if you decide you’re going to move forward with the upgrade, then there’s the other tools that you download as well. We’ve had, I think, about 800 customers run the Analyzer, so it has been adopted pretty well. We’d like to double that number this year as well.
Tim Grubbs: As I said before, even if you don’t think you’re going to upgrade, it’s a free tool. I’d urge you to take advantage of it because it gives you some good information. These are just some screenshots of the Analyzer, so there’s much more to it and again I’d like to get into it in a minute, but sure –
Jeff Klaubert: I remember when you were demonstrating this out in Ignite, I was just amazed that you can go in and see what modules are running, what’s going on in your environment. To your point, putting upgrades aside, it just seems like a great utility to help you keep the visibility on your current environment.
Tim Grubbs: It is. One of the things if you could read that screenshot and you probably can’t read it really well, it’s actually going to give you a version of the report. If you guys want to run it monthly, you can see there’s transaction data here that will give you an idea of how many orders you have, how many POs they’ll have, your database sizes, so all your tables, you can kind of again analyze. Are they getting larger and if so, do we need to do some maintenance on them? Then for me, one of the most important pieces if you’re thinking of upgrading or even if you don’t even have a good handle of your customization environment is this analysis report, the customary.
Jeff Klaubert: Tim, quick question for you that I actually want to bring in because it’s really pertinent right now. Jill, thank you very much. Jill asked, “What type of bandwidth is required if you have 160 gigs for database?”
Tim Grubbs: I’m going to ahead and kind of switch to that. You don’t need a great bandwidth, but obviously you need decent bandwidth, but we have compressed it. We’ve got a high-speed transfer and then we have encryption as well. We’ve had pretty good success with it. If you have not really sporadic bandwidth, it can be problematic, but you can see one of the nice things is even if you would get disconnected, we can resume the upload as well. There’s a pretty good speed there as well.
Jeff Klaubert: Some like remote locations could still be running on T1, but it’s hard to imagine if that is still the case, but a lot of times, people certainly have a couple of [MEGS 00:47:57]. Did I just understand you correctly though that if it does get interrupted, it will resume where it left off, it’s keeping that state full?
Tim Grubbs: It is. Yeah, absolutely.
Jeff Klaubert: Yeah, good.
Tim Grubbs: I’m just going to chill quickly. Once you get the database uploaded and keep in mind for the Analyzer, you don’t need to upload your database. That’s actually going to run on your system and then just upload the reports. All of that is essentially an executable that runs in your environment. It’s more than if we’re going to do the conversion, then we’re going to take the back up. We’re going to bring it up to the Epicor Cloud Services. We’re going to run the conversion and these will be kind of similar results depending on size, but it gives you a really nice report and we’ve got a monitoring team that’s actually checking this out, and if there’s any issues, they’ll basically look into it.
Tim Grubbs: In some cases, if you have data issues, a lot of customers have data either because of the application or because of maybe some data you brought in that impacts upgrades and things like that, so our team will actually write scripts to clean up that data and the great thing is we’re expecting this will be a multiple pass situation where initially you just kind of see how the environment is and you get started training and looking at your data, but then you’ll do a second and third pass. Once those custom scripts are developed, they’ll be basically placed in the system. They will apply to you only and then they’ll run. Now as we find things that are more general in nature, obviously we’ll incorporate them to everyone.
Tim Grubbs: One of the big differences for us is if you’ve tried to upgrade in the past, in some cases, you’ve added challenges because there’s not lot of information of why it wouldn’t upgrade and things like that, so we’ve added many, many scripts to help clean up data to give more visibility and we’re finding it’s going a lot quicker, it’s more optimal and again you get great visibility in this as well. One of the other features we’ve added recently is reconciliation reporting as part of that process. At the end of the upgrade, it’s going to run through a list of reports and this is what we would have told you to do manually.
Tim Grubbs: We would have said, “Hey, run this report on E9, the AP aging and then run it on 10.1 after you convert and then compare the transactions.” As you know, those reports might be different. We may have changed them. They might be sorted differently. Some of them have total, some of them don’t. We’ve taken that out. Now, it’s just part of the conversion. It’s going to do the comparison and when you find something that’s different like in this case, the AR aging, you can click into it and see the actual transaction, the invoice number, what fields are that are different and things like that. A lot of this is again just tools that are going to help you convert, have more confidence that you’re converting and kind of running through that. I’m going to jump out of here and jump into the –
Jeff Klaubert: And Tim, while you’re doing that, I just want to say, probably why don’t we add five or another four minutes just to take a quick stop and answer Joy’s question around Solution Manager? I think it’s the only other question right now and then I want to be respectful of people’s time. We don’t need to stop, so we’ll keep going on for a little bit longer to let Tim get through his slides, but for those folks that do need to drop, I just want to make sure we get any questions. If you have any questions you want to ask, please do so in the chat. Joy, we’ll talk to you about your Solution Manager question. Brad, are you back on? That wasn’t in your section. Well, if not, perhaps Tim can dress up.
Tim Grubbs: All right, sure. Absolutely. I’ll go through this very quickly and then we can continue it after the official stop here. This would be the main interface once you’d be set up as a user and then your user look a little different obviously than mine but kind of the idea is that you’re going to have access to the reports once you download the Analyzer and run it, so I’m just going to go into my demo environment that I have and change the version. You can see this is actually the demo company we use. We’ve got a 187 different versions of the report. It gives the date, when it was run and so you can run it as many times as you want and we want you to because again it’s good information for you guys.
Tim Grubbs: From a high level then it’s going to give you information about your environment, about your companies, about your licenses and it’s going to give you some charts and graphs here. The key part I want to focus on is because Brad spent quite a bit of time talking about, “Hey, here’s what you have to think about. Here’s what you have to identify.” All that now is laid out for you. I can come in here now and I can see that these are all the customizations I have. This one is written in C#. It’s got 33 added items that I have added. It’s got a 100 lines a code and we’d considered a complex customization, meaning if you had us convert it, then it would be obviously more expensive than an intermediate one.
Tim Grubbs: It also gives you access to see the code. Again, if you’re not in Customization Mode or on your system, you can just kind of come in here and you can see, all right, it looks like. We’ve added some wizard-driven type of things here and from that. It’s giving your information about it I think. We mentioned the BPMs as well, so the BPMs, it will tell you here’s the type of BPM. This one is an ABL one, so it’s got code behind it and as such, it’s not combative meaning it won’t cover automatically. You’re going to have to work on it and do something with it.
Tim Grubbs: Otherwise, if it’s a wizard-driven one or a menu-driven one, it’s going to show you, “All right, this is what’s it made up of,” so that should convert automatically. Now again, you got a checkbox field, so might want to consider changing that. The other thing that you can do it uses for is then you can say, “You know what? We’ve reviewed that one and we’ve reviewed that one and we’ve reviewed that one. We’ll keep this one, but we don’t want to keep the others,” and it will kind of give you a score card so you can use this as a place where you tell certain people to review certain things and that will give you an idea of what’s it going to cost going forward. How much effort is it? That’s kind of idea. There’s a lot more to this tool.
Tim Grubbs: You can kind of see down here, it’s got APM, Altec information. It’s got menus, reports, BAQs and all those items, but I wanted to show you that tool at least at a high level. I’m going to pause there and I’m not sharing you what the Solution Manager question was, but let’s go ahead and address that one we can.
Jeff Klaubert: And Joy, type a clarification for not answering it correctly, but I think she’s asking, “Hey, what is the Solution Manager? Tell me more about that.” Will you keep a little brief and we will follow up with more detailed information afterwards. I just want to make sure we get through the questions here and then we’ll follow up directly.
Tim Grubbs: Sure, yeah. Great question. The Solution Manager tool, it allows you to package together these custom objects basically, so it’s a tool right within Epicor, right within your menu structure and you can basically define a solution and you can say, “Well, I want 10 of these BPMs and five of these BAQs and menus and things like that,” and then it will create a package and then you can move it from one environment to another if you want. Right now, it would be a great use for anyone doing some development and they want to have a development environment, a test in their production environment.
Tim Grubbs: Solution workbenches are a great tool to move those objects. Now, you can obviously export and import individual elements through regular tools so I can import BPMs, BAQs, even customizations. What this does is it allows you to bundle those things together or do them in mass.
Jeff Klaubert: Okay, that’s terrific. Joy, let us know if you want more detailed information on that. Just the interest of time, let’s go to David’s question. Have you seen any big challenges upgrading from 10.1.514 to the current release of 10.1.600?
Tim Grubbs: Yeah, that’s probably not best answered by me. I focused more on the 8 to 10 and the 9 to 10. What I would say are general statement because a lot of user said, “Hey, can we use these tools that go from 10.1 to 10.1?” and the answer is we may build them out for that purpose, but it’s not as difficult an upgrade in general because there’s not a technology shift. Having said that, it’s going to depend. If you have a lot of custom integrations, you got service connection routines, you got codes that’s calling web services, all that stuff will certainly need to be tested because occasionally, we change web services or we change the parameter lists.
Jeff Klaubert: What we can do with David is I’ll take that as a follow-up and we’ll get you some more specific information on that. Terrific, John got back and clarified. He was wondering if we’re going to cover the challenges that are going from 905 to 10 as it pertains to the configurator specifically.
Tim Grubbs: Yeah and I think there were some slides. I don’t know, did we get to those slides or not?
Brad Feakes: Hi, this is Brad. I’m back and yes, we’re going to cover that. We could definitely jump into that in the extra time that we have and I’m going to speak to that some more.
Jeff Klaubert: Great! Let’s do that. Let’s take, I see a couple more questions here, and then at the top of the hour, I’m going to go back into extended time and let Tim finish up, and then Brad, you can finish up your slides as well. By the way, I know some folks have had audio challenges. I apologize for that, but the replay, you’ll be able to get the replay, so you’ll have a clear recording and you can reach out to us directly. You’ll have our contact info, so you can talk to us directly and we can give you more detailed answers. Let’s see here. Julie was asking for some more detail on reconciliation reporting and is that for testing?
Tim Grubbs: Yeah, the reconciliation reporting, what we did was we automated the process that we used to ask people to do after they upgraded. Traditionally, we would say, “You’re upgrading from 9 to 10.1. Print out these reports and then compare them in each version.” That would be a manual process. What we’ve done now and I can kind of continue the demo here as well is part of the conversion process, so once you decide all right we’re good with the Analyzer, we’ve identified all our things and now we actually want to use the tooling to convert items here. As part of that process like click on this one, I think it had the reconciliation reporting, we’ve added the step here called ERP Reconciliation.
Tim Grubbs: These are all the steps that go through in the process and looks like it’s turned off right now for this, but there will be a Reconciliation Tab and it may show better on my PowerPoint, but basically that will be a task that’s get run as part of the conversion, and if I jump back here, sorry wrong one. If I go back to the screenshot, then literally you can sort of see this, it’s not as clear as I’d like, but literally, part of those steps is going to run each of these reports in both environments and then you’ll see it on the Reconciliation Tab. You can actually go in here and you could say, “All right, these are the ones that matched.”
Tim Grubbs: You can click on the differing ones and then you can draw right into the actual transaction. Once you know they’re different, then in some ways the work begins. You have to identify, “Okay, why are they different? Is that data on our part? Is it something with a conversion process?” and when I say you have to, you would obviously do that in conjunction with your partner with Epicor to help identify that.
Jeff Klaubert: Okay great! Let’s do one more question and then we’ll jump back in and we’ll finish your session and Brad can finish his and then we can surely take questions at the end of that as well. Paulo, I hope I pronounced your name correctly. Paulo’s question was, “Is upgrade service Epicor enabled for customers?”
Tim Grubbs: It is. Now, again, you have to go through your CAM or your partner to get we call a Provision but basically get a User Account set up, but it’s really a quick and easy process. You just again let them know. They’ll basically add you as a user. It will send you an email and then you can connect to those upgrade services and then download the Analyzer and run that.
Jeff Klaubert: Terrific. All right, let’s go ahead and finish up your section, Tim, and finish Brad’s. Chris, did see your question? If we don’t get to it, we’ll certainly follow up. We’ll have Q&A after Tim and Brad finish up.
Tim Grubbs: Sounds good. I’m going to jump back into the reporting section a little bit because I flew through it so quickly and I want to show you some of the other reasons to run this. Again, even if you’re not thinking, you’re going to upgrade initially, so let’s hit the drop down and get the right version.
Jeff Klaubert: By the way, this is great engagement folks. I appreciate the questions and you make the event a lot more fun. This is your chance to ask some experts right here online.
Tim Grubbs: Yeah. You saw this before, so there’s going to be a number of different tabs here, so it will show you your environments meaning what version, database version, all of that and then down at the bottom, it’s actually going to give you a list of your table sizes. Obviously, if you’re in a SQL environment, that’s not a hard thing to get, but if you run this multiple times, then you might notice some of these tables changing and some of the sizes changing, so that may again tip you off to do some planning or some things like that.
Tim Grubbs: The next tab has to do with licensing. It’s going to show your companies. It’s going to show you how many users you have and things like that. It’s also going to show you what modules you’re currently licensed for so you can kind of go through there and see, all right, which ones are we licensed for and then how are we leveraging those? It could be a good discussion point even for potentially additional training from Epicor, from your partner or even internally and just make sure you’re utilizing that as well.
Tim Grubbs: The Company Tab is kind of different from the standpoint that it also gives you some transactional information here. You can come in here and you can see not only your companies, but then you can see things like how many parts do we have, how many parts are on hand and some of that stuff. You can have fun with this too. You can kind of eliminate things and the other items will change. Keep in mind, this is actually our old demo database from E9, so you can imagine we don’t use it anymore. I don’t have transactional data listed here. On your report though, you’ll have how many orders, how many POs, quotes, all that kind of stuff as well as sub-ledger data and things like that.
Tim Grubbs: You’ll also see listing who your active users are, so that can give you an idea. Are you set up well for licensing and do you need to add more and or you can even see, all right, if someone’s not logged in why is that type of thing? The other tab is more of a list to help as you get ready to upgrade typically. The fact that I’ve got all these unposted groups I would want to post as many of those as it makes sense to post before I do the upgrade. It’s a pre-upgrade checklist. Then it also has these help checks as well. These are things saying, “Hey, these are maybe some things that need to be taken care of or had been taken care of,” but it’s just giving you some ideas of things that you might want to consider adjusting.
Tim Grubbs: Now, the upgrade itself, the conversion will take care of all these items if they’re not set up correctly, but if you’re not upgrading, then these are things maybe to check into as well. Then this Third-Party Module List, this is something that we’re going to keep adding to. Currently, we’ve only got a couple identified in here, but as the Analyzer continues to be developed, we’ll continue to expand on that. Then finally, the Custom Tab, again we talked about this a little bit. I’m not going to spend a lot of time on that other than to say these are all the items, there actually will be a Configurator area as well.
Tim Grubbs: We’re going to talk about Configurator in a minute, but it will also list all your configurations that you have and it will tell you are we generating quotes, are we generating orders, are we using them for jobs. It will give you an idea how often you’ve used those, so it will give you more information. The other piece that I would point out here is that you can also export this. If I click this button, what it will do is it will generate an Excel file for me and then I can go ahead and launch that. Basically, what you’re going to see then is a worksheet for tab here.
Tim Grubbs: Now, the information, it’s not necessarily different from the standpoint of content, but it looks a little bit of different here, so things like complexity. Instead of it saying medium, intermediate and simple, it actually has a ranking here based on it, but this can be a great way to kind of share things, sort of split it up and even communicate with your partner when you’re saying, “Hey, we’re going to upgrade. Instead of using the Analyzer, we just set it here.” One thing to keep in mind though is it won’t import back into the Analyzer.
Tim Grubbs: If you wanted to kind of leverage this capability, meaning to keep all or to go in and keep and review, then you’d either have to do it here or in that area as well. That’s a pretty high level fly through. The last piece again I mentioned briefly was this Cloud View piece. Again, in your case, you wouldn’t be seeing all these. This is kind of my view of things, but the idea here is that what I can do is that we can set up an environment and when we convert, we’re going to set up two environments. There’s going to be one called a Vanilla Environment and what that means is that it’s just going to convert the data and then there will be another one called the Custom Environment.
Tim Grubbs: You’ll have the access to both of those in a Cloud View as well as a Conversion Environment, but really all of this means is that you don’t have to have your hardware purchase and then install and in place before starting the conversion and the validation process. You can actually start your project ahead of time and kind of take your time in terms of identifying things without having to purchase hardware. All right, any questions on this tool?
Jeff Klaubert: Chris asked, “Is recon only on Cloud Conversion or local on-site as well?”
Tim Grubbs: I’m sorry. I don’t understand. What do you mean by recon?
Jeff Klaubert: I was hoping you would understand that. Chris, do me a favor. Just elaborate and we’ll get that answered.
Tim Grubbs: I’ll answer a question that I get asked a lot. These tools –
Jeff Klaubert: Reconciliation.
Tim Grubbs: Reconciliation, got it. No, reconciliation would be available on both because again it’s part of the conversion, not necessarily part of the deployment piece. As soon as it runs through the conversion tools, it will do that reconciliation piece for you.
Jeff Klaubert: Awesome! Chris, –
Tim Grubbs: The other thing that sometimes people and I think now that you’ve seen it, you understand it, we call them kind of Cloud Upgrade Services. It has nothing to do with whether you’re going to go SAPs or on premise. The tools will work for either.
Jeff Klaubert: Great! Joseph has a question. He just want you to repeat, how it gets access to the Upgrade Service Portal?
Tim Grubbs: Yeah, yeah. Just ask your Account Manager, so you can email your Account Manager and basically what they’ll do is they will set up an account or you can tell me and I will Provision you. If we can get your email address, we can try it in a live basis here.
Tim Grubbs: What’s going now, it’s going to check against the Epicweb account, and basically if you have one, it’s going to say, “All right, this is who it is,” and then basically I come in and I can add you and then it’s going to basically set you up. What will happen now is Joseph will get an email that basically says, “Hey, we’ve set you up an account. Now, go in and change your password and get logged in,” and all that. Again, your Account Manager or your partner, Estes Group, actually has the capability to go in and we call it Provisioning Users.
Jeff Klaubert: Wow! That was great! Live.
Tim Grubbs: We’ve loved to get everyone Provision. I mean absolutely, so anyone who wants to, let us know.
Jeff Klaubert: Okay, great! Let’s see. I think there’s another question I missed here. I think that might have been it. If I missed your question, type it again and Brad, Tim, are you all set?
Tim Grubbs: Yup. I’m good.
Brad Feakes: Yup.
Jeff Klaubert: Phenomenal job, thank you so much and thank you also for being an on-tap expert when we had some tech challenges in our side, so great stuff. Brad, let me give it back to you. I will turn –
Brad Feakes: All right, great! Thank you for that Tim. That was some really good stuff. I wanted to just quickly talk about in the time we have –
Brad Feakes: Okay, great! I want to quickly talk before we get back into the slides, just briefly about some of the things that we have encountered in terms of now that we have covered customizations in general. Really, you’re next two big ones are reports and then configurator. As I’m saying both of these because the change is so significant from the base platform to your legacy platform, to your new one that I really try to encourage customers to get into the Training Mode early especially with the couple of key users, whoever your key people are who are going to be maintaining reports or maintaining configurators to get themselves involved in the training process early.
Brad Feakes: This could mean a couple of different things. I’ve seen customer go off for instance and take a C# class or customers go and take an SSRS class for Microsoft. I’ve seen varying results in terms of the benefits that came to that and the reason is and this was much the same in any version of Epicor takes in architecture and they have their layer to it, so within that layer, you’re always working within some kind of Epicor context. If you’re writing C#, you’re writing C# within an Epicor context. If you’re creating an SSRS report, you’re doing it again, an Epicor architecture that’s going to deviate to one degree from the standard, from the Vanilla.
Brad Feakes: The training you get, sometimes I find customers benefit more after they’ve already had an initial training in the Epicor-ized version to going back to more general training. I think that I find that customers find more benefits to that. One piece about training again would be you can do kind of two modes. You can go and try to do the long road, dig into it itself and try to figure out how that works and what’s available. What we’ve seen work a little more successful in terms of ramping up people quickly is to use a form of guided trait where a customer comes, meets with one of our consultants who kind of identify the scope of work that is required within this framework if you’re working on configurator. You don’t need to know the entire C# body and all.
Brad Feakes: There’s a pretty small subset of logical constructs that you need to get your head around and that will allow you to successfully build Configurators. You can identify that and get some introductory training with the consultant in a pretty short amount of time and then go off and do some of your independent training, digging into the pieces, working through the modules, and then circling back with the consultant and answering questions, coming up with more advanced tips, kind of review in training, making sure that you caught the whole body and all as well as the important pieces before moving on.
Brad Feakes: Now, that being the case, I will quickly jump back into the slides and just speak to the remainder of my presentation. All right great! Thank you and speak first … There were go. Reports most often differentiate themselves between their types. When you’re coming back from the legacy version, you have Standard Reports that you’ve made cosmetic changes to or you’ve made data additions. You added a table to the RDD. You’ve done some extra calculated fields or what have you. Those kind of have one flavor. A very different flavor then would be the Custom BAQ Reports that you’re dealing with. Those have been built on top of the BAQ and then Report and RPT file in the legacy version has been built on top of that.
Brad Feakes: Above and beyond that, I’ve seen customers who had extensive ODBC Connection Reports, Dashboard Reports, where our tools that are available on our later versions and you can have some customers who build SDK Reports from scratch. God, help them. Each one of those has different migration path, a different set of issues that come to them and it’s good when you’re getting out of the gate to make sure that delineate it between those and understand really what that scope is because configuring a set of ODBC Reports to work correctly will likely involve different steps than getting a set of BAQ Reports to work in a new environment.
Brad Feakes: All right, one other thing to really have to consider with Reports is defining the future state and that’s, how are you going to use SSRS relative to Crystal? With SSRS, that’s the Microsoft Platform, that’s Epicor’s future state platform that they’re driving into the future. Crystal, it’s given by a competing product. It’s available. It works. You can configure the system to still use it, but there are no promises. When we work with customers, our obvious first position is to try to guide them down the path of purely SSRS model where this sometimes gets to be an issue. It’s time constraints, resource constraints.
Brad Feakes: You have a boat-load of customers and Reports and not enough time to convert them and then it’s a matter of finding what’s a reasonable go-between. Really, there’s some ease of use versus maintainability questions. I think a lot of people like Crystal and its ease of use, but then the questions of, “Okay, with next version, are there any things you’re going to need to re-tweak to get them going again, etcetera?” I think that’s a concern that you should consider hard. I would say a lot of customers are initially frustrated with SSRS as a platform and they bump into that and they get frustrated.
Brad Feakes: That’s where training with someone who’s been in bulky SSRS and the Crystal Environments and knows functionally how to map between those two is a great benefit. With our own process, we end up doing is when we work with a set of reports that customer needs us to help them work on, we ended up to reduce the time taken to convert a report. We end up running the existing report out of the Crystal Environment through a proprietary process to convert that report into an SSRS format and then work from there to tweak and fine tune and tailor that report so that it can be moved and worked with inside the Epicor 10 Environment.
Brad Feakes: That allows us to cut down some of that time and the cost associated with that while still getting to that future state. For us, as consulting firm this has been the best path forward for addressing those kinds of challenges. Moving to Configurators, there’s a lot to discuss there and this would be worth its own webinar honestly. Again, I find there’s probably two different modes that people go through when they’re doing Configurator Upgrades and one is again we may call a Straight Conversion where you migrate a test environment, your view, what’s been upgraded as your starting point and you tweak it as needed.
Brad Feakes: I think the way that the Standard Conversion moves things, you would probably never really build a Configurator that way in 10, and for that reason, I think a lot of customers that I have run through have been doing one form of reimplementation and that is rebuilding the Configurators from scratch in a Test Environment using as much from the legacy that they can. This might include copying and pasting the inputs from one environment to another. That’s a pretty easy thing to do and tend to get all of the user inputs onto your building surface and then analyzing what’s from the legacy system that could be modeled, rebuilt or tweaked as needed.
Brad Feakes: Really, these are kind of the pieces then within that become important or trying to identify out of your existing Configurators. Where are the key pieces where your logic has been stored? I haven’t run an upgrade on this, so it will be interesting to see what gap that gets to. The things that you’re trying to understand is how do you build these in your legacy version. Are you firing a lot of things on leave events? Are you firing them on page leave events? Are you firing when the page loads? Where are the places that you have this logic? Do you find yourself doing a lot of duplicate logic?
Brad Feakes: I think the Legacy Configurator is quite often steered Engineers and Configurators down the path where they had to duplicate a lot of logic and those are obvious things that you want to eliminate from just best practice programming principle and Epicor, the 10 version, offers what it calls UD Methods which are really clever way of taking a common code block and making it to essentially a callable function that can be called or recalled without the need for duplicating code in multiple places. Also, the idea of where your core rules resides, do you have your roles up in the User Interface? Do you have that buried down in the Method Rules? Again, what’s the best place to try to organize that?
Brad Feakes: Really, what we’re looking here is we’re trying to balance functionality and maintainability. There’s some tools out there that you can convert and ABL code block into a C# code block and those I think quite often are very good starting point. Sometimes, the ways that code gets converted might not be in a manner that the customer wants in terms of long-term maintainability, I think like progress, the C# Language you can write the same output and then in a couple of different ways and some ways are a little more self-explanatory to end users.
Brad Feakes: What we’ve done from an Estes Group standpoint is we’ve created a kind of a library and we’re going to update it as we go with solutions that we provided in C# and the solutions that they came from in ABL. This isn’t a one-to-one code conversion but it’s much more of a kind of an architecture process to say okay, this is what I was doing. I was doing a for-each loop and I was creating a TT Table in ABL. Well, now, this is how you can use a for-each loop and create a data table in C# and these are sort of areas where you might get from this place, this design format in progress to this design in C#.
Brad Feakes: In my mind, those are really the key pieces to successfully understanding how to convert a Configurator, would be that identification process than a number of sessions with customers coming up where we’d come on site and just have gone through their Configurator code with them to understands, “Okay, these are places where code exists and these are the places where we might need to do things further.” In the end, that’s where from an Estes Group standpoint we find a lot of our upgrades be they just a technical upgrade or an overall entire business process upgrade starts with an in-depth business process review where we come in, go through your processes, your procedures.
Brad Feakes: This can be tailored to the business and the scope of what they need to cover and really we find it helpful to get that baseline of understanding of where a customer is at and what they’re doing and use that as your platform for moving forward. Definitely, it would be there if that’s something that’s needed out there. Very willing and interested in talking with you further.