31.01.2007, 18:18 | #1 |
Участник
|
Обработка накладной с использованием RLS
Описание: Одна закупка приходит на несколько складов. На каждом складе кладовщик по своим строкам обрабатывает "Отборочную накладную".
Задача: Необходимо что бы при обработке Отборочной накладной - обрабатывались только те Строки закупки в которые пришли на Склад1 (зависит от склада) Решение: Доступ на уровне записей настроен на таблицы: Строки закупки/Складская аналитика \ Поле: Склад \ Значение: Склад1 (зависит от склада) Строки закупки - таблица обновлений/Складская аналитика \ Поле: Склад \ Значение: Склад1(зависит от склада) Вопрос: 1) Почему обрабатываются все строки Закупки? 2) На какие таблицы нужно настроить RLS? |
|
31.01.2007, 20:19 | #2 |
NavAx
|
Подход неверный.
1. Пользователь может обработать через пакетную обработку и все ваши RLS не отработают. 2. Если делать, то делать дополнительные настройки в системе - привязать к людям склады, эти настройки использовать в форме обработки что бы они отрабатывали и в пакетном режиме. 3. У вас нет проблем с бизнесс-процессом? Какой документ получают все кладовщики по одной закупке? Копии накладных... 4. Если все таки хотите попробовать как задумали, то попробуйте перекрыть метод \AOT\Classes\PurchFormLetter_PackingSlip.updateQueryBuild() так: X++: void updateQueryBuild() { super(); if (! callerFormDataSource) { if (purchTable) { if (!chooseLines.query().dataSourceTable(tableNum(InventDim))) chooseLines.query().dataSourceTable(tableNum(PurchLine)).addDataSource(tableNum(InventDim)); chooseLines.query().dataSourceTable(tableNum(InventDim)).relations(true); chooseLines.query().dataSourceTable(tableNum(InventDim)).joinMode(JoinMode::InnerJoin); chooseLines.query().dataSourceTable(tableNum(InventDim)).addRange(fieldnum(InventDim, InventDimId)).value(queryNotValue("")); chooseLines.recordLevelSecurity(true); } } } Последний раз редактировалось raz; 31.01.2007 в 20:39. |
|
01.02.2007, 09:00 | #3 |
Участник
|
1. Неможет. (недоступно)
2. "Привязать к людям склады" - это как? 3. Кладовщики Накладных не видят (требование руководства). Приходуют то количество которое физически пришло. (Для отборочных накладных вполне логично). 4. Спасибо. Покажу программистам. |
|