|
v7: Пометка на удаление | ☑ | ||
---|---|---|---|---|
0
ZhenyaYa
24.04.12
✎
13:40
|
Добрый день! Ребят, не подскажите какие строки нужно внести в глобальный модуль, чтобы получилось вот так : Процедура пометка на удаление. Если в документе имеется реквизит "АдминПроводка", то, если АдминПроводка = 1, тогда, если текущий юзер = "Админ", то все ок, иначе - предупреждение - "У Вас нет прав на удаление этого документа"
|
|||
1
Wobland
24.04.12
✎
13:42
|
глобальный модуль обязателен?
|
|||
2
NS
24.04.12
✎
13:43
|
(1) А ты можешь отследить пометку на удаление не в глобальном модуле?
|
|||
3
ZhenyaYa
24.04.12
✎
13:43
|
угу
|
|||
4
ZhenyaYa
24.04.12
✎
13:43
|
угу был на первый пост)
|
|||
5
Lionee
24.04.12
✎
13:44
|
а что в правах юзверей нельзя сделать ?
|
|||
6
Wobland
24.04.12
✎
13:44
|
(2) да я и в глобальном не могу ;)
|
|||
7
NS
24.04.12
✎
13:48
|
Процедура ПриУдаленииДокумента(Докум,Режим)
Если докум.вид()="ТвойДокумент" тогда Если докум.ПометкаУдаления()=0 тогда Если докум.АдминПроводка=1 тогда Если ИмяПользователя()<>"Админ" //лучше константу сделать СтатусВозврата(0); Предупреждение("Хрен вам",60); Возврат; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры // ПриУдаленииДокумента() |
|||
8
Волесвет
24.04.12
✎
13:50
|
(7) самое основное в этой процедуре - предупреждение, остальное постолько-поскольку
))) |
|||
9
NS
24.04.12
✎
13:50
|
Процедура ПриУдаленииДокумента(Докум,Режим)
Если глЕстьРеквизитШапки("АдминПроводка", Докум.Вид())>0 тогда Если докум.ПометкаУдаления()=0 тогда Если докум.АдминПроводка=1 тогда Если ИмяПользователя()<>"Админ" //лучше константу сделать СтатусВозврата(0); Предупреждение("Хрен вам",60); Возврат; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры // ПриУдаленииДокумента() |
|||
10
ZhenyaYa
24.04.12
✎
13:53
|
Да, с предупреждением ты погорячился))
Спасибо большое!, сейчас попробую |
|||
11
NS
24.04.12
✎
13:53
|
Есно это дописать в глобальном модуле, в процедуре ПриУдаленииДокумента()
|
|||
12
ZhenyaYa
26.04.12
✎
13:29
|
error:
Если глЕстьРеквизитШапки("АдминПроводка", Докум.Вид())>0 тогда {Глобальный модуль(1164)}: Операции сравнения на больше-меньше допустимы только над значениями совпадающих базовых типов (число, строка, дата) почему это оно? |
|||
13
chief accountant
26.04.12
✎
13:39
|
(12) функция глЕстьРеквизитШапки присутствует?
|
|||
14
ZhenyaYa
26.04.12
✎
13:46
|
Да, вот
Функция глЕстьРеквизитШапки(ИмяРеквизита, ВидДокумента) Экспорт Перем Реквизит; Если (ПустоеЗначение(ВидДокумента) = 1) ИЛИ (ПустоеЗначение(ИмяРеквизита) = 1) Тогда Возврат Нет; КонецЕсли; Реквизит=Метаданные.Документ(ВидДокумента).РеквизитШапки(ИмяРеквизита); Возврат ?(Реквизит.Выбран()=1, Да, Нет ); КонецФункции //глЕстьРеквизитШапки |
|||
15
Он
26.04.12
✎
13:48
|
(14) Ну и?
|
|||
16
chief accountant
26.04.12
✎
13:49
|
(14) Мде, шедеврально
|
|||
17
NS
26.04.12
✎
13:50
|
Если глЕстьРеквизитШапки("АдминПроводка", Докум.Вид())=Да тогда
|
|||
18
NS
26.04.12
✎
13:50
|
Пошел третий день внедрения запрета пометки на удаление :)
|
|||
19
chief accountant
26.04.12
✎
13:52
|
(18) Админ в отпуске по ходу, так что время есть
|
|||
20
Он
26.04.12
✎
13:53
|
А до этого обязательно:
Да = "Ура, товарищи!" |
|||
21
ZhenyaYa
26.04.12
✎
13:55
|
NS, да нет, скорее третий час, времени не было...ошибка таже
|
|||
22
chief accountant
26.04.12
✎
13:56
|
(21) Кака-така ошибка?
|
|||
23
NS
26.04.12
✎
13:57
|
Чему равны переменные Да и Нет?
|
|||
24
ZhenyaYa
26.04.12
✎
14:17
|
то есть?
|
|||
25
NS
26.04.12
✎
14:20
|
(24) ИМХО - позовите специалиста, ибо конфе осталось жить совсем недолго.
Кто-то её сейчас убъет. Ты бы допустил к своей машине механика, который не знает что такое колесо?! |
|||
26
ZhenyaYa
26.04.12
✎
14:30
|
Да не переживайте вы так, я же хоть и валера, но не совсем...на бекапе учусь
|
|||
27
chief accountant
26.04.12
✎
14:33
|
(26) Никто не переживает, нам пофиг
|
|||
28
aka AMIGO
26.04.12
✎
14:38
|
оч. интересно!.. а что, "валера" это что-то позорное, начиная с этой ветки? :)
|
|||
29
NS
26.04.12
✎
14:39
|
Сделай еще одну функцию в глобальнике
Функция глЕстьРеквизитШапки1(ИмяРеквизита, ВидДокумента) Экспорт Перем Реквизит; Если (ПустоеЗначение(ВидДокумента) = 1) ИЛИ (ПустоеЗначение(ИмяРеквизита) = 1) Тогда Возврат Нет; КонецЕсли; Реквизит=Метаданные.Документ(ВидДокумента).РеквизитШапки(ИмяРеквизита); Возврат Реквизит.Выбран()=1 КонецФункции //глЕстьРеквизитШапки1 И коде приудалении() подставь её. |
|||
30
aka AMIGO
26.04.12
✎
14:39
|
(29)не вынесла душа мастера? :)
|
|||
31
NS
26.04.12
✎
14:50
|
(30) И то с ошибкой написал :)
Функция глЕстьРеквизитШапки1(ИмяРеквизита, ВидДокумента) Экспорт Перем Реквизит; Если (ПустоеЗначение(ВидДокумента) = 1) ИЛИ (ПустоеЗначение(ИмяРеквизита) = 1) Тогда Возврат 0; КонецЕсли; Реквизит=Метаданные.Документ(ВидДокумента).РеквизитШапки(ИмяРеквизита); Возврат Реквизит.Выбран()=1 КонецФункции //глЕстьРеквизитШапки1 |
|||
32
Он
26.04.12
✎
15:13
|
(31) Ещё разок.)
|
|||
33
ZhenyaYa
26.04.12
✎
15:15
|
честно говоря, мне уже стрёмно что то писать, а то опять накормят какушатами :) но все же :
Возврат Реквизит.Выбран()<<?>>=1 {Глобальный модуль(1162)}: Неопознанный оператор Возврат Реквизит.Выбран()=1<<?>> {Глобальный модуль(1162)}: Обнаружено логическое завершение исходного текста модуля |
|||
34
aka AMIGO
26.04.12
✎
15:17
|
пробуй еще и такой вариант:
Функция глЕстьРеквизитШапки(ИмяРеквизита, ВидДокумента) Экспорт Если ПустоеЗначение(ИмяРеквизита) = 1 Тогда Возврат 0; ИначеЕсли Метаданные.ОбщийРеквизитДокумента(ИмяРеквизита).Выбран() = 1 Тогда Возврат 1; ИначеЕсли ПустоеЗначение(ВидДокумента) = 1 Тогда Возврат 0; ИначеЕсли Метаданные.Документ(ВидДокумента).РеквизитШапки(ИмяРеквизита).Выбран() = 1 Тогда Возврат 1; Иначе Возврат 0; КонецЕсли; КонецФункции //глЕстьРеквизитШапки() |
|||
35
Он
26.04.12
✎
15:19
|
(33)
Реквизит=Метаданные.Документ(ВидДокумента).РеквизитШапки(ИмяРеквизита); Возврат Реквизит.Выбран(); |
|||
36
aka AMIGO
26.04.12
✎
15:19
|
(33)вместо
Возврат Реквизит.Выбран()=1 напечатай Возврат Реквизит.Выбран(); |
|||
37
NS
26.04.12
✎
15:20
|
Во меня клинит :(
|
|||
38
aka AMIGO
26.04.12
✎
15:21
|
(37)ерунда это..
ТС должна была догадаться.. раз валера.. :) |
|||
39
chief accountant
26.04.12
✎
15:39
|
(37) А нефиг ТСу код с форума копировать
|
|||
40
Он
26.04.12
✎
15:46
|
(39) Он валера. Ему можно.
|
|||
41
ZhenyaYa
26.04.12
✎
17:22
|
aka AMIGO, NS спасибо, выручили!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |