[PowerShell] Convert Hyper-V .VHD เป็น .VHDX และ Optimize ขนาดของ Disk

สำหรับการแปลง VHD ไปเป็น VHDX และทำการลดขนาดของ Disk (Shink เป็นไปได้แนะนำให้ทำใน Mode Offine ครับ) โดยใน ฺBlog นี้สอนแบบ Offline ด้วยโดยมีขั้นตอน ดังนี้ จัดการไฟล์ VM ของ VHD เดิมให้เรียยร้อยก่อน อาทิ เช่น ลบไฟล์ที่ไม่จำเป็น ทำการ Disk Clear พื้นที่ Disk CD เข้าไป Path ที่มีไฟล์ vhd แปลงไฟล์ VHD ไปเป็น VHDX ด้วยคำสั่ง PowerShell ดังนี้ เก็บขนาดพื้นที่ Disk ก่อนการแก้ไข Mount ไฟล์ Disk อันนี้ต้องดูด้วยว่าไฟล์ที่ Mount มาแล้วจะได้ Drive อะไรครับ กรณีที่ขอยกตัวอย่างเป็น Drive H: ครับ ทำการ defrag disk เคลียร์ข้อมูลพวก sand Dismount Disk ออกมาครับ ด้วยคำสั่ง ทำการ Optimize เพื่อลดขนาด Virtual Disk ครับ เอาแบบ FULL เลยนะครับนานนึงนึงแต่ลดพื้นที่ได้เยอะ หาขนาดที่ลดลงได้ด้วยคำสั่ง

วิธีหมุนวิดีโอบน Android แบบง่ายๆครับ

เรื่องของเรื่อง คือ ผมไปถ่ายคลิปตอนไปลอง MRT สายสีน้ำเงินส่วนต่อขยายแล้วดันลืมหมุนกล้องให้ถ่ายแนวนอนครับ เพิ่งจะมารู้ตอนที่ Upload เข้า YouTube ไปแล้วครับ ตอนแรกผมกะจะใช้ YouTube Editor แหละ เพราะจำได้ว่าตอนปลายปี 2018 มันเคย Rotate Video ได้ครับ แต่คราวนี้ 2020 Feature นี้มันหายไปครับ หลังจากปรับใน YouTube ไม่ได้มาลองพึ่ง Xiaomi ตัวเก่งของผมบ้างว่ามันมี Software อะไรช่วงไหม ซึ่งปรากฏว่าไม่มี ….. ทุกปัญหามีทางแก้ครับ แค่ผมขี้เกียจลง App ตัดต่อ Video หลังจากลองหาข้อมํลดูพบว่า Google Photo ทำได้นะ ส่วนจะทำอย่างไรมาดูวิธีการกันเลยครับ เข้า Google Play Store แล้วค้นหาคำว่า Google Photo จากนั้นกด Install โลด ขั้นตอนถัดมาเข้า Google Photo ครับ เลือกไฟล์ Video ที่ต้องการจะ Rotate ครับ เปิดขึ้นมาเลือกปุ่มสวิทช์ครับ มันจะมี Option Rotate ให้เลือกกดได้เลยครับ แต่เวลาที่ใช้ในการ Rotate ขึ้นกับขนาดของ Video ด้วยนะครับ ผมเข้าใจว่า Tools มันไปอ่านที่ละ Frame แล้วหมุนครับ รอประมาณ 2 นาทีครับ เสร็จแล้วครับ

[BPMN] Camunda TimeDate กับ TimeZone

จากปัญหาใน Blog ตอนก่อนครับที่สงสัยทำไมเวลามันไม่ขยับตรงตามที่คิดไว้ครับ หลังจากลองหามาว่าทำไมพอไปทดสอบแบบจำลองบน BPMN Engine พบว่ามันไม่ได้ทำงานตามที่ตั้งใจไว้ มาดูที่โจทย์ที่ผมคิดไว้ดีกว่า (แอบเอาภาพเก่ามาใช้นะครับ 555) มาดูที่ Time Boundary กันครับตามโจทย์ที่ผมตั้ง เวลาวันที่ 23-JAN-2020 เวลา 00:01 ถ้างานที่ค้างจากกิจกรรม First Line Support งานถูกส่งต่อ Second Line Support ซึ่งถ้าแปลงเป็น ISO8601 จะได้ 2020-01-23T00:00:01 พอลองรันจริงปรากฏว่า เมื่อถึงเวลามันไม่ทำงานครับ 55555 หลังจากหาลองหาดูใน Forum มี 2 กระทู้ที่มีความเป็นไปได้ครับ boundaryEvent not firing with timeDate expression Dynamic value in timer boundary event กลับมาลองแก้ใหม่ ตัวร้ายที่เป็นไปได้ น่าจะเป็นเรื่องของ TimeZone ลองมาดูจาก Doc ของทาง Camunda กันดีกว่าครับ กำหนด ISO8601 แบบไม่กำหนด TimeZone ตัว Engine จะใช้ TimeZone จาก JVM ของเครื่องที่ Run ตัวอย่าง DATE TIME แบบ ISO8601 2020-01-23T00:00:01 กำหนด ISO8601 แบบ UTC ตัวอย่าง DATE TIME แบบ ISO8601 UTC 2020-01-23T00:00:01Z กำหนด ISO8601 + UTC Offset (ปรับเวลาตาม TimeZone ถ้าของกรุงเทพจะเป็น UTC +7 ตัวอย่าง DATE…

[BPMN] Camunda ทำไม 1 วันมันถึงบวกไปแค่ 17 ชั่วโมง

มันเริ่มจากผมทดสอบ Process ซึ่งมันจะตรวจสอบว่า ถ้ามีงาน Incident แจ้งเข้ามาเนี่ย ฝั่ง Customer Service จะเข้างานในส่วนของ First Line Support เพื่อมาแก้ปัญหา แต่ถ้างานค้างไป 1 วันมัน ตัวงานจะส่งต่อให้ Second Line Support เพื่อช่วยเหลือครับ โดยภาพรวมของกระบวนการเป็นไปดังรูปครับ ลองดูส่วนที่ผมวงๆสีแดงจริงๆมันต้องดู 1 วัน แต่มันดันเป็น 8 ชั่วโมงซะได้ ปัญหา คือ อะไรหละ อันนี้ต้องย้อนกลับไปดู Code ของตอนที่หาวันถัดไปครับ แบบแรกใช้ TimeZone UTC (มันไปคิดแบบ UTC + 0.00 ครับ) ที่ถูกถ้าเอาเวลาของประเทศไทยจะต้องเป็นแบบนี้ครับ จบแล้วเหลืออีกปัญหาครับ ทำไมตั้งเวลาแล้วมันไม่ทำงาน เดียวได้ข้อสรุปแล้วมาเขียน BLog ต่อครับ

[VM] ลบไฟล์ที่ไม่จำเป็นก่อน shrink หรือ Optimize/Compact VM

Clear ไฟล์ขยะที่เกี่ยวกับงานตัวเองใน VM อันนี้ผมแนะนำมากไม่ได้ เอาง่ายๆลองลบอะไรที่ไม่จำเป็น และไม่เกี่ยวกับงานตัวเองออกไปครับ อาทิ เช่น backup เก่าๆ Log File ของ Application ตัว Setup เวอร์ชันเก่าๆ ถ้าใน VM ไม่ได้กำหนด disk แบบเร็ว พวก SSD ควรมีการทำ Defrag เพิ่มด้วยครับ Clear ไฟล์ขยะใน OS – สำหรับ Windows Clear Temp จาก Path C:\Windows\Temp Clear Temp ของ Windows Update ใน Path C:\Windows\SoftwareDistribution\Download Clear Temp ของ User ใน Path C:\Users\<user>\AppData\Local\Temp ใช้ sdelete เพื่อ Zero Fill Disk ด้วยคำสั่ง – สำหรับ Linux Clear พื้นที่ของ OS ด้วยคำสั่ง ทำการ Zero Fill Disk ด้วยคำสั่ง

[CR] ลองนั่ง MRT สายสีน้ำเงินส่วนวงกลมจากสถานีบางขุนนนท์ไปสามย่านครับ

ได้ข่าวว่า MRT สายสีน้ำเงินส่วนต่อขยายได้สร้างครบลูปแล้วครับ โดยตอนนี้ช่วงจากจรัญ13 ไปจนถึงเตาปูนเปิดให้ใช้ฟรี ดังภาพครับ หลังจากโอกาสไม่ได้เอื้ออำนวยมานาน เพราะตอนปลายปีก็ป่วย + เผางานไปครับ คราวนี้หาวันว่างได้แล้วครับ มันมีงานวิ่งของวิศวะจุฬาฯครับ แล้วที่นี่วันเสาร์ที่ 11 มกราคม 2020 ต้องไปรับเสื้อวิ่ง ผมก็เลยวางแผนการเดินทางไว้ ดังนี้ครับ ออกจากบ้านนั่งสองแถวสีฟ้าสาย 1474 สวนผัก32 – บางขุนศรี (อันนี้ถึงแม้จะขยับราคาจาก 7 บาทมา 8 บาท แต่มีการเชื่อมโยงตำแหน่งกับ App ViaBus มันโอเคมากครับ) ขึ่น MRT สถานีบางขุนนนท์ครับ เพื่อไป MRT สถานีสามย่านครับ เปลี่ยนขบวนรถที่สถานีท่าพระครับ (ถ้าอยากนั่งชิวๆยาวๆ อันนี้ต้องไปทางฝั่งเตาปูนครับ เสียเวลานิดนึง แต่ราคาอันนี้ผมสอบถามพนักงาน MRT แล้ว เค้าคิดราคาจากเส้นทางที่สั่นที่สุดครับ) จากนั้นรอ MRT มุดดิน เพื่อไปทางอิสรภาพ และถึงจุดหมายปลายทางที่สถานีสามบ่านครับ สำหรับขากลับอันนีผมนั่งสาย 36 ไปท่าน้ำสี่พระยา แล้วข้ามฟากไปทางคลองสานไปติดตามน้องในทีมนิดนึง เขียนแผนการเดินทางไปแล้วมารอดูผลกับครับว่าลองจริงๆแล้วใช้เวลาทั้งหมดกี่นาทีครับ 10:40 : ออกจากบ้านมารอสองแถว 10:42 : ได้นั่งรถสองแถวสีฟ้าแล้วครับ มาลงตรงวัดไก่เตี้ยแวะทำธุระก่อน 10:56 : นั่งรถสองแถวสีฟ้าไป MRT สถานีบางขุนนนท์ครับ รอบนี้ไม่ต้องหยอดเหรียญเพื่อซื้อบัตรเข้ารถไฟฟ้าแล้วครับ 11:05 : ถึง MRT บางขุนนนท์แล้วครับ ผมก็เดินถ่ายรูปสอบถามข้อมูลต่างๆกับพนักงานครับ 11:09 : จะเข้าสถานีแล้วครับ ดันเงินหมด ซึ่งเมื่อลองเติมเงินแล้วได้ของที่ระลึกมาด้วยครับ อันนี้แปลกเพืงเป็นพระแม่มารีบนดาดฟ้าบ้าน ปกติจะเห็นแต่ศาลพระภูมิครับ 11:12 : รถไฟฟ้ามาแล้วครับ 11:18 : ถึงสถานีท่าพระแล้วครับ ตอนนี้ต้องมีเปลี่ยนขบวนครับลองจากชั้น 4 ชานชาลบน มาที่ชั้น 3 ชานชาลล่าง เพื่อมาต่อรถไฟฟ้าไปทางสถานีอิสรภาพครับ 11:19 : รถไฟฟ้ามาแล้ว แอบเสียดายขบวนนี้ติดโฆษณาเยอะไปหน่อยครับถ่ายคลิปตอนมุดดินไม่ได้เลย…

ICMM2020 หวังว่าปีนี้เป็นปีสุดท้ายที่วิ่งในฐานะนิสิตนะ

เหนื่อยครับ แต่คิดว่าร่างกายสำคัญ เพราะปีนี้ป่วยบ่อยมากครับ โดยงานวิ่งงานนี้เน้นวิ่ง เพือกินครับ ของกินเยอะจริงๆ และก็สร้าง Connection ด้วย หรือพบปะ เพื่อนเก่า (ผมคงไม่ได้ใช้สร้าง Connection เท่าไหร่นะ) 2020-JAN-11 แวะมารับเสื้อวิ่งครับ หลังจากนั่งทำ Thesis รีบบึ่งไปรับของเลยครับ ไปถึงแล้วครับ มาต่อคิวรับเสื้อครับสะดวกรวดเร็วมากครับ 5 นาทีเองครับ บัตรคิวที่ได้ครับ ได้เป้ หรือย่ามมาแล้วครับ จบวันแล้วฟิตๆนิดหน่อยไปออกกำลังกายในฟิตเนสครับ พอกลับมาถึงบ้านมาดูกันครับว่าในถุงมีอะไรบ้างครับ ลองมาแกะเสื่อดูกันครับ RFID Tag ติดตามตอนวิ่งครับ – เป็นเทคโนโลยีที่มีมานานจริงๆ ตอนผมเรียน ปี 2 ยังไม่แพร่หลายกัน นอกจากบัตร BTS / MRT พอผ่านมา 8-9 ปี เอามาใช้กับเกลือนแล้ว 2020-JAN-12 วิ่งจริงแล้วครับ 05:20 มาถึงจุฬาฯ แล้วครับ มาถึงเตรียมออกวิ่งเลยครับ 05:33 เริ่มวิ่งแล้วครับ วิ่งไปเรื่อยๆครับ ฝุ่นเยอะ ได้ผ่านสถานที่สำคัญด้วย สนามกีฬาของจุฬาฯ – จุดนี้คนถ่ายรูปเยอะมากครับ และเป็นจุดที่ไฟสว่างที่สุดครับ ลิโด้ – ฉบับปรับปรุงใหม่ครับ จำได้ว่าซื้อ Ghost in The Shell มายังไม่ได้ดูเลย บรรยากาศมาพร้อมกับฝุ่นครับ ผ่านไปเรื่อยๆ เส้นชัยแล้วครับ ตรวจผมการวิ่งได้ไหวมากครับ เอา ID ใส่แล้วมีเครื่อง Print ออกมาตามรูปเลย เหรียญตราที่ได้ครับ บรรยากาศมุมเงียบๆ มุมสวยๆ มุมสงบภายในงานครับ – จบงานแล้วมาดูกันที่ของกินของงานครับ เหนื่อยหลังจากวิ่งกินเครื่องดื่มบำรุงกำลังครับ มาแล้วเมนูแรกครับ ก๋วยเตี๋ยวตรอกโรงหมู เกี้ยวอร่อยมากครับ เมนูที่สองครับ ข้าวมันไก่นายธง เมนูที่สามอาหารคลีน Lan Green สุดท้ายตบด้วยของหวานครับ – มาดูของที่ได้รับจากงานครับ เยอะมากๆ ของที่ได้รับครับเยอะมากๆ ผ้าขนหนู…

01-JAN-2020 ป่วยข้ามปีกันทั้งบ้าน

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

2019 ปีที่ไม่ได้ก้าวไปไหน

ปีนี้สิ่งที่พลาดที่สุด คือ ความอดทน พอทนไปเรื่อยๆรู้สึกว่าตัวเองงานเข้า หรือไม่ก็ไปตกลงอะไร โดยที่ไม่ได้แจ้งล่วงหน้า ปีนี้ถ้าเทียบกับปีก่อนหน้าแอบแย่กว่านะ มาดูในแง่มุมต่างๆได้เลยครับ เรื่องสุขภาพ ปีนี้ถ้าตัวผมเอง สุขภาพดูไม่ต่างจากปีก่อนมานัก แต่พักผ่อนน้อยลงจากปัญหาสุขภาพของคุณแม่ และงานที่อยู่ๆจะมาก็มาก็มา แขนพังจนต้องไปฝังเข็มรักษาที่โรงพยาบาลหัวเฉียวครับ น้ำหนักขึ้นจากเดิมไป 84 kg แต่ก็ลดลงมาที่ 80 kg ได้ ปีนี้กินกลืนยาแคปซูล/ยาเม็ด ได้แล้ว หลังจากงอแงมา 28 ปี จริงๆเป็นกันทั้งบ้านเลย ที่ต้องมาหัดกิน เพราะต้องทำเป็นตัวอย่างให้คุณแม่ดูด้วย เรื่องการเรียน ครึ่งปีแรกไปได้สวยเลยครับ เหมือนเราเห็นแสงสว่างอยู่ที่ปลายทางแล้ว แต่ก็มีเรื่องสุขภาพของคุณแม่เข้ามาซะงั้น ชีวิต โชคชะตา มันก็ช่างเล่นตลกนะ ส่วนอาการของคุณแม่นั้นเดี๋ยวค่อยมาเขียน Blog ยาวดีกว่า สั้นๆดูแลผู้สุงอายุด้วยนะครับ ลื่นล้มให้ห้องน้ำ รากฟันไม่แข็งแรง การใช้ฟันปลอม การทานยา สู้อีกทีในปีหน้านะ เรื่องงาน ปีนี้เป็นปีที่ทำให้อยากคิดที่จะลองออกไปเปลี่ยนงานดูเลย เพราะ สิ่งที่เคยทำนายไว้เป็นจริง การจัดการโครงการ – ตามใจลูกค้าเกินไป จนทีมเละ การสื่อสาร ขยับ milestone เข้าไม่แจ้งทีม ขาดการ Tracking และติดตาม แจ่งเวลาไม่สะดวกแล้วยังนัดชนอีก สาย MA ฝ่าย Support สื่อสารหลาย Hop ขาดข้อมูลพื้นฐาน ทีม Support ใช้ product ตัวเองไม่คล่อง การโยนงาน อันนี้ผมแก้ปัญหาทำ Line Notify เลย ปัญหาที่ซ้ำๆไม่ทำ KM แล้วมาถามซ้ำๆ ปีนี้เป็นปีที่ไล่ด่าคนจริงๆนะ แบบบว่ามันอดทนไม่ไหวแล้ว ทั้งชี้แจงแบบปกติก็แล้ว แต่ยังทำแบบเดิมๆ จากส่วนที่แย่ไปแล้วมาส่วนที่ดีบ้าง งาน .NET ที่ทำไว้ เริ่มตอบโจทย์กับงานที่ช้า มีปัญหาด้าน Performance แล้ว แอบดีใจขึ้น Production มา 5 เดือนยังไม่มีปัญหาการคำนวณผิดพลาด Flow Process…

[DB2] ตัวอย่างการใช้งาน Stored Procedure DELETE_MANY_ROWS

IBM DB2

หลังจากบทความเมื่อหลายปีก่อนได้นำเสนอวิธีการลบข้อมูลเยอะๆบน DB2 แล้วไม่ให้เกิดปัญหา Transaction Log Full ไปแล้ว แต่ผมดันลืมแนบตัวอย่าวการใช้ไป คราวนี้ผมมาใส่ตัวอย่างการใช้งานครับ ถ้ามองเป็น SQL SELECT มันจะเทียบเท่ากับ