저는 Dynamics Business Portal에서 작업하고 있습니다. 사용자의 AD 사용자 이름으로 GP Dynamics EmployeeID에 가입하려는 시도에서이 해시를 만드는 데 도움이 될 몇 가지 테이블을 발견했습니다. 비즈니스 포털 테이블에서 찾을 수있는 비즈니스 포털을 GP에 묶는 유일한 테이블은 [MbfRoleUser]입니다. 충분한 뒷 이야기, 여기에 몇 가지 샘플 데이터가 있으며 어떻게 표시하고 싶습니다.여러 레코드에서 XML 쿼리
declare @table table(UserID varchar(50),Constituent varchar(200))
insert into @table values
('D8851830-EF23-44BE-BB17-0008D70F9F5B','<entityKey><Microsoft.Dynamics.Common.Company.Company ID="1" /><Microsoft.Dynamics.Hrm.Entity.Employee ID="002001" /></entityKey>')
,('78E42A10-D7CE-4B40-86F2-001549F5A3C2','<entityKey><Microsoft.Dynamics.Common.Company.Company ID="1" /><Microsoft.Dynamics.Hrm.Entity.Employee ID="001079" /></entityKey>')
,('1F899A87-6186-4E2B-BA18-0076A4D95836','<entityKey><Microsoft.Dynamics.Common.Company.Company ID="1" /><Microsoft.Dynamics.Hrm.Entity.Employee ID="001997" /></entityKey>')
,('CB043358-0B16-4055-A806-00A63964C1A9','<entityKey><Microsoft.Dynamics.Common.Company.Company ID="1" /><Microsoft.Dynamics.Hrm.Entity.Employee ID="001557" /></entityKey>')
,('3EF8C35D-6227-486A-B86B-00BD5991E188','<entityKey><Microsoft.Dynamics.Common.Company.Company ID="1" /><Microsoft.Dynamics.Hrm.Entity.Employee ID="001740" /></entityKey>')
select * from @table
내 원하는 출력은 다음과 같습니다
UserID CompanyID Employeeid
---------- ---------- ----------
D8851830-EF23-44BE-BB17-0008D70F9F5B 1 002001
78E42A10-D7CE-4B40-86F2-001549F5A3C2 1 001079
1F899A87-6186-4E2B-BA18-0076A4D95836 1 001997
CB043358-0B16-4055-A806-00A63964C1A9 1 001557
3EF8C35D-6227-486A-B86B-00BD5991E188 1 001740
가능하다면, 내가 문자열을 사용하지 않고이 작업을 수행하고 싶습니다. 예,이 예제에서는 작동하지만 더 복잡한 XML에서는 다른 상황이 발생할 수 있으므로 올바르게 수행하는 방법을 배우고 싶습니다.
마지막으로 User \ username을 포함하는 다른 열과 함께 domain \ username 형식의 AD 사용자 이름을 포함하는 [MbfUserWindowsIdentity] 테이블에 가입합니다.
누군가가 EmployeeID를 가져올 수있는 더 좋은 곳을 알고 있다면 그렇게 할 수 있습니다. 기본적으로 우리는 단지 GP 사용자 ID를 AD 사용자 이름으로 내보내기 만하면됩니다.
호기심이 많은 사람들을 위해 GP에있는 데이터를 사용하여 직원 디렉토리를 구축하고 있지만 디렉토리에는 사용자가 선택한 개인 정보를 게시하지 못하도록하는 기능이 있으므로 AD에 연결해야합니다.
깨끗하고 중요한 부분입니다. 감사! – Apothis