เรียนรู้ RPA โดยใช้ ui-path

Robotic Process Automation หรือ RPA  คือการนำเอาหุ่นยนต์ (ในที่นี้คือซอฟแวร์หุ่นยนต์) เข้ามาช่วยในการทำงานอย่างไหนอย่างหนึ่ง  ซึ่งคำที่คนส่วนใหญ่ได้ยินกัน คือ Bot นั่นเอง 😊 ซึ่งงานที่เหมาะสมที่จะนำเอาRPA มาช่วยในการทำงานนั้น เป็นงาน Routine ที่ต้องมานั่งทำแบบเดิมๆ ทุกวัน งานที่ต้องทำซ้ำๆ ง่ายๆ ที่มีปริมาณงานเยอะ ซึ่งเป็นงานที่มีขั้นตอนลำดับชัดเจน  เช่น งานคัดลอกข้อมูลจากเว็บ  งานส่งอีเมล์ งานกรอกข้อมูล ในปัจจุบัน RPA ก็มี Tool ด้วยกันหลายๆ ตัว  แต่ที่ผู้เขียนจะใช้ คือ UiPath  ตัวอื่นๆ ก็มี Automation Anywhere , Blue Prism, Work Fusion ซึ่งเป็น Tool ที่ใช้งานได้ง่ายๆ มากๆ ไม่ต้องเขียนโปรแกรม ลากๆ คลิกๆ เลือก อย่างเดียว … ก่อนเพื่อให้เห็นภาพ  จะตั้งโจทย์ในการทำงานเข้ามา  โดยมีโจทย์ว่า  อาจารย์ที่ปรึกษาต้องการส่งเมลไปยังนักศึกษาในที่ปรึกษาทั้งหมด ในคราวเดียวกัน เนื้อหาในเมล แต่ละคนแตกต่างกัน ซึ่งอาจารย์ได้เตรียมข้อมูลไว้ในรูปแบบ Excel ซึ่งจะต้องทำการส่งข้อมูลบ่อยครั้ง ในการติดต่อสื่อสาร ในช่วงโรคระบาดโควิด ซึ่งงานนี้เราจะนำเอา Bot มาช่วยในการดึงข้อมูลจาก Excel แล้วส่งเมลเอง โดยการกดปุ่ม เพียงแค่ คลิกเดียว! ขั้นตอนที่   1   การติดตั้ง UiPath 1.เข้าไปยังเว็บไซต์ของ UiPath  คือ  Automation Platform – Leading RPA Company | UiPath   จากนั้นกดปุ่ม 2. ทำการ Sign-in และทำตามขั้นตอน  จากนั้นมายังหน้าจอดังภาพ กด download ไฟล์โปรแกรม มาติดตั้งลงเครื่องได้เลย 3. ทำการติดตั้งได้เลย    ทำการคลิกปุ่มต่อไปเรื่อยๆ จนมาหยุดหน้าเลือก Version ของโปรแกรม ตามภาพข้าล่างนี้  ให้ทำการเลือก UiPath StudioX ซึ่งจะเป็น Version สำหรับการสร้าง Bot เบื้องต้น ซึ่งไม่ต้องเขียนโปรแกรม  โดย Version นี้จะเน้นการลากวาง คำสั่ง และเลือกคำสั่ง ทำให้ง่าย สำหรับคนที่ไม่ได้เป็น Programmer ส่วน UiPath Studio จะมีการเขียนโปรแกรมคำสั่งเพื่อ รองรับงานที่ซับซ้อนมากยิ่งขึ้น 4. จากนั้นเปิดโปรแกรมได้เลย   เริ่มต้นระบบจะแนะนำ  การใช้งานตามภาพ 5. จากนั้นเริ่มต้น  โปรแกรมจะเลือกให้เราสร้าง Project ก่อน  โดยให้เลือกเป็น Blank Task ให้กำหนดชื่อและที่เก็บไฟล์ และคำอธิบายของงานนี้  จากนั้น กด “Create” ได้เลย 6. โปรแกรม ก็จะแสดงหน้าจอการทำงาน ตามภาพ  โดยในที่นี้ผู้เขียน ขออธิบาย เมนูและการใช้งานเฉพาะในส่วนที่ ผู้เขียนใช้เท่านั้น   (เมนูอื่นอธิบายไม่ถูกเพราะไม่เคยใช้ 555)               6.1 ส่วนที่  1 :   MAIN    เป็นส่วนที่เรานำ คำสั่งหรือสิ่งที่ต้องการให้ bot ทำ มาลากวาง โดยจะเรียง คำสั่ง จากบน ลง ล่าง  (ให้นึกถึงการเขียน flow chart)                6.2 ส่วนที่ 2 : Activities  เป็นส่วนของคำสั่ง ที่โปรแกรมจัดเตรียมมาให้ เช่น การกรอกข้อมูล  การคลิก การเปิด mail การเปิด App เปิด web  เห็นไหมว่า ง่ายมาก ไม่ต้องเขียนโค้ดเลย  โดยอยากได้คำสั่งใดก็เลือก และลากมาวางที่ Main ได้เลย

Read More »

การเข้ารหัสข้อมูลด้วย ORACLE DBMS_CRYPTO

              ข้อมูลที่ส่งผ่านในโลกอินเตอร์เน็ตอาจมีความจำเป็นต้องเข้ารหัสข้อมูลเพื่อความปลอดภัย แม้ว่าระบบการป้องกันจะดีแค่ไหน แต่การปล่อยข้อมูลในรูปแบบที่อ่านได้ (Plain Text) ให้วิ่งผ่านเน็ตเวิร์ค ดูเป็นสิ่งที่ไม่ปลอดภัยเป็นอย่างยิ่ง               ข้อมูลบนระบบจัดการฐานข้อมูล ORACLE มีฟังก์ชันสำหรับการเข้ารหัสข้อมูล (Encrypt) และถอดรหัสข้อมูล (Decrypt) สำหรับข้อความได้ในหลายๆ Algorithm ดังนี้ ENCRYPT_DES Data Encryption Standard. Block cipher. Uses key length of 56 bits. ENCRYPT_3DES_2KEY Data Encryption Standard. Block cipher. Operates on a block 3 times with 2 keys. Effective key length of 112 bits. ENCRYPT_3DES Data Encryption Standard. Block cipher. Operates on a block 3 times. ENCRYPT_AES128 Advanced Encryption Standard. Block cipher. Uses 128-bit key size. ENCRYPT_AES192 Advanced Encryption Standard. Block cipher. Uses 192-bit key size. ENCRYPT_AES256 Advanced Encryption Standard. Block cipher. Uses 256-bit key size. ENCRYPT_RC4 Stream cipher. Uses a secret, randomly generated key unique to each session. สำหรับตัวอย่างในวันนี้จะแสดงการเข้ารหัสข้อมูลด้วย Algorithm DES ซึ่งคีย์จะมีความยาว 56 bits เนื่องจากการเข้ารหัสและถอดรหัสจะใช้งานคู่กัน ดังนั้นเราสามารถเขียนทั้งสองฟังก์ชันไว้ใน Package ดังนี้ END;/ จากคำสั่งการสร้าง Package ข้างต้นเป็นการเข้ารหัสและถอดรหัสโดยใช้ Algorithm แบบ DES การเรียกใช้งานสามารถเรียกผ่านคำสั่งบน SQL Plus ได้ดังภาพ จากการทำงานจะพบว่าเราสามารถเข้ารหัสข้อมูลอย่างง่ายด้วย Algorithm DES ได้ หากต้องการใช้ Algorithm อื่น สามารถเปลี่ยนค่าได้จากที่กำหนดไว้ใน Package ได้ โดยต้องคำนึงถึงขนาดของคีย์ที่เข้ารหัสด้วย เช่น AES ต้องมีขนาดคีย์เป็น 128 bits, 256 bits เป็นต้น

Read More »

ETL ต้องตรวจสอบอะไรบ้างเพื่อความมั่นใจในโอน ย้ายข้อมูล

ETL (Extract, Transform, Load) ประโยชน์ที่สามารถนำไปประยุกต์ใช้ ============================ ETL Tools ตอนนี้มีอยู่หลายค่ายหลายโปรแกรม ทั้งฟรีและขาย สามารถนำมาประยุกร์ใช้งานได้ ตัวอย่างเช่น ========================== ต้องตรวจสอบอะไรบ้างเมื่อท่านต้องทำ ETL 1. Metadata Testing เป็นการทดสอบส่วนประกอบของข้อมูลพวกชนิดของข้อมูล ขนาดและเงื่อนไขต่างๆของข้อมูล2. Data Completeness Testing ความสมบูรณ์ของข้อมูลต้องสุ่มทดสอบข้อมูล เช่น คีย์ที่ใช้เชื่อมข้อมูลระหว่างตารางไม่ควรจะเป็น NULL 3. Data Quality Testing คุณภาพของข้อมูล เช่นข้อมูลชื่อประเทศเดียวกันต้องสะกดเหมือนกันทั้งหมด การหาข้อมูลซ้ำซ่อนแบบไม่ปกติ4. Data Transformation Testing ดักจับ error ระหว่างการถ่ายโอนข้อมูล5. ETL Regression Testing ทดสอบเมื่อมีการเปลี่ยนแปลงกระบวนการในการทำ ETL6. Reference Data Testing การทดสอบกับข้อมูลที่เป็นสากลทั่วไปใช้กัน เช่น ชื่อ ตำบล อำเภอ จังหวัด ควรต้องตรงกันกับข้อมูลของราชการเท่านั้น7. Incremental ETL Testing เป็นการทดสอบโดยการค่อยๆเพิ่มกระบวนการถ่ายโอนข้อมูลเป็นขั้นๆเพื่อหาปัญหาของการถ่ายโอน8. ETL Integration Testing เป็นการทดสอบภาพรวมของการทำงานรวมกันของ module เงื่อนไขต่างๆในการถ่ายโอนข้อมูล9. ETL Performance Testing เป็นการประเมินเรื่องเวลาและปริมาณข้อมูลเพื่อจะได้ทราบถึงระยะเวลาการทำงานที่ควรจะเกิดขึ้นกับข้อมูลปริมาณที่ต้องการ Metadata Testing สิ่งที่ต้องตรวจสอบ การตรวจสอบการเปลี่ยนแปลงของข้อมูลของการทำ ETL แต่ละรอบ 1.Track changes ตรวจสอบ metadata ตามเวลาที่กำหนด ทั้ง Source และ Target และส่วนของการพ้ฒนา 2.Compare table metadata ทั้ง Source และ Target และส่วนของการพ้ฒนา ชื่อของตารางและColumn  ขนาดของ Column 3.Compare column data types 4.ตรวจสอบ Look Up table ต่างๆว่าข้อมูล Update ให้เหมาะสมและครบถ้วนแล้วหรือไม่ Data Completeness Testing Data Quality tests ตรวจสอบคุณภาพของข้อมูล SELECT fst_name, lst_name, mid_name, date_of_birth, count(1) FROM Customer GROUP BY fst_name, lst_name, mid_name HAVING count(1)>1 ในส่วนหัวข้ออื่นๆจะเป็นส่วนการทดสอบที่ขึ้นอยู่กับเครื่องมือที่นำมาใช้งาน การทำงานจริงควรจะหาเครื่องมือที่มีประสิทธิภาพมาใช้งานเพราะจะช่วยประหยัดกำลังไปได้มาก แต่ผู้ดำเนินการควรจะรู้ว่าควรระวังหรือต้องตรวจสอบตรงส่วนไหนเพื่อให้งานออกมาอย่างมีประสิทธิภาพ

Read More »

Blazor Server Application : วิธีการแปลงรูปภาพ เป็น base64 สำหรับเก็บข้อมูล

แนะนำวิธีการแปลงรูปภาพ เป็น base64 เพื่อเก็บข้อมูล มีขั้นตอนดังนี้ 1) สร้าง Project ผ่าน Visual Studio 2019 เลือก Blazor Server App 2) เลือก Framework เป็น .NET 5.0 3) ติดตั้ง Add-on ชื่อ System.Drawing.Common ผ่านทาง NuGet 4) เปิดไฟล์ Index.razor จากนั้นเขียน Code ดังนี้ 5) หน้าจอแสดงปุ่ม “การแปลง (ไฟล์รูปภาพ เป็น Base64)” 6) ผลลัพธ์จากการแปลงไฟล์รูปภาพ เป็น Base64 หมายเหตุ: นามสกุลไฟล์รูปภาพ (picture.png) ต้องตรงกับ data:image/png;base64 สำหรับแสดงผล

Read More »

สร้างข้อความแจ้งเตือนด้วย Blazored Toast

ข้อความแจ้งเตือนการดำเนินการต่าง ๆ ไม่ว่าจะเป็นข้อความ Success, Error, Warning หรือ Information ภายในแอพ เป็นอีกหนึ่งฟังก์ชั่นที่มีการนำมาใช้งานบ่อยๆ เพื่อทำให้ระบบน่าใช้งานมากยิ่งขึ้น ในการเขียนแอพด้วย Blazor ก็มีของฟรีให้ติดตั้งและใช้งานได้เลย ชื่อว่า Blazored Toast ซึ่งเป็น JavaScript ที่ได้รับการ Implement ให้ใช้งานกับ Blazor ได้ ตัวอย่างการใช้ Blazored Toast ก่อนอื่นให้สร้าง Blazor Server App Project ตามขั้นตอนใน Blog(เขียนเว็บแอพแบบ SPA ด้วย Blazor (C#)) ก่อน จากนั้นทำตามขั้นตอนดังนี้ ติดตั้ง Blazored Toast ผ่าน NuGet package manager 1. คลิกเมนู Project 2. คลิก Manage NuGet Packages จะปรากฎหน้าจอ NuGet Package Manager ให้ทำดังนี้ 1. คลิก Browse 2. พิมพ์ Blazored Toast 3. คลิกเลือก Blazored.Toast 4. เลือกเวอร์ชั่นล่าสุด และคลิก Install การตั้งค่า 1. Register Services โดยการปรับปรุงไฟล์ Startup.cs ใส่โค้ด Using Blazored.Toast และเพิ่มโค้ด services.AddBlazoredToast(); ในฟังก์ชั่น ConfigureServices ดังรูป 2. เปิดไฟล์ _Import.razor เพิ่มโค้ดดังนี้ @using Blazored.Toast @using Blazored.Toast.Services 3. ตั้งค่าเริ่มต้นก่อนใช้งานใน MainLayout.razor โดยการเปิดไฟล์ MainLayout.razor และเพิ่มโค้ดดังรูป 4. อ้างอิง Style sheet ในไฟล์ _Host.cshtml <link href=”_content/Blazored.Toast/blazored-toast.min.css” rel=”stylesheet” /> การนำไปใช้งาน 1. สร้างไฟล์ใหม่ชื่อ ToastDemo.razor โดยคลิกขวาที่โฟลเดอร์ Pages เลือก Add -> Razor Components ดังรูป 2. เลือก Razor Component ตั้งชื่อไฟล์ ToastDemo.razor และคลิกปุ่ม Add 3. เขียนโค้ดใช้งาน โดยให้ inject IToastService ก่อน จากนั้นจึงเขียนโค้ดตัวอย่างโดยให้ Toast ทำงานเมื่อคลิกปุ่ม 4 ปุ่ม เพื่อแสดงข้อความแจ้งเตือน Information, Warning, Success และ Error 4. กด F5 และเปิด Url  https://localhost:44381/ToastDemo จากนั้นลองคลิกแต่ละปุ่มจะได้ผลลัพธ์ดังรูป จะเห็นว่าเราไม่จำเป็นต้องเขียน JavaScript เองก็สามารถใช้งาน Toast ได้ ถือว่าเป็นการประหยัดเวลาในส่วนนี้ และทำให้เราสามารถโฟกัสการเขียนโค้ดในส่วนที่เป็น Core หลักของระบบได้อย่างเต็มที่

Read More »