Archive for the ‘เกร็ดและเทคนิค’ category

สร้าง report จาก external database ไม่ง้อ BDC : 2 Config Reporting Service

August 29th, 2010

ทิ้งห่างจาก ตอนแรก นานเลยวันนี้ คิดงานไม่ออกแล้วก็ขอแอบมาอู้เขียนบทความนิดนึง

ก่อนอื่นต้องข้อแก้ข้อมูลเกี่ยวกับ version ของ Database ที่รองรับการทำ Integrated ระหว่าง SharePoint และ Reporting Service ก่อนนะครับว่า edition ที่รองรับ จะเริ่มต้นตั้งแต่ standard, developer, enterprise นะครับ

จากคราวที่แล้ว เราเตรียมของ ไว้พร้อมแล้ว (บางคนอาจจะรอจนเบื่อแล้วก็ทำไปเรียบร้อยแล้ว อิอิ) เราก็เริ่มลงมือ ตอนลงโปรแกรมผมจะคร่าวๆนะครับ จะเน้นตอน config การใช้งาน reporting service บน sharepoint มากกว่า

  1. สมมติว่าเราใช้เครื่อง server แบบ all in one ก่อนนะครับ เครื่องเราก็เป็น window server 2003 r2 std, windows vista business windows 7 pro (ส่วน 2008 ยังไม่ได้ลอง)  OS พวกนี้คือ ที่ผมลองลงมาแล้วนะครับ อ้อ เครื่องที่ผมลอง join domain ทุกตัวนะครับ (แต่คงไม่เขียนส่วนนี้ เพราะมันหลุดออกไปไกลพอสมควร)
  2. พวก .net framework 2.0 / 3.5 ก็ลงไปไว้ก่อน
  3. Enable  IIS ก่อน  (เพราะ Reporting Service ต้องการ ใช้ด้วย WSS3.0 ก็ต้องใช้เช่นกัน)
  4. เรายังไม่ต้องลง sharepoint (wss3.0)  ให้เราลง Database server ไปก่อน SQL Server 2005 ขึ้นไป จะ Std/ Developer/ Enterprise ก็ได้นะครับ ตอนลง database เรายังไม่ต้อง config reporting service ไว้ก็ได้นะครับ ไว้ทำทีเดียว
  5. ต่อไปเราก็ลง WSS3.0 แบบ Advance โดยใช้ database เป็น ตัวที่เราลงไว้ เราก็ลงไปจน ถึง สร้าง site collection เลยแล้วกันครับให้แน่ใจว่าใช้งานได้
  6. มาถึงขั้นตอน การ config reporting service ให้ทำงานบน sharepoint แล้ว ให้ สูดหายใจลึกๆ หนึ่งที เพราะกว่าจะลงด้านบนเสร็จหมด ก็คงเกือบ สองชั่วโมงได้แล้ว
  7. ก่อนอื่น เรามา config sql reporting service ก่อน หลักใหญ่ใจความสำคัญคือ reporting service ปกติ มันจะเป็น Native mode จริงๆแล้วตอนเลือก มี ให้เลือก native mode (default) กับ sharepoint integrated โหมด แต่ผมเชื่อว่า ทุกคนคงไม่ได้เปลี่ยนอะไร เนื่องจาก next next finish มันทำให้เพลิน หรือไม่ก็ปล่อยมันผ่านๆไป เพราะ sharepoint คืออะไรก็ไม่รู้  หรือบางคนไม่เคยลง reporting  service เลยก็มี (แบบผมเพิ่งมารู้จัก ไม่นานเอง แหะๆ)
  8. หน้าตาเป็นแบบนี้คับ (อันนี้แอบ config ไปแล้วหลายครั้ง อาจจะต่างกันเล็กน้อย) ดูตามภาพเลยนะครับ (click เพื่อดูภาพเต็มขนาดใหญ่)
    ให้เรากด Change Database


    เลือก Create a new report Server database แล้วก็ next


    พอดีเครื่องผมลง SQL Server ใช้ 2 Instance ก็เลือกแล้วกด Test Connection ให้เรียบร้อย


    ใส่ชื่อ Database ที่จะสร้างใหม่เพื่อใช้กับ WSS3.0  และที่สำคัญ เลือก SharePoint Integrated Mode  และ กด Next


    ถึงตรงนี้ก็เกือบครึ่งทางแล้ว ถ้าเป็น Production server เราควรจะมี user account เพื่อมาจัดการด้วยนะครับ อันนี้เป็น Test ก็ใช้อันนี้แหละ ง่ายดี


    ตรวจสอบความถูกต้องอีกครั้ง ถ้าแน่ใจแล้วก็กด  Next

    ระหว่างนี้ก็ออกไปกินข้าวนอกบ้าน หรือไปเที่ยวไหนไกลๆซักพัก   ไม่ใช่ละ รอแป๊บนึงครับไม่นานๆ พอเสร็จหมดแล้วก็ กด Finish


    พอมาถึงตรงนี้ ก็เป็นอันจบฝั่งการ config ตัว Reporting Service แล้วคับ เย้ๆๆๆ ครึ่งทางแล้ว ต่อไป เรามาลง Reporting Service Add-in for SharePoint กัน อันนี้ต้องโหลดมาให้ตรงกับ version ของ database ที่เราใช้นะครับ

  9. การลง Reporting Service Add-in for SharePoint ง่ายมาก คือไม่ต้อง config อะไรเลย แต่สิ่งที่ทำคือมันจะเป็นการไปเพิ่ม web part ที่เกี่ยวข้องกับ การแสดง report และ ยังไปเพิ่ม Feature บน SharePoint อีกด้วยครับ ก่อนอื่น เราก็เข้าไปหน้า Central Administration ก่อน เลย แล้วไปที่ Site Actions -> Site Settings -> Site Collection features แล้วไป Activate feature ที่ชื่อ Report Server Integration Feature
  10. เสร็จแล้วให้กลับมาหน้า Central Admin – Application Management เราจะ เห็นว่ามี section ใหม่ ขึ้นมา

  11. เข้าไปที่ Manage integration settings. แล้วนำค่า ที่ได้จาก Web Service URL ดังภาพ


  12. จากนั้นั้นก็เอาค่า URLs ที่ได้ ใส่ลงในช่อง Report Server Web Service URL โดย mode ที่ setไว้แต่แรก คือ Windows Authentication

มาถึงตอนนี้เราก็ได้จัดการ config เบื้องต้นเรียบร้อยแล้วนะครับ คราวหน้า จะมาเล่าเกี่ยวกับการสร้าง report แล้วก็การนำเสนอ report บน SharePoint ให้ฟังกัน

มีข้อสงส้ยตรงไหน ก็สามารถฝากไว้ในคอมเมนท์ หรือว่า จะไปตั้งกระทุ้ถามใน forum ก็ได้นะครับ.
สวัสดีครับผม

ปล entry นี้เขียนเสร็จกลางทาง ระหว่างนั่งเรือไปเกาะล้าน ^^

  • Share/Bookmark

เพิ่ม Look up Column ให้กับ List และ Library ด้วยการสร้าง Site Column

July 14th, 2010

สวัสดีครับ คราวนี้ขอลัดคิวเป็นการตอบคำถามคุณ korndin ก่อนเกี่ยวกับการสร้าง Look up Column เพื่อนใช้ใน custom list หรือ library ต่างๆ ที่เราสร้างใน site collection (พอดีว่าเคยทำพอดี ท่านอื่นอย่าเพิ่งน้อยใจนะครับ)

เริ่มเลยดีกว่า

ก่อนอื่นเราต้องสร้าง list ที่จะเอามาใช้เป็น Lookup ก่อน ในที่นี้ผมทำไว้ชื่อ Country Name

ต่อมา เราจะมาสร้าง Site Column กัน ก็ไปที่ Site Actions -> Site Columns (Gallery Section)

แล้วก็กด Create

ให้เราตั้งชื่อ Column ที่เหมาะสมลงไป จะเห็นว่าผมกำหนด Type เป็น Look up (information already on the site) ส่วนกรุ๊บเราจะสร้างใหม่ หรือว่าเลือก อันนี้แล้วแต่เรา

ลงมาด้านล่างอีกหน่อย ให้เราเลือก ชื่อ List ทีเราสร้างไว้แล้ว (ในที่นี่คือ Country Name) ตรง Get Information from แล้วเลือก Column ที่มีข้อมูลที่เราต้องการแสดง ซึ่งก็คือ Title  ส่วน allow multiple values คือยอมให้เลือกได้หลายๆค่า เดี๋ยวเราจะเห็นภาพตอนเราไปใช้แล้ว

มาถึงตรงส่วนที่เราจะนำมาใช้กันนะครับ ให้กลับมาที่ Document library ที่เราสร้างไว้ หน้า Document setting ให้เราเลือก add from existing site columns

พอเราเลือก Custom Column (ถ้าเราสร้างไว้ category อื่น ก็ต้องเลือกอันอื่นนะครับ)  เราจะเห็นว่า มีชื่อ Country List ที่เราสร้างไว้อยู่เราก็กด Add เข้าไป แล้วกด ok

คราวนี้พอเรา เพิ่มเอกสารลงไปใน document list อันนี้ ก็จะมี field เพิ่มให้เราเลือกดังภาพครับ (สังเกตว่าจะเลือกได้หลายค่า)

โดยสรุป การทำ site column ก็จะช่วยให้งานของเรายืดหยุ่นมากขึ้น คือถ้า list ที่เรานำมาสร้าง column มีข้อมุลเพิ่มเติม ก็จะมีผลไปกับทุกๆ library ที่มีการใช้ column นั้นครับ  ซึ่งต่างจาก column type แบบ choice ที่จะฝั่งค่า ตัวเลือกลงไปในแต่ ละ library เลย

ผมก็หวังว่าโพสนี้น่าจะพอเป็นแนวคิดและตอบคำถามคุณ korndin ไม่มากก็น้อยนะครับและก็คงจะเป็นประโยชน์กับเพื่อนๆคนอื่นๆที่เริ่มต้นใช้ SharePoint เช่นกัน ผมต้องขอตัวไปทำงานและการบ้านก่อนแล้วนะครับผม

สวัสดีครับ

  • Share/Bookmark

สร้าง report จาก external database ไม่ง้อ BDC : 1 ภาคเตรียมพร้อม

July 6th, 2010

Feature ที่ทำให้ MOSS2007 แตกต่างจาก WSS3.0 นั้น ตัวหนึ่งคงหนีไม่พ้น BDC หรือ Business Data Catalog ที่ช่วยให้เรา สามารถนำข้อมุลที่อยู่ใน ระบบอื่น หรือฐานข้อมุลอื่นๆ มาแสดงบน SharePoint ได้ โดยหน้าตาที่ได้ก็โอเค

จริงๆแล้วในตัว WSS3.0 เองทำไม่ได้หรอกคับ แต่เนื่องจาก ไมโครซอฟต์แจกของดี ที่หายากเอาไว้ นั้นก็คือ SQL Reporting Service ซึ่งแม้แต่บน SQL Express ยังมีให้ใช้กัน เพียงแต่ เราต้องไป config มันให้ ทำงานกับ SharePoint ก่อน แล้วก็ยังมี Report Tool ชื่ Report Builder 2.0 มาช่วยให้เราสร้าง data report/ chart report ได้แบบง่ายๆ จริงๆแล้วเรียกว่าไม่ยากจะดีกว่า อิอิ

สิ่งที่จะต้องใช้ก็มีดังนี้

  1. Windows 2003 R2 Standard
  2. WSS3.0 SP2 + February 2010 Cumulative update (ไหนก็เตรียมแล้ว ก็ อัพเดทให้มันสุดๆ)
  3. MS SQL Server 2008 Express with advance service (2008 R2 น่าจะได้ แต่ผมยังไม่ได้ลงใหม่)
  4. MS SQL Server 2008 Reporting Services, Report Builder 2.0 April 2009
  5. Reporting Service for Sharepoint
  6. Database AdventureWork

ผมก็ให้เวลาหาของกันซักพักนะครับ สำหรับใครที่ใจร้อน วิ่งไปที่นี่ก่อนได้เลยครับผม http://msdn.microsoft.com/en-us/library/ee210649.aspx

วันนี้ต้องไปก่อนแล้วครับ แล้วพบกันใหม่ในเร็ววัน

สวัสดี

ปล จริงๆผมจะเขียนเกี่ยวกับเรื่องนี้มาพักใหญ่แล้วหละคับ แต่มรสุมงานเข้า (ซึ่งตอนนี้ก็เข้าอยู่) แต่ถ้าไม่เริ่มก็ไม่ได้เขียนซะทีเลยเริ่มซะดีกว่าวันละนิดวันละหน่อย

  • Share/Bookmark

ย้าย Database SharePoint ง่ายนิดเดียว

January 28th, 2010

เวลาที่เราใช้ SharePoint ไปนานๆ การเก็บเอกสารต่างๆก็คงมีมากขึ้นใช่มั๊ยครับ?  หรือตอนเราเริ่มต้นกิจการใหม่ๆ เรามีเงินน้อยสเปคเครื่องอาจจะไม่สูง แต่พอใช้งานไปเรื่อยๆ เราก็มีเงินมาจัดการเรื่อง Server ได้ สิ่งที่ผมเจอมาสดๆร้อนๆ ก็เป็นแบบนี้แหละครับ มีการซื้อเครื่อง Server มาใหม่ เพื่อนเอามาทำเป็น Databases Server โดยเพิ่มความเสถียรด้วยการวางลงใน cluster อีกทีนึง (อลังการ)  ทั้งหมดนี้ไม่ได้เกี่ยวกับผมเลย

ถ้า Database ตัวนั้นไม่ได้เก็บ Database ของแชร์พอทย์ และทีสำคัญ (แอบเผา) ผมเพิ่งรู้ก่อนวันไมเกรท วันเดียว ฮ่วย!!! ชีวิตอาภัพจริงๆ

แว๊บแรกที่ผมนึกออก ก็คือ การใช้ Backup / Restore หรือ การ ใช้ Export /Import   แต่เดี๋ยวก่อนซาร่า  นั้นหมายความว่า เราจะ Migrate แชร์พอทย์ หรือเปล่า??  แต่เราจะย้ายแต่ Database หนิ ไม่ได้ย้าย SharePoint งานเข้าสิทีนี้ ทำไงดีๆ

Google สิคับ ได้ออกมาลิงค์นึง Move all databases (Windows SharePoint Services 3.0 อ่านไปซักพัก โอ้ มันง่ายอะ ง่ายจนน่ากลัว (จิตตกว่างั้น) ถึงมันจะประหลาดๆ ในความรู้สึกไปหน่อย

สิ่งที่ผมจะต้องทำ มีแค่นี้ครับ

  1. Stop SharePoint Service ทั้งหมด รวมถึง Search และ IIS ด้วย
  2. ปล่อยให้ทีม Database ทำงานไป แล้วแค่บอกเรามาว่า ย้ายไปที่ไหน เวลาผ่านไปไวเหมือนการ์ตูน ย้ายเสร็จแล้ว
  3. ไปที่เครื่อง SharePoint (พอดีผมมีเครื่องเดียว) พิมพ์คำสั่ง CliConfg ที่ Run
  4. ก็จะมีหน้า Dialog box โผล่มาแบบนี้ ผ่างง ทำใจดีๆ เพราะใกล้จะเสร็จแล้วนะ ขอบอก
    เราก็ คลิ้กที่ TCP/IP แล้วก็กด Enable
  5. ไปที่ Tab Alias แล้วเราก็ตรวจดูว่าว่างปล่าวสะอาดตา (ซึ่งควรจะเป็นแบบนั้น) แล้วเราก็กด Add จะมีหน้าจอ โผล่ขึ้นมาให้เราใส่ค่าของ Database Server ลงไป แบบนี้
    โดยที่ NewSERVERName ถ้ามีหลาย instance ก็ใส่ instance ลงไปด้วยเช่น NewSERVERName\instance_SP เป็นต้น
  6. คราวนี้เราก็นั้่งรถไปศาลเจ้าพ่อหลักเมืองแล้วก็สักการะบูชา พอเป็นกำลังใจแล้วก็กลับมา Enable Service ต่างๆ ที่ปิดไป
  7. แชร์พอทย์ของเรา ก็จะใช้งานได้ตามปกติ

ที่ผมบอกว่าแปลกก็คือ ทำไม SharePoint ไม่มีการเก็บ ค่า connection string แบบชาวบ้านเค้า เพราะการทำแบบนี้มันไม่ค่อยยั่งยืน เนื่องจาก บางครั้งเราต้องการ control ชื่อ เครื่อง Server หรือแม้กระทั้ง Record บน DNS การทำแบบนี้ทำให้ ชื่อเก่ามันยังอยู่ ดูแล้วหงุดหงิดใจ

สวัสดี

  • Share/Bookmark

Set Path เพิ่มความสะดวก

January 19th, 2010

ความจริงเรื่องนี้ ผมตัดสินใจอยู่นานว่าจะเขียนดีมั๊ย แต่ที่ตัดสินใจเขียน เพราะว่า มันเป็นเรื่องใกล้ตัว ที่หลายๆคนมองข้ามไปครับ นั้นก็คือ การ Set Path เพื่อให้เรา สามารถเรียกใช้ execute file ได้ง่ายขึ้น คือ จากที่ไหนก็ได้ ขึ้นตอนง่ายๆ ตามนี้ครับ

  1. คลิกขวา ที่ My Computer แล้วเลือก Properties
  2. ตรงนี้ สำหรับ vista จะต้อง เลือกที่ Advance system setting แต่ถ้าเป็น windows server จะ ขึ้น dialog ของ System Properties ให้เลย แล้วก็ให้เลือก tab Advance
  3. เราจะเห็น ปุ่ม Environment Variables… ก็ค่อยๆกดลงไป (จะกดแรงๆก้อได้นะ ไม่ผิดแต่อย่างใด)
  4. จะมี dialog ใหม่โผล่มาให้เห็น คราวนี้ เราต้องตัดสินใจว่า เราจะทำใช้คนเดียว หรือว่าเผื่อแผ่ให้คนอื่น
  5. ถ้าทำใช้เองคนเดียว ให้ ดู ที่ “User variables for (user name)” แต่ ถ้าเผื่อแผ่ให้คนอื่นให้ดูที่ ที่ “System variable”
  6. เมื่อตัดสินใจได้แล้ว ให้ลองหา บรรทัด ที่ตรง ช่อง Variable เขียนว่า “PATH” หรือ “Path” ตัวใหญ่เล็กไม่เกี่ยว
  7. ถ้าเจอ ให้กด Edit ในช่อง variable value ให้ พิมพ์ “C:\Program Files\Common Files\microsoft shared\Web Server Extensions\12\BIN” ซึ่งเป็นที่อยู่ของ file stsadm.exe ที่เราต้องหากินกับมันไปอีกนาน ลงไป
  8. ถ้าไม่มี ก็กด New แล้วช่อง variable name ก็ส่งไปว่า “PATH” หรือ “Path” ก็ตามสะดวก
  9. จากนั้น กด Ok ออกมาเรื่อยๆ สามครั้ง  ถ้าเปิด dos เอาไว้ให้ปิดก่อนล้วเปิดใหม่
  10. พอเรียบร้อยแล้ว ความสบายจะมาเยือนทันที่

แบบว่าแอบอัพในเวลางาน แล้วก็ไม่ยากจนเกินไป ไม่มีรูปนะคับ ทำตามขึ้นตอนได้แน่ๆ

สวัสดี

ปล  ผมตอบ คำถามคุณ id ผ่าน entry นี้เลยแล้วกันนะครับ การที่ขึ้น error “stsadm’ is not recognized as an internal or external command, operable program or batch file.”   เพราะว่า มันหา file stsadm จากใน drive D ที่คุณ รันคำสั่ง stsadm ไม่เจอครับ ต้องทำตามด้านบนก่อน

  • Share/Bookmark