Customization Compile Error - Upgrade 10.1.500 - 10.2.300

We have just upgraded from 10.1.500 to 10.2.300 in test. So far I have found one customization that fails to compile.
Line 668: orderLine = salesOrderAdapter.salesOrderData.OrderDtl[salesOrderAdapter.salesOrderData.OrderDtl.Count - 1].OrderLine;

Line 734: jobEntryAdapter.ChangeJobProdOrderLine();

Error: CS1061 - line 668 (2381) - ‘Erp.Adapters.SalesOrderAdapter’ does not contain a definition for ‘salesOrderData’ and no extension method ‘salesOrderData’ accepting a first argument of type ‘Erp.Adapters.SalesOrderAdapter’ could be found (are you missing a using directive or an assembly reference?)

Error: CS1501 - line 734 (2447) - No overload for method ‘ChangeJobProdOrderLine’ takes 0 arguments

The only difference between 10.1.500 and 10.2.300 is we now have a bunch of external alias’s added to the code.

extern alias Erp_Adapters_SalesOrder;
extern alias Erp_Adapters_JobEntry;
extern alias Erp_Contracts_BO_AlternatePart;
extern alias Erp_Contracts_BO_SalesOrder;
extern alias Erp_Contracts_BO_Quote;
extern alias Erp_Contracts_BO_Part;
extern alias Erp_Contracts_BO_Customer;
extern alias Erp_Contracts_BO_RMAProc;
extern alias Erp_Contracts_BO_JobEntry;
extern alias Erp_Contracts_BO_OrderDtlSearch;
extern alias Erp_Contracts_BO_OrderHist;
extern alias Erp_Contracts_BO_QuoteDtlSearch;
extern alias Erp_Contracts_BO_SerialNumberSearch;
extern alias Erp_Contracts_BO_ShipTo;`

Any ideas?

It’s SalesOrderData (capital s)

Thanks Jose, it compiled in the old version like that. Is it now case sensitive?

Any ideas on the second error? Looking at the JobEntryAdapter in ILSpy still shows ChangeJobProdOrderLine as a valid method.

The error isn’t stating that it isn’t valid, it’s stating that it needs some parameters, it doesn’t work with no parameters.

Looks like you need a job entry data set.

image

I was looking at the old version of the DLL in ILSpy, loading the new version I see the parameter. I created a project in Visual Studio and it was actually looking for ChangeJobProdOrderLine(out string OpMessage). I passed it a string variable and it worked fine.

1 Like