none
Call to ModelMembersBulkMerge() is returning error "Supplied Model is not Valid"

    Question

  •  

    Hi,

    I am using ModelMembersBulkMerge() and the Staging Mechanism to insert members into MDS. MDS is throwing an exception and exception message wasn't very helpful so I enabled Logging to log "errors". My "TraceLog" looks like this.

    MDS Error: 0 : System.ArgumentException: 00000000-0000-0000-0000-000000000000 -  is not a valid value for argument input.
       at Microsoft.MasterDataServices.Core.BusinessLogic.MasterDataCommon.IdentifierLookup(Identifier input, Nullable`1 id, ObjectType type, Nullable`1 subtype, Nullable`1 parentObjectId, RequestContext context, OperationResult& results)
       at Microsoft.MasterDataServices.Core.BusinessLogic.MasterDataCommon.IdentifierLookup(Identifier id, ObjectType type, Nullable`1 subtype, Nullable`1 parentObjectId, RequestContext context, OperationResult& results)
       at Microsoft.MasterDataServices.Core.BusinessLogic.Model.UpdateStaging(Collection`1 modelMembers, Boolean create, Boolean deleteOnly, RequestContext context, OperationResult results)
        DateTime=2012-01-19T17:27:35.0278778Z
    MDS Error: 0 : <ArrayOfError xmlns="http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
      <Error>
        <Code>300005</Code>
        <Context>
          <FullyQualifiedName />
          <Identifier>
            <Id>00000000-0000-0000-0000-000000000000</Id>
            <Name>AuditLog_WIP</Name>
            <InternalId>0</InternalId>
          </Identifier>
          <Type>Model</Type>
        </Context>
        <Description>The supplied model is not valid.</Description>
      </Error>
    </ArrayOfError>
        DateTime=2012-01-19T17:27:35.0278778Z
    MDS Error: 0 : <ArrayOfError xmlns="http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
      <Error>
        <Code>120002</Code>
        <Context i:nil="true" />
        <Description>The user does not have permission to perform this operation.</Description>
      </Error>
    </ArrayOfError>
        DateTime=2012-01-19T17:27:35.4028970Z
    
    

    The TraceLog is showing two messages "Supplied Model is not Valid" and "The user does not have permission to perform this operation.

    But I've been using the same Model and used the MDS API operation on it. For some reason its not working for ModelMembersBulkMerge().


    Note: It works if I call the MDS Service ModelMembersBulkMerge() method in debug mode using the Development WebServer. It is throwing the Exception is Run mode after deploying my application is IIS. Which probably means its a permissions issue. But the account I am using has Update rights on the model.


    Please guide,

    Rehan

     

    Thursday, January 19, 2012 6:13 PM

Answers

  • Hey Rehan!

    When u deployed this application in IIS , what Application pool are you using.

    The credentials in which application pool is running should have administrator access to MDM database.

    Can you please verify this ?

    Thursday, February 02, 2012 12:02 AM