2단원: 테이블 또는 행렬 마법사를 사용하여 테이블 추가(보고서 작성기 2.0)
보고서를 만든 후 테이블 마법사를 사용하여 보고서에 테이블과 데이터를 추가할 수 있습니다. 마법사를 사용하면 데이터 원본에 대한 연결을 정의하고, 사용할 데이터를 지정하는 쿼리를 만들고, 데이터를 그룹으로 구성한 후 행을 추가하여 그룹화된 데이터에 대한 요약된 값을 표시하는 등의 작업을 쉽게 수행할 수 있습니다.
이 단원에서는 AdventureWorks2008 예제 데이터베이스를 보고서의 데이터 원본으로 사용합니다.
테이블 마법사를 시작하여 연결을 추가하려면
디자인 단추를 클릭하여 디자인 뷰로 전환합니다.
디자인 화면의 **데이터를 추가하려면 클릭하십시오.**에서 테이블 또는 행렬을 클릭합니다.
데이터 원본에 대한 연결 선택 페이지가 열립니다.
보고서 서버에 지정된 공유 데이터 원본 폴더가 있으면 데이터 원본 목록이 나타납니다.
AdventureWorks2008 예제 데이터베이스를 가리키는 공유 데이터 원본을 선택하거나 찾아보기를 클릭하고 공유 데이터 원본을 찾은 다음 열기를 클릭합니다.
다음을 클릭합니다.
예제 데이터베이스에 대한 공유 데이터 원본 참조를 추가했습니다. 다음에는 사용할 데이터를 지정하는 쿼리를 만듭니다.
보고서 데이터에 대한 Transact-SQL 쿼리를 정의하려면
쿼리 디자인 페이지에 관계형 쿼리 디자이너가 열립니다. 이 자습서에서는 텍스트 기반 쿼리 디자이너를 사용합니다.
텍스트로 편집을 클릭합니다. 텍스트 기반 쿼리 디자이너에 쿼리 창과 결과 창이 표시됩니다.
쿼리 상자에 다음 Transact-SQL 쿼리를 붙여 넣습니다.
SELECT SH.OrderDate ,SH.SalesOrderNumber ,SD.OrderQty ,SD.LineTotal ,P.Name AS [Product] ,PS.Name AS [Subcategory] FROM Sales.SalesOrderHeader AS SH INNER JOIN Sales.SalesOrderDetail AS SD ON SH.SalesOrderID = SD.SalesOrderID INNER JOIN Production.Product AS P ON SD.ProductID = P.ProductID INNER JOIN Production.ProductSubcategory AS PS ON PS.ProductSubcategoryID = P.ProductSubcategoryID INNER JOIN Production.ProductCategory AS PC ON PC.ProductCategoryID = PS.ProductCategoryID WHERE PC.Name = 'Clothing' AND SH.OnlineOrderFlag = 0 ORDER BY P.Name
도구 모음에서 실행(!)을 클릭하여 쿼리를 실행합니다.
쿼리가 실행되고 AdventureWorks2008 데이터베이스에 있는 5개 테이블의 OrderDate, SalesOrderNumber, OrderQty, LineTotal, Product 및 Subcategory 필드에 대한 결과 집합이 표시됩니다. 쿼리는 별칭과 같은 Transact-SQL 기능을 사용합니다. 예를 들어 SalesOrderHeader 테이블의 이름이 SH입니다.
결과 집합의 열 머리글은 보고서에 저장된 열 이름이 아니라 데이터베이스 테이블에 있는 열 이름을 기준으로 합니다.
데이터 집합의 필드 이름은 열 이름을 기준으로 하며 보고서에 저장됩니다. 마법사를 완료한 후 보고서 데이터 창에서 데이터 집합 필드 모음을 볼 수 있습니다.
다음을 클릭합니다.
테이블에 사용할 데이터를 지정하는 쿼리를 사용하여 데이터 집합을 추가했습니다. 다음에는 데이터를 그룹으로 구성합니다.
데이터를 그룹으로 구성하려면
필드 정렬 페이지에서 Product를 값으로 끌어 옵니다.
OrderQty를 값으로 끌어 와 Product 아래에 놓습니다.
숫자 필드에서는 기본적으로 Sum 함수를 사용하여 데이터가 요약됩니다. 드롭다운 화살표를 사용하여 다른 요약 함수를 선택할 수 있습니다.
LineTotal을 값으로 끌어 와 OrderQty 아래에 놓습니다.
1, 2, 3단계에서는 테이블에 표시할 데이터를 지정했습니다.
OrderDate를 행 그룹으로 끌어 옵니다.
SalesOrderNumber를 행 그룹으로 끌어 와 OrderDate 아래에 놓습니다.
4, 5단계에서는 필드 값을 먼저 날짜 기준으로 정렬한 다음 해당 날짜의 모든 주문을 기준으로 정렬했습니다.
다음을 클릭합니다.
보고서를 실행하면 테이블에 각 날짜, 각 날짜의 모든 주문, 각 주문의 모든 제품, 수량 및 라인 합계가 표시됩니다. 다음에는 테이블의 레이아웃을 선택합니다.
부분합 및 합계를 추가하려면
레이아웃 선택 페이지의 옵션에서 부분합 및 총합계 표시가 선택되었는지 확인합니다.
블록형, 부분합 하단 표시가 선택되었는지 확인합니다.
미리 보기 창에 5개의 행이 있는 테이블이 표시됩니다. 보고서를 실행하면 각 행이 다음과 같은 방식으로 표시됩니다.
첫 번째 행은 열 머리글을 보여 주기 위해 테이블에 대해 한 번씩 반복됩니다.
두 번째 행은 판매 주문의 각 품목에 대해 한 번씩 반복되고 제품 이름, 주문 수량 및 라인 합계를 표시합니다.
세 번째 행은 주문당 부분합을 표시하기 위해 각 판매 주문에 대해 한 번씩 반복됩니다.
네 번째 행은 일별 부분합을 표시하기 위해 각 주문 날짜에 대해 한 번씩 반복됩니다.
다섯 번째 행은 총합계를 표시하기 위해 테이블에 대해 한 번씩 반복됩니다.
그룹 확장/축소 옵션을 선택 취소합니다. 이 자습서에서 만든 보고서에는 부모 그룹 계층을 확장하여 자식 그룹 행 및 정보 행을 표시하는 데 사용할 수 있는 드릴다운 기능이 사용되지 않습니다.
다음을 클릭합니다.
테이블 레이아웃을 디자인했습니다. 다음에는 스타일을 선택합니다.
테이블 스타일을 지정하려면
스타일 선택 페이지의 스타일 창에서 스타일을 선택합니다.
스타일은 글꼴 스타일, 색 집합 및 테두리 스타일을 지정합니다. 스타일을 선택하면 미리 보기 창에 해당 스타일이 적용된 예제 테이블이 표시됩니다.
마침을 클릭합니다.
디자인 화면에 테이블이 추가됩니다. 이 테이블에는 열 5개와 행 5개가 있습니다. 행 그룹 창에는 OrderDate, SalesOrderNumber 및 Details의 세 가지 행 그룹이 있습니다. 세부 데이터는 모두 데이터 집합 쿼리로 검색된 데이터입니다.
실행을 클릭하여 보고서를 미리 봅니다.
판매 주문의 각 품목에 대한 제품 이름, 주문 수량 및 품목 합계가 테이블에 표시됩니다. 이 데이터는 먼저 주문 날짜를 기준으로 정렬된 다음 주문 번호를 기준으로 정렬됩니다.
다음 단계
마법사를 사용하여 새 보고서에 테이블을 성공적으로 추가했습니다. 다음 단원에서는 보고서에 서식을 추가합니다. 3단원: 보고서 형식 지정(보고서 작성기 2.0)을 참조하십시오.