2017-02-02 6 views
1

데이터 흐름 태스크의 주요 로직을 이해하기 위해 도움을 요청하십시오. 데이터웨어 하우스에 데이터를로드하기 위해 ETL을 사용하고 있습니다 (스테이징 및 dwh 부분도). 지금은 내가 remain_qty, Assigned_qty 및 in_progress_qty의 정확한 수량을 필요ETL 데이터 흐름 태스크 - 계산 남은

... 기존 필드의 데이터를 계산하지만, 재고 데이터로 계산해야하는 작업을 얻었다. (사진에서와 같이). 그러나 현재 나는이 결과를 보지 못했다. 그것을 얻는 것이 좋을 것입니다. 조회 후 인벤토리 데이터 목록을 얻은 후에 계산 프로세스를 수행했습니다.

나서 실제 온도 데이터를 타 조회를 확인한다. 그것은 항목에 의해 임시에 존재하지 않는 경우, 그럼 그냥 간단한 업데이 트를 레코드를 삽입 .. 계산 과정을 할 것이라고이 방법으로 .. 나는 다음 레코드 시스템에서 임시 테이블을 다시 쿼리하고 쿼리해야한다고 생각해. 실제 데이터 .. 수량 감소와 함께 의미합니다. 기록으로 기록하십시오. 하지만 이제이 두 가지 조회를 살펴본 결과 각 행마다 동일한 결과가 나타납니다. 즉, 임시 테이블은 데이터 흐름 내부에서 다시 쿼리하지 않습니다. 계산에 다른 데이터 흐름을 사용해야합니까? 또는 레코드로 업데이트 될 수있는이 데이터 흐름 내부의 임시 테이블을 사용할 수 있습니까? 실제 재고 수량을 레코드로 다시 쿼리하기 때문에 ..
.. 읽어 주셔서 감사합니다!

+0

스크린 샷, 달성하려는 것, 지금까지 시도한 것이 무엇이며 왜 작동하지 않는지 더 잘 설명하기 위해 질문을 다시 포맷하십시오.당신이 여기에 묻고 자하는 것을 이해하는 것은 현재 불가능합니다 ... – iamdave

+0

미안 해요, 당신 말이 맞아요. 내 질문을 업데이트했습니다. 당신의 지원에 감사드립니다! – Messersmith

답변

0
안녕 얘들 아, 나는 해결책을 발견하고 ETL 프로세스에 변경 한 Click here for picture! .. 나는 데이터 흐름 작업을 분리하고 임시 테이블에 다시 계산 데이터에 저장 프로 시저를 사용

. 그런 다음 다음 데이터 흐름은 temp에서 업데이트 된 데이터를 쿼리하고 팩트 테이블을 올바른 수량과 가격으로 채울 수 있습니다. 그때 나는 제어 흐름과 데이터 흐름 과정을 배웠다. 이제는 분명히 나와 앱이 잘 작동하고 있습니다. 도와 주셔서 감사합니다!

0

나는 혼란에 빠졌지 만 조회 변환을 사용하여 다시 쿼리하려는 것으로 알고있는 것이 맞습니까? 그렇다면 조회 변환 편집기의 '일반'탭에는 캐시 모드의 옵션이 기본적으로 전체 캐시로 표시됩니다.

  1. 전체 캐시은 데이터 흐름 작업 내부에 아무것도하기 전에, 데이터베이스가 한 번 쿼리와 메모리에 저장된 것을 의미한다. 따라서 데이터 흐름 작업 내에서 조회 변환을 사용하려고 시도하면 은 메모리에 저장된 데이터 만 사용합니다.
  2. 두 번째 옵션은, 부분 캐시 인 변환을 하기 전에 일부 데이터를 쿼리하고 거기에 발견되지 않는 경우는, 그것을 찾기 위해 다시 데이터베이스를 쿼리합니다. 마침내
  3. , 당신은 데이터베이스마다 하나의 행이

을 처리되어 더 자세한 정보 in this link를 찾을 수를 조회 없음 캐시 모드는 이 없습니다.

는 희망이 도움이

+0

솔루션에 감사드립니다. 나는 그것을 시도했지만 내 문제를 해결하지 못합니다. 내 프로젝트에서 데이터 흐름에 문제가있는 부분을 살펴 보시기 바랍니다. 위의 그림 3을 참조하십시오. – Messersmith

+0

그래서, 나는 아래 기사를 발견했다 : [link] (http://dbadiaries.com/t-sql-determine-the-difference-in-values-between-columns-in-different-rows) 어떻게 생각하니? 잔여량 계산을 구현하는 유일한 방법일까요? CTE와? :) 어쩌면 나는 가능한 변수 배열을 사용할 수 있습니다. 나는 실제 수량이 더 많은 항목을 의미합니다. – Messersmith

+0

이미지에있는 논리에 문제가 없습니다. SSIS 전문가는 아니지만 나에게 좋을 것 같습니다. 어쩌면 당신은 일종의 패키지 변수를 사용하여 데이터 흐름 작업 내에서 새로운 값을 저장하고 사용할 수 있습니까? 변수는 데이터 흐름 작업의 끝 부분에서 업데이트되지 않습니다. 그것은 하나의 이유가 될 수 있습니다. 당신이 말했던 것처럼 2 개의 데이터 흐름에서 그들을 분리 할 수 ​​있고 그런 식으로 문제를 발견 할 수 있습니다. – Mokz