สร้าง e-Forms ด้วย Sugar CRM [ use SugarCRM as e-Forms Tools ]
หน้าแรก ติดตั้ง CMS สร้าง e-Forms ด้วย Sugar CRM [ use SugarCRM as e-Forms Tools ]
ครับ Series ภาคต่อ หลังจากครั้งที่แล้วเราสอนวิธี Install SuagarCRM ไปแล้ว
ตอนนี้ก็ถึงเวลาที่เราจะมาดูกันว่า SugarCRM ทำ e-Forms ได้อย่างไร
-
เผื่อคนอยากอ่านเรื่องราวครั้งก่อน ฝาก link ไว้ครับ
+ Case study: use SugarCRM as a e-Forms tools -> http://champillon.wordpress.com/2009/07/12/e-forms-with-sugarcrm/
+ How to: Install SugarCRM on WAMP -> http://champillon.wordpress.com/2009/07/14/install-sugarcrm/
-
Prerequirement
+ Installed SugarCRM 5.x or later on AMP (Apache, MySQL, PHP) environment
-
Step
1. Log in เป็น admin

2. เลือก link Admin ที่มุมขวาบน

3. Scroll ลงด้านล่าง แล้วจะมีหัวข้อชื่อ Developer Tools เลือก Module Builder

ตรงนี้ขออธิบายหน่อยครับ คือบน Framework ของ SugarCRM นั้น จะแบ่งเป็น
- Module Builder => ไว้ design Form ใหม่ๆ แล้วพอ design เสร็จจะ save Form นั้นออกเป็น zip file ลงเครื่องได้ เพื่อจะได้เอาไป install หรือเอาไป design ต่อใน SugarCRM ตัวอื่น
- Module Loader=> ไว้สำหรับ Load zip file หรือ Form ที่เรา Design ไว้แล้ว จากเครื่อหนึ่งเข้าไปใน SugarCRM เครื่องอื่น
- Studio=> สำหรับ Form ที่นำมาใช้จริงแล้ว ถ้าอยากต้องการแก้ไข ให้มาแก้ที่ Studio ครับ
4. เลือก New Package

5. กรอกข้อมูล ในช่องต่างๆ (ซึ่งชื่อของช่องก็น่าจะสื่ออยู่แล้วนะครับ ไม่ขออธิบายนะ)

6. เลือก New Module
+ 1 Package มีได้หลาย Modules
+ 1 Modules มีได้ 1 Form (1 tab)
+ 1 Form มีได้หลาย field
+ 1 Package จะ Export ออกมาได้เป็น 1 zip file

7. กรอก ข้อมูลเกี่ยวกับ Module แล้วเลือก Save
+ Module Name คือ ชื่อ Moduleที่จะใส่ลงใน database
+ Label คือชื่อ ที่จะแสดง เป็น Tab บน SugarCRM (มีเว้นวรรคได้)
+ Importing คือ เลือกว่าจะให้ Import ข้อมูลหลายๆ record ลงบน e-Forms จากไฟล์ .CSV ได้หรือไม่
+ Type คือเลือกว่าจะใช้ default Form แบบไหน ซึ่งตัวผมเองเคยใช้แค่ basic กับ file (basic ก็ Form ธรรมดา ส่วน file นั้นจะเพิ่ม field ให้ upload file เข้ามาได้)

8. จากนั้นจะขึ้นหน้าจอ ของตัว Module ที่สร้าง ให้เลือก View Field เพื่อสร้าง Field เพิ่ม ซึ่ง Field นี้จะเป็น Field ข้อมูลบน Database

9. จะแสดง Field ที่เป็น Default อยู่แล้ว ซึ่งเราสามารถสร้าง Field เพิ่มได้โดยเลือก Add Field

10. จะเกิด ฟอร์มให้กรอก ข้อมูลมากมาย ให้เลือก Data Type (ผมคงไม่อธิบายทุกอันนะครับ ผมยังใช้ไม่ครบเลย = =) เอาง่ายๆ Text Field
(จะเห็นได้ว่า มี Data Type มากมายให้เลือกใช้ ซึ่งไว้ว่างๆ ผมจะ up blog เพิ่มเกี่ยวกับวิธีประยุกต์ใช้เหล่านี้)

11. เลือกกรอกข้อมูลตามช่องต่างๆ ซึ่งชื่อช่องหน้าจะสื่ออยู่แล้วนะครับ ขอไม่อธิบาย กรอกหมดแล้วเลือก Save

12. จากนั้นจะ ปรากฏ Field ที่คุณสร้างขึ้น แล้วให้เลือก Test_First เพื่อกลับมาที่ Modules

13. เลือก View Layout เพื่อ นำ Field ที่เราเพิ่งสร้างขึ้นมา แสดงผล
(อันนี้เป็นตามแนวคิด MVC นะครับ M คือ Field, View คือ Layout ส่วน Controller ตัว SugarCRM จะ Handle ให้ครับ)

14. จะขึ้น icon มากมายให้เลือก ขออธิบายแต่ละ icon ดังนี้ครับ

แต่ละ icon นั้นจะสื่อถึงการนำข้อมูลมาแสดงผลในแต่ละส่วน icon ไหน บอกถึงส่วนไหนบ้างดูได้จากรูปดังนี้ครับ

พอเลือก ข้อมูลที่แสดงใน List View เข้าไปแล้วจะพบ Detial View

หลังจากนั้นเลือก Edit แล้วจะแสดง Edit View

15. เลือก Edit View เพื่อนำ Field ที่เราสร้าง ไปเลือกแสดง

16. Drag and Drop Field ที่เราสร้าง จากซ้ายมาขวา เพื่อแสดงบน Form และถ้าหากจะไม่แสดง ก็ Drag and Drop จากขวามาซ้าย พอหนำใจแล้วก็ Save
+ Drag and Drop New Panel เพื่อสร้าง กรอบใหญ่อันใหม่ สำหรับใส่ Rows อื่นๆ
+ Drag and Drop New Row เพื่อสร้างช่องไว้สำหรับใส่ Field

17. เลือก Detail View ซึ่งจะใช้วิธีแก้ไขเหมือน Edit View ซึ่งสรุปได้ว่า ทุก Field ที่กรอกเข้าไปไม่จำเป็นต้องแสดง และ Field บาง Field ที่ไม่ได้กรอก สามารถนำมาแสดงได้ เช่น username ของคน create หรือ เวลาที่ create

18. เลือก List View จะแสดง ช่องดังรูป ซึ่งจะแสดง Field ที่มันโชว์แล้วใน กรอก Deafault ส่วน Field ที่เหลืออยู่จะอยู่ใน Hidden อยากแสดงหรือซ่อนอันไหนก็ Drag and Drop ครับ
(ผม drag and drop ฟิลด์ทดสอบ มาจากทาง hidden นะครับ)

19. สำหรับ Search จะแบ่งเป็น Basic Search ซึ่งแสดงเลย กับ Advance Search ที่ซ่อนอยู่อีก Tab ซึ่งวิธีการแก้ไขก็เหมือนกับ List View

20. หลังจาก แก้ไขทุกอย่างเรียบร้อยแล้ว เราก็ทำการกลับมาที่ หน้าจอหลักของ Module เพื่อเตรียม deploy

21. เลือก Deploy เพื่อนำ Form ที่เราสร้างไปใช้

22. จะพบ Tab ที่ชื่อเหมือน Label ของ Module (Form) ที่เราสร้าง (พอดีผมไปแก้ให้ Tab นั้นมาอยู่ต้นๆ ไม่ง้านจะตกไปอยู่ท้ายๆนะครับ หาดูดีๆ)

23. ลองสร้าง ข้อมูลใหม่ โดยเลือก Create Test First

24. จะพบ field ที่เราเพิ่งสร้างขึ้น เพื่อเป็น e-Forms ไว้เก็บข้อมูลลง Database แล้วดึงมาแสดงครับ

จบ ![]()
-
Remark
+ 1 Tab คือ 1 Moudle และคือ 1 Table ใน Database
+ แต่ละ Tab สามารถสร้าง Relation กันได้ แบบ 1-to-1, 1-to-many, many-to-many ซึ่งไว้ว่างๆ ผมจะมาอธิบายต่อ
+ ยังมีวิธีการประยุกต์ใช้อีกหลายแบบ เช่นการทำ View ใน MySQL แทน Table เพื่อให้ 2 Tab แสดงข้อมูลจาก Table เดียวกัน แต่ Filter บาง Field ออก
ขึ้นไปด้านบน
