วันพุธที่ 18 มิถุนายน พ.ศ. 2557

OpenERP : ProgrammingError: column X does not exist

error ตัวที่สามของคืนนี้

ProgrammingError: column res_partner.last_reconciliation_date does not exist
LINE 1: ..."parent_id",res_partner."notification_email_send",res_partne...

หลังจากที่ผมทำการ uninstall module แล้วเกิดเหตุทำให้ไม่สามารถ login เข้าใช้งานได้ แล้วมี error ดังกล่าว ซึ้งมันฟ้องว่าหา field ที่ชื่อ last_reconciliation ใน table : res_partner ไม่เจอ ผมก็ทำการแก้ไขโดยวิธีง่ายๆคือ ทำการ add column ที่เกิด error เหล่านี้เข้าไปใน table โดยตรง ส่วน data type ผมก็เข้าไปหาใน module ที่อยู่ใน addon ว่ามันเก็บ data type เป็นอะไร

ตัวอย่างนะครับ


หลังจากนั้นก็เข้าไปใน pgAdmin ทำการ connect database แล้วใช้คำสั่ง add columns ต่อไปนี้ครับ

alter table res_partner add column last_reconciliation_date date;

add column ;

หลังจากนั้นเราก็สามารถ login เข้าใช้งานได้ตามปกติ

สำหรับผมเจอฟ้อง error เข้าไป 3 column กว่าจะหาว่า data type เป็นอะไรบ้างเล่นเอาตาลายกันทีเดียว การหาเราควรสังเกตุว่า inherit class ชื่อที่ใกล้เคียงกับ error ที่ฟ้อง


มันก็จะมี field ที่ฟ้องประมาณนี้ครับ



โอเคครับ ขอตัวดูบอลโลก 2014 ก่อนนะครับ

ref :https://answers.launchpad.net/openobject-server/+question/241239
      https://bugs.launchpad.net/openobject-server/+bug/1155102
      http://forum.openerp.com/forum/topic32504.html
      https://doc.openerp.com/v6.1/developer/03_modules_2.html/

OpenERP : Constraint Error You can not have two users with the same login !

หลังจาก Uninstall Module ก็เจอหลายเหตุการณ์จริงๆ แก้ไขเรื่อง ClientWidget is null ไปแล้วก็มาเจอว่าไม่สามารถ Install บาง Module กลับไปได้ มันจะฟ้องเราว่า มี User 2 คน login อยู่ในเวลาเดียวกัน

วิธีแก้ไข : ให้เข้าไปที่ pgAdmin จากนั้น connect ไปที่ database ของเรา

ใช้ sql : select * from res_user;

จากนั้นกด F5


ให้ทำการลบ user ที่ระบบสร้างขึ้นเองครับ

delete from res_users
where login = 'portaltemplate';

จากนั้นให้ทำการ login เข้าใช้งาน OpenERP ใหม่ แล้วทำการไปแก้ไขการ Re-Install ใน Setting อีกที เท่านี้ Error : Constraint Error  You can not have two users with the same login ! ก็จะหมดไปครับ

OpenERP : TypeError: ClientWidget is null

สำหรับใครที่เจอเหตุการณ์  TypeError: ClientWidget is null  ก็ไม่ต้องตกใจนะครับ
ให้เราคลิกขวาแล้ว Open New Tab เพื่อไป Re-Install Module ใหม่ แค่นี้เราก็สามารถเข้าใช้งาน OpenERP ได้ตามปกติครับ 

ปล.ผมเจอบ่อยมาเวลาผม Uninstall Module

Ref:http://stackoverflow.com/questions/18122538/openerp-facing-typeerror-clientwidget-is-null