Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
1 Antworten
4336 Ansichten

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.

Avatar
Verwerfen
Beste Antwort

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

   

Avatar
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
1
März 22
13515
3
Feb. 24
5366
13
Juli 24
13545
1
Juli 19
4863
2
März 15
3577