We have a program that was written that takes our exports from a CAM program we use and imports them into Epicor. Before we can do any upgrades we have to confirm that the code is working with Epicor before we deploy to end users.
We use OrderHed_UD columns in our code to bring in some information. We have this same code working in 10.1.400 and tested it in 10.1.600. We are testing 10.2.200 and when running the code with the new dlls released with 10.2.200 and I am getting an error that one of our custom fields (CheckBox01) does not belong to QuoteHed. I copied the code over as is and just replaced all the dlls we used in the code and made no other changes besides changed the framework target and recompiling the code.
Were there any changes to the Erp.Contract.BO.Quote.dll from earlier versions that would cause this issue? We are also using the Ice.Contract.BO.UD03.dll as well. Unless I am missing a step somewhere…
Did you explicitly create that field CheckBox01? In older versions, it was there by default, at some point, they went away. I guess thats the long way of saying - are you sure that field exists?
By go away, I just mean those fields (Char01, ShortChar01, Number01) arent there by default in later versions… not sure which one. You can add them yourself though.Also, if you are uplifting your DB, then they’ll still be there.
I tested the code in 10.1.600.23 and was able to get it working without issue. Just had to change the dll files, the target framework, and recompile (which are the same steps I did in 10.2.200).
I also updated our 10.2.200 version to 10.2.200.13 and am still getting the same error.
Might just make more sense to go to 10.1.600 at this point and scrap plans for 10.2 for the foreseeable future.
You sure are losing alot of great features and bug fixes by avoiding 10.2.
I am curious why you arent using the QuoteDataSet and BO. By using these objects, you shouldnt have any issues.
QuoteDataSet myQuoteDS = new QuoteDataSet();
QuoteBO.GetNewQuoteHead(myQuoteDS);
var hed = myQuoteDS.QuoteHed.Rows[0];
///the same code you had before here....
All this code is running externally and it not located anywhere inside of Epicor. I am using the QuoteDataSet written as:
using HedRow = Erp.BO.UpdExtQuoteDataSet.QuoteHedRow;
Which I believe is from the Erp.Contracts.BO.Quote.dll
I just don’t understand why it doesn’t work in 10.2.200 but in the other 2 revisions I have tested it in. I should also mention that I took over this code from a previous programmer so you guys all know how that can of worms can go sometimes.
I’m a bit confused as to what the quote object is here… It should either be an adapter or a WCFImpl…or maybe a REST class… That looks like none of those…
I’d Quote something custom?
It looks likes he’s instaciating a new row directly, mostly likely passing that to the BO later. By doing it direct, I think it bypasses the epiMagic of bringing in those UDs. Why it worked before - I dunno
We use a program called CAMduct that our programmers create pieces of duct work for HVAC companies. We have a custom export file that comes out as 3 separate .txt files. This program sweeps the files and then imports them into Epicor as a new quote.
The code was contracted out to a third party before I took over development at the company last year. So I do not know why things were done they way they were. I was hoping to not have to go through this piece by piece but it is looking like I will need to get my hands dirty and get a better handle on the BOs and how they work within Epicor as I am still a newbie into the Epicor dev world.
Seems testing on 10.2 is where the issues started but I am wary as this code is integral to how our company operates and is going to put a hinder on us moving forward as we cannot stay on 10.1.400 or 10.1.600 forever.