Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Запретить редактирование в справочника

Запретить редактирование в справочника
Я
   Чайник1983
 
23.04.18 - 03:40
Запретить редактирование в справочника "ДолжностиОрганизации" поле "Взносы за занятых на работах с досрочной пенсией" если на должности работают
 
 
   Чайник1983
 
1 - 23.04.18 - 03:42
Проблема то в чем спросите вы) не знаю как установить проверку в должности на ее занятость.
   hhhh
 
2 - 23.04.18 - 04:11
(1) ВЫБРАТЬ
      Сотрудник
    ИЗ
      Справочники.Сотрудники
    ГДЕ
       Сотрудник.Должность = &Должность
   Чайник1983
 
3 - 23.04.18 - 04:51
То что при помощи запроса это понятно, мне больше интересно что дальше?
   VladZ
 
4 - 23.04.18 - 04:54
В процедуру ПриОткрытии добавляем

Если ЕстьСотрудникиСЭтойДолжностью() Тогда
Элементы.ВзносыЗаЗанятыхНаработах.Доступность = ложь;
КонецЕсли;

Функцию ЕстьСотрудникиСЭтойДолжностью() сам напишешь?
   Чайник1983
 
5 - 23.04.18 - 04:57
Думаю да)
   Чайник1983
 
6 - 23.04.18 - 05:53
Не смог функцию написать.
   Чайник1983
 
7 - 23.04.18 - 05:55
Изначально в написании функции и была вся сложность)
   Mankubus
 
8 - 23.04.18 - 05:55
(6) совсем ни одной строчки? В (2) уже написано 90%
   Чайник1983
 
9 - 23.04.18 - 05:58
Функция РаботаютНаДолжности()
    
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    СотрудникиОрганизаций.Должность
        |ИЗ
        |    Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
        |ГДЕ
        |    СотрудникиОрганизаций.Должность = &Должность";
    
    Запрос.УстановитьПараметр("Должность", Должность);    
    Выборка = Запрос.Выполнить().Выбрать();
    
    
    КонецФункции
   Чайник1983
 
10 - 23.04.18 - 05:59
{Справочник.ДолжностиОрганизаций.Форма.ФормаЭлемента.Форма(147)}: Преобразование значения к типу Булево не может быть выполнено
Если РаботаютНаДолжности() Тогда
 
 Рекламное место пустует
   Mankubus
 
11 - 23.04.18 - 06:04
(10) почитай что такое функция, каково её предназначение
   Чайник1983
 
12 - 23.04.18 - 06:19
Если возврат добавить тогда вообще вся функция не работает.
   VladZ
 
13 - 23.04.18 - 06:23
(12) Функция должна вернуть ложь или истина.

На  самом деле задачка очень простая. Если не можешь справиться - подумай еще раз: стоит ли тебе заниматься программированием. Возможно не твое это.
   Aleksey
 
14 - 23.04.18 - 06:26
(9)  А что будет если есть сотрудник наэтой должности, но в другом подразделении, к которому у данного пользователя нет доступа? Т.е. как минимум привилегированный режим нужен

И зачем тебе должность в выборки? Просто "выбрать разрешенные 1 из ..."

ну и возврат не (Выборка.Количество()=0); не помешает
   Чайник1983
 
15 - 23.04.18 - 06:36
(13) Задайте этот вопрос себе когда что то не получается но тяга к этому есть и вы сильно пожелаете о своих словах.
   catena
 
16 - 23.04.18 - 06:54
(12)Что значит "вся функция не работает"?
   Чайник1983
 
17 - 23.04.18 - 08:15
Уже работает функция возвращала "Неопределенно" в этом и была вся проблема

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует