> > CREATE OR REPLACE FUNCTION users_code_seq() > RETURNS "trigger" AS $$ > BEGIN > > IF (TG_OP = 'INSERT') THEN > UPDATE public.company_seqs SET last_seq = (last_seq + 1) WHERE > company_id = NEW.company_id; > > ELSEIF NEW.code IS NULL THEN > SELECT last_seq INTO code FROM public.company_seqs WHERE > company_id = NEW.company_id ORDER BY last_seq DESC; > > END IF; > > RETURN NEW; > > END; > $$ LANGUAGE plpgsql;
- The command above, does not insert the last_seq into users.code column. And I don't know why. If I comment the line: *ELSEIF NEW.code IS NULL THEN*, the data is inserted into the users.code column. But as the customer can add data into that column, I only insert the last_seq if he/she didn't insert anything. So I need that *ELSEIF NEW.code IS NULL THEN*. - What am I missing? Thanks Lucas