AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.11.2014, 12:49   #1  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Все равно не хочет
Старый 20.11.2014, 12:58   #2  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Вот так еще попробуйте :

Цитата:
public void init()
{
Query q;
QueryRun qr;

super();

q = this.queryRun().query();
q.recordLevelSecurity(false);
qr = new QueryRun(q);
this.queryRun(qr);
}
__________________
Best Regards,
Roman
Старый 20.11.2014, 13:04   #3  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Цитата:
Сообщение от RVS Посмотреть сообщение
Вот так еще попробуйте :
Даже добавил clearranges все равно не пашет
Старый 20.11.2014, 13:14   #4  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от vanger Посмотреть сообщение
Даже добавил clearranges все равно не пашет
1. Покажите код, который "не пашет"
2. Наступаем на форму, Ctrl-F3 (запрос формы) - картинку покажите, если не трудно
__________________
Best Regards,
Roman
Старый 20.11.2014, 13:24   #5  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Цитата:
Сообщение от RVS Посмотреть сообщение
1. Покажите код, который "не пашет"
2. Наступаем на форму, Ctrl-F3 (запрос формы) - картинку покажите, если не трудно
http://hdd.tomsk.ru/gallery/jpnyhyks#milutnyz
Старый 20.11.2014, 13:26   #6  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Цитата:
Сообщение от RVS Посмотреть сообщение
1. Покажите код, который "не пашет"
2. Наступаем на форму, Ctrl-F3 (запрос формы) - картинку покажите, если не трудно
Метод init датасорса
public void init()
{
super();
this.query().recordLevelSecurity(false);
table.recordLevelSecurity(false);
table_ds.query().dataSourceTable(tableNum(table)).clearRanges();
}
этот код и прочий код включая то, что было описано выше , в итоге все равно накладываются фильтр по rls
Старый 20.11.2014, 13:34   #7  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Цитата:
Сообщение от RVS Посмотреть сообщение
Вот так еще попробуйте :
RVS попробуй если не сложно опробывать этот код у себя, у меня версия ядра и приложения разная, думаю , что может в этом быть причина...
Старый 20.11.2014, 13:42   #8  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от vanger Посмотреть сообщение
RVS попробуй если не сложно опробывать этот код у себя, у меня версия ядра и приложения разная, думаю , что может в этом быть причина...
У мну нет 2009-й под рукой сейчас.

Цитата:
Сообщение от vanger Посмотреть сообщение
Метод init датасорса
public void init()
{
super();
this.query().recordLevelSecurity(false);
table.recordLevelSecurity(false);
table_ds.query().dataSourceTable(tableNum(table)).clearRanges();
}
этот код
Этот код - не будет работать по определению. У вас уже QueryRun() построился на датасорсе, и ему глубоко плоскопараллельно, что вы там теперь с Query делаете.. из которого он уже построился..

Цитата:
Сообщение от vanger Посмотреть сообщение
и прочий код включая то, что было описано выше , в итоге все равно накладываются фильтр по rls
А вот с этого момента подробнее, пожалуйста.. (с) мой вариант - с подменой QueryRun - пробовали? Не работает? А если в "подмененном" QueryRun clearRanges() сделать - тоже не работает?
__________________
Best Regards,
Roman

Последний раз редактировалось RVS; 20.11.2014 в 13:59.
Старый 20.11.2014, 14:07   #9  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Цитата:
Сообщение от RVS Посмотреть сообщение
У мну нет 2009-й под рукой сейчас.



Этот код - не будет работать по определению. У вас уже QueryRun() построился на датасорсе, и ему глубоко плоскопараллельно, что вы там теперь с Query делаете.. из которого он уже построился..



А вот с этого момента подробнее, пожалуйста.. (с) мой вариант - с подменой QueryRun - пробовали? Не работает? А если в "подмененном" QueryRun clearRanges() сделать - тоже не работает?
пробовал, не работает и clearRanges() делал
Старый 20.11.2014, 14:17   #10  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от vanger Посмотреть сообщение
пробовал, не работает и clearRanges() делал
Ну, я даже и не знаю тогда..
__________________
Best Regards,
Roman
Старый 20.11.2014, 14:19   #11  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от RVS Посмотреть сообщение
Этот код - не будет работать по определению. У вас уже QueryRun() построился на датасорсе, и ему глубоко плоскопараллельно, что вы там теперь с Query делаете.. из которого он уже построился..
В init() датасорса?

Да ладно...))
__________________
Axapta v.3.0 sp5 kr2
Старый 20.11.2014, 14:28   #12  
vanger is offline
vanger
Участник
 
11 / 10 (1) +
Регистрация: 21.08.2007
Цитата:
Сообщение от AndyD Посмотреть сообщение
В init() датасорса?

Да ладно...))
Да кстати quryrun в ините датасорса и не инициализируется еще!
Старый 20.11.2014, 14:38   #13  
RVS is offline
RVS
Сенбернар
Аватар для RVS
Злыдни
 
696 / 130 (6) +++++
Регистрация: 27.02.2003
Адрес: Королев МО
Цитата:
Сообщение от AndyD Посмотреть сообщение
В init() датасорса?

Да ладно...))
Да, точно. Нет там queryRun(), только Query()

Вообще - поискал в коде, там обычно после super() в init() - вызов recordLevelSecurity() для табличной переменной.

Проверять, работает или нет - тупо не на чем, звиняйте. Но мест таких много
__________________
Best Regards,
Roman

Последний раз редактировалось RVS; 20.11.2014 в 14:40.
Старый 20.11.2014, 20:53   #14  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
321 / 893 (30) +++++++
Регистрация: 23.10.2012
Есть уверенность, что именно рейндж задается на инициализации формы/дата сорса, а не на активный курсор?
Так же попробуйте:
table_ds.query().dataSourceName(table_ds.name()).clearRanges();
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Фильтрование записей при "переходе к основной таблице" demID DAX: Программирование 10 18.11.2015 12:52
Переименование полей в одной таблице на основе данных из другой niksen DAX: Программирование 1 14.09.2011 12:34
Что делает RLS с связанными запросами в отчете Prophetic DAX: Программирование 8 12.02.2010 13:35
Gustav: Unsorted, или Записки DAX-дилетанта - II Gustav DAX Blogs 39 20.05.2009 15:34
Проблема с RLS и SecurityKey. oip DAX: Программирование 3 22.12.2005 17:26

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:07.