Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:Program SQL Server w usłudze Windows
Azure SQL Managed Instance
Ważne
Usługi master Data Services (MDS) są usuwane w programie SQL Server 2025 (17.x). Nadal obsługujemy usługi MDS w programie SQL Server 2022 (16.x) i starszych wersjach.
Usługa Master Data Services używa reguł biznesowych do tworzenia podstawowych rozwiązań przepływu pracy, takich jak automatyczne aktualizowanie i weryfikowanie danych oraz wysyłanie powiadomień e-mail na podstawie określonych warunków. Jeśli potrzebujesz przetwarzania bardziej złożonego niż to, co zapewniają wbudowane akcje przepływu pracy, użyj niestandardowego przepływu pracy. Niestandardowy przepływ pracy to utworzony zestaw .NET. Po wywołaniu zestawu przepływu pracy kod może podjąć dowolną akcję wymaganą przez twoją sytuację. Jeśli na przykład przepływ pracy wymaga złożonego przetwarzania zdarzeń, takiego jak zatwierdzenia wielowarstwowe lub skomplikowane drzewa decyzyjne, możesz skonfigurować usługi Master Data Services, aby uruchomić niestandardowy przepływ pracy, który analizuje dane i określa, gdzie je wysłać do zatwierdzenia.
Jak są przetwarzane niestandardowe przepływy pracy
Istnieją trzy główne składniki związane z przetwarzaniem niestandardowych przepływów pracy: aplikacja internetowa Master Data Manager, usługa integracji przepływu pracy MDS programu SQL Server i zestaw programu obsługi przepływu pracy. Te składniki przetwarzają niestandardowy przepływ pracy w następujący sposób:
Używasz menedżera danych master do weryfikowania jednostki uruchamianej przez przepływ pracy.
Menedżer danych master wysyła członków spełniających warunki reguły biznesowej do kolejki usługi Service Broker w bazie danych master Data Services.
W regularnych odstępach czasu usługa integracji przepływu pracy MDS programu SQL Server wywołuje procedurę składowaną w bazie danych master Data Services.
Gdy ta procedura składowana znajdzie rekordy w kolejce usługi Service Broker, zwraca je do usługi integracji przepływu pracy MDS programu SQL Server.
Sql Server MDS Workflow Integration Services kieruje dane do zestawu obsługi przepływu pracy.
Uwaga / Notatka
Uwaga: Usługa integracji przepływu pracy MDS programu SQL Server jest przeznaczona do wyzwalania prostych procesów. Jeśli kod niestandardowy wymaga złożonego przetwarzania, ukończ przetwarzanie w osobnym wątku lub poza procesem przepływu pracy.
Konfigurowanie usługi Master Data Services dla niestandardowych przepływów pracy
Utworzenie niestandardowego przepływu pracy wymaga pisania kodu niestandardowego i skonfigurowania usług Master Data Services w celu przekazania danych przepływu pracy do programu obsługi przepływu pracy. Wykonaj następujące kroki, aby włączyć niestandardowe przetwarzanie przepływu pracy:
Utwórz zestaw .NET, który implementuje microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender.
Skonfiguruj usługę integracji przepływu pracy MDS programu SQL Server, aby nawiązać połączenie z bazą danych master Data Services i skojarzyć tag z procedurą obsługi przepływu pracy.
Uruchom usługę integracji przepływu pracy MDS programu SQL Server.
Utwórz regułę biznesową w menedżerze danych master, która uruchamia przepływ pracy oznaczony nazwą programu obsługi przepływu pracy.
Zastosuj regułę biznesową do elementu członkowskiego, który wyzwala niestandardowy przepływ pracy.
Tworzenie zestawu programu obsługi przepływu pracy
Niestandardowy przepływ pracy to zestaw biblioteki klas platformy .NET, który implementuje interfejs Microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender . Usługa integracji przepływu pracy MDS programu SQL Server wywołuje metodę Microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender.StartWorkflow* , aby uruchomić kod. Na przykład kod implementujący microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender.StartWorkflow* , zobacz Niestandardowy przykład przepływu pracy (Master Data Services).
Wykonaj następujące kroki, aby użyć programu Visual Studio 2010, aby utworzyć zestaw, który usługa integracji przepływu pracy MDS programu SQL Server może wywołać w celu obsługi niestandardowego przepływu pracy:
W programie Visual Studio 2010 utwórz nowy projekt Biblioteka klas , który używa wybranego języka. Aby utworzyć bibliotekę klas języka C#, wybierz typy projektów Visual C#\Windows i wybierz szablon Biblioteka klas . Wprowadź nazwę projektu, taką jak MDSWorkflowTest, a następnie kliknij przycisk OK.
Dodaj odwołanie do Microsoft.MasterDataServices.WorkflowTypeExtender.dll. Ten zestaw można znaleźć w <folderze> instalacyjnym\Master Data Services\WebApplication\bin.
Dodaj element "using Microsoft.MasterDataServices.Core.Workflow;" do pliku kodu C#.
Dziedzicz z klasy Microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender w deklaracji klasy. Deklaracja klasy powinna być podobna do: "public class WorkflowTester : IWorkflowTypeExtender".
Zaimplementuj interfejs Microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender . Metoda Microsoft.MasterDataServices.WorkflowTypeExtender.IWorkflowTypeExtender.StartWorkflow* jest wywoływana przez usługę integracji przepływu pracy MDS programu SQL Server w celu uruchomienia przepływu pracy.
Skopiuj zestaw do lokalizacji pliku wykonywalnego usługi integracji przepływu pracy MDS programu SQL Server o nazwie Microsoft.MasterDataServices.Workflow.exew <folderze> instalacyjnym\Master Data Services\WebApplication\bin.
Konfigurowanie usługi integracji przepływu pracy MDS programu SQL Server
Zmodyfikuj plik konfiguracji usługi Master Data Services, aby uwzględnić informacje o połączeniu bazy danych usług Master Data Services i skojarzyć tag z zestawem programu obsługi przepływu pracy, wykonując następujące kroki:
Znajdź Microsoft.MasterDataServices.Workflow.exe.config w <folderze> instalacyjnym\Master Data Services\WebApplication\bin.
Dodaj informacje o połączeniu bazy danych usługi Master Data Services z ustawieniem "ConnectionString". Jeśli instalacja programu SQL Server używa sortowania z uwzględnieniem wielkości liter, nazwa bazy danych musi być wprowadzona w tym samym przypadku co w bazie danych. Na przykład pełny tag ustawienia może wyglądać następująco:
<setting name="ConnectionString" serializeAs="String"> <value>Server=myServer;Database=myDatabase;Integrated Security=True</value> </setting>Poniżej ustawienia "ConnectionString" dodaj ustawienie "WorkflowTypeExtenders", aby skojarzyć nazwę tagu z zestawem procedury obsługi przepływu pracy. Przykład:
<setting name="WorkflowTypeExtenders" serializeAs="String"> <value>TEST=MDSWorkflowTestLib.WorkflowTester, MDSWorkflowTestLib</value> </setting>Wewnętrzny tekst tagu <wartości> ma postać <Tag> przepływu pracy=<nazwa> typu przepływu pracy kwalifikowanego przez zestaw. <Tag> przepływu pracy to nazwa używana do identyfikowania zestawu procedury obsługi przepływu pracy podczas tworzenia reguły biznesowej w menedżerze danych master. <Nazwa> kwalifikowanego typu przepływu pracy zestawu jest kwalifikowaną nazwą przestrzeni nazw klasy przepływu pracy, a następnie przecinkiem, a następnie nazwą wyświetlaną zestawu. Jeśli zestaw jest silnie nazwany, musisz również uwzględnić informacje o wersji i jego parametr PublicKeyToken. Możesz uwzględnić wiele <tagów ustawień> , jeśli utworzono wiele procedur obsługi przepływu pracy dla różnych rodzajów przepływów pracy.
Uwaga / Notatka
W zależności od konfiguracji serwera może zostać wyświetlony błąd "Odmowa dostępu" podczas próby zapisania pliku Microsoft.MasterDataServices.Workflow.exe.config. W takim przypadku tymczasowo wyłącz kontrolę konta użytkownika na serwerze. Aby to zrobić, otwórz Panel sterowania, kliknij pozycję System i zabezpieczenia. W obszarze Centrum akcji kliknij pozycję Zmień ustawienia kontroli konta użytkownika. W oknie dialogowym Ustawienia kontroli konta użytkownika przesuń pasek na dół, aby nigdy nie otrzymywać powiadomień. Uruchom ponownie komputer i powtórz powyższe kroki, aby edytować plik konfiguracji. Po zapisaniu pliku zresetuj ustawienia kontroli konta użytkownika na poziomie domyślnym.
Uruchamianie usługi integracji przepływu pracy MDS programu SQL Server
Domyślnie usługa integracji przepływu pracy MDS programu SQL Server nie jest zainstalowana. Aby można było go użyć, należy zainstalować usługę. Aby zapewnić największe bezpieczeństwo, utwórz użytkownika lokalnego dla usługi i przyznaj temu użytkownikowi tylko uprawnienia wymagane do wykonywania operacji przepływu pracy. Aby utworzyć użytkownika, zainstalować usługę i uruchomić usługę, wykonaj następujące kroki:
Użyj menedżera Użytkownicy i grupy lokalne, aby utworzyć użytkownika lokalnego o nazwie, na przykład mds_workflow_service.
Użyj programu SQL Server Management Studio, aby udzielić użytkownikowi mds_workflow_service uprawnienia do wykonywania [mdm]. [udpExternalActionsGet] procedura składowana. W tym celu utwórz nowe dane logowania dla konta mds_workflow_service, utwórz nowego użytkownika w bazie danych master Data Services, zamapuj tego użytkownika na mds_workflow_service logowania i przyznaj użytkownikowi uprawnienie EXECUTE do usługi [mdm]. [udpExternalActionsGet] procedura składowana.
Przyznaj użytkownikowi mds_workflow_service uprawnienie do wykonywania zestawu obsługi przepływu pracy. W tym celu dodaj użytkownika mds_workflow_service do karty Zabezpieczenia zestawu obsługi przepływu pracy i przyznaj użytkownikowi mds_workflow_service uprawnienie ODCZYT i WYKONAJ.
Przyznaj użytkownikowi mds_workflow_service uprawnienie do wykonywania pliku wykonywalnego usługi integracji przepływu pracy programu SQL Server MDS. W tym celu dodaj użytkownika mds_workflow_service do karty Zabezpieczeniawłaściwości Microsoft.MasterDataServices.Workflow.exew <folderze> instalacyjnym\Master Data Services\WebApplication\bin i przyznaj użytkownikowi mds_workflow_service uprawnienie ODCZYT i WYKONAJ.
Zainstaluj usługę integracji przepływu pracy MDS programu SQL Server przy użyciu narzędzia instalacyjnego platformy .NET o nazwie InstallUtil.exe. InstallUtil.exe można znaleźć w folderze instalacyjnym platformy .NET, takim jak C:\Windows\Microsoft.NET\Framework\v4.0.30319\. Zainstaluj usługę integracji przepływu pracy MDS programu SQL Server, wprowadzając następujące polecenie w wierszu polecenia z podwyższonym poziomem uprawnień:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil Microsoft.MasterDataServices.Workflow.exeOkreśl użytkownika mds_workflow_service po wyświetleniu monitu podczas instalacji.
Uruchom usługę integracji przepływu pracy MDS programu SQL Server przy użyciu przystawki Usługi. W tym celu znajdź usługę integracji przepływu pracy MDS programu SQL Server w przystawce Usługi, wybierz ją i kliknij link Uruchom .
Tworzenie reguły biznesowej przepływu pracy
Użyj menedżera danych master, aby utworzyć i opublikować regułę biznesową, która uruchomi przepływ pracy po zastosowaniu. Upewnij się, że reguła biznesowa zawiera akcje, które zmieniają wartości atrybutów, tak aby reguła była obliczana na wartość false po jej zastosowaniu raz. Na przykład reguła biznesowa może mieć wartość true, gdy wartość atrybutu Price jest większa niż 500, a wartość atrybutu Approved jest pusta. Reguła może następnie zawierać dwie akcje: jedną, aby ustawić wartość zatwierdzonego atrybutu na Oczekujące i jedną, aby uruchomić przepływ pracy. Alternatywnie możesz utworzyć regułę używającą warunku "zmieniono" i dodać atrybuty do grup śledzenia zmian. Aby uzyskać więcej informacji na temat reguł biznesowych, zobacz Reguły biznesowe (Master Data Services).
Utwórz regułę biznesową, która uruchamia niestandardowy przepływ pracy w programie Master Data Manager, wykonując następujące kroki:
W edytorze reguł biznesowych menedżera danych master po określeniu warunków reguły biznesowej przeciągnij akcję Rozpocznij przepływ pracy z listy Akcje zewnętrzne do etykiety Akcja okienka THEN.
W okienku Edytuj akcję w polu Typ przepływu pracy wpisz tag identyfikujący zestaw procedury obsługi przepływu pracy. Jest to tag określony w pliku konfiguracji zestawu, na przykład TEST.
Opcjonalnie zaznacz pole wyboru Uwzględnij dane składowe . Wybierz tę opcję, aby uwzględnić nazwy atrybutów i wartości w kodzie XML przekazywanym do programu obsługi przepływu pracy.
W polu Witryna przepływu pracy wpisz nazwę witryny internetowej. W przypadku niestandardowego przepływu pracy może to nie mieć zastosowania, ale może być używane do dodawania kontekstu.
W polu Nazwa przepływu pracy wpisz nazwę przepływu pracy z programu Visual Studio. W przypadku niestandardowego przepływu pracy może to nie mieć zastosowania, ale może być używane do dodawania kontekstu.
Zapisz i opublikuj regułę biznesową.
Stosowanie reguł biznesowych do uruchamiania przepływu pracy
Zastosuj regułę biznesową do danych, aby uruchomić przepływ pracy. W tym celu użyj głównego menedżera danych, aby edytować jednostkę zawierającą elementy członkowskie, które chcesz zweryfikować. Kliknij pozycję Zastosuj reguły biznesowe. W odpowiedzi na regułę biznesową menedżer danych master wypełnia kolejkę usługi Service Broker bazy danych master Data Services. Gdy usługa integracji przepływu pracy MDS programu SQL Server sprawdza kolejkę, wysyła dane do określonego zestawu procedury obsługi przepływu pracy i czyści kolejkę. Zestaw procedury obsługi przepływu pracy wykonuje w nim wszelkie akcje, które zostały w nim zakodowane.
Rozwiązywanie problemów z niestandardowymi przepływami pracy
Jeśli zestaw programu obsługi przepływu pracy nie odbiera danych, możesz spróbować debugować usługę integracji przepływu pracy MDS programu SQL Server lub wyświetlić kolejkę usługi Service Broker.
Debugowanie usługi integracji przepływu pracy MDS programu SQL Server
Aby debugować usługę integracji przepływu pracy programu SQL Server, wykonaj następujące czynności:
Aby zatrzymać usługę, użyj przystawki Usługi.
Otwórz wiersz polecenia, przejdź do lokalizacji usługi i uruchom usługę w trybie konsoli, wprowadzając polecenie: Microsoft.MasterDataServices.Workflow.exe -console.
W menedżerze danych głównych zaktualizuj członka i ponownie zastosuj reguły biznesowe. Szczegółowe dzienniki są wyświetlane w oknie konsoli.
Wyświetlanie kolejki usługi Service Broker
Kolejka usługi Service Broker zawierająca dane główne przekazane w ramach przepływu pracy to: mdm.microsoft/mdm/queue/externalaction. Kolejki można znaleźć w Eksploratorze obiektów programu SQL Management Studio w węźle Service Broker bazy danych master Data Services. Należy pamiętać, że jeśli usługa prawidłowo wyczyściła kolejkę, ta kolejka będzie pusta.
Zobacz też
Przykład niestandardowego przepływu pracy (master data services)
Niestandardowy opis XML przepływu pracy (master data services)