พัฒนาระบบเช็คสิทธิ์ โดยการ เชื่อมต่อ กับ Webservice ของ สปสช ด้วย Delphi

ในคราวที่แล้วผมสอนเรื่องของการใช้งาน Web service ของ สปสช เพื่อตรวจสอบสิทธิ์การรักษา หากยังไม่ได้อ่านคลิก ที่นี่ ครับ คราวนี้ผมจะลองใช้ Delphi เขียนโปรเจคเพื่อเชื่อมต่อกับเว็บ Service บ้าง

ผมใช้ Delphi 10 Seattle ในการพัฒนานะครับ สำหรับ Version อื่นนั้นก็ไม่ต่างกันมากนัก เริ่มต้นโดยการเปิด โปรเจคใหม่ขึ้นมาก่อนเลย

จากนั้นให้เรานำเข้า WSDL เพื่อติดต่อ Web Service โดยเข้าไปที่ Component->Import WSDL

ใส่ URL ของ Web Service ของ สปสช http://ucws.nhso.go.th:80/ucwstokenp1/UCWSTokenP1?wsdl

กด Next

กด Next

กด Finish

ก็เป็นอันเสร็จการนำเข้า WSDL

สั่ง use Webservice ที่ import เข้ามาด้วยคำสั่ง uses UCWSTokenP11;

สร้าง Form ขึ้นมาลองรับผลลัพธิ์ที่ได้จากการเรียกใช้ Web Service

ในรูปจะสังเกตุว่ามี component ที่ชื่อ HTTPRIO1 อยู่ นี่คือ พระเอกของงานนี้เลยครับ HTTPRIO นี้คือ HTTP Remote Interface Object นั่นเองซึ่งเป็น component ที่มีมากับ Delphi อยู่แล้วไม่ต้องติดตั้งเพิ่ม

เมื่อลากวางแล้วให้กำหนด Propeties ของ component ดังนี้

กำหนด WSDLLocatoin http://ucws.nhso.go.th:80/ucwstokenp1/UCWSTokenP1?wsdl

Service เลือกเป็น UCWSTokenP1

Port เลือก UCWSTokenP1Port

ในส่วนนี้ผมจะกำหนด Event on Click ของปุ่มเช็คสิทธิ์ ให้เรียกใช้ Web service โดยประกาศค่าตัวแปรดังนี้

var
nhsoD :nhsoDataSetC1;

จากนั้นใสส่วนของ Event ให้ใส่ โดยในส่วนของ

‘36xxxxxxxxxxx’ ให้ใส่เลขที่บัตรของเจ้าหน้าที่ตรวจสอบสิทธิ์

TxtToken.text ใส่ Tokenที่ได้มา โดยเอาไปใส่ที่หน้า Form ตอนจะเช็คสิทธิ์

TxtSearchCID.Text ใส่เลขที่บัตรประชาชนของคนที่ต้องการตรวจสอบสิทธิ์

nhsoD := (HTTPRIO1 as UCWSTokenP1).searchCurrentByPID(‘36xxxxxxxxxxx’,TxtToken.text,TxtSearchCID.Text);

เมื่อทำการ Run แล้วก็จะได้ผลดังภาพ

ซึ่งหากเราอยากรู้ว่า nhsoD ตามด้วย . อะไร ก็สามารถอ้างอิงได้จาก ผลที่เราได้รับกลับมาตอนใช้ทางขวา ของ SOAP UI

--

--