Quantcast
Channel: SQL Server Master Data Services forum
Viewing all 1311 articles
Browse latest View live

MDS WCF issue after upgrading from MDS 2012 to MDS 2016

$
0
0

Hi,

We have web service that consumes MDS WCF and enables methods to insert , update entities for the MDS model. Recently we upgraded from MDS 2012 to MDS 2016. Now when we try to run the web service, we get the below error message -

"The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09:EntityMembers. The InnerException message was 'Invalid enum value 'Access' cannot be deserialized into type 'mymdswcfservice.SecurityPermission'. Ensure that the necessary enum values are present and are marked with EnumMemberAttribute attribute if the type has DataContractAttribute attribute.'. 

We have tried to debug this error, but its getting generated at one of MDS WCF methods  - 'EntityMembersGet' and unable to debug this MDS WCF method.Also tried to disable service configuration 'Reuse Type in referenced assembles', but it did not help.

How to fix this?

Thanks


Code review document for MDS

$
0
0

Hi,

Is there a code review document or tool like N-Unit for MDS ?

What are the code review rules which need to be considered for MDS?

Thanks

MDS packages deply failed with user does not have access

$
0
0

I installed MDS 2016R2. After install , on deployment I am having error as follows

The user does not have access to the application.

Any one know  where its referring to have access ?

command used

cd C:\Program Files\Microsoft SQL Server\130\Master Data Services\Configuration

MDSModelDeploy deploynew -package chartofaccounts_en.pkg -model ChartofAccounts -service MDS1

Business rules for more then one domain based

$
0
0

Hello members, 

I'm stucked with this problem and i hope on a solution.

I got an entity that has two domain based to other two entities.

I created the first business rule with the first domain based and it works perfect.

But when i try to create a second business rule with the second domain based, and error appears:

200095 : Cannot specify more than one entity in MetadataGet 
• 400003 : The attribute reference is not valid. The attribute was not found. 
• 400003 : The attribute reference is not valid. The attribute was not found.

Obiusly the attribute is valid. Infact if i delete the first business rules, the second one is published correctly.

"Cannot specify more than one entity in MetadataGet"

I think that MDS block a second business rules if you try to apply to a second domain based attribute.

Do you know how to fix this? Is there any way to do it?

Thank you for your time,

Enrico

MDS Web App: Choosing one person’s models tab causes an error

$
0
0

When administering few developers/administrators’ accounts "Models" tab via MDS web page, one person causes an error with the following error report.

[ArgumentOutOfRangeException: startIndex cannot be larger than length of string.
Parameter name: startIndex]
   System.String.Substring(Int32 startIndex, Int32 length) +14690488
   System.Linq.<>c__DisplayClass7_0`3.<CombineSelectors>b__0(TSource x) +20
   System.Linq.WhereSelectArrayIterator`2.MoveNext() +75
   System.Linq.Buffer`1..ctor(IEnumerable`1 source) +162
   System.Linq.Enumerable.ToArray(IEnumerable`1 source) +104
   Microsoft.MasterDataServices.Core.BusinessLogic.Security.ToModelPrivileges(DataTable table, ResultType resultType) +1630
   Microsoft.MasterDataServices.Core.BusinessLogic.Security.GetModelPrivilege(RequestContext context, Int32 principalId, SecurityResolutionType resolutionType, PrincipalType principalType, ResultType resultType, Collection`1 results) +214
   Microsoft.MasterDataServices.Core.BusinessLogic.Security.PopulateModelPrivilege(RequestContext context, Collection`1 users, SecurityResolutionType resolutionType, ResultType resultType) +325
   Microsoft.MasterDataServices.Core.BusinessLogic.Security.GetUserSecurity(RequestContext context, SecurityPrincipalsCriteria criteria, OperationResult results, Boolean pruneDenies) +753
   Microsoft.MasterDataServices.Core.BusinessLogic.Security.GetSecurityPrincipal(RequestContext context, SecurityPrincipalsCriteria criteria, SecurityPrincipals principal) +482
   Microsoft.MasterDataServices.Services.Service.SecurityPrincipalsGet(SecurityPrincipalsGetRequest request) +149
   Microsoft.MasterDataServices.WebUI.ServiceAdapter.ExecuteRequest(MdmServiceOperation`2 operation, TRequestType request, String caller) +145
   Microsoft.MasterDataServices.WebUI.ServiceAdapter.GetModelPrivileges(Guid principalId, PrincipalType principalType, SecurityResolutionType resolutionType) +412
   Microsoft.MasterDataServices.WebUI.ServiceAdapter.CacheModelPrivileges(Guid principalId, PrincipalType principalType, SecurityResolutionType resolutionType) +104
   Microsoft.MasterDataServices.WebUI.ServiceAdapter.GetModelPrivilegesFromCache(Guid principalId, PrincipalType principalType, SecurityResolutionType resolutionType) +148
   Microsoft.MasterDataServices.WebUI.Common.ModelTreeview.GetModelPermissions(SecurityResolutionType resolutionType) +284
   Microsoft.MasterDataServices.WebUI.Common.ModelTreeview.LoadTree(Node parentNode) +345
   Microsoft.MasterDataServices.WebUI.Common.ModelTreeview.LoadData() +442
   Microsoft.MasterDataServices.WebUI.Common.ModelTreeview.LoadData(String principalId, PrincipalType principalType, DisplayModeType displayMode, Int32 modelId) +158
   Microsoft.MasterDataServices.WebUI.Security.Common.Models.LoadTree() +267
   Microsoft.MasterDataServices.WebUI.Security.Common.Models.LoadData() +16
   Microsoft.MasterDataServices.WebUI.Security.Common.SecurityEditPageBase.OnLoad(EventArgs e) +225
   Microsoft.MasterDataServices.WebUI.Security.Common.Models.OnLoad(EventArgs e) +22
   System.Web.UI.Control.LoadRecursive() +68
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1381

All settings and rights seem to be similar between that person and other people. SQL Server is 2016 64bit with SP2 with CU1 (13.0.5149.0), IIS is version 8.5. 

Any idea what is wrong?

View History showing different results

$
0
0

Dear community,

I have the following question:

In MDS, I select Explorer > [Choose an entitiy with existing data including some history] > [select a member and click on "View History"] at the bottom right side. A Popup appears containing only some key columns. When I do the same thing another time, the popup contains additional data including yellow highlights. What am I missing? Might this be a bug?

Attached: Screenshots of the different behaviour.

Regards

right

wrong

Dissperpered MDS from SQl Server 2016 R1

$
0
0

Hi I am in the process of installing MDS from 2016 R1 Enterprise. Servers installed  2016 Server STD. I have two servers for SSRS and MDS and both on 2016 windows. Now when I run installation from MDS server, I cant; see the Master data Service options to install. But When I run same binaries (2016 R1 EE) from SSRS, I can see Master data service. Its really strange. Any idea would be greatly appreciate .

This from MDS server window

 

This s from SSRS server

Script to reverse transactions in bulk in MDS

$
0
0

Hi ALL,

I have requirement to reverse set of 10 MDS transaction in automated way.

How to achieve using sql procedure.



Varbinary to varchar

$
0
0

Hi ,

      i am trying to convert thumbprint field in sys.certificates from varbinary to varchar or string so that i can do a join .

thanks

Zee 

New Entry combo box isn't working

$
0
0

Hi everyone,

I have an Entity D_Employee (and a few others) combined with combo boxes.

It used to work great but I must have clicked something wrong in the excel model.

Normally when I add a row with data the row is highlighted in orange and I can choose a value from the combo box with the arrow.

When I'm adding a new row now it isn't highlighted in orange and there's no option of the combo box that I can choose.

I tried to copy an existing row into the new row and publish it but nothing is published (even when it's a total new record)

I think it might be a user problem because when I try this with an other userid it still works.

Can somebody help me with this problem please?

Kind regards,

Monique

SQL Server 2017 MDS add in for Excel does not connect

$
0
0

The MDS add in for Excel will not allow me to test the connection or even connect to the MDS server when I launch Excel. I need to disable the add in and re-enable it in order for it to work. I am running add in version 14.0.3024.368. I had the same issue with the 303 release as well. Office Version is 16.0.10325.20082. 

I enabled logging with the add in; however, the log is blank and does not give me any information when clicking connect.

I have confirmed that the add in is set to load when Excel is launched. I have also been able to replicate this behavior on multiple computers including ones that are running Office version 15.0.4569.1506.

Any assistance on this is appreciated.

HELP! MDS is broken after update to SQL 2012 SP4

$
0
0

Hi,

I recently updated our SQL server to SQL 2012 SP4 (from SP1) and ever since, MDS has not been working. I went to Configuration Manager and it said the database required an upgrade (from 11.2.0.0) but when I click on the Upgrade button I get the below error which I can't decipher nor find anywhere on Google:

Microsoft.MasterDataServices.Configuration.ConfigurationException: Unable to locate the embedded resource. ---> System.IO.FileNotFoundException: Unable to locate the embedded resource.
   at Microsoft.MasterDataServices.Configuration.DatabaseUtilities.UpgradeMasterDataServicesDatabase(SqlConnection connection, String databaseName, Collection`1& businessRuleExclusionWarnings)
   at Microsoft.MasterDataServices.Configuration.Commands.UpdateMasterDataServicesDatabase.InternalProcessRecord()
   at Microsoft.MasterDataServices.Configuration.Commands.ConfigurationCmdlet.ProcessRecord()
   at System.Management.Automation.CommandProcessor.ProcessRecord()
   --- End of inner exception stack trace ---
   at Microsoft.MasterDataServices.Configuration.InstanceManager.Execute(Command command)
   at Microsoft.MasterDataServices.Configuration.InstanceManager.UpgradeMasterDataServicesDatabase(DatabaseServerInformation serverInformation, DatabaseInformation databaseInformation)
   at Microsoft.MasterDataServices.Configuration.UI.ServerManagement.ConfigurationAdministration.UpgradeDatabase(DatabaseInformation databaseInformation)
   at Microsoft.MasterDataServices.Configuration.UI.MdsDatabase.UpgradeDatabase()

Any help would be greatly appreciated - the business need MDS back and it's becoming a major problem!

Thanks,

Calling Master Data Services Webservice API from client

$
0
0

Hi there,

I am trying to call the MDS webservice API. When I do this from the local machine it works.

But when I try this from another machine in the same domain it fails.

Error message:

The HTTP request is unauthorized with client authentication scheme 'Anonymous'. The authentication header received from the server was 'Negotiate,NTLM'.

Server config:

<system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="mdsWsHttpBehavior">
          <!-- Enable to allow clients to retrieve metadata (WSDL) about the service endpoints. -->
          <!-- If not using SSL (httpGetEnabled="true" httpsGetEnabled="false") to expose service metadata.-->
          <!-- If SSL is being used (httpGetEnabled="false" httpsGetEnabled="true") to expose service metadata.-->
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="false"/>
          <!-- Enable to allow clients to see service exception details -->
          <serviceDebug includeExceptionDetailInFaults="false"/>
          <serviceThrottling maxConcurrentSessions="400"/>
          <dataContractSerializer maxItemsInObjectGraph="999999999"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <bindings>
      <wsHttpBinding>
        <binding name="mdsWsHttpBinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647">
          <readerQuotas maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxDepth="2147483647" maxNameTableCharCount="2147483647" maxStringContentLength="2147483647"/>
          <!--Non-SSL implementations.-->
          <security mode="Message">
            <message clientCredentialType="Windows"/>
          </security>
          <!--SSL implementations-->
          <!--<security mode="Transport">-->
          <!--<message clientCredentialType="Windows" />-->
          <!--</security>-->
        </binding>
      </wsHttpBinding>
      <basicHttpBinding>
        <binding name="mdsBasicHttpBinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647">
          <readerQuotas maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxDepth="2147483647" maxNameTableCharCount="2147483647" maxStringContentLength="2147483647"/>
          <!-- Non-SSL implementations.-->
          <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Windows"/>
          </security>
          <!-- SSL implementations -->
          <!--<security mode="Transport">-->
          <!--<transport clientCredentialType="Windows" />-->
          <!--</security>-->
        </binding>
      </basicHttpBinding>
    </bindings>
    <services>
      <service behaviorConfiguration="mdsWsHttpBehavior" name="Microsoft.MasterDataServices.Services.Service">
        <endpoint binding="wsHttpBinding" bindingConfiguration="mdsWsHttpBinding"
          bindingNamespace="http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09"
          contract="Microsoft.MasterDataServices.Services.ServiceContracts.IService" />
        <endpoint address="bhb" binding="basicHttpBinding" bindingConfiguration="mdsBasicHttpBinding"
          bindingNamespace="http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09"
          contract="Microsoft.MasterDataServices.Services.ServiceContracts.IService" />
      </service>
      <service behaviorConfiguration="mdsWsHttpBehavior" name="MDS1">
        <!--<endpoint binding="wsHttpBinding" bindingConfiguration="mdsWsHttpBinding"
          bindingNamespace="http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09"
          contract="Microsoft.MasterDataServices.Services.ServiceContracts.IService" />-->
        <endpoint address="bhb" binding="basicHttpBinding" bindingConfiguration="mdsBasicHttpBinding"
          bindingNamespace="http://schemas.microsoft.com/sqlserver/masterdataservices/2009/09"
          contract="Microsoft.MasterDataServices.Services.ServiceContracts.IService" />
      </service>
    </services>
  </system.serviceModel>

Client configuration:

 <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="BasicHttpBinding_IService">
                    <security mode="TransportCredentialOnly">
                        <transport clientCredentialType="Windows" />
                    </security>
                </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="http://euazabcsp001.azurebusinesscloud.net:8081/Service/Service.svc/bhb"
                binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService"
                contract="MSService.IService" name="BasicHttpBinding_IService" />
        </client>
    </system.serviceModel>

Calling Master Data webservices API from Web application Client

$
0
0

Im working developing a Web Application who consumes MDS Web Service using C#; this Web Service is hosted in Server A using IIS. This Web App run perfectly when I'm working on local mode, I make request and the MDS Web Services response without problem. But, when I publish my Web app on another Server using IIS(Server B) I don´t have response from Web Service.

On Server B windows authentication is enabled for the Site where my App Web is hosted. 

Server A, Server B and my machine belong to the same Intranet.

What I have tried:

This is my code in C#, with bindings and connections:

private static ServiceClient createMdsProxy(string mdsURL)  /
    {

        EndpointAddress pntFinalAddress = new EndpointAddress(new Uri(mdsURL), EndpointIdentity.CreateUpnIdentity("@etnas.conts.net"));
        WSHttpBinding wsBinding = new WSHttpBinding();
        wsBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Windows;
        wsBinding.Security.Mode = SecurityMode.Message;

        wsBinding.Security.Message.ClientCredentialType = MessageCredentialType.Windows;
        wsBinding.Security.Message.NegotiateServiceCredential = true;           
        wsBinding.Security.Message.EstablishSecurityContext = true;

        wsBinding.MaxReceivedMessageSize = 2147483646;
        wsBinding.MaxBufferPoolSize = 2147483646;


        return new ServiceClient(wsBinding, pntFinalAddress);
    }


Within other method I call createMdsProxy method:

mdsproxy = createMdsProxy("http://arwdw20.etnas.conts.net:8001/service/Service.svc");
mdsProxy.ClientCredentials.Windows.ClientCredential.UserName = System.Threading.Thread.CurrentPrincipal.Identity.Name;

//.
//.Code to make the request using MDS Web Service Methods.
//.
EntityMembersGetResponse getResponse = mdsProxy.EntityMembersGet(getRequest);// Get the entity member information



The next code is Web.config Im using on client side.

<configuration>  <system.serviceModel><bindings><basicHttpBinding><binding name="BasicHttpBinding_IService"><security mode="TransportCredentialOnly"><transport clientCredentialType="Windows"/></security></binding></basicHttpBinding><wsHttpBinding><binding name="WSHttpBinding_IService"/></wsHttpBinding></bindings><client><endpoint address="http://arwdw20.etnas.conts.net:8001/service/Service.svc" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IService" contract="IService" name="WSHttpBinding_IService"><identity><userPrincipalName value="DSSService@itnes.conts.net"/></identity></endpoint><endpoint address="http://arwdw20.etnas.conts.net:8001/service/Service.svc/bhb" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IService" contract="IService" name="BasicHttpBinding_IService"/></client>  </system.serviceModel>  <system.web>    <compilation debug="true"/>  </system.web></configuration>


And This one is part of WSDL FILE from MDS Web Service:

<wsdl:service name="Service"><wsdl:port name="WSHttpBinding_IService" binding="tns:WSHttpBinding_IService"><soap12:address location="http://arwdw20.etnas.conts.net:8001/service/Service.svc" /> <wsa10:EndpointReference><wsa10:Address>http://arwdw20.etnas.conts.net:8001/service/Service.svc</wsa10:Address> <Identity xmlns="http://schemas.xmlsoap.org/ws/2006/02/addressingidentity"><Upn>DSSService@itnes.conts.net</Upn> </Identity></wsa10:EndpointReference></wsdl:port><wsdl:port name="BasicHttpBinding_IService" binding="tns:BasicHttpBinding_IService"><soap:address location="http://arwdw20.etnas.conts.net:8001/service/Service.svc/bhb" /> </wsdl:port></wsdl:service>

I hope you can help me to solve this issue. 
Thank you so much!

MDS Database Errors

$
0
0

Hi,

All of our MDS generated logins, users and roles mentioned in the link below appear to have no access rights.  It's causing errors for creation and editing of any models, entities and attributes.

https://docs.microsoft.com/en-us/sql/master-data-services/database-logins-users-and-roles-master-data-services?view=sql-server-2016#master-data-services-database-role

We think this may have come for SQL server updates but are unsure.  Anyone had similar issues or know of a resolution path?

Thanks.


COMException (0x800AC472)

$
0
0

Dear,

In the MDS GUI, when downloading the data to excel, we are experiencing an error: "Exception from HRESULT: 0x800AC472".

Everything was working fine, and for other users (same security) it still does.
Also via the excel ribbon > masterdata > connecting to the entity/data still workt.

When checking the windows updates, no updates has been done.

Also installing SQL2016 MDS SP2 did not work.

Here is the detail of the error, hopefully someone has an idea.

Excel Client Side Error Log:
System.Runtime.InteropServices.COMException (0x800AC472): Exception from HRESULT: 0x800AC472
   at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
   at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
   at System.Windows.Forms.WindowsFormsSynchronizationContext.Send(SendOrPostCallback d, Object state)
   at Microsoft.MasterDataServices.ExcelAddInCore.DataView.<>c__DisplayClass6d.<LoadData>b__6b(IAsyncResult ar)
   at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)

DatabaseSchemaVersion
13.2.0.0

SQLServerVersion
Microsoft SQL Server 2016 (SP2) (KB4052908) - 13.0.5026.0 (X64)
        Mar 18 2018 09:11:49
        Copyright (c) Microsoft Corporation
        Enterprise Edition: Core-based Licensing (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: ) (Hypervisor)

ProductVersion
13.2.0.0

CompatibilityLevel
110

OSVersion
Microsoft Windows Server 2012 R2 Standard

Excel Version
16.0.10325.20118

Excel Add-in Version
13.0.2121.20

Thanks in advance,

Best regards, Bram

MDS throwing arithmetic overflow error

$
0
0

We are using SQL server 2012 MDS - we have been getting arithmetic overflow error whenever someone tries to updae/add a new record to any entity. We use auto-generated code in most cases.

This is the exact error message -

Arithmetic overflow error converting IDENTITY to data type int.

How do we resolve this error in MDS? We are using MDS in-built functionality, so wondering what went wrong.

Thanks,

Sonal

The Future of SQL Server Master Data Services

$
0
0

Hi,

Can anyone advise, or point me towards, a roadmap for SQL Server Master Data Services? 

We are looking to implement an MDM solution but I have a couple of niggling concerns about commiting to the Microsoft MDS solution:

  1. Reliance on Silverlight which is not available in Edge, is this being addressed by Microsoft?
  2. Sparse communitydiscussion, blog, tech articles and not even a name check in the Gartner Magic Quadrant.  Am I just not finding the conent or are not many people using the Microsoft offering in 2018? (https://www.informatica.com/content/dam/informatica-com/global/amer/us/image/misc/gartner-master-data-management-magic-quadrant-2017.jpg)
  3. The Microsoft Master Data Services blog was last updated in 2015.  It there a new source for MDS updates which I'm missing? (https://blogs.msdn.microsoft.com/mds/)
  4. Not available on Azure as DBaaS.  Not a show stopper but because of the above I can't see if this is on a roadmap somewhere or not.

This all adds up to give me concern over the direction of the Microsoft MDS offering. 

Can anyone help answer these questions for me or point me in the direction of recent MDS articles and updates?

Thanks.



Importing Historical Data into MDS

$
0
0

Is there a way to import existing historical into MDS?  I want to move some master data (sitting in SCD2 tables) from an existing data warehouse into MDS.  I don't want to loose the history that I have.  But, I really like how MDS handles historical data (e.g. SCD2 subscription views).  While I could leave the history in an external table and join it together with the subscription view, it would be much cleaner to have it all in MDS.  Any thoughts?


- Robert Cottingham


Creating Entity using MDS API

$
0
0

Hi Team,

I am newbie to MDS API,followed this blog (http://sqlblog.com/blogs/mds_team/archive/2010/01/12/getting-started-with-the-web-services-api-in-sql-server-2008-r2-master-data-services.aspx) created model using create API of MDS.

I am really confused how to create entity using API with existing model and with new model and how to add members and free form,domain attributes to it..

How to insert data in existing model,entity and sample code on update API also..

Any code samples with details steps or any detailed step explanation blog to help me in ....creating and consuming service of MDS will be great help for me...

please share awaiting response


Viewing all 1311 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>