Capgemini / xrm-datamigration-xrmtoolbox

Export and import data for Microsoft Dataverse as an XrmToolBox plugin. Supports JSON and CSV.
MIT License
8 stars 4 forks source link

Unable to import owner lookup fields. #35

Closed simes1 closed 2 years ago

simes1 commented 3 years ago

Describe the bug Unable to import owner lookup fields.

To Reproduce If you include an owner field (for example ownerid on queue) you can't map it to any field on a team (only user) and it does not even map to the default teamid (error when importing). If you include owneridtype you get an error saving the schema:

image

Expected behavior Default mapping to teamid/systemuserid based on value of owneridtype field. Ability to map owner fields to both user and team fields dependent on value of owneridtype field.

Additional context Trying to import Team owned Queues.

realekhor commented 3 years ago

hi @simes1 we are investigating this issue.

realekhor commented 3 years ago

Hi @simes1, sorry for the late response. I have actually looked at this issue and you are getting the popup message because you selected the owneridtype attribute while generating the schema file. We currently set the type for this attribute within the generated schema to "Unknow". Hence the reason we display a popup to let you know we are unable to map this attribute type.

My question will be, do you need this field in the schema file. Will the Owner attribute not be sufficient for your schema?

Please let me know if this is satisfactory. We will most likely change the display message to something like - Unable to map attribute EntityNameType for more clarity.

See https://github.com/Capgemini/xrm-datamigration-xrmtoolbox/blob/master/Capgemini.Xrm.CdsDataMigrator/Capgemini.Xrm.CdsDataMigratorLibrary/Core/AttributeTypeMapping.cs

and image

simes1 commented 3 years ago

For the default mapping: If selecting only owerid will map ownerid's that are either systemuser or team records automatically based on the appropriate systemuserid/teamid that's fine but I think at the moment this only works for users not teams.

For a custom mapping: I need to be able to pick the fields to map to on both Team and User entities. At the moment I'm only presented with a list of fields for the User entity and not the Team entity but the record could be a User or a Team

simes1 commented 3 years ago

Sorry for the delayed update.

Thinking more about this trying to use your tool again today the fundamental problem is that the schema controls what is exported. If you use a JSON file you have information on the type of entity the lookup refers to but if you use CSV (because it is far easier to manipulate) you are stuck.

realekhor commented 3 years ago

hi @simes1 thank you.

your assessment is spot on. we are currently working on a solution for this.

realekhor commented 2 years ago

@simes1 the latest fix should address the issue. please let me know it the issue is now fixed.