T-SQL นับจำนวน record ที่เกิดจากการสั่ง execute Dynamic Query

ตัวอย่างไม่ต้องอธิบายมาก DECLARE @str_SQL NVARCHAR(100), @rowcount INT –กำหนดตัวแปร SET @str_SQL = ‘select * from sysobjects’ — set ค่าให้ตัวแปร EXEC sp_executesql @str_SQL — สั่ง execute dynamic query SELECT @rowcount = @@ROWCOUNT — get ค่าที่จำนวน record ที่เกิดผลกระทบจากการ execute dynamic query PRINT ‘@rowcount = ‘ + CAST(@rowcount AS VARCHAR(4)) — แสดงผลออกหน้าจอ  

Read More »

วิธีใช้ Google Sheets ลบผู้ใช้จำนวนมากบน GAFE

[บทความนี้ สำหรับผู้ที่มี Admin Privilege ขึ้นไป] ต่อจากบทความ วิธีใช้ Google Sheets เปลี่ยนแปลงข้อมูลผู้ใช้จำนวนมากบน GAFE เมื่อต้องการลบผู้ใช้จำนวนมาก ก็ทำเหมือนเดิม แต่เปลี่ยน Script นิดหน่อยดังนี้ สร้าง Google Apps Scripts ใน Google Sheets นี้ ด้วยเมนู Tools > Script Editor … จากนั้นเลือก Blank Project แล้วกดปุ่ม Close ตั้งชื่อโปรเจค UpdateUser แล้วใส่โค๊ดดังนี้ (ปรับค่า firstRow และ lastRow ให้เหมาะสมตามต้องการ) นอกนั้นเหมือนเดิม หวังว่าจะเป็นประโยชน์ครับ

Read More »

วิธีใช้ Google Sheets เปลี่ยนแปลงข้อมูลผู้ใช้จำนวนมากบน GAFE

[บทความนี้ สำหรับผู้ที่มี Admin Privilege ขึ้นไป] วิธีใช้ Google Sheets สร้าง Account ใหม่ลงใน Sub Organization ของ GAFE เมื่อต้องการแก้ไขข้อมูลของผู้ใช้จำนวนมาก ได้แก่ ตั้งรหัสผ่านใหม่ ไม่บังคับให้เปลี่ยนรหัสผ่านในครั้งแรกที่เข้าระบบ ย้าย Organization Unit ไปอยู่ภายใต้ /Students ใน Admin Console ของ Google Apps จะมีเครื่องมือ Users เพื่อใช้ในการจัดการผู้ใช้ แต่เครื่องมือที่มีอยู่ มีข้อจำกัด คือ ไม่สามารถเขียนเงื่อนไขในการกรองเอาเฉพาะ Email Address ของผู้ใช้ที่ต้องการได้ ดังนั้นจึงต้องใช้วิธีการ Download Users ทั้งหมดออกมาก่อน เลือก Download all users … แล้วกดปุ่ม OK จะได้ไฟล์ UserData-psu.ac.th-20141110.csv (ชื่ออาจจะแตกต่างกันไปในแต่ละโดเมน) ให้ Save ไว้ในเครื่องคอมพิวเตอร์ก่อน แล้ว Upload ไปเก็บไว้บน Google Drive แล้วเปิดด้วย Google Sheets จากนั้นเลือกคอลัมน์ A แล้วคลิกขวาเลือก Copy ไปใส่ใน Google Sheets ใหม่ ใน Google Sheets ใหม่ ให้ Edit > Paste ข้อมูลมาลงไว้ในคอลัมน์ A เช่นกัน จากนั้นในคอลัมน์ B2 ใส่สูตรว่า (นักศึกษาของมหาวิทยาลัยจะใช้ Login เป็นรหัสนักศึกษาซึ่งเป็นตัวเลขทั้งหมด จำนวน 7 หรือ 10 หลัก ตามด้วย @psu.ac.th) ดังนี้ ) จากนั้นให้ Copy สูตรดังกล่าวไปในคอลัมน์ B ทั้งหมด จะทำให้ ชื่อบัญชีของนักศึกษาเท่านั้นที่จะมีค่าเป็น Y ส่วนบุคลากรจะมีค่าเป็น N หลังจากนั้นให้ Filter โดยเลือกเฉพาะคอลัมน์ B ที่มีค่าเป็น Y ก็จะได้นักศึกษาทั้งหมด  แล้วทำการเลือกข้อมูลที่ได้ Copy เอาไว้แล้วสร้าง Google Sheets ใหม่อีกอันหนึ่ง ตั้งชื่อว่า Udate Users แล้วเอาข้อมูลดังกล่าวมาใส่ในคอลัมน์ A จากนั้นสร้าง B เป็น Organization Unit Path ที่ต้องการ แล้วสร้าง C เป็น Password ที่ต้องการตั้ง และ D เป็น Status ต่อไป เป็นขั้นตอนการเขียน Google Apps Script สร้าง Google Apps Scripts ใน Google Sheets นี้ ด้วยเมนู Tools > Script Editor … จากนั้นเลือก Blank Project แล้วกดปุ่ม Close ตั้งชื่อโปรเจค UpdateUser แล้วใส่โค๊ดดังนี้ (ปรับค่า firstRow และ lastRow ให้เหมาะสมตามต้องการ) ถ้าลอง Run เลย จะเจอ Error อย่างนี้ คลิก Continue -> Accept -> Dismiss เพราะยังไม่ได้ Enable API ไว้ เนื่องจากการสร้าง Account ต้องใช้สิทธิ์ของ Admin ขึ้นไป และต้องใช้ Admin SDK Directory

Read More »

How to Install VCNT Visitorcounter on joomla 3.x

วิธีติดตั้ง VCNT Visitorcounter on Joomla 3.x สวัสดีครับ ในวันนี้ใครที่ใช้ Joomla 3 ที่ยังไม่มีตัวนับสถิติผู้เข้าชม ผมมีตัวนับสถิติ ที่ทำงานง่ายไม่ซับซ้อนมาแนะนำครับ โดยมันมีชื่อว่า VCNT Visitorcounter บางคนอาจจะเคยใช้ Vinaora Visitcounter มาก่อน แต่พอมา joomla 3 นี้ไอ่ตัว Vinaora ยังไม่ได้ทำ plugin มาเผื่อ joomla 3 ใครเผลอเอาไปติดตั้งเว็บของท่านอาจไม่ปรากฏอะไรซักอย่างในหน้าแรกเลยก็เป็นได้นะครับ (อย่าลองเชื่อผม) ตัวนับสถิติที่แนะนำวันนี้ก็ได้แก่  VCNT Visitorcounter ซึ่งดาวน์โหลดได้จาก http://joomla-extensions.kubik-rubik.de/vcnt-visitorcounter#backend-info  เมื่อดาวโหลดมาแล้วก็ทำการติดตั้ง มันจะไปเพิ่มอยู่ใน Module Manager ครับ และหากจะเข้าไป ปรับแต่งค่าให้ไปที่  Module Manager > VCNT Visitorcounter มันก็จะมีหลาย Tab ให้เราปรับเปลี่ยน ซึ่งเราติดตั้งเสร็จแล้วเลือก Position ให้มัน มันก็จะไปปรากฏหน้าเว็บดังรูปนี้ครับ จบข่าว..

Read More »

วิธีใช้ Google Sheets สร้าง Account ใหม่ลงใน Sub Organization ของ GAFE

[บทความนี้ สำหรับผู้ที่มี GAFE Admin Privilege ขึ้นไป] ในการสร้างบัญชีผู้ใช้ใหม่บน GAFE นั้นทำได้หลายวิธี ได้แก่ การสร้างทีละคนผ่าน Admin Console การสร้างทีละหลายๆคนด้วย CSV File การสร้างทีละหลายๆคนผ่าน Google Apps Directory Sync เมื่อต้องการสร้างผู้ใช้จำนวนมาก เช่น 5,500 คน โดยต้องจัดแบ่งผู้ใช้ แยกลงไปในแต่ละ Sub Organization วิธีที่ 1. ทำได้แต่เป็นงานที่หนักมาก วิธีที่ 2. ทำไม่ได้ เพราะการใช้ CSV File ผ่าน Admin Console นั้นจะสร้างผู้ใช้รวมกันที่ Root Organization ไม่สามารถแยกลงไปใน Sub Organization ได้ ส่วนวิธีที่ 3. นั้นทำได้ แต่ต้องเข้าใจกระบวนการทำงานของ LDAP พอสมควร ในบทความนี้ จะนำเสนอวิธีการที่ ทำได้ง่ายเหมือนการใช้ CSV แต่สามารถแยกลงไปใน Sub Organization ได้ ด้วย Google Sheets และ Google Apps Script ดังต่อไปนี้ (ขอยกตัวอย่างเพียง 5 Account เพื่อความสะดวก) สร้าง Google Sheets แล้วใส่ข้อมูล email, firstname, lastname, OU, password, status สร้าง Google Apps Scripts ใน Google Sheets นี้ ด้วยเมนู Tools > Script Editor … จากนั้นเลือก Blank Project แล้วกดปุ่ม Close ตั้งชื่อโปรเจค AddMultiAccountToSubOU แล้วใส่โค๊ดดังนี้ ถ้าลอง Run เลย จะเจอ Error อย่างนี้ คลิก Continue -> Accept -> Dismiss เพราะยังงไม่ได้ Enable API ไว้ เนื่องจากการสร้าง Account ต้องใช้สิทธิ์ของ Admin ขึ้นไป และต้องใช้ Admin SDK Directory API ด้วย วิธีการคือใช้เมนู Resources -> Advanced Google Services แล้วเลือก Admin Directory API เป็น On จากนั้นคลิกที่ Google Developers Consol ที่ Admin SDK ให้เปลี่ยน ON เมื่อ Run ใหม่ ก็จะได้ผลใน Google Sheets ตามภาพ และจะสามารถสร้างผู้ใช้ได้ตาม Sub Organization ที่ต้องการ หวังว่าจะเป็นประโยชน์ครับ

Read More »