본문 바로가기

분류 전체보기

kenial.tistory.com 이전 원래 하나의 블로그를 운영하다가 이래저래 스스로 복잡하다 느껴서 블로그를 분리했던 것인데.. 그냥 담백하게 한 놈만 패기로 했습니다 -_-;; 이전 주소는 http://kenial.tistory.com 입니다. 여기 포스트들은 당분간 그대로 둘 예정입니다만, 언제 날아갈지 모르니 퍼... 가지 마시고 위 주소에서 검색하시면 그대로 나오니까; 그쪽으로 링크를 해 주시거나 하면 됩니다. 괜찮습니다. 저 위의 블로그는 다음이 망하거나 제가 사고를 당하지 않는 한 .. 아니 제가 사고를 당해도 블로그는 남겠군요; 어쨌든 다음이 망하지 않는 한 그대로 유지될겁니다. 감사합니다. 더보기
oracle 패키지 소스를 파일로 저장하는 스크립트 declare c_owner_name varchar2(255) := 'scott'; cursor pkg_cur is select * from all_source where owner = c_owner_name -- and name = '패키지이름 특정할 경우' and (type = 'PACKAGE' or type = 'PACKAGE BODY') ; x_filename_output varchar2(255); OutFile utl_file.file_type; -- 폴더 이름 : DIR_NAME varchar2(255) := 'EXP_DIR'; begin OutFile := utl_file.fopen(DIR_NAME, 'whole.sql', 'w'); for pkg_rec in pkg_cur loop -- f.. 더보기
MS, PerformancePoint Planning 단종 발표 마이크로소프트가 지난 1월 23일에 PerformancePoint Server의 Planning 서비스를 단종시킴과 동시에, 기존의 Dashboard, Scorecarding, Analytic 등 BI 관련 기능은 Sharepoint Server에 통합한다는 내용의 소식을 전했다고 한다. 기존의 Planning 기능은 올해 여름으로 예정된 서비스팩3 이후 더 이상의 지원은 없다고 한다 : Microsoft Boosts BI, Backs Away from Performance Management http://www.intelligententerprise.com/channels/business_intelligence/showArticle.jhtml?articleID=212902660&cid=RSSfeed_I.. 더보기
계산 멤버로 LastNonEmpty 값 구하기 집계 함수 중 LastNonEmpty라는 집계 함수가 있다. 이것이 무엇인고하니 .. 다음과 같이 재고 데이터가 있는 경우를 생각해보자 : 재고량 2009년 1월 2일 20,000 7일 19,000 그럼 재고량을 표현할 때, 2009년 1월의 재고량은 얼마일까? 당연하지만 재고량은 가장 마지막 일자의 데이터를 기준으로 하게 된다. (마지막 일자 이후에 재고량의 변동이 없었다면 말이다) 이런 집계 패턴을 나타내기 위해 사용하는 것이 LastNonEmpty 집계 함수로써, 값이 있는(위 경우에는 '재고량'이 있는) 가장 마지막 멤버의 값을 상위의 멤버(=1월, 혹은 2009년)에 보여줄 수 있게 해 준다. 이것으로 끝난다면 좋겠으나 .. 다른 차원이 있을 경우에는? 재고량 재고량 제품A 제품B 2009년 1.. 더보기
SQL Server 2005 서비스팩 3 릴리즈 다운로드 링크 : http://www.microsoft.com/downloads/details.aspx?displaylang=ko&FamilyID=ae7387c3-348c-4faa-8ae5-949fdfbe59c4 2008년 12월 15일자로 SQL Server 2005 SP3가 릴리즈되었다. 빌드 넘버는 9.00.4035. 대충 살펴본 바로는 Vista/Win2008과의 호환성이 개선된 것 같고, 몇 가지 기능 변경점은 있으나 별로 관심없는 부분이라 일단은 패스. 버그 픽스 등의 목록은 다음 주소에서 읽어볼 수 있다 : List of the bugs that are fixed in SQL Server 2005 Service Pack 3 http://support.microsoft.com/?kbid=955.. 더보기
Calculated Member를 사용해 누적 값 구할 때의 팁 AS2005에서 계산 멤버를 사용해 누적 값을 구할 경우 보통 Measures 차원에 계산 멤버를 두지만, 별도의 차원에서 누적 값을 구할 수도 있다. 다음과 같은, 해당 년도의 시작부터 특정일까지의 누적액을 구하는 [누적금액]이란 계산 멤버를 정의했을 경우를 생각해보자 : aggregate( PeriodsToDate([기간].[기간].[년], [기간].[기간].CurrentMember), [Measures].[금액])위와 같은 경우 계산이 올바로 이루어지게 하려면, 계산 멤버의 부모 멤버를 Measures 그룹으로 지정해야 한다. 하지만 이러한 누적 금액을 특정 일자의 실적과 비교하면서, 다수의 측정값이 있을 경우에는 각 측정값마다 누적 계산 멤버를 추가해줘야 한다. 이럴 경우, 별도의 차원(예를 들자.. 더보기
drillthrough 구문 예제 DRILLTHROUGH SELECT ([Date].[Calendar].[Month].[July 2003]) ON 0 FROM [Adventure Works] WHERE [Geography].[Country].[Australia] RETURN [$Date].[Date] ,KEY([$Product].[Model Name]) ,NAME([$Employee].[Employee]) ,[Reseller Sales].[Reseller Sales Amount] ,[Reseller Sales].[Reseller Tax Amount] ,[Reseller Sales].[Reseller Standard Product Cost]기본적으로 큐브를 쿼리할 때의 MDX 구문과 비슷하지만, 끝의 Return 구문에서 row 형태로 가.. 더보기
현재 기간의 이전 년도, 이전 년도의 특정 월 참조 다음 MDX 문은 선택된 해당 기간에 관계 없이 전년도 기간 멤버를 반환한다. ex) 2008년 1월 30일 -> 2007년, 2007년 3월 -> 2006년 Ancestor([기간].[기간].CurrentMember,[기간].[기간].[년]).PrevMember이렇게 얻는 전년도 멤버의 1월 기간에 대한 값을 구하려면? Descendants(Ancestor([조회일].[기간].CurrentMember, [조회일].[기간].[년]), [조회일].[기간].[월]).Item(0)* Item(0)는 멤버 집합에서 첫번째 항목을 얻는 함수이다. 0으로 시작한다는 점에 유의하자. 더보기
MDX Studio v0.4.8 업데이트 Mosha Pasumansky의 MDX Studio가 업데이트를 거듭하여, 최근 0.4.8 버전까지 릴리즈되었다 : 예전 버전에 비해서 팩트-차원 간 Dependencies 체크 기능이라든가, 성능 검사 도구 등 다채로운 기능이 추가된 듯 하지만, 여전히 한글 메타데이터(큐브명이나 차원명 기타등등)의 처리에 애로점이 있는 듯. SSMS로는 일말의 아쉬움이 있는 AS 쿼리 환경을, 좀 더 꾸며봅시다. MDX Studio : http://www.mosha.com/msolap/mdxstudio.htm 다운로드 링크 : http://cid-74f04d1ea28ece4e.skydrive.live.com/browse.aspx/MDXStudio/v0.4.8 더보기
원단위(원/만원/억원) 차원 계산 멤버 생성하기 큐브에서 특정 금액을 원단위로 끊어서 조회하고자 할 때, 정석대로라면 팩트 테이블에 특정 원단위(만원, 억원 등)에 해당하는 금액을 나타내는 컬럼을 추가해야겠지만, 이런 작업을 계산 멤버를 사용해서 수행할 수도 있다 : 1. DSV에 테이블을 추가한다. 실제 물리적 테이블을 생성할 필요도 없다. 다음과 같은 명명된 쿼리를 사용해도 된다 : SELECT '1원' AS UNIT 2. 차원을 추가한다. 1.에서 추가한 테이블을 가지고 차원을 만든다. 위의 경우라면 '1원'이라는 멤버 하나만 나타나도록 만들면 된다. 3. 큐브에 차원을 추가한다. 2.에서 생성된 차원을 큐브에 추가한다. 이 차원은 차원 용도를 설정할 필요가 없다. (측정값 그룹과 특정 키를 연결해 줄 필요가 없다는 뜻) 4. 계산 멤버를 추가한.. 더보기