Packaging User-defined fields with the Solution Workbench

We are in the process of migrating from E9 to E10. I have been doing some development work in our E10 test environment and I have created a new user-defined field and have created some customizations which use it. I need to create a solution in the Solution Workbench to move this over to Pilot for user validation, and additionally for re-installation when we do our next pass of migration. However, it is unclear to me what elements I need and if the ordering matters. For instance, I know that I will have updated menu items which point to the new customizations, the actual customizations themselves, and then something else for the user-defined fields (what would that be)? Can/should I put them all in the same solution, and if I don’t does the order of installation matter?

I am also concerned about anything else that may need to be done externally. Ideally when we do the next migration pass we could just drop a single solution CAB file on our migrated Pilot environment and then do testing. However, as I had to regenerate the data model and recycle the IIS server from the Epicor Admin Console I am concerned whether that will be needed as an extra step.

I found this thread: " Solution workbench with Extended UD Field". However I am not yet even to the part where I am trying to import anything. All I have done is add a column(s) to some tables from User Defined Column Maintenance (as well as the addition steps to make it work in some customizations).

I recommend you have several solutions

  1. For your custom UD fields (import that first)
    Regen your Database Model, Recycle ISS, Clear your Cache, Pray to the Gods
  2. Customizations Solution
  3. BAQ, BAQ Reports
  4. Reports and all their changes
  5. Menus
    etc…
    This isn’t necessary but it is a lot easier to troubleshoot. The UD Field Ones though I do highly recommend

Thanks Jose! Which element(s) correspond to adding a UD Field? I see “UDCodeType” and “UDMap” that happen to have “UD” in their title, but I also saw some reference to a ZDataTable element, as well as some other ones which I don’t know what they are for.

UDCodeType - didn’t find my UD field under this.
UDMap - found something related to my UD field, as I set up a UD Column Mapping, but didn’t find my actual UD Field here.
Verticalization - no idea what this is, but nothing was there anyway.
XXXDef - ditto
ZBODef - had some class names, don’t think this is it.
ZDataSet - had fields including DataSetId, DataSetName, Description. don’t think this is it either.
had fields including DataTableID, DBTableName, and Description. Looked promising, but I couldn’t find my field (or any table I had added it to) in here.

Tried looking at a few others that also didn’t appear related.

I believe what I posted in this thread will help you

Its under ZDataTable, I use it often.

Thanks, Dan. I tried your solution, namely:

  1. In Element Maintenance I created a new Element “ZDataField” with a new Display Column “Field Label”. Basically I made my screen match your screen shot and saved.
  2. Then in Solution Element Search, I selected the newly appearing “ZDataField”. When I searched I found the four instances of the new UD Field I added, and added them to the solution.
  3. Build Solution succeeded with no errors.
  4. When I tried to install in Pilot, I got an error like the following for each instance:

Unable to process import for ‘ZDataFieldSearch’.
Exception has been thrown by the target of an invocation.
Object reference not set to an instance of an object.
Import cancelled or failed for ‘Ice.ZDataField_3564d9e4-1b77-4874-a4fe-6405a50a7525’.

Did I miss a step somewhere?

You don’t include individual Extended UD Columns… You include the entire table and Epicor will figure out what is new and what is updated and what is unchanged during Solution Installation.

Element: ZDataTable equals Extended UD Tables, which equal Extended UD Columns such as Part_UD, OrderDtl_UD etc… You can add your _UD Table, generate a .cab and then extract .cab to view .xml contents.

Under ZDataTable you should be able to find your _UD Tables.

2 Likes

Thanks, I seem to have gotten it working now, although I’m not sure exactly which part did the trick! I added the ZDataTable for each table with a new field. When I did this, the ZDataField disappeared, but when I tried to install the solution it still threw errors on the ZDataField entries like they were still there, but the data table part worked. However, a second pass with a solution with only the ZDataField gave no errors. I’m not sure if that pass was really necessary but the tables are definitely there now. Thanks for your help!

Hmm… I don’t seem to be able to check more than one reply to say that it solved my problem. There were at least three that helped so I apologize if your answer isn’t the one that got checked.:cry:

1 Like

Now one thing that does not work for me is Updating… Lets say I change the columns Format and I want to re-deploy… It never picks that up.
It will deploy it but if you check it, nothing changed. I always revert to Paste Update. I haven’t tried it in 10.2.300 - not sure if its fixed.