• Crystal Report : Report หลายตัวหัวท้ายต่าง แต่ตรงกลาง Code เหมือนกัน จัดการอย่างไร (WinApp)


    หลาย ๆ ครั้งที่ท่านมีรายงานมากกว่า 1 ฉบับที่มีรูปร่างหน้าตาส่วนหัวกระดาษหรือท้ายกระดาษที่ต่างกัน แต่ส่วนของ Detail นั้นเหมือนกันอย่างกับแกะ และเจ้าส่วน Detail นี้ ดั๊นนนน เป็นเจ้า Detail ที่มีเงื่อนไขเยอะแยะ ยุบยับซับซ้อนซ่อนเงื่อน ถ้าจะให้สร้าง File เพื่อวาง Report Viewer เป็น 2 File หรือตามจำนวนรายงานก็ใช่ที่ จากการที่ประสบพบเจอมากับตัว ส่วนหัว ส่วนท้าย ดั๊นนน ไม่คล้ายไม่เหมือนเลย แต่ข้อมูลตรงกลางนั้น ต้องใช้ข้อมูลชุดเดียวกัน เหมือนกัน ทีนี้ถึงกับกุมขมับเลยว่าจะทำยังไงดี ได้คำปรึกษาแนะนำจากพี่ชายที่แสนดี @wachirawit-j มาช่วยชี้แจงแถลงไข ถึงต้องรีบจัดการเก็บข้อมูลไว้ เผื่อครั้งหน้าเจออีกแล้วลืมจะได้กลับมาอ่านซ้ำ ไปดูกันเล้ยยยยยย ตัวแปร cr ที่ประกาศนี้ จะเป็นตัวแปรที่ไว้ใช้ในอนาคตทั้งไฟล์ เป็นตัวแปรที่เป็นตัวเก็บค่าว่า จะเป็น Crystal Report File ตัวไหนและใช้สำหรับกำหนดค่า FormulaField เพื่อใช้กับ Report File นั้น…

    >> Read More <<

  • Crystal Report : รูปที่ใส่ไป ทำไม size ถึงกลับไป(ใหญ่)เท่าเดิม


    เคยหรือไม่ ที่ใส่รูปลงไปในรายงาน จากนั้นหากต้องการ Config ค่าของรูปนั้น เมื่อจัดการเสร็จ กด OK ออกมา รูปที่ท่านใส่ไปนั้น กลับขยายกลายร่างกลับสู่ขนาดจริง ซึ่งบางครั้งหากท่านไม่ได้มีการย่อขนาดรูปให้ตรงตามที่ต้องการก่อนแต่ใช้วิธี Config ในส่วนของ Object Picture แทน ท่านอาจจะเจอปัญหานี้กันบ้าง วิธีแก้ไขง่ายมากๆๆๆๆๆๆๆ หลาย ๆ ท่านอาจจะคาดไม่ถึง หรือหลาย ๆ ท่านอาจจะรู้แล้ว แต่ผู้เขียนเพิ่งได้กลับมาจับ Crystal Report อีกครั้ง ได้เจอปัญหานี้เข้า เลยอยากมาแชร์ และเป็นการบันทึกไว้อ่านเองด้วย มาดูกันเลยค่ะว่า วิธีจัดการมีขั้นตอนอย่างไร ท่านผู้อ่านอย่าเพิ่งตกใจกับความง่ายยยยยยย นี้นะคะ ไปกันเล้ยยยยย ^^ เมื่อท่านลาก Object Picture มาแล้ว ให้เลือก Menu Format Object ที่ ๆ ท่านเข้าไป Config รูปปกติค่ะ จากนั้นที่ Tab Picture เมื่อท่านตั้งค่าทุกอย่างเสร็จแล้วอย่าเพิ่งกดปุ่ม…

    >> Read More <<

  • Crystal Report : Term & Condition หรือ Privacy Policy ที่ต้องมีต่อท้ายรายงาน ทำได้อย่างไร


    หลาย ๆ ครั้งที่เราพิมพ์เอกสาร แล้วจำเป็นต้องมีเอกสารแนบท้ายกระดาษเป็นพวก Term & Condition หรือ Privacy Policy ซึ่งเอกสารพวกนี้จะอยู่ท้ายสุดของเอกสาร และทุกครั้งเมื่อมีการพิมพ์เอกสารชุดอื่น ๆ ก็จำเป็นต้องมีเอกสารเดียวกันนี้แนบท้ายไป เนื่องจากช่วงนี้ได้มีการเข้ามาจับ Crystal Report อีกครั้ง จึงได้มีโอกาสได้ทำเอกสารแนบท้ายนี้ จึงต้องการเขียนไว้สำหรับเตือนความจำและอยากส่งต่อให้กับผู้ที่กำลังทำได้ทราบต่อไป อ่ะ เรามาเริ่มกันเลย อันดับแรก เริ่มจากสร้างรายงานที่เป็นไฟล์เอกสารแนบท้าย สร้างและจัดรูปแบบให้เรียบร้อย เพราะต่อไปนี้ ไฟล์เอกสารแนบท้ายเหล่านี้ จะกลายไปเป็น Subreport ของรายงานหลัก โดยไปที่ส่วนของ Report Footer คลิกขวา เลือก Insert -> Subreport ระบบจะมีหน้าต่าง Subreport มาให้ระบุไฟล์ Crystal Report ที่ต้องการให้เป็น Subreport ซึ่งให้เลือกไฟล์ที่เราสร้างไว้ จากนั้นจะได้ Subreport วางไว้ในส่วนของ Section Report Footer เรียบร้อย ขั้นตอนต่อไปเป็นการ Config…

    >> Read More <<

  • บันทึกหน้าจอคอมพิวเตอร์ด้วย Xbox Game Bar Hidden Feature บน Windows10


    ใครที่เครื่องคอมพิวเตอร์ของคุณใช้ Windows 10 และกำลังมองหาโปรแกรมที่จะบันทึกหน้าจอเป็นคลิป โดยที่ไม่อยากจะต้องหาโปรแกรมเสริมจากที่อื่น ซึ่งอาจจะต้องเสียเงิน หรือกินพื้นที่ของเครื่องแล้วละก็ใน Windows 10 มี Hidden Feature ที่ช่วยบันทึกหน้าจอคอมพิวเตอร์ของคุณขณะใช้งานได้ทันทีโดยไม่ต้องติดตั้งเพิ่มเติม ด้วย Xbox Game Bar Xbox Game Bar สร้างขึ้นใน Windows 10 เพื่อใช้จับภาพวิดีโอและภาพหน้าจอขณะเล่นเกมพีซีได้ แม้ว่าชื่อจะเหมือนทำมาเฉพาะสำหรับเกม แต่จริงๆแล้ว สามารถบันทึกได้หน้าจอคอมพิวเตอร์ของคุณเหมือนโปรแกรมบันทึกภาพทั่วไปเลย วิธีการบันทึก• กดปุ่ม Windows + G เพื่อเริ่มใช้งาน ซึ่งจะปรากฏแถบเครื่องมือต่าง ๆ ให้เลือกใช้งาน (สามารถกดจับภาพหน้าจอ, กดบันทึกวิดีโอหน้าจอ, กดเปิด-ปิดไมค์ และอื่นๆ ได้จากส่วนนี้) – Capture เอาไว้ใช้ในการกดบันทึกต่าง ๆ เช่น ถ่ายภาพ, บันทึกหน้าจอหรือปิดไมค์ – Audio ไว้สำหรับตั้งค่าระบบเสียงของคุณ โดยแบ่งเป็น 2 ส่วนคือเสียงจากในตัวเครื่องและเสียงที่มาจากไมค์ของคุณ –…

    >> Read More <<

  • ขยับแถว (row) ขึ้น/ลง ใน ASP.NET Gridview ด้วย Code Behind


    เช่นเคยครับ จากบล็อก ขยับแถว (row) ขึ้น/ลง ใน ASP.NET Gridview ด้วย jQuery เป็นการเพิ่มฟีเจอร์ให้กับ ASP.NET Gridview ด้วยการประยุกต์ใช้ jQuery บทความต่อมา ก็จะเป็นการเพิ่มฟีเจอร์เดียวกัน แต่จะเป็นการพัฒนาด้วยโค้ดฝั่ง code behind เนื่องจากการทำงานฝั่ง code behind จะไม่สามารถเคลื่อนย้ายเร็คคอร์ดของ gridview ได้โดยตรง ดังนั้นเราจะทำทางอ้อม ด้วยการใช้ฟิลด์ในตารางฟิลด์หนึ่งมาเป็นข้อมูลสำหรับเรียงใน Gridview เมื่อต้องการย้ายเร็คคอร์ด เราก็จะเปลี่ยนตัวเลขในฟิลด์นี้ แล้วทำการเรียงข้อมูลใหม่ และแสดงผลข้อมูลใน Gridview อีกครั้ง ไปดูขั้นตอนต่างๆ กันเลยครับ 1. ในส่วนของโค้ด HTML จะมีการปรับปรุงเพิ่มเล็กน้อยเฉพาะในส่วนของปุ่ม UP/DOWN ซึ่งเราจะเปลี่ยนไปใช้ปุ่มที่เป็นคอนโทรลของ ASP.NET เพื่อให้สามารถเขียนโปรแกรมควบคุมจากฝั่ง code behind ได้ โดย CommndName ใช้สำหรับตรวจสอบว่าเป็นการเลือก up หรือ down CommandArgument…

    >> Read More <<

  • สร้างไฟล์ PDF จาก HTML + CSS ด้วย iText7.pdfhtml (C#)


    การพัฒนา Web Application หลายครั้งที่จะมีความต้องการจาก User ให้พัฒนาระบบที่สามารถนำข้อมูลจากฐานข้อมูลมาออกรายงาน หรือบันทึกในรูปแบบ PDF ได้ ระบบที่กำลังพัฒนาอยู่ขณะนี้ก็เช่นเดียวกัน มีความต้องการให้สร้าง E-Form บันทึกข้อมูลในฐานข้อมูล และสร้างไฟล์ PDF ที่มีการจัดรูปแบบเป็นหนังสือราชการ ได้แก่ บันทึกข้อความ ประกาศ ระเบียบ คำสั่ง เป็นต้น จากนั้นจึงนำไฟล์ PDF ที่ได้ไปใช้ลงนามด้วย Digital Signature และดำเนินการอื่นๆ ต่อได้ ความยากของโปรเจ็คนี้คือ การจัดรูปแบบเอกสารที่มีความเป๊ะมากๆ ไม่ว่าจะเป็น การจัดขอบบน ขอบล่าง ขนาดตัวอักษร ระยะห่างระหว่างย่อหน้า เป็นต้น และที่สำคัญคือ จะสร้าง PDF อย่างไรให้สามารถแสดงผลได้ยืดหยุ่นตามข้อมูลที่มี ถ้าข้อมูลเยอะก็ให้ขึ้นบรรทัดใหม่ได้ หรือถ้าล้นหน้ากระดาษก็ขึ้นหน้าใหม่อัตโนมัติ จากการศึกษาและลองผิดลองถูกก็ได้แนวทางในการพัฒนาดังนี้ สร้างไฟล์ HTML และจัดรูปแบบแสดงผลข้อมูลด้วย CSS ให้เหมือนกระดาษ ใช้ Add-on ของ iText7 ชื่อ iText7.pdfhtml…

    >> Read More <<

  • Oracle Database 18c XE กับปัญหาการ import user


    Oracle Database XE คืออะไร Oracle XE หรือ Oracle Express Edition เป็นซอฟต์แวร์ฐานข้อมูล Oracle เวอร์ชันที่ให้สามารถดาวน์โหลดไปใช้งานได้โดยไม่มีค่าใช้จ่าย แต่จะมีข้อจำกัดในการใช้งาน ตัวอย่างเช่นในเวอร์ชัน 18c จะมีข้อจำกัด เช่น จำกัดการใช้งานข้อมูลได้ไม่เกิน 12 GB จำกัดการใช้งาน RAM ได้ไม่เกิน 2 GB ฟังก์ชันการใช้งานหลายอย่างที่ไม่มีให้ใช้งานเหมือนเวอร์ชัน Standard หรือ Enterprise Oracle Database XE 18c กับการติดตั้งในรูปแบบ Multitenant Oracle Database XE 18c จะถูกติดตั้งในรูปแบบที่เรียกว่า Multitenant ซึ่งจะมีรูปแบบดังนี้คือ มีฐานข้อมูลที่เป็น container database ฐานข้อมูลที่สร้างภายใต้ container เรียกว่า pluggable database ในการติดตั้งไม่สามารถเลือกได้ว่าจะลงเฉพาะ container database อย่างเดียวโดยไม่ลง…

    >> Read More <<

  • เชื่อมต่อจากฐานข้อมูล Oracle ไปยังฐานข้อมูลอื่นด้วย Oracle Database Gateway


    โดยปกติหากต้องการเชื่อมต่อฐานข้อมูลสองฐานข้อมูลสำหรับ Oracle สามารถทำได้โดยการสร้าง database link แต่กรณีที่ต้องการสร้างการเชื่อมต่อจากฐานข้อมูล Oracle ไปยังฐานข้อมูลที่สร้างโดยระบบจัดการฐานข้อมูลอื่นที่ไม่ใช่ Oracle เช่น MS SQL Server, MySQL สามารถทำได้โดยใช้เครื่องมือที่เรียกว่า Oracle Database Gateway นั่นเอง ตัวอย่างการใช้ Oracle Database Gateway เชื่อมต่อไปยัง MS SQL Server เพื่อให้เห็นภาพการใช้งานจะยกตัวอย่างการใช้งานกับ MS SQL Sever ดังนี้ หมายเหตุ รุ่นของ Software ที่ใช้ในตัวอย่างนี้คือ Oracle Database 12c R2 (12.2.0) Oracle Database Gateways 12c (12.2.0) เตรียมข้อมูลที่จำเป็นก่อนการติดตั้ง ข้อมูลของ SQL Server ที่เราต้องการเชื่อมต่อ ชื่อเครื่องหรือ IP Address ของเครื่องที่…

    >> Read More <<

  • การใช้ grant และ grant with grant option ใน Oracle


    การใช้คำสั่ง grant โดยทั่วไปเมื่อต้องการให้สิทธิ์สำหรับดำเนินการกับ object ใด ๆ ของ user หนึ่งให้กับอีก user หนึ่ง จะใช้คำสั่งคือ grant ตัวอย่าง เช่น user1 เป็นเจ้าของตารางชื่อ table01 ในฐานข้อมูลมี user ชื่อ user2 อยู่ในฐานข้อมูลเดียวกับ user1 ต้องการให้ user2 สามารถใช้คำสั่ง select ข้อมูลจากตาราง table01 ของ user1 บน user1 ดำเนินการโดยใช้คำสั่งในการให้สิทธิ์คือ grant select on user1.table01 to user2; หลังจากให้สิทธิ์แล้ว บน user2 สามารถใช้คำสั่งในการ select ข้อมูลจากตาราง table01 ของ user1 ได้ ตังตัวอย่างดังนี้ select * from…

    >> Read More <<