Customer Engagement & Dynamics CRM Forum

Expand all | Collapse all

Package Deployer Mapping File Error: The column heading does not match the attribute display label

  • 1.  Package Deployer Mapping File Error: The column heading does not match the attribute display label

    TOP CONTRIBUTOR
    Posted Mar 28, 2020 07:15 PM
    When creating a deployment package, I get the following error on the data import:
    Error : Message: The column heading does not match the attribute display label.
    ErrorCode: -2147220624

    Microsoft.Xrm.Tooling.Connector.CrmServiceClient	Error	2	3/28/2020 4:23:43 PM  ************ FaultException`1 - Create : importfile |=> The column heading does not match the attribute display label.
    Source	: mscorlib
    Method	: HandleReturnMessage
    Date	: 3/28/2020
    Time	: 4:23:43 PM
    Error	: Message: The column heading does not match the attribute display label.
    ErrorCode: -2147220624
    Trace: 
    Error Details	:
    ApiExceptionSourceKey	: Plugin/Microsoft.Crm.ObjectModel.ImportFileService
    ApiOriginalExceptionKey	: Microsoft.Crm.CrmException: The column heading does not match the attribute display label. ---> Microsoft.Crm.CrmException: The column heading does not match the attribute display label.
       at Microsoft.Crm.ObjectModel.ImportServicesHelper.RaiseCRMException(Dictionary`2 exceptionParameters, CrmException ex)
       at Microsoft.Crm.ObjectModel.ImportFileService.ValidateHeadersForSystemMap(String entityName, String[] headerColumns, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.ImportFileService.Create(IBusinessEntity entity, ExecutionContext context)
       --- End of inner exception stack trace ---
       at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context)
       at Microsoft.Crm.Extensibility.PipelineInstrumentationHelper.Execute(Boolean instrumentationEnabled, String stopwatchName, ExecuteWithInstrumentation action, PipelineExecutionContext context)
       at Microsoft.Crm.Extensibility.Pipeline.<>c__DisplayClass3_0.<RunStep>b__0()
    ApiStepKey	: 24cabb1b-ea3e-db11-86a7-000a3a5473e8
    ApiDepthKey	: 1
    ApiActivityIdKey	: f2a7936e-b8c2-4e9a-8c0c-b83476de878f
    ApiPluginSolutionNameKey	: System
    ApiStepSolutionNameKey	: System
    ApiExceptionCategory	: ClientError
    ApiExceptionMesageName	: HeaderValueDoesNotMatchAttributeDisplayLabel
    ApiExceptionHttpStatusCode	: 400
    unmatchedheaders	: GUID​

    To generate my mapping file, I manually exported the desired columns from an Advanced Find view, stripped the hidden columns A-C, except for the record ID, which I named GUID.  I then used this exported data template to to manually import some test records, which created an data maping template in the system, which I retrieved from the system itself using the ExportMappingsImportMapRequest.  In other words, it should be perfect - it was created by the system. The filenames match. I've tripple checked this.

    The other columns are not throwing errors. I've tried renaming the column and mapping SourceAttributeName as "recordid" Which didn't work. Only when using the exact column names from the field in Dynamics, did it work, which leaves me to believe the mapping file isn't being used at all (even though the execution steps indicated "Immporting data maps: complete" without error.), but is just auto mapping.

    Anybody know what would cause it to bypass the mapping file altogether without throwing any errors?

    ------------------------------
    Ryan Perry
    Business Systems Analyst
    ------------------------------
    Academy - Online Interactive Learning from Experts


  • 2.  RE: Package Deployer Mapping File Error: The column heading does not match the attribute display label

    TOP CONTRIBUTOR
    Posted Mar 30, 2020 12:38 PM
    Solution:

    As I was uploading a mapping file, I first assumed the configimportfile/associatedmap should be left blank, given there was not an existing map on the server that I was trying to reference, but was instead providing one in the filemapstoimport/configimportmapfile node. I later specified the map filename as the confiigimportfile/associatedmap, which is also incorrect.  The correct configuration is to use the name of the importmap, specified within the importmap xml, as it is first imported from the file, and then referenced by mapname (not the filename) on the server.





    ------------------------------
    Ryan Perry
    Business Systems Analyst
    Auric Solar
    ------------------------------

    Academy - Online Interactive Learning from Experts


If you've found this thread useful, dive deeper into User Group community content by role