วันอังคารที่ 15 มีนาคม พ.ศ. 2554

วันศุกร์ที่ 11 มีนาคม พ.ศ. 2554

Visual studio 2005 VS 2008

 Reporting Service , Report designer , Query designer VS 2008 non formatting

ใครที่เคยใช้ VS Studio 2005 ในการ Design report (MDX) แล้วนั้น เมื่อมาเจอ VS 2008 เข้าไป
คงงงกันไปเลยทีเดียว ว่าทำไม Microsoft เอา Feature เกี่ยวกับการแสดง Formatting ของ MDX Syntax
ออกไปซะอย่างนั้น Y_Y เฮ้อ   ไม่เข้าใจจริง

Blog นี้เขียนอธิบายไว้เกี่ยวกับเรื่องการเปลี่ยนแปลงครั้งนี้นะครับ
http://blogs.socha.com/2009/05/upgrading-visual-studio-team-foundation.html

ส่วนตัวแล้วเซ็งมากๆกับเรื่องนี้  เพราะจริงๆ  มีแพลนจะ Upgrade Server เป็น SQL 2008 แต่ส่วนอื่นๆ ก็น่าใช้งาน ติดเรื่องนี้เรื่องเดียว ก็ไม่เข้าใจว่าจะงี่เง่าไปไหน


แล้วอีกอย่าง พอเข้าไปดูในเว็บจริงๆ  ที่อธิบายเรื่องนี้ไว้กลับแสดงรูปที่ไม่เป็นความจริง
ดังนี้ http://msdn.microsoft.com/en-us/library/ms403829%28v=SQL.100%29.aspx
ให้เลื่อนไปดูรูปด้านล่างนะครับ  รูปที่แสดงเป็น query ที่มี Formatting ซึ่งโกหกอ่ะ -*-

รูปภาพหลอกลวงจาก Microsoft


สรุปการเปลี่ยนแปลงที่เห็นได้ชัดเีดี่ยวกับ VS 2008 ที่กระทบต่อการทำ Reports

1. ของ VS 2005 การ Design report จะมี 3 Tab คือ Data , Layout , Preview  ของ VS 2008   Tab Data หายไป

VS 2005 Design Tab







VS 2008 Design Tab



2. Tab Data ที่หายไปใน VS 2008 จะต้อง DB click เข้าจากตัว Data set (เสียเวลานิดหน่อย)
3. Formatting MDX Query syntax หายเกลี้ยง เหลือเพียง Plain text ขาว ๆ ตัวหนังสือดำๆ -*- อันนี้ที่รับไม่ได้
เพราะส่วนใหญ่แล้วการทำรายงานคงไม่มีใครทำจาก Design view ที่จับลากๆ ๆ ๆ ๆ ได้หรอกนะ
ก็ Coding เองกันทั้งนั้น  ทีนี้จะทำไงล่ะ ตรวจสอบก็ยาก  หามาทุกวิธีแล้วก็ไม่มีทางแก้ได้ในตัว VS
มีแต่บอกว่าให้ไปเขียน Code จากตัว Management Studio มาแล้วมาแปะ  เซ็งจิต

VS 2005 Query Designer with Syntax formatting

วันจันทร์ที่ 28 กุมภาพันธ์ พ.ศ. 2554

Reporting service 2005 , Matrix , Table visibility expression BUG

Reporting service 2005 , Matrix and Table visibility hidden expression  BUG
Issue when design report that contain more than one template (matrix / table)

Example , I create a report that can use only one MDX Query set to generate multiple style of matrix view.
Then i decide to build template parameter  and let user choose what they want to view.
And i set the hidden property (under visibility of matrix) to show or hidden when user selected a template.
Expression : = IIF(template_id=1,FALSE,TRUE)   <------ That's mean user have selected the 1st template.
And this matrix will be show. It' seem to be alright when viewing from web browser .
But when export to excel file , +/- symbol is gone! , Toggle is not working!!! - -"


Why this happen to a basic logic ? I have tested so many case but no luck.And I'm not found solutions to solve this issue yet.


This error not found on SSRS 2008  Y_Y.

Shrink tempdb via command.

use tempdb
   go

   dbcc shrinkfile (tempdev, 10)
   go
   -- this command shrinks the primary data file

   dbcc shrinkfile (templog, 10)
   go
   -- this command shrinks the log file, look at the last paragraph.


sp_helpdb tempdb


sp_spaceused

วันพุธที่ 23 กุมภาพันธ์ พ.ศ. 2554

Assign multiple values in multiselection parameter in reporting service

เคยพบปัญหาที่ไม่สามารถตอบสนองผู้ใช้งานได้ในเรื่องของการดูรายการข้อมูลที่เฉพาะเจาะจงลงไป
ตามที่ระบุ เนื่องจากมีรายการเป็นจำนวนมาก  จากเดิมที่มีการสร้าง Parameter ที่เป็นแบบ Multi-Selection 
เพื่อตอบสนองความต้องการให้ผู้ใช้แล้ว 

ตัวอย่างเช่น Dimension ที่เป็นสาขาร้านค้าหลายพันสาขา
แต่ผู้ใช้ต้องการระบุร้านค้าประมาณ 700 สาขา กรณีนี้หากไม่ใช้ Adhoc Query  ในการจัดการแล้ว
การที่ผู้ใช้จะมานั่งคลิ๊กเลือกร้านค้าทั้งหมดที่ต้องการในการรันรายงานเพียงครั้งเดียวนั้นแทบจะเป็นไปไม่ได้เลย อีกทั้งยังอาจจะเกิดความผิดพลาดในการเลือกข้อมูลได้อีก ดังนั้นจึงได้หาวิธีการเพื่อแก้ปัญหานี้ขึ้น

และได้พบวิธีการคือ ทำการ Generate Member Unique ID ของ Dimension ที่ต้องการมาเป็น Text 
และเพิ่ม String Parameter ในรายงานขึ้นมา 1 ตัวเพื่อรองรับ Member ID ที่ได้ทำการ Generate มาแล้ว
เพื่อนำไป Assign ต่อยัง Multilection parameter ที่มีอยู่ก่อนแล้ว โดยเขียน Expression ที่ Default value ของ Parameter ที่ต้องการให้ถูก Assign ค่า

ตัวอย่าง Expression คือ =SPLIT(Parameters!para_MID_Manual.Value,",")
และ MID ที่ Generate text ได้คือ
[MID].&[100024],[MID].&[100045],[MID].&[100074]

จากตัวอย่างยกมาเพียงแค่ 3 Members เท่านั้น
เพียงเท่านี้ก็จะช่วยลดกระบวนการทำงานที่ยุกยากซับซ้อนของผู้ใช้งานได้แล้วครับ