powered by simpleCommunicator - 2.0.29     © 2024 Programmizd 02
Map
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Изменение функции
4 сообщений из 4, страница 1 из 1
Изменение функции
    #40116708
Negolash
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Есть функция из пакета представленная ниже , нужно ее переделать так чтобы она выполнялась по джобу и при этом перед апдейтом таблицы (rgrafik )записывала данные с запроса в другую таблицу допустим (rgrafik_log). Мои ковыряния в данной функции не очень успешны, поэтому прошу помощи. Заранее благодарен за любую помощь.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
function ClearTaskDevelopHandGrafik(i_first_line integer default 0,

                                      i_last_line  integer default 0 --

                                      ) return integer is

    cursor v_cur is

      select *

        from (select III.*, b.rn npp

                from (select distinct v.rgrafik_prm,

                                      v.grafik_prm,

                                      g.rgrafik_nomo,

                                      v.KolvoRul,

                                      v.OstRul,

                                      g.rgrafik_status stasutp,

                                      get_status_grafik(v.rgrafik_prm) stRelm,

                                      g.grafik_dw,

                                      g.grafik_nomo,

                                      g.tgrafik_nomo,

                                      v.zdn_prm,

                                      v.rprt_prm,

                                      v.Smotka,

                                      v.Plavka,

                                      v.Partia,

                                      v.Sortament,

                                      v.rprt_tol,

                                      v.rprt_shrn,

                                      v.Marka,

                                      V.rzdn_prm

                        from v_grafik v, rgrafik g

                       where v.rgrafik_prm = g.rgrafik_prm

                         and v.gagr_kod = 102) III,

                     (select rgrafik_prm, rownum rn

                        from (select distinct gr.rgrafik_prm, gr.rgrafik_nomo

                                from v_grafik gr

                               where gr.gagr_kod = 102

                               order by gr.rgrafik_nomo)) b

               where III.RGRAFIK_PRM = b.RGRAFIK_PRM

               order by III.rgrafik_nomo)

       where npp between i_first_line and i_last_line;

  begin

    message_pkg.send_message('api_dev_pkg.ClearTaskDevelopHandGrafik: begin ' ||

                             to_char(systimestamp));

    for v_row in v_cur loop

      if v_row.stasutp = 'ПРИНЯТА К ИСПОЛНЕНИЮ' then

   update rgrafik t

           set t.rgrafik_status  = 'ЗАКРЫТА',

               t.rgrafik_dtclose = sysdate

         where t.rgrafik_prm = v_row.rgrafik_prm;

      end if;

    end loop;

    commit;

 

    return 1;

  exception

    when others then

      message_pkg.send_message('api_dev_pkg.ClearTaskDevelopHandGrafik: exception' ||

                               chr(10) || to_char(systimestamp) || chr(10) ||

                               sqlerrm);

      return sqlcode;

  end;

 

end;
...
Рейтинг: 0 / 0
Изменение функции
    #40116772
SQL*Plus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Negolash,

Приведите текст функции с интервалами в две строки и в три строки.
Тогда, возможно, вам всё станет понятно без наших подсказок.
:-)
...
Рейтинг: 0 / 0
Изменение функции
    #40116803
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чтобы она выполнялась по джобу

Поиск .

перед апдейтом таблицы (rgrafik )записывала данные с запроса в другую таблицу допустим (rgrafik_log)

1. В самой процедуре перед апдейтом insert into log.
2. Триггер на таблицу.
...
Рейтинг: 0 / 0
Изменение функции
    #40116804
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Русские буквы потерялись.
Имелся в виду поиск "dbms_scheduler примеры".
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Изменение функции
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]