|
Не могу разобраться... |
☑ |
0
Dampil17
03.05.12
✎
19:46
|
Всем доброго времени суток.
Нужно сделать следующее:
На форме документа есть реквизит тип Булево (по умолчанию стоит Ложь)
Когда определенный пользователь переведет значение в Истина, то должно произойти следующее (в 1С я еще разбираюсь не очень):
&НаКлиенте
Процедура ПередЗаписью(Отказ)
Если Объект.Статус = Истина Тогда
Роль(Отказ);
КонецЕсли;
Объект.СуммаДокумента = Объект.Заказ.Итог("Сумма");
КонецПроцедуры
&НаСервере
Функция Роль (Отказ) Экспорт
Если НЕ РольДоступна("ПолныеПрава") Тогда
Записать(Отказ);
КонецЕсли;
Если НЕ РольДоступна("Администратор") Тогда
Записать(Отказ);
КонецЕсли;
КонецФункции
Подскажите где и что я делаю не так
Заранее спасибо.
|
|
1
Dampil17
03.05.12
✎
20:08
|
Разобрался. Спасибо мне.
|
|
2
0xFFFFFF
03.05.12
✎
20:49
|
(0) пожалуйста. Обращайтесь еще.
|
|
3
trace366
03.05.12
✎
21:45
|
(1) вот всегда бы так было....
|
|
4
hhhh
03.05.12
✎
21:54
|
тут мне одному показалось, что документ запишут все, кроме администратора?
|
|
5
ILM
гуру
03.05.12
✎
22:40
|
(4) ну да, пиши кто хочет )))
|
|
6
Dampil17
14.05.12
✎
07:10
|
Вообще-то документ запишут Только Админ (Это запись директора), а ПолныеПрава - это моя запись. Кто не верит - может проверить.
|
|
7
vmv
14.05.12
✎
08:55
|
(6) я верю, но у меня вопрос
директору приятно, что он Одмин и держит на коленях пользователя с ПолныеПрава?
|
|
8
vmv
14.05.12
✎
08:56
|
+ (7) в (0) блестящий образчик г-кода, так к сведению
|
|
9
hhhh
14.05.12
✎
09:50
|
(6) вы вчитайтесь
Если НЕ РольДоступна("ПолныеПрава") Тогда
то есть все у кого не полные права, все запишут.
|
|
10
Fish
гуру
14.05.12
✎
09:53
|
(9) Причём 2 раза :)))
|
|
11
Dampil17
14.05.12
✎
11:16
|
Сорри. Забыл выложить отредактированную версию кода.
Вот как работает.
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
Если Объект.Статус = Истина Тогда
Роль(Отказ, ПараметрыЗаписи);
КонецЕсли;
Объект.СуммаДокумента = Объект.Заказ.Итог("Сумма");
КонецПроцедуры
&НаСервере
Функция Роль (Отказ, ПараметрыЗаписи) Экспорт
Если НЕ РольДоступна("ПолныеПрава") Тогда
Отказ = Истина;
Сообщить("Изменение документов в закрытом периоде запрещено. Обратитесь к руководству.");
КонецЕсли;
КонецФункции
|
|
12
Defender aka LINN
14.05.12
✎
11:18
|
(11) Какая красноречивая функция - "Роль". Всем заодно сразу понятно, что именно она делает.
|
|
13
Dampil17
14.05.12
✎
11:21
|
За эту базу с нуля босс платит гроши вот и я и делаю на эти гроши.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший