Объединение Все преобразования являются асинхронным компонентом.
Это означает, что для каждой строки данных, которые в нее поступают, может быть выдано 0, 1 или много строк. Это также означает, что столбцы перед компонентом не имеют отношения к столбцам после него. Возможно, вы добавили EmployeeID
в компонент и EmployeeID
из него, но нет никакой гарантии, что это одна и та же сущность. За кулисами столбцам присваиваются идентификаторы, а имена - просто удобные для разработчиков концепции.
Поэтому, когда вы добавляете новый источник в источник, средство просмотра данных не будет "знать" об этом, потому что эти столбцы не являются "Т-карта выходит из союза всех. Когда вы переименовываете их в источнике, компонент Union All должен продолжать работать, но изменение имени не будет отправлено нижестоящим потребителям, потому что столбец 73, который имел понятное имя EmployeeID
, теперь просто Employee
в источникесистемы, но компоненты ниже по течению от Union All знают только о столбце 129, который их Employee
. Поскольку средство просмотра данных находится ниже по потоку от асинхронного компонента, его необходимо «исправлять» всякий раз, когда вы вносите существенное изменение в поток данных.
В зависимости от показанного вами примера два запроса «объединяют все»Эд из того же экземпляра базы данных - не делай так. Асинхронные компоненты, помимо того, что вызывают все головные боли при разработке, о которых я говорил выше, не очень хорошо работают. Вместо этого напишите свой запрос с помощью Union All в компоненте OLE DB Source.
Если у вас есть причина для создания потока данных как такового, то обязательно сделайте это. Но если данные поступают из двух баз данных на одном и том же сервере, я не могу придумать вескую причину для того, чтобы начать подход, который вы начали.