|
Как реализовать изменение документа только по текущей дате | ☑ | ||
---|---|---|---|---|
0
Oleg102
01.08.12
✎
09:37
|
Всем привет! Хочу сделать проверку документа "РеализацияТоваровИУслуг" что бы изменять возможно было только по текущей дате. Вчерашняя дата уже была не доступна для редактирования и только просмотр. Все пользователи с полными правами, в программе уже много чего изменилось, доработки сплошь и рядом. Сделал отдельную роль "РедактированиеДокумента" Теперь хочу вставить код в модуль формы "РеализацииТоваровУслуг" в процедуру "передОткрытием" что бы делалась проверка если стоит галочка на роли пользователя "РедактированиеДокумента" тогда возможно изменение документа иначе только просмотр. В программировании пока не силен, учусь. Как это вообще можно сделать, наставьте хотя бы в правильный путь. Спасибо.
|
|||
1
Shurjk
01.08.12
✎
09:39
|
(0) Неоперативное провдение запретить не подходит - обязательно надо свой велосипед изобрести?
|
|||
2
Maxus43
01.08.12
✎
09:39
|
>>Все пользователи с полными правами
фэйспалм бардак разгребайте и всё уже в типовых придумано, >>изменение документа только по текущей це право только на оперативное проведение |
|||
3
Anastasiy
01.08.12
✎
09:42
|
ДатаПроведения = ТекДата;
|
|||
4
Oleg102
01.08.12
✎
09:42
|
Просто проблема в чём. Всем нужны полные права. даёшь другие права база не запускается без роли пользователя. т.е. надо еще добавить роль пользователя, а она вся ограничена на уровне записи. Нам это не подходит. тогда может подскажите как запустить бузу с другими ролями без роли "пользователь"
|
|||
5
Anastasiy
01.08.12
✎
09:43
|
Если ТекДата Тода
Модифицированность Истина; Что-то вроде того |
|||
6
Anastasiy
01.08.12
✎
09:44
|
На модифицированность запрет выставь
|
|||
7
Maxus43
01.08.12
✎
09:44
|
(4) дак выключите ограничение на уровне записи, в настройках, если оно не надо... где проблема то?
|
|||
8
Shurjk
01.08.12
✎
09:44
|
(4) Советую привлечь нормального специалиста.
|
|||
9
izekia
01.08.12
✎
09:46
|
(2) в типовых это нифига не работает, приходится их править, чтобы можно было в той же БП работать без полных прав.
|
|||
10
Anastasiy
01.08.12
✎
09:48
|
Ну, да тут у нормальмального специалиста диск сцепления поменяли, теперь при нажатии на тормоз - поворотник выключается, а так согласна с (8)))))
|
|||
11
Shurjk
01.08.12
✎
09:51
|
(9) Все там работает.
|
|||
12
Oleg102
01.08.12
✎
09:55
|
Так ладно. Где убрать эти ограничения на уровне записи для пользователя. Или я например хочу запустить базу с роль "менеджер по продажам" как мне это можно сделать на ставя еще дополнительно роль "пользователь"???
|
|||
13
Oleg102
01.08.12
✎
09:59
|
Бред блин какой. Зачем все так было усложнять. Надо роль поставил и где надо поставил галки. Зачем такие сложности, все гениально должно быть просто. А это вечные проблемы с этой 1С. То так ей не то то эдак. противная программа =)
|
|||
14
Shurjk
01.08.12
✎
09:59
|
(13) Бросай ее. Зачем связался.
|
|||
15
Shurjk
01.08.12
✎
10:00
|
(12) создай группу пользователей для которых будет доступно ВСЕ и добавь ее для всех пользователей.
|
|||
16
Oleg102
01.08.12
✎
10:02
|
Да не хотел связываться даже. Работаю системным администратор в частной конторке ООО. Свою работу знаю и разбираюсь, а тут напрягают с этой 1С. Никогда нигде не учился, приходится учиться самому. Некому даже объяснить даже элементарные вещи. Приходится сложно. Вот лазаю по форумам и читаю где что найду, пробую.
|
|||
17
SachoZ
01.08.12
✎
10:03
|
(12) > Или я например хочу запустить базу с роль "менеджер по продажам" как мне это можно сделать на ставя еще дополнительно роль "пользователь"???
Если ты про типовую то общем модуле "ПолныеПрава" добавить: ИЛИ РольДоступна("МенеджерПоПродажам"): Функция ЕстьДоступныеПраваДляЗапускаКонфигурации() Экспорт Возврат РольДоступна("ПолныеПрава") ИЛИ РольДоступна("Пользователь"); КонецФункции |
|||
18
Maxus43
01.08.12
✎
10:04
|
роль пользователь нужна.
Ограничение на уровне записей выключается в сервис - "доступ на уровне записей" (точно не помню), там галку снять |
|||
19
Oleg102
01.08.12
✎
10:04
|
Спасибо большое SachoZ. Сейчас попробую
|
|||
20
Serg_1960
01.08.12
✎
10:05
|
Роль "Пользователь" - обязательная роль, по мнению разработчиков, для работы пользователя. Она не должна "мешает" ТС установить запрет на неоперативный режим проведения.
|
|||
21
Maxus43
01.08.12
✎
10:05
|
не только "Пользователь" порезан на уровне записей, делать дак нормально, а не меняя типовые механизмы имхо
|
|||
22
izekia
01.08.12
✎
10:06
|
(11) пример привести?
|
|||
23
Oleg102
01.08.12
✎
10:06
|
Мешает почему то. Ни один документ не могу даже создать пишет нет доступа на уровне записи и каюк. поэтому у всех и стоит роль полные права.
|
|||
24
Maxus43
01.08.12
✎
10:07
|
(23) кто-то включил это грёбаное ограничение, выключи... я хз скока раз повторять
|
|||
25
Oleg102
01.08.12
✎
10:08
|
сейчас попробую выключить
|
|||
26
izekia
01.08.12
✎
10:09
|
(24) с полными правами рлс не работает
|
|||
27
Maxus43
01.08.12
✎
10:11
|
||||
28
Maxus43
01.08.12
✎
10:12
|
(26) понятно, потому и надо выключить его РЛС совсем, раз он не нужен
|
|||
29
SachoZ
01.08.12
✎
10:12
|
(19) Берешь копируешь роль "ПолныеПрава", получится "ПолныеПрава1" переименовываешь их например в "Менеджер", настраиваешь разрешения для этой роли и добавляешь ее в проверку из (17)
|
|||
30
SachoZ
01.08.12
✎
10:15
|
(26) откуда дровишки? На полных правах в тиражных решениях РЛС не прописывают ибо на то они и полные права чтоб безо всяких ограничений, но вот если взять и прописать..
|
|||
31
Oleg102
01.08.12
✎
10:22
|
Сделал так как написал "SachoZ" запустилась база. Убрал галки с документа "РеализацииТоваровУслуг" неоперативное проведение. Документ все равно изменяется по вчерашним датам.
|
|||
32
Stim
01.08.12
✎
10:29
|
эх, начал писать, закрыл. вобщем 3 способа:
1. в модуле формы прописать в ПриОткрытии() ЭтаФорма.Доступность = НачалоДня(дата) = Началодня(ТекущаяДата()) 2. каждый день изменять Границу запрета изменения данных на вчерашнее число. 3. добавить параметрСеанса &текущаяДата, заполнять его в параметрах сеанса текущей датой, добавить новую роль и прописать РЛС к документам хоть и на чтение. |
|||
33
SachoZ
01.08.12
✎
10:32
|
(31) Под кем вошел? Какие роли у этого пользователя, оставь только ему одну роль "Менеджер", т.к. если у него отмечена роль ПолныеПрава и Менеджер то ограничения Менеджера будут перекрыватся отсутствием таковых у ПолныхПрав.
+ Надо для роли менеджер убрать галки с "интерактивное не оперативное проведение", "интеравтивное изменение проведенных", "интерактивная отмена проведения", "интерактивная пометка на удаление"... |
|||
34
Oleg102
01.08.12
✎
10:37
|
Скопировал полные права. назвал другим именем. Поставил в модуль эти права для запуска ИБ. полные права вообще галку убрал. сейчас пробую галки убрать
|
|||
35
Oleg102
01.08.12
✎
10:38
|
с прав на документ
|
|||
36
Oleg102
01.08.12
✎
10:41
|
сделал. Но это закрывает вообще полный доступ на изменение, а нужно что бы текущую дату можно было изменить, а вчерашнюю нет
|
|||
37
SachoZ
01.08.12
✎
10:51
|
(36) правильно по служебке ты снимаешь проводку, менеджер меняет.
Если по Дате тогда либо в РЛС прописать шаблон как в (32) либо в модуле документа добавить проверку: Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) //{Проведение задним числом Если (Дата < НачалоДня(ТекущаяДата()) И НЕ РольДоступна("ПолныеПрава")) Тогда Отказ = Истина; Предупреждение("А проводить то задним числом низзя!"); Возврат; КонецЕсли; //}Проведение задним числом .... КонецПроцедуры Проводить/изменять задним числом сможет только юзер с полными правами. |
|||
38
Соло
01.08.12
✎
11:04
|
а не правильнее ли просто добавить подписку на событие приоткрытии и там всё сделать, не нарушая типовых механизмов?
|
|||
39
Соло
01.08.12
✎
11:05
|
(37) правильнее просто открывать форму только для чтения
|
|||
40
SachoZ
01.08.12
✎
11:10
|
(38) правильнее.
(37) Не правильнее, я могу снять проводку и в списке документов. |
|||
41
Oleg102
01.08.12
✎
11:41
|
Все заработало. Всех благодарю. Особенно SachoZ.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |