Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
1 ตอบกลับ
4212 มุมมอง

I am creating a view using self.env.cr.execute("""CREATE or REPLACE VIEW %s as (%s)""" % (self._table, self._query( ))).
This query includes a function but when i update it says error near Create Or Replace.

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Hello Adilak,

You can use below code: 

self.env.cr.execute("""CREATE or REPLACE VIEW %s as (%s)""" % (self._table, self._query()))

Moreover, If you want to call function from query then refer below code:

cr.execute(

        """CREATE OR REPLACE FUNCTION l10n_mx_edi_locality() 

            RETURNS trigger AS $locality$

            DECLARE

                new_array text[];

            BEGIN

                new_array := (SELECT regexp_split_to_array(NEW.name, E'--+'));

                NEW.name := new_array[1];

                NEW.state_id := (SELECT res_id FROM ir_model_data

                    WHERE name=new_array[2] and model='res.country.state');

                NEW.country_id := (SELECT res_id FROM ir_model_data

                    WHERE name='mx' and model='res.country');

                RETURN NEW;

            END;

           $locality$ LANGUAGE plpgsql;

           CREATE TRIGGER l10n_mx_edi_locality BEFORE INSERT

               ON l10n_mx_edi_res_locality

               FOR EACH ROW EXECUTE PROCEDURE l10n_mx_edi_locality();

           CREATE TRIGGER l10n_mx_edi_locality BEFORE INSERT ON res_city

               FOR EACH ROW EXECUTE PROCEDURE l10n_mx_edi_locality();

        """)

Regards,




Email:      odoo@aktivsoftware.com  

Skype: kalpeshmaheshwari

   

อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
1
มี.ค. 22
13452
3
ก.พ. 24
5268
SQL Query for many2many แก้ไขแล้ว
13
ก.ค. 24
13459
1
ก.ค. 19
4795
2
มี.ค. 15
3534