CftClub.ru
Клуб специалистов ЦФТ-Банк

Запуск операции под пользователем, отличным от текущего
На страницу Пред.  1, 2
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
dnk_dz
Эксперт
Резидент CftClub
Совладелец


Вступление в Клуб: 19.09.2007
СообщениеПн Июн 15, 2009 09:08    Ответить с цитатой
Полезность: Нет оценки
У меня работает так в операции по job'у. Проблем нет.

Код:
...
begin
  prev_user := STDLIB.USER_ID;
  STDLIB.USER_ID := new_user;
  ::[TRC].[INI].trc_set_var_current;

  -- Далее создаются платежные документы
  -- и проводятся от установленного пользователя, в т.ч. и
  -- пользователя другого филиала
  ...
  STDLIB.USER_ID := prev_user;
  ::[TRC].[INI].trc_set_var_current;
  -- Далее работаем от текущего пользователя
  ...
exception when others then
  -- По ошибке тоже возвращаем пользователя на базу
  STDLIB.USER_ID := prev_user;
  ::[TRC].[INI].trc_set_var_current;
  ...
end; 
Pelemeshka
Участник
Неподтвержденный


Вступление в Клуб: 26.10.2015
СообщениеПн Окт 26, 2015 23:11    Ответить с цитатой
Полезность: Нет оценки
dnk_dz пишет:
У меня работает так в операции по job'у. Проблем нет.

Код:
...
begin
  prev_user := STDLIB.USER_ID;
  STDLIB.USER_ID := new_user;
  ::[TRC].[INI].trc_set_var_current;

  -- Далее создаются платежные документы
  -- и проводятся от установленного пользователя, в т.ч. и
  -- пользователя другого филиала
  ...
  STDLIB.USER_ID := prev_user;
  ::[TRC].[INI].trc_set_var_current;
  -- Далее работаем от текущего пользователя
  ...
exception when others then
  -- По ошибке тоже возвращаем пользователя на базу
  STDLIB.USER_ID := prev_user;
  ::[TRC].[INI].trc_set_var_current;
  ...
end; 


Как это можно применить к BGP или к CIT_ABONENT ?
Alkov
Профи
Неподтвержденный


Вступление в Клуб: 23.09.2010
СообщениеВт Окт 27, 2015 02:20    Ответить с цитатой
Полезность: Нет оценки
Pelemeshka пишет:
dnk_dz пишет:
У меня работает так в операции по job'у. Проблем нет.

Код:
...
begin
  prev_user := STDLIB.USER_ID;
  ...
end; 


Как это можно применить к BGP или к CIT_ABONENT ?


А что такого особенного в обработчике CIT_ABONENT , обычная операция, меняете как вам надо...
Pelemeshka
Участник
Неподтвержденный


Вступление в Клуб: 26.10.2015
СообщениеВт Окт 27, 2015 10:17    Ответить с цитатой
Полезность: Нет оценки
Error: Exception in [BGP]::STARTER (Филиал пользователя, запустившего процесс (000 не совпадает с филиалом экземпляра (077))
Матвеев Евгений
Профи
Неподтвержденный


Вступление в Клуб: 31.01.2012
СообщениеВт Окт 27, 2015 10:27    Ответить с цитатой
Полезность: Нет оценки
Pelemeshka пишет:
Error: Exception in [BGP]::STARTER (Филиал пользователя, запустившего процесс (000 не совпадает с филиалом экземпляра (077))


Так написано ж в чем дело... пытаетесь документ по одному филиалу провести пользователем на другом филиале

Вы должны проводить документы по филиалам пользователями данных филиалов

Должна быть таблица соответствия... в коде(Это Bad) или в своем справочнике (Это Good)


Для тестов можете фильтр по любому филиалу сделать, "схардкодить" в обработке статического пользователя данного филиала и всё должно провестись... Как то так
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
На страницу Пред.  1, 2
Страница 2 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru