На мой взгляд, здесь неправильно выбран сам подход к разграничению прав доступа...
Не зная задачу - трудно судить правильный или не правильный использовался подход. В моей практике часто возникает необходимость дать пользователю доступ к в счетам своего филиала, а чужие - скрыть. Предложенным Вами методом (отдельные счета и кассы для "секретных" и "не секретных" операций) этот вопрос не решить, т.к. у каждого пользователя будут свои видимые и невидимые счета - что и есть суть РЛС.
Это я понимаю. Вопрос в том, можно ли его использовать внутри самих запросов РЛС, т.е. построение РЛС рекурсивно. Например: у меня есть Справочник.Контрагенты, в котором РЛС разрешены некоторые записи (пусть по какому-то сложному правилу, в котором я не хочу разбираться) Могу ли я в правилах РЛС для документа написать
ВЫБРАТЬ РАЗРЕШЕННЫЕ Т ИЗ Т ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Т2 ПО Т.Контрагент = Т2.Ссылка
У вас в RLS прописан запрет на объекты (справчоники и документы), но не прописан запрет для регистров. Пропишите запрет для регистров по измерениям. Тогда строки с запрещенными элементами не будут попадать в результаты запроса.
Если я правильно понимаю - в данном регистре Измерений нужного типа как раз нет. По-моему в общем виде задача не совсем простая. Пример: Есть регистр, у которого могут быть 2 вида регистраторов. Предположим других измерений нет (только ресурсы) Регистратор1 имеет реквизит Поставщик, типа Контрагенты, по которому есть правила RLS Регистратор2 имеет реквизит Покапатель (все остальное - аналогично) Как прописать правила для регистра? А если регистраторов больше - из каждого копировать правила по каждому реквизиту RLS? А если ограничение касается не одного реквизита регистратора, в 2х, 3х, ... ? А если ограничение на реквизит - по группам доступа (т.е. связь с данными ограничения через 2-3 таблицы БД)? А если... Вы себе представляете запрос RLS к регистру, с учетом проверки вида регистратора? ИМХО тут такие тормоза будут, что лучше вообще не открывать регистр
P.S. Если я правильно понял суть комментария, то использовать РАЗРЕШЕННЫЕ в РЛС все же возможно.
Хотя... как бы это не вызвало зацикливания... Таки надо проверять
ИМХО должно и в обычном работать, если конечно не стоит режим совместимости с 8.1. Хотя тоже не помню - проверял ли... В С-П никаких ограничений на режим работы не написано
В модуле менеджера предопределенная процедура ОбработкаПолученияДанныхВыбора() - там можно полностью переопределить алгоритм поиска. P.S. Если писать универсально - нужно не забыть, что если у элементов установлен отбор - то он передается в Параметры.Отбор
Если я правильно понял суть проблемы - то чтобы для какой-либо области сделать свою ширину колонок нужно эту область (строки) выделить и поменять ширину колонок (мышкой) для выделеных строк. А вот как потом вернуть это назад (сделать во всех областях колонки одинаковыми чтобы выделялись все вместе) - не знаю
ИМХО как раз "при чем". Если система выдает "Объект не найден" то либо он отсутсвует в БД, либо к нему нет доступа (НЕ РАЗРЕШЕН) правами RLS. Так что такой вариант использования был бы очень удобен: а вдруг завтра добавится новое правило запрета в документы-регистраторы (например - по организации или дате)? Тогда все запросы, использующие РЛС рекурсивно, не нужно было бы переписывать. С другой стороны - такая возможность может сильно снижать производительность.
Есть глюк платформы с выводом текста в подвале с програмным использование "Символы.ПС". Натыкался в свое время на версии 8.2.13 или 8.2.14 - возможно этот тот случай (может и до сих пор не побороли).
ЛЕВОЕ СОЕДИНЕНИЕ - значит отберутся только те записи, которые есть в первой объявленной таблице (т.е. таблице "слева"). Вам нужно использовать самую левую таблицу справочника номенклатуры (+ все характеристики и серии, если по ним ведется учет), а к ней уже левым соединением остальные таблицы (включая остатки)
1. О какой стандартной конвертации вы все говорите...
В 7й бухгалтерии в последних релизах "стандартная конвертация" лежит в ExtForms в виде V77Exp.ert и Acc77_80.xml (оба файла - результат работы КД 2). И вызывается из встроенной в конфигурацию обработки ПомощникПереходаНа1CБухгалтерию8 (Сервис / Помощник перехода на 1С:Бухгалтерию 8). В 8ю бухгалтерию полученные данные (xml файл) импортируются встроенной обработкой ПереносДанныхИзИнформационныхБаз1СПредприятия77 (Сервис - Перенос данных из информационных баз 1С:Бухгалтерия 7.7)
Как будет в случае ПУБ-УПП не знаю. Думаю что никак: настроить УПП это не полчаса, как БУ и даже не день - минимум неделя (ИМХО, естественно)...
Хотя может я и ошибаюсь: судя по форумам российские правила перехода ПУБ - УПП существуют, картинки с названиями ПереходС77ХХХХХХ в УПП для Украины присутствуют...
Было бы конечно не плохо)).. но мне бы хватило блок схемы... что к чему ... какие справочники создавать, какие регистры.. и тп..
ИМХО - это и есть "сделать за Вас", пусть и не всю работу, но бОльшую ее часть. Предлагаю поступить немного по-другому: для начала Вы пишите свои мысли по этому поводу, а сообщество здесь критикует их (только не воспринимайте критику исключительно негативно) и дает свои советы.
Fabri, внимательно изучиТЕ закладку Итоги в конструкторе запроса: чтобы использовать обход по группировкам нужно задать поля группировок. Кроме того - детальную выборку нужно инициализировать внутри внешнего цикла, и не от результата запроса, а от предыдущей выборки:
Пока ВыборкаГруппа.Следующий() Цикл ... ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ...
11.10.2012 вышла новая версия мобильной платформы: 8.3.1.21
Цитата
Исправленные ошибки: 1. Возможность запустить приложение на устройствах с локализацией отличной от Русской и Английской 2. Запуск приложения на платформе 4.x
Ой! А ничего, что у Вас нет никакой связи между таблицами и выбираться будет декартово произведение записей (т.е. для каждой записи из первой таблицы будут сопоставлены все записи из второй)? Что касается периодов - то в виртуальной таблице Обороты (или ОстаткиИОбороты) нужно указывать периодичность (см. в конструкторе запросов настройку таблицы) - в Вашем случае наверное Авто или Регистратор.
Встречал, делал - Вам достаточно такого ответа? Нет - конкретизируйте вопрос: что за конфигурация? что контрагент говорит об этом xml файле (если это возможно - прикрепите сам файл)? что Вы хотите получить: готовую обработку, совет, написать за Вас обработку (за деньги)?
Не, так долго гадать можно... Опишите, плиз, структуры данных, участвующих в приведенном запросе. в см - реквизиты Документ.ДокументОплаты, РегистрСведений.ТипЦен с типами данных.
А то пока видится такое решение:
... ИЗ Документ.ДокументОплаты КАК ДокОп ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ТипЦен.СрезПоследних КАК РСТипЦен ПО ДокОп.Тариф = РСТипЦен.ТипЦен И ДокОп.НачалоСеанса МЕЖДУ РСТипЦен.НачалоТарифа И РСТипЦен.ОкончаниеТарифа
Оно, конечно, сильно упрощенное, но жизнеспособное при определенных условиях
Я написал вариант для доработки конфигурации, т.е. что я имел в виду: 1. Фиксируем для себя какой-то параметр (например: __Отбор) 2. Пишем функцию общего модуля, которая этот параметр привяжет к отбору списка формы (естественно - не забываем про проверки чтобы не было вылета при обычном открытии формы). 3. В событии ПриСоздании формы вызываем эту функцию, т.е. изменения в самой форме - добавить одну строку коду. 4. При вызове формы - соответственно заполняем параметр __Отбор.
В принципе то же самое получаем и без изменения формы: 1, 2. - Аналогично 3. Вызываем форму обычным способом 4. Перед открытием формы вызываем нашу функцию с Отбором 5. Открываем форму
А штатными средствами - тоже в свое время не нашел (только равенство)
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!