นุก อันนี้ใช้อย่างไง อ่ะ เพิ่งเคยเห็น Getsqlintegerdata ใช่ เปลี่ยนชนิด ตัวแปร ป่าว อ่ะ หน้าตามันแปลกๆ
มะเคยเห็น 555 ไม่เคยเล่นแหะ
เรียนต่อที่ไหน อ่ะ เงียบไปเลยเน้อะ
ตามที่ผมเข้าใจนะครับ ถูกผิดยังไง ขออภัยด้วยครับGetSQLStringData
GetSQLIntegerData
GetSQLDateData
GetSQLDoubleData
มันต่างกันที่ประเภทของตัวแปรที่มัน return ออกมา
ดังนั้นตัวแปรที่จะเอามารับข้อมูลจากฟังก์ชันพวกนี้ก็ต้องมี datatype เดียวกับมันด้วย
แต่ที่เราใช้ ๆ กันอยู่ เราจับใส่ Variable ได้เลย (Value := GetSQL.......) เพราะ Variable มันมี parameter ชื่อว่า Value เป็น Variant มาให้
procedure Variable2OnCalc(
var Value: Variant);
begin
Value := 'xxxx';
end;
การที่เราจะเลือกใช้ฟังก์ชันไหนนั้นนอกจากจะดูที่ datatype ของฟิลที่เราจะดึงแล้ว
เราต้องดูจุดประสงค์ด้วยเช่น field lab_order_result เป็น varchar(25) เพราะว่า ผล Lab ไม่ได้มีเฉพาะตัวเลข ยังมีผล lab ที่ตัวหนังสือ หรือ อื่น ๆ อีก ก็เลขต้องกำหนดเป็น varchar
ถ้าดูจาก datatype แล้วเราก็อาจจะใช้เป็น GetSQLStringData ได้เลย แต่ถ้าเราต้องการเอาผล lab ไปคำนวณอย่างอื่นต่อหละ (ซึ่งอาจจะไม่ค่อยเจอบ่อยนัก) ไป + - * / ..... มันก็จะคำนวณไม่ได้ เพราะมันไม่ใช่ตัวเลข
ดังนั้นเราควรจะใช้ GetSQLIntergetData แทน เพื่อดึงค่ามาใส่ตัวแปรที่เป็น Integer เพื่อจะเอาค่านั้นไปคำนวณต่อ ผมถึงบอกว่า "เราต้องดูจุดประสงค์ของการใช้งานด้วย"
บางท่านอาจจะบอกว่าก็ใช้ StrToInt() แปลงค่าเป็น Integer เอาดิแล้วค่อยคำนวณ => ก็ถูกครับ สามารถทำได้เหมือนกัน ประกาศตัวแปรเพิ่มนิด เขียนโค้ดเพิ่มหน่อย ก็ได้แล้ว ฮ่า ๆ
อันนี้ก็แล้วแต่คนเขียนแหละครับ เค้าทำทางลัดมาให้แล้ว อยู่ที่เราจะใช้หรือเปล่าแค่นั้นเอง