ตัวอย่างการเขียนค่าใน Database เฉพาะในผลลัพธ์ที่ค้นพบ

ตัวอย่างนี้ทำให้กับเพื่อนท่านหนึ่งครับ อาจไม่ตรงกับความต้องการของผู้อ่านท่านอื่น ความต้องการคือต้องการเขียนค่ากลับเข้าไปยังข้อมูลในฐานข้อมูลเฉพาะที่ค้นหาด้วยคีย์ค้นแล้วพบผลลัพธ์เท่านั้น ยกตัวอย่างเช่นค้นหาข้อมูลด้วยค่า ID เช่น ID =4 จะได้ข้อมูลคอลัมน์ต่าง ๆ ที่อยู่นแถวเดียวกันกับ ID = 4 ออกมา จากนั้นผู้ใช้สามารถกรอกข้อมูลอัพเดทข้อมูลเดิมเข้าไป โดยมีช่องข้อความให้กรอกค่าที่จะอัพเดทเข้าไป แต่หากว่าผลลัพธ์ของ ID=4 ไม่มี ไม่พบ แม้ว่าผู้ใช้กรอกค่าที่จะอัพเดทเข้าไปและคลิ้กปุ่มเพื่ออัพเดท ก็จะไม่มีการอัพเดทให้ เนื่องจากไม่มีข้อมูลแถวที่ ID = 4 อยู่

ก่อนอื่นใน Data Mining Configurator ให้เปิดคอนฟิกเดิมที่เป็นตัวอย่างของ ICONICS GENESIS32 ขึ้นมา แล้วทำการเลือก Database ที่ชื่อ AdministrationDB และ Data Sources ชื่อ Employees_By_PID จากนั้นให้ใส่เครื่องหมายถูกในช่อง Enable writes เพื่อยอมให้เขียนข้อมูลกลับเข้ามายังฐานข้อมูลผ่านData Mining นี้ได้

image

รูปที่ 1

จากนั้นดาวน์โหลดตัวอย่างไฟล์ gdf ของ GraphWorx32 V9.13 จากที่นี่

เมื่อเปิดไฟล์และทำการรัน ให้ใส่ ID เช่น 4 ในช่องสีเหลือง แล้วกดปุ่ม Eneter จากนั้นคลิ้ก Search เพื่อหาข้อมูลในแถว ID มีค่าเท่ากับ 4

image

รูปที่ 2

เมื่อพบข้อมุล และต้องการอัพเดทชื่อของ Employee ให้กรอกชื่อในช่องสีเหลือง กดปุ่ม Enter แล้วคลิ้กปุ่ม SUBMIT จะป็นการเขียนค่าข้อมูลใหม่กลับเข้าไปในฐานข้อมูล

image

รูปที่ 3

จากตัวอย่างดังกล่าว ถ้าไม่พบข้อมูลเช่นใช้ ID = 6 ถึงแม้เราจะกรอกค่าที่ต้องการอัพเดทลงไป กด Enter แล้วคลิ้กปุ่ม SUBMIT ก็จะไม่เกิดการเปลี่ยนแปลงใด ๆ เนื่องจากไม่มีข้อมูลแถวที่ต้องการ

ในตัวอย่างนี้ใช้ตัวแปรแบบ Local Variable ชื่อ ~~name~~ ในการเก็บข้อมูลชั่วคราวจากผู้ใช้ และใช้ตัวแปร Local Variable ชื่อ ~~ID~~ ในการรับค่า ID เช่นกัน ส่วนในปุ่ม Search ใช้ VBScript เพื่อกำหนดค่าให้ Local Alias คือ <<name>> ซึ่งใช้เป็น Data Source สำหรับ ProcessPoint ที่แสดงข้อมูลชื่อของ Employee

image

รูปที่ 4 Data Source ของ Process Point ใช้เป็น Local Alias

ปุ่ม Search มี Script ที่ใส่ค่าให้ Local Alias <<name>> เพื่อให้ลิงค์ไปที่ Data Mining ตรง ID ที่เราต้องการ (คือการกำหนด ID นั่นเอง)

Dim id
Set id = ThisDisplay.GetpointObjectFromName("~~ID~~")

ThisDisplay.SetAliasDefinition "name", "ICONICS.DatabaseOPCServer.3\AdministrationDB.Employees_By_PID<" & id.value & ">.<Name>"

Advertisements
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s