การสร้างฐานข้อมูลด้วย filemaker...

21
FileMaker โปรแกรม Maintenance Request FMPTHAILAND.COM Page of 1 21

Upload: suchart-sriwichai

Post on 06-Apr-2016

254 views

Category:

Documents


12 download

DESCRIPTION

ขั้นตอนการใช้งาน FileMaker ในการสร้างฐานข้อมูล ด้วยวิธีการยกตัวอย่างครับ

TRANSCRIPT

Page 1: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

FileMaker โปรแกรม Maintenance Request

FMPTHAILAND.COM Page � of �1 21

Page 2: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

โปรแกรม Maintenance Request

สวัสดีครับ พบกันอีกครั้งสำหรับ E-Book เล่มที่ 2 สำหรับการจัดสร้างฐานข้อมูลด้วยโปรแกรม FileMaker นะครับ เมื่อช่วงก่อนที่ผมได้ส่ง E-mail ไปบอกว่า จะสอนการจัดทำโปรแกรม Mail Merge สำหรับส่งจดหมายให้คนหลายๆคน ด้วยโปรแกรม FileMaker นั้น ขอเบี้ยวหน่อยนะครับ กลายมาเป็นจัดสร้างโปรแกรม Maintenance Request แทน ซึ่งก็คือโปรแกรมที่ใช้รับงานสั่งซ่อมโน่น นี่ นั่น ของฝ่ายช่างที่ทำงาน นั่นเอง

ทำไมต้องเป็นโปรแกรมนี้หล่ะ ก็เพราะผมเห็นว่ามีการใช้งาน Function ในการส่ง Mail ด้วย ซึ่งการทำงานก็คล้ายกับ Mail Merge เลย และที่สำคัญผมไม่ค่อยมีเวลา ก็เลยเอาโปรแกรมที่สร้างเพื่อใช้งานจริงมาเป็นแนวทางในการสอนก็แล้วกันครับ

ในโปรแกรมนี้ มีคุณสมบัติเป็นดังนี้นะครับ

- โปรแกรมจะทำหน้าที่ในการรับการสั่งงานจาก User ซึ่งก็เป็นผู้ใช้ทั่วไป แล้วทางฝ่ายช่างจะเข้ามาจัดการกับ Record ที่ User เหล่านั้นสร้างขึ้นมาอีกที

- โปรแกรมทำงานเป็นแบบ Network โดยโปรแกรมที่ผมสร้างนี้ User จะเข้ามาใช้งานผ่าน Web Browser ครับ ส่วนฝ่ายช่างจะใช้งานผ่านโปรแกรม FileMaker ซึ่งผมเอาตัวโปรแกรมที่ทำเสร็จแล้วใส่ในตัว FileMaker Server แต่ใน E-book ฉบับนี้ ผมจะพูดถึงการ Share จากเครื่อง Com ที่ Run FileMaker Pro (ต้องเป็น Pro นะครับ ไม่อย่างนั้น Share ไม่ได้) ไม่ต้องใช้ตัว Server ก็ได้

- โปรแกรมนี้จะใช้งานคุณสมบัติในการส่ง Mail ในการโต้ตอบกับ User นะครับ

ส่วนขั้นตอนการทำงานมีดังนี้ครับ

- ฝ่ายช่างทำการ Share โปรแกรม โดยให้ User เข้ามาใช้งานผ่าน Web Browser - User ทำการเปิด Web Browser แล้วเรียก Address ของเครื่องที่ Share - User ทำการกรอกข้อมูลใน Form ที่เรากำหนด แล้วทำการ Submit Form ส่วนของ User ทำเท่านี้แหละครับ

- เมื่อ User submit form มาแล้ว ข้อมูลก็จะมาโผล่ในเครื่อง Com ที่ Share ผ่านทางโปรแกรม Filemaker

- ฝ่ายช่างทำการตรวจสอบข้อมูลที่เข้ามา แล้วทำการกำหนดสถานะว่า “กำลังดำเนินงาน” หรือ “รอก่อน” หรือ “ดำเนินงานเสร็จแล้ว” จากนั้น Filemaker ก็จะส่ง Mail ไปแจ้ง User ที่กรอกข้อมูลเข้ามา

- ทุกๆครั้งที่ฝ่ายช่างทำการเปลี่ยนสถานะ Filemaker ก็จะดำเนินการส่ง Mail ไปแจ้งให้กับ User ทราบเสมอ User จึงไม่จำเป็นต้องเข้ามา Check สถานะงานของตนเองที่เครื่อง Com อีกต่อไป

FMPTHAILAND.COM Page � of �2 21

Page 3: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

ขั้นตอนการทำงาน

หน้าตาของโปรแกรมที่ผม capture มานี้ ผมปรับให้มันทำงานกับ Filemaker Server นะครับ ดังนั้นต้องคอยอ่านให้ดีนะครับ ถ้า งง ก็ส่ง Mail ถามโลดนะครับ 1. ทำการสร้าง Field ที่จำเป็น จะเห็นว่าโปรแกรมมี 1 Table เท่านั้นนะครับ

ประกอบด้วย Field ที่จำเป็นเท่าที่เห็นในรูป ส่วนถ้าต้องการรู้ว่า Field ไหนใช้งานอย่างไร เดี๋ยวไปดูตรง Layout Mode นะครับ จะเห็นการวางตำแหน่ง Field อีกที แล้วจะบอกว่า Filed ไหนคืออะไร

ส่วน Relationship ไม่ได้ใช้งานนะครับ เพราะว่ามีอยู่ Table เดียว และไม่ได้ไปเชื่อมกับใครที่ไหน จึงไม่จำเป็นต้องทำอะไรครับ

FMPTHAILAND.COM Page � of �3 21

Page 4: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

2. เมื่อได้ Field ที่ต้องการแล้ว ก็เข้า Mode Layout เพื่อทำการ Design หน้าตาในการใช้งานเลย โดยผมแบ่งหน้าตาของโปรแกรมออกเป็น 2 ส่วนก็คือ ส่วนของ User ที่จะเข้ามากรอก Form ผ่าน Web Browser และส่วนของช่างที่จะเข้ามาจัดการข้อมูลผ่านทาง FileMaker ครับ

Layout แรก สำหรับ User ผมเรียกว่าเป็นหน้า Main และผมจะทำการสั่งด้วย Script ทีหลัง ให้เวลา User Login เข้ามาในโปรแกรมแล้ว ให้มาที่หน้านี้ก่อน หน้าตาก็ไม่มีอะไรมากนะครับ ก็ตกแต่งให้สวยงาม จะเห็นว่าผมใช้งานรูปเข้ามาร่วมด้วยนะครับ เป็น Icon สื่อให้เห็นว่า แต่ละ icon ทำงานอะไร ซึ่งหา download ได้จาก web ทั่วไป ถ้าไม่รู้ก็ http://www.iconarchive.com ครับ มีให้เลือกมากมาย การเอารูปมาใส่ ก็ใช้ เมนู Insert --> Picture นะครับ

FMPTHAILAND.COM Page � of �4 21

Page 5: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

3. เมื่อ User ทำการกดที่ปุ่มสร้าง Request ใหม่ ผมก็จะพา User ไปที่หน้า Layout ต่อไปทางด้านล่างนะครับ

Layout นี้ ใช้ในการรับข้อมูลจาก User โดย Field ที่ใช้งานในหน้านี้ ก็มี Detail (จะให้ฝ่ายช่างทำอะไร ก็เขียนไป) Location (ปัญหามันเกิดตรงไหน) Priority (ด่วนหรือเปล่า) Name (ชื่อคนขอ) E-mail (ก็เมล์คนขอ) Key (ได้รับกุญแจให้เข้าห้องคนอื่นไหม มีหรือไม่มี ก็ว่าไป) จากนั้นก็ทำปุ่ม Submit Form เพื่อส่ง Mail หรือ ปุ่มแดง ก็ยกเลิกแล้วกลับเมนูหลัก

การ Design Lauout สำหรับ User ที่จะเข้ามาใช้งานผ่านทาง Web Browser นั้น เราจะต้องทำหน้า Layout รองรับทุกหน้าที่เขาจะไปนะครับ เหมือนเป็นการดักว่าเขาจะทำอะไรพลาดบ้าง เช่น ถ้าเขากรอกข้อมูลไม่ครบในหน้าแรก เราก็ต้องทำหน้า Layout ที่รายงานว่า เขาจำเป็นจะต้องกรอกข้อมูลให้ครบ ที่ต้องทำอย่างนี้ เพราะว่า Script ของ FileMaker ไม่สามารถทำงานผ่านทางหน้า Web Browser ได้ทั้งหมด ซึ่ง Version ที่ผมเอามาสอนนี้เป็น FileMaker Pro version 11 นะครับ การออกแบบหน้าตา Web จะแตกต่างจาก Version 13 อยู่ แต่ก็ใช้ Concept เดียวกัน เพียงแต่ 13 ทำได้ดีกว่ามากครับ

FMPTHAILAND.COM Page � of �5 21

Page 6: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

layout ข้างล่าง ผมทำขึ้นมาอีกหน้า กรณีที่ User กรอกข้อมูลไม่ครบครับ

ส่วนถ้ากรอกข้อมูลเรียบร้อยดี ก็จะพาไปอีก Layout ที่แจ้งว่าเรียบร้อยดี ได้รับข้อมูลแล้ว

FMPTHAILAND.COM Page � of �6 21

Page 7: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Layout ของ User ก็จะหมดเท่านี้ ซึ่งอย่างที่แจ้งไปก็คือ เราต้องทำ Layout เตรียมไว้ให้หมดทุกหน้าที่ติดว่ามันจะต้องมีนะครับ ภาพข้างล่างจะแสดงจำนวน Layout ที่ผมใช้งานสำหรับโปรแกรมนี้ครับ

โดยการตั้งชื่อ Layout ผมก็จะสื่อให้ชัดเจนว่า แต่ละ Layout เป็นของใคร เพื่อที่เวลาแก้ไขเราจะได้ไม่งงนะครับ จากรูปก็จะเห็นว่า Layout สำหรับ User ที่เข้ามาใช้งานผ่านทาง Browser นั้น มี 4 Layouts ส่วน Layout ที่เป็นของฝ่ายช่างที่ใช้งานผ่านโปรแกรม FileMaker นั้น มีอยู่ 2 Layout ข้างล่างเท่านั้น

FMPTHAILAND.COM Page � of �7 21

Page 8: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

ซึ่งโปรแกรมนี้ถือว่าค่อนข้างง่าย เพราะมี Table เดียว และก็ออกแบบ Layout ก็ไม่ได้วุ่นวายอะไร ในส่วน Layout ของ Admin ก็มี Field ที่ใช้งานเพิ่มเติมดังนี้ Status (เอาไว้กำหนดสถานะของงาน) Wait Reason (กรณีที่กำหนดสถานะเป็น “รอ” ต้องแจ้งเหตุผลด้วย) Finish Date and Time (เอาไว้บันทึกวันเวลาที่แล้วเสร็จ) ส่วน Comment ก็เอาไว้ใ่ข้อมูลเพิ่มเติม และสุดท้ายก็ Mail Status ที่เอาไว้ตรวจสอบการส่ง Mail เท่านั้นครับ

หัวใจการทำงานของโปรแกรมจะอยู่ที่ Script มากกว่า เรามาดูกันว่า ผมสั่งให้โปรแกรมทำงานด้วย Script อย่างไรบ้าง

รูปด้านบน ก็เป็น Script ที่ใช้ในโปรแกรมนี้นะครับ ช่วงบนจะเป็น Script ที่ใช้งานกับ Layout ของ User ช่วงกลางจะเป็น Script สำหรับฝ่ายช่างในการกำหนดสถานะของงาน และช่วงท้าย เป็น Script ที่ผมสั่งให้ Filemaker Server เข้ามา Run Script ตามกำหนดเวลาที่ตั้งไว้ แต่ใน E-book เล่มนี้ เราไม่ได้ใช้งาน Server ดังนั้น Script ช่วงท้าย เราจะสั่ง Run ด้วยปุ่มเลยนะครับ ประมาณว่ากดเปลี่ยนสถานะแล้วก็ส่ง mail เลยดีเดียว

FMPTHAILAND.COM Page � of �8 21

Page 9: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : Setup

มาดู Script แรกสุดนะครับ ชื่อ ว่า Setup เป็น Script ที่ทำหน้าที่ตั้งค่าเริ่มต้นในโปรแกรม ซึ่งจะถูกสั่งให้ทำการก่อน ตั้งแต่ตอนเปิดโปรแกรมเลย ประกอบไปด้วยชุดคำสั่งดังนี้

อธิบายได้ตามรูปเลยนะครับ ส่วนการสั่งให้ Script นี้ทำงานตั้งแต่ตอนเปิดโปรแกรมนั้น ทำได้ดังนี้

เมนู File --> File Option แล้วเลือกตรง Perform Script ตามรูปด้านล่างนะครับ ส่วนใน version 13 แตกต่างจากนี้เล็กน้อย งมๆหน่อยก็จะเจอครับผม

FMPTHAILAND.COM Page � of �9 21

Page 10: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : new requisition

Script นี้ทำหน้าที่ในการสร้าง Record ใหม่ พร้อมกับทำการตั้งค่าให้กับ ID เพื่อง่ายในการตรวจสอบ แล้วก็ทำการบันทึกวันและเวลาที่ทำการสร้าง Record เอาไว้อีกด้วย

ส่วนค่าที่ใส่เข้าไปใน ID นั้นก็ได้จากสูตรนี้

"EN" & Right ( Year ( Get(CurrentDate) ) ; 2 ) & Month ( Get(CurrentDate) ) & Get(RecordID)

ก็คือ ตั้งต้นด้วยอักษร “EN”จากนั้นตามด้วยเลข 2 ตัวท้ายของปีนี้ ตามด้วย เลขเดือน และตามด้วย record id ซึ่งจะไม่มีทางซ้ำกันเด็ดขาด ส่วน record id จะเป็นเลขอะไรนั้นผมไม่สนใจ

จะได้ผลลัพธ์มาประมาณนี้ --> EN14119 (ปี 2014 เดือน 11 record id ที่ 9)

ซึ่งตัว ID เอาไว้อ้างอิง Record นี้เฉยๆนะครับ ไม่ได้เอาไปใช้งานที่อื่นแต่อย่างใด ท่านจะแต่งให้พิสดารจากนี้ก็ได้ครับ

ส่วนการจับเอาวันและเวลา มาพร้อมๆกันนั้น เราจะใช้ Function Get เข้ามาช่วย จะเห็นได้ว่าผมใช้ Function Get(CurrentTimeStamp) มาใส่ใน Filed ชื่อ TimeStamp เลย โปรแกรมก็จะดึงเอาวันและเวลาขณะที่ Run Script ตัวนี้มาใส่เลยครับ

FMPTHAILAND.COM Page � of �10 21

Page 11: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : cancel and exit

เมื่อ User กดที่ปุ่มยกเลิก Script นี้จะทำงานตามรูปครับ

แล้วเราจะรู้ได้อย่างไรว่า Account เราเป็น Admin หรือเปล่า ก็เกิดจากการที่เรา Login เข้ามาใช้งานโปรแกรมครั้งแรกนั่นแหละครับ แล้วมันกำหนด Account กันที่ไหนหล่ะ ก็นี่เลย File —> Manage —> Security

FMPTHAILAND.COM Page � of �11 21

Page 12: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

จะเห็นว่าผมมี 3 Account คือ Admin , en และ engineer

- Admin สำหรับผม เข้ามาแก้ไขโปรแกรมได้ทั้งหมด ทำทุกอย่างได้ ( ต้องได้สิทธิ์ Full Access ) - en คือ User ที่เข้ามาใช้งานผ่านทาง Web Browser ( ได้สิทธิ์ทำทุกอย่างได้ แต่ลบ Record ไม่ได้ ) - engineer คือ ฝ่ายช่างที่จะเข้ามาจัดการข้อมูลผ่านทางโปรแกรม Filemaker ( ทำได้ทุกอย่าง แต่แก้ไข Layout ไม่ได้ )

เราจะต้องบอก section security นี้ว่า แต่ละ account สามารถเข้ามาใช้งานผ่านทางไหนได้บ้างนะครับ

- fmiwp คือการใช้งานผ่านทาง web browser - fmapp คือการใช้งานผ่านทาง Filemaker

FMPTHAILAND.COM Page � of �12 21

Page 13: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

ถ้าท่านทำตามผม จะเห็นว่า เอา enweb มาจากไหนหว่า ? ก็ผมสร้าง set นี้ขึ้นมาเองหน่ะ ท่านจึงไม่เห็นหรอก เนื่องจากผมต้องการให้ user delete record ไม่ได้ จึงต้องสร้าง privillage set ขึ้นมาใหม่ ตามรูปด้านล่าง

เท่านี้เราก็ control user ที่ผ่านเข้ามาทาง web ได้อยู่หมัดเลยแหละ

ตรงนี้ท่านต้องใส่ใจหน่อยนะครับ Admin ควรจะเป็นผู้สร้างโปรแกรม ซึ่งควรจะมีคนเดียวเท่านั้น และต้องไม่ลืม password ด้วย เพราะหากลืม Password ใน Filemaker โดยเฉพาะ password ของ admin โปรแกรมที่สร้างมา ก็แทบจะทิ้งทำใหม่เลยนะครับ ผมยังไม่เจอวิธีการ recover password เลย ดังนั้นต้องจำให้ได้ จำไม่ได้ให้จดครับ สำคัญมาก เตือนแล้วนะ ...

FMPTHAILAND.COM Page � of �13 21

Page 14: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : save

เมื่อ User กดปุ่ม Submit ข้อมูลเข้ามาในโปรแกรม Filemaker Script จะทำหน้าที่ดังนี้

ผมสั่งให้ทำการตั้งค่าเพื่อแจ้งฝ่ายช่างว่ามีคนใส่ข้อมูลเข้ามาใหม่ แล้วดำเนินการส่ง mail ว่า “รอที่จะส่ง” (wait-new) จากนั้นเราค่อยมาทำการค้นหา record นี้เพื่อส่ง mail ทีหลัง

Script : back to main

สำหรับการกดปุ่มกลับหน้าหลัก เราจะต้องทำการแยกว่าใครเป็นคนกด ระหว่าง admin กับ user จะกลับไปคนละ layout กันนะครับ ซึ่งสำคัญมาก เพราะถ้า user เข้าหน้า layout ของ admin ได้ มันจะยุ่งไปใหญ่นะครับ

FMPTHAILAND.COM Page � of �14 21

Page 15: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : Set Status

Script นี้จะทำงานเมื่อช่างเข้ามาเปลี่ยนสถานะของแต่ละ record ซึ่งจะมีอยู่ 3 สถานะคือ กำลังดำเนินงาน ( in progress ) รอ ( wait ) และ ดำเนินงานแล้วเสร็จ ( done ) ในแต่ละสถานะจะมีการตั้งค่าเพื่อรอการส่ง mail ให้กับ field ชื่อ mail ซึ่งเราจะทำการค้นหาแต่ละสถานะ เพื่อทำการส่ง mail ทีหลังครับ

ในส่วนของการแจ้งเตือนการทำงานนั้น เป็นแค่ข้อความธรรมดา ที่ทำให้ฝ่ายช่างได้ทราบว่า ตอนนี้ Record นี้ ได้ทำอะไรไปบ้างแล้วเท่านั้นเองหน่ะครับ ใส้ในของมันก็คือ

Case ( Maintenance Requisition::status = "in progress" ; TextColor ( "กำลังดำเนินการ" ; RGB ( 190 ; 0 ; 0 ) ); Maintenance Requisition::status = "wait" ; TextColor ( "รอก่อน" ; RGB ( 255 ; 0 ; 0 ) ); Maintenance Requisition::status = "done" ; TextColor ( "ดำเนินการแล้วเสร็จ" ; RGB ( 0 ; 200 ; 0 ) ); )

ผมจะแยกว่า ตอนนี้สถานะเป็นอะไร

- ถ้าเป็น in progress ก็ให้ทำการเอาคำว่า “กำลังดำเนินการ” สีแดง ไปใส่ใน field status text - ถ้าเป็น wait ก็เอาคำว่า “รอก่อน” มีแดงเข้มมาก ใส่ใน field status text - ถ้าเป็น done ก็เอาคำว่า “ดำเนินการแล้วเสร็จ” สีเขียว ไปใส่ใน field status text

FMPTHAILAND.COM Page � of �15 21

Page 16: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : show status

Script นี้เอาไว้สำหรับฝ่ายช่าง ในการกรอง record ว่า ตอนนี้มี record ในแต่ละสถานะ มีจำนวนเป็นเท่าไร โดยอย่างแรก ให้เราทำการใส่ค่าสถานะที่ต้องการใน field show เสียก่อน แล้วจึงเอาค่าใน field show ไปทำการค้นหาข้อมูลใน field status อีกที ทั้งนี้ field show ต้องเป็น Global นะครับ ไม่งั้นจะไม่สามารถทำการค้นหาแบบนี้ได้

ที่ File show เราจำเป็นจะต้องใช้ value list เข้ามาช่วยนะครับ โดยให้ value list อ่านค่าข้อมูลจาก filed status ความหมายคือ ถ้า field status มีข้อมูลเป็นอะไร ก็ให้นำเอาข้อมูลนี้ไปแสดงเป็นตัวเลือกให้กับ field show ด้วย

ภาพข้างล่างจะเห็นว่าผม set value list ชื่อ status for show ให้ไปอ่านข้อมูลจาก field ชื่อ status ซึ่งจะมีข้อมูลซ้ำๆกัน ( new, wait, in prograss , done ) แล้วก็ไปเรียกใช้ที่ field show โดยให้มันแสดงเป็น drop-down list โดยใช้ value list ชื่อ status for show

งง กันไหมครับ หวังว่าคงไม่งงนะครับ ถ้า งง ก็ถามนะครับ

FMPTHAILAND.COM Page � of �16 21

Page 17: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script : mail check wait-new

ต่อมาก็จะเป็นเรื่องของการส่ง mail ไปแจ้ง user และ ฝ่ายช่างให้ทราบสถานะการดำเนินงานของแต่ละ record ที่ขอเข้ามา script นี้จะทำการตรวจสอบ record ที่ user สร้างเข้ามาใหม่ เมื่อเจอ record ก็จะทำการส่ง mail ไปแจ้ง user พร้อม cc ให้ฝ่ายช่างว่า ฝ่ายช่างรับทราบการร้องขอแล้ว จะดำเนินการแจ้งสถานนะของงานให้ทราบต่อไป

จะเห็นว่าในบรรทัดแรกของ script ผมสั่งให้ดำเนินการค้นหา record ที่ user สร้างขึ้นมาใหม่ โดยในขั้นตอนที่ user สร้าง record นั้น จะมีคำสั่งหนึ่งที่ผมสั่งให้ใส่ค่า field ชื่อ mail ด้วยคำว่า “wait-new” หรือในความหมายของผมก็คือ รอส่ง mail สำหรับ record ใหม ่

FMPTHAILAND.COM Page � of �17 21

Page 18: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

เมื่อระบบทำการค้นหาแล้วเจอ record มากกว่า 0 ผมก็จะเริ่มวน loop ในการส่ง mail ทันที พร้อมกับปรับสถานะของ filed ชื่อ mail เป็น sent-new เพื่อให้รู้ว่าได้ทำการส่ง mail ไปแล้ว พร้อมกับแจ้งข้อความให้ฝ่ายช่างได้ทราบว่าทำการส่ง mail ไปแจ้ง user แล้วเช่นกัน

เรามาดูข้างในของ function ว่าต้องทำอย่างไรบ้าง

สิ่งที่เราต้องตั้งค่านั้น ก็มีเรื่อง smtp server ซึ่งจำเป็นตั้งมีนะครับ ไม่งั้นส่ง mail ไม่ได้ นอกนั้นก็เป็นการเรียกใช้ข้อมูลจาก filed ต่างๆ ที่เรามี

FMPTHAILAND.COM Page � of �18 21

Page 19: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

สำหรับ smtp server นั้น ผมใช้บริการของ smtp2go ซึ่งได้แนะนำไว้ที่ web นี้แล้ว http://cnxadmin.blogspot.com/2013/07/smtp.html อ้อ .. ขอโฆษณาเล็กน้อย ที่ fmpthailand.com ผมมี blog เรื่องอื่น อีก 2 - 3 blog ทำเอาไว้กันลืมในงานที่ผมทำ ถ้าใครสนใจก็ลองเข้าไปอ่านกันนะครับ บางทีอาจจะเจอบทความที่ท่านกำลังต้องการทราบก็เป็นได ้

รายละเอียดของการ setup smtp นั้นก็มีตามรูปด้านบนนะครับ ถ้าจะใช้ของฟรี อย่างเช่น smtp ของ internet ที่ท่านใช้งานอยู่ ก็ให้ใส่ช่อง outgoing smtp server เป็น

TOT: smtp.totisp.net หรือ smtp.totonline.net TRUE adsl: mail.truemail.co.th TRUE Ultra: SMTP= mxauth.truemail.co.th 3BB: smtp.3bbmail.com หรือ smtp.tttmaxnet.com

ข้างบน ลอกมาจาก Internet นะครับ ถ้าไม่ถูกก็ลองหาข้อมูลที่ถูกต้องอีกทีนะครับ ส่วน port เขาจะ default ไว้ที่ 25 อยู่แล้ว ถ้ามีการ login ก็ให้เลือกใส่ค่าที่ authentication นะครับ ของฟรีจะมีข้อเสียคือ ส่งปริมาณมากๆไม่ได้ ต้องเว้นจังหวะส่งด้วย ส่งต่อๆกัน เขาจะหาว่าเราเป็น spam นะครับ

FMPTHAILAND.COM Page � of �19 21

Page 20: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

Script สำหรับการส่ง mail ก็คือ

- Script : mail check wait-inprogress - Script : mail check wait-wait - Script : mail check wait-done

ทั้ง 3 script มีโครงสร้างเหมือนกับ Script : mail check wait-new ทุกประการ ต่างกันตรง การสั่งให้ค้นหา และการแจ้งสถานะการส่ง mail เท่านั้น ซึ่งแล้วแต่ท่านว่าจะใส่อะไรเข้าไปนะครับ

ประเด็นการใช้งาน script ส่ง Mail อยู่ที่ว่า ท่านจะเลือกส่งตอนไหนต่างหาก อย่างที่แจ้งไปว่า ผมใช้ FileMaker Server version 11 ในการตั้งเวลาสำหรับให้มันมาทำการ run script สำหรับส่ง mail โดยผมตั้งเวลาไว้ว่า ในทุกๆ 15 นาที ให้ Server ทำการเข้ามา run script ทั้ง 4 ตัวที่ใช้ในการส่ง mail นี้

แต่คราวนี้ ใน E-book นี้ ไม่ได้มีการใช้งาน Server แต่อย่างใด ดังนั้นทางเลือกของท่านมี 2 ทางคือ เอา script ส่ง mail ไปแปะไว้กับ script set status หรือ สร้างปุ่มเพื่อ run script ส่ง mail ขึ้นมาเอง ซึ่งการสร้างปุ่มนั่นง่ายมาก แต่ที่ผมจะแนะนำก็คือ ให้เอา script ส่ง mail ไปแปะไว้กับ script set staus ดังตัวอย่างต่อไปนี้

FMPTHAILAND.COM Page � of �20 21

Page 21: การสร้างฐานข้อมูลด้วย FileMaker เบื้องต้น

บรรทัดที่มีเครื่องหมาย // นั่น หมายความว่า โปรแกรมจะไม่ทำงานในบรรทัดนั้นนะครับ ที่ผมแก้ไขก็คือ เมื่อมีการกด set status script ก็จะทำการเลือกส่ง mail ตามสถานะที่กำหนดทันทีหน่ะครับ ซึ่งจะช้าหรือเร็วนั้น ขึ้นอยู่กับว่าเรามีปริมาณ record ในแต่ละสถานะมากน้อยขนาดไหน

โปรแกรมนี้ก็มีเท่านี้แหละครับ โปรแกรมง่ายๆ แต่ฝอยยืดยาวได้ตั้ง 21 หน้าแน่ะ ... ที่ต้องฝอยมากก็เพราะอยากให้ทุกท่านเข้าใจและทำได้หน่ะครับ หวังว่าทุกท่านคงจะได้รับประโยชน์จาก E-book เล่มนี้บ้างนะครับ

หากผมเขียนเข้าใจยาก หรือ มีข้อติประการใด ก็รบกวนแจ้งให้ทราบด้วยนะครับ เพราะจะต้องเอามาใช้ในการปรับปรุงการเขียนให้มันดีมากขึ้นต่อไป

ท่านยังมีคำถามค้างคาใจ ก็สามารถติดต่อผมได้ที่

URL : www.fmpthailand.com Facebook : facebook.com/fmp.th E-mail : [email protected]

ขอบคุณครับ

HS5CKT

“กุศลใดที่เกิดจากการให้ความรู้เป็นทานในครั้งนี้ เจ้ากรรมนายเวรทั้งหลายจงได้รับกุศลนั้นขอทุกท่านจงได้อโหสิกรรมในกรรมชั่วทั้งหลายที่ทำต่อกันเอาไว้แล้วในอดีตด้วยเทอญ”

FMPTHAILAND.COM Page � of �21 21