28.01.2009, 09:28 | #1 |
совсем зелен
|
Запретить редактирование поля...
тут вот какое дело...необходимо что бы поле можно было редактировать пока оно пустое ...но после изменения значения доступ на редактирование закрывался, НО не всем...
я еще не совсем понял работу с конфигурационными ключами...пока только читаю... как это можно реализовать??? |
|
28.01.2009, 09:42 | #2 |
Member
|
Если буквально так, как вы написали, то только программно.
Штатными средствами можно сделать чтобы при создании могли заполнять все, у кого есть доступ, а после создания никто.
__________________
С уважением, glibs® |
|
28.01.2009, 09:43 | #3 |
совсем зелен
|
я так и знал... блин но на имя пользователя проверять как то глупо...
|
|
28.01.2009, 10:23 | #4 |
Member
|
Т.е. вы решили программировать?
Почитайте про security keys.
__________________
С уважением, glibs® |
|
28.01.2009, 10:23 | #5 |
Программатор
|
|
|
28.01.2009, 10:25 | #6 |
совсем зелен
|
|
|
28.01.2009, 10:26 | #7 |
совсем зелен
|
|
|
28.01.2009, 10:29 | #8 |
Программатор
|
Не не не. Там запись целиком. Вам не поможет. Ключ мож на поле повесить? И кому надо раздать права. И программно написать что то типо:
если поле пусто или у юзера ключ включен, то редактировать Последний раз редактировалось Sada; 28.01.2009 в 10:32. |
|
28.01.2009, 10:32 | #9 |
совсем зелен
|
|
|
28.01.2009, 10:34 | #10 |
MCITP
|
...и были правы...
__________________
Zhirenkov Vitaly |
|
28.01.2009, 10:36 | #11 |
Программатор
|
Global::hasSecuritykeyAccess(securitykeynum(BasicSetup), AccessType::Edit);
нашол чота в АОТе \Forms\LedgerTable\Data Sources\LedgerTable\Methods\accountBalance Последний раз редактировалось Sada; 28.01.2009 в 10:39. |
|
|
За это сообщение автора поблагодарили: V777 (1). |
28.01.2009, 10:38 | #12 |
совсем зелен
|
|
|
28.01.2009, 10:38 | #13 |
Axapta
|
1. Конфигурационные ключи тут не при чем.
2. Запретить редактировать поле "для всех" (у кого есть доступ), если оно уже заполнено и разрешить, если не заполнено легко: свойства Allow Edit и AllowEditOnCreate. 3. Ограничить доступ к полю для какой-то группы пользователей легко: через права доступа. Ищите там вашу таблицу и настраивайте доступ. 4. Если вам надо, что бы пока оно пустое, редактировать могли все, а когда заполнено не все (зачем такой изврат?), то создайте свой SecurityKey и проверяйте через hasSecuritykeyAccess в, например, ValidateField и если пользователю нельзя менять поле, выдавайте ошибку. |
|
28.01.2009, 11:24 | #14 |
Member
|
Цитата:
Сообщение от oip
...
если пользователю нельзя менять поле, выдавайте ошибку ... XXX_DS.object(fieldnum(XXX, YYY)).allowedit(hasSecuritykeyAccess(securitykeynum(BasicSetup), AccessType::Edit)); в метод .active() на источнике данных формы. Security key нужно создать свой. В отдельной ветке желательно. Да простит меня Sada за плагиат куска его кода. Наверное, скоро слова "плагиат" и "copy paste" станут синонимами . И все таки. Лучше семь раз подумать над тем, чтобы свести задачу к такому виду, чтобы она решалась стандартным функционалом.
__________________
С уважением, glibs® |
|