คุณบัง Mambohub บอกมาว่าคุณตฤณกำลังหาคนช่วยทดสอบ CiviCRM บน Drupal เผื่อจะเอามาใช้กับโครงการ OpenCARE ในการลงทะเบียนผู้มีส่วนเกี่ยวข้องและหน่วยงานที่สังกัด
CiviCRM เป็น CMS สำหรับทำ CRM (ตัวย่อชักเยอะฟ่ะ) อันที่ไม่ปกติคือมันไม่ได้เป็น CMS เต็มตัว แต่มันเป็นโมดูลที่เขียนบน CMS ตัวอื่นๆ ซึ่งตอนนี้สนับสนุน 2 ตัวคือ Mambo/Joomla และ Drupal
ผมเลยลองเอามาลงเล่นๆ ช่วยทดสอบ ปรากฎว่ามันลงยากกว่าที่คิดเยอะเลย
เครื่องที่ทดสอบใช้ Ubuntu Dapper แพกเกจเวอร์ชันตามนี้
เท่าที่อ่านในเว็บพบว่าสามารถใช้กับ Apache 1.3/MySQL 4.0 ได้ แต่เนื่องจากเราจะทดสอบด้าน Unicode ใน MySQL 5.0 ด้วย ใช้ซอฟต์แวร์ซิงๆ ทั้งชุดเหมาะกว่า
ส่วนขั้นตอนการติดตั้งบน Drupal ก็อ่านตามนี้ CivicSpace and Drupal - Manual Installation
civicrm-drupal-php5-v1.4-revXXXX.tar.gz
/PATH/drupal/modules
ต้องให้ไฟล์ civicrm.module อยู่ตามโครงสร้างไดเรคทอรีนี้
/PATH/drupal/modules/civicrm/modules/civicrm.module
ผมเลือกวิธีหลัง สร้าง database ที่ชื่อ civicrm ขึ้นมาอีกอันนึงผ่าน PHPMyAdmin
/PATH/drupal/modules/civicrm/sql
โดยเราต้องเลือกเวอร์ชันให้ตรง ในกรณีนี้ผมใช้
civicrm_41.mysql
ไฟล์เดียว สำหรับไฟล์ข้อมูลตัวอย่าง civicrm_generated.mysql พบว่าเกิดปัญหา SQL Error ก็เลยข้ามไป
/PATH/drupal/modules/civicrm/civicrm.settings.php.sample
ในไดเรคทอรี CiviCRM ไปเป็น
/PATH/drupal/sites/default/civicrm.settings.php
ในไดเรคทอรี sites ของ Drupal อย่าลืมเปลี่ยนนามสกุลด้วย
/etc/php5/apache2/php.ini
แล้วเริ่มการทำงานของ Apache ใหม่อีกครั้ง โดยสั่ง
apache2ctl restart
ความรู้สึกหลังติดตั้งเสร็จก็เหมือนพี่บัง คือมันยากไป คอนฟิกเยอะเกินไป ขนาดผมลง Drupal มานับครั้งไม่ถ้วนยังต้องเปิดคู่มือทำตามยิกๆ แล้วถ้าเอาไปลงตามหน่วยงานบรรเทาสาธารณภัยต่างๆ (ที่ไม่มีผู้เชี่ยวชาญไอที) คงลำบากทีเดียว
ส่วนตัวโปรแกรมนั้น เท่าที่ลองดูแป๊บๆ เรื่อง Unicode ยังไม่เจออะไรผิดปกติ แต่ก็เจอปัญหาของตัวโปรแกรมกับภาษาไทยแล้วคือการ sorting โปรแกรมใช้อักขระตัวแรกสุดมา sort โดยไม่สนใจว่าจะเป็นพยัญชนะหรือสระนำ (เช่น ไ โ ใ เ) ตรงนี้ต่างกับวิธีปกติที่เราจะสนใจพยัญชนะตัวแรก
อย่างนามสกุลผม "ไพรีพ่ายฤทธิ์" แทนที่จะใช้ "พ" เป็นตัว sort มันก็จะกลายเป็น "ไ" แทน อย่างนี้ล่ะครับ ปัญหานี้ใน MediaWiki (Wiki ที่ใช้ใน Wikipedia) แก้โดยการให้ผู้ใช้ระบุตัวที่ต้องการเองได้ ไม่รู้ของ CiviCRM มีทางออกซ่อนอยู่หรือเปล่า
พรุ่งนี้มาลองเล่นต่อ
ถ้าเป็นเมื่อก่อนสมัยที่เขียน Clipper บน Dos ก็จะเขียน function ในการ Sort ภาษาไทย
หาตัวที่เป็นพยัญชนะแล้วก็แยกไปเก็บอีก field นึง โดยคน input ไม่จำเป็นต้องมาสนใจตรงนี้ function ที่เขียนจะเป็นตัวจัดการเอง
ปัญหาน่าจะอยู่ใน MySQL ครับ ไม่ sensitive กับ locale
ดูประเด็น 1.4, 1.6 และ 1.8 ใน PHP Developers Meeting เดือน พ.ย. 2548
มือใหม่ข่วยทดสอบนะครับ :)
ลองเล่นดูแล้ว เห็นด้วยกับคุณ mk ทั้งหมด
การเรียงอักขระ ไม่ใช่ปัญหาของ mysql แต่เป็นปัญหาของโมดูลใน CiviCRM เอง
คงต้องตามไปแก้ที่ซอร์สโค้ด
( ปรับการเรียงใน mysql เป็น TIS-620 แล้ว
การเรียงใน phpmyadmin เรียงถูก แต่ใน CiviCRM เรียงผิด )
debian: etch
mysql: 5.0.20
apache2: 2.0.55
drupal: 4.7.1
php: 5.1.2
Thanks for post. Very useful.
ด้วยความเคารพนะครับ ผมอาจะเห็นไม่ค่อยจะตรงสักหน่อย ตรง ลงยากใหม สำหรับผมจริง ๆ ไม่ถือว่ายากนะ ค่อนข้างปกติ แต่มันแปลก ๆ ตรงต้องให้เลือก version นี่แหละ นอกนั้นก็เหมือน cms ทั่ว ๆ ไปนะ
โดยส่วนตัวแล้วทำ CRM อยู่ และก็ค่อนข้างชอบ Civi เอามาก ๆ เพราะผมมองว่ามันเป็น CRM แบบใหม่ที่เกิดมาเพื่อน Social Network และ Community โดยเฉพาะ ซึ่งมีจุดแข็งแตกต่างจาก CRM ตัวอื่น ๆ ข้องข้างมาก