Текущее время: Сб, июл 05 2025, 13:53

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Ракурс ведения таблицы, разграничение доступа
СообщениеДобавлено: Ср, апр 19 2006, 09:29 
Гость
Добрый день, господа!

Ситуация следующая.
Есть зависимая таблица.
Нужно ее редактировать.
Сделал редактор через ракурс, пользователь жмет педаль,
вызывает:

call function 'VIEW_MAINTENANCE_CALL'
exporting
action = 'U'
view_name = 'ZELZV_PAR_V1'
tables
dba_sellist = lt_vimsellist.

где lt_vimsellist ограничиваю ключем, пользователь работает только со своими данными.

Проблема, в том, что пользователь редактируя свои строчки блокирует всю таблицу.

Подскажите, пожалуйста, как организовать совместный доступ к ракурсу ведения таблицы.

С уважением, Сергей


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 19 2006, 11:29 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 10:03
Сообщения: 127
Может быть с помощью функций 'ENQUEUE_E****'
'DEQUEUE_E***',
а перед этим в se11 создать объект блокирок на определённые поля?

_________________
В пору рабочую
пашут и ночью!


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 13:23 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
Нет. Объект блокирования создавать не нужно. Он уже создан генератором ведения ракурсов и используется как необходимо.

Дело вот в чем.
Для того, чтобы блокировались лишь те записи, которые необходимо ограничить, необходимо для ключевых полей ракурса указать в поле "Признак ведения для поля ракурса" занчение 'S'. Только в этом случае будет осуществлять блокировка только тех записей, которые переданы в таблице lt_vimsellist.

Цитата:

call function 'VIEW_MAINTENANCE_CALL'
exporting
action = 'U'
view_name = 'ZELZV_PAR_V1'
tables
dba_sellist = lt_vimsellist.



Если же для ключевых полей ракурса значение поля "Признак ведения для поля ракурса" не равно 'S', происходит блокирвока всех записей.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: признак ведения
СообщениеДобавлено: Чт, апр 20 2006, 15:19 
Гость
Уважаемый Sergo!

Подскажите пожалуйста, где это поле - 'признак ведения..', которое нужно поставить в 'S'. Это параметр вызова?:
call function 'VIEW_MAINTENANCE_CALL'

таблицу lt_vimsellist заполняю так:
ls_vimsellist-viewfield = 'ELZVBLNR'.
ls_vimsellist-operator = 'EQ'.
ls_vimsellist-value = ls_elzv_screen-elzvblnr.
append ls_vimsellist to lt_vimsellist.

в типе таблицы vimsellist не вижу похожего поля.

С уважением, Сергей


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, апр 20 2006, 15:58 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
Это такая узенькая колоночка в списке полей ракурса в SE11

_________________
С уважением, Сергей Королев


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 21 2006, 07:08 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
тр. SE11
Вводите имя ракурса
Кнопка Изменить, откроется экран "Словарь: ведение ракурса"
Выбираете закладку "ПоляРакурс"
На этой закладке 4-ая колока слева назвается "П" (Признак ведения для поля ракурса)
Вот ее то и нужно установить в S для ключа ракурса


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 21 2006, 09:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
В 4.7 такой колонки уже не наблюдается.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 21 2006, 14:15 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, окт 18 2004, 12:27
Сообщения: 93
sibrin написал:
В 4.7 такой колонки уже не наблюдается.


Наблюдается, если создавать ракурс ведения, а не ракурс БД.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, апр 21 2006, 14:23 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
Цитата:
В 4.7 такой колонки уже не наблюдается.


Как это не наблюдается.

Мы только что на 4.7 перешли.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Пт, апр 21 2006, 18:06 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
[qoute] Наблюдается, если создавать ракурс ведения, а не ракурс БД. [/qoute]

Точно. Как-то я промахнулся, когда 4.6 и 4.7 сравнивал.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Ракурс
СообщениеДобавлено: Пн, апр 24 2006, 13:56 
Гость
поле нашел, прописал признак ведения на 'S'.
Сделал тестовую прогу, но никакого эффекта я не получил, блокируется совместный доступ.

Сделал следующую ракурс-таблицу:

ZSPD_TEST19_V1 ключ признак ведения
MANDT 'X'
PARNUM NUMC(3) 'X' 'S'
FEVOR CHAR (3)


далее прога, берет ключевое поле, им ограничивает ракурс:

parameters:
kl_P type ZPARNUM.

data:
lt_vimsellist like standard table of vimsellist,
ls_vimsellist type vimsellist.

ls_vimsellist-viewfield = 'PARNUM'.
ls_vimsellist-operator = 'EQ'.
ls_vimsellist-value = kl_P.
append ls_vimsellist to lt_vimsellist.

call function 'VIEW_MAINTENANCE_CALL'
exporting
action = 'U'
view_name = 'ZSPD_TEST19_V1'
tables
dba_sellist = lt_vimsellist.

Что я не правильно сделал?


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 25 2006, 07:28 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
Я еще MANDT в условие отбора добавлял.

То есть перед

Цитата:
ls_vimsellist-viewfield = 'PARNUM'.
ls_vimsellist-operator = 'EQ'.
ls_vimsellist-value = kl_P.
append ls_vimsellist to lt_vimsellist.


писал

ls_vimsellist-viewfield = 'MANDT'.
ls_vimsellist-operator = 'EQ'.
ls_vimsellist-value = sy-mandt.
ls_vimsellist-AND_OR = 'AND'.
append ls_vimsellist to lt_vimsellist.



То есть условие получалось таким:

Code:

CLEAR ls_vimsellist[].

CLEAR ls_vimsellist.
ls_vimsellist-viewfield = 'MANDT'.
ls_vimsellist-operator = 'EQ'.
ls_vimsellist-value = sy-mandt.
ls_vimsellist-AND_OR = 'AND'.
append ls_vimsellist to lt_vimsellist.

CLEAR ls_vimsellist.
ls_vimsellist-viewfield = 'PARNUM'.
ls_vimsellist-operator = 'EQ'.
ls_vimsellist-value = kl_P.
ls_vimsellist-AND_OR = ''.
append ls_vimsellist to lt_vimsellist.



Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: влючил мандант, не помогло
СообщениеДобавлено: Вт, апр 25 2006, 09:51 
Гость
Sergo, Вы за меня весь код написали :D , но не помогло, может в чем -то еще дело?

Включил мандант в код.
Включал/выключал для манданта признак ведения поля ракурса на "S", никаких изменений. Также происходит блокировка на входе в ракурс - 'данные блокированы.......возможен только просмотр.....'


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 25 2006, 12:55 
Гость
Может я не тем вызовом пользуюсь, VIEW_MAINTENANCE_CALL - внутри вызывает:

call function 'VIEW_ENQUEUE'
exporting
view_name = view_name
action = 'E'
enqueue_mode = 'E'
enqueue_range = header-subsetflag
tables
sellist = rangetab

тоесть, вроде как в любом случае блокируется, header-subsetflag пустой передается, также rangetab - пустой передается/возвращается.

Мне в моей задаче, желательно вообще не блокировать записи, пользователей сам бы развел.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 25 2006, 17:52 
Гость
пока решил проблему, обходом блокировок, вызовом на прямую call function 'VIEW_MAINTENANCE'.
Всем большое спасибо за помощь!


Пометить тему как нерешенную
Вернуться к началу
  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB