8.х Копирование документа

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Alla, 6 май 2008.

  1. TopicStarter Overlay
    Alla
    Offline

    Alla Опытный в 1С

    Регистрация:
    28 дек 2007
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте! Подскажите, пожалуйста. УТ 8.1 10.3. Можно ли в документах убрать действие "копировать". У нас сотрудники новые документы создают копированием других - предыдущих. Это приводит к ошибкам, т.к. они не все данные очищают. Можно ли запретить копирование документа? Помогите, пожалуйста. Срочно нужно. В конфигурации я не нашла как это сделать.
  2. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Насчет запрета копирования - не знаю, но можно посмотреть на ПриКопировании(), кодом очистив нужные реквизиты, обрекая пользователя на ужасные муки их заполнения...
  3. TopicStarter Overlay
    Alla
    Offline

    Alla Опытный в 1С

    Регистрация:
    28 дек 2007
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    26
    А убрать кнопочки с панельки можно вообще? В конфигураторе они не удаляются,т.е. кнопка удаления не активна. Но ведь как-то можно ее убрать.
  4. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Если 8.1 - то можно подписаться на событие ПриКопировании всех документов и очищать реквизиты...
  5. TopicStarter Overlay
    Alla
    Offline

    Alla Опытный в 1С

    Регистрация:
    28 дек 2007
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    26
    Не поняла! Это как подписаться на событие ПриКопировании? Объясните, пожалуйста.
  6. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Нельзя - они привязаны к источнику действий. И даже если их убрать - юзвери будут нажимать чудо кнопку F9. :)

    ПриКопировании()
  7. TopicStarter Overlay
    Alla
    Offline

    Alla Опытный в 1С

    Регистрация:
    28 дек 2007
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    26
    Наши юзвери не знают этой волшебной кнопки. :) Поэтому проблемма была бы решена удалением кнопки с панели.
  8. B@girusss
    Offline

    B@girusss Опытный в 1С

    Регистрация:
    13 сен 2006
    Сообщения:
    102
    Симпатии:
    0
    Баллы:
    26
    Код:
    Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование)
    Если Копирование Тогда
    
    Если Элемент.ТекущиеДанные."ваш реквизит"=истина Тогда
    Предупреждение("Запрещено!");
    Отказ = Истина;
    
    КонецЕсли;
    
    
    КонецЕсли;
    
    КонецПроцедуры
    
    
    Рабочий пример: вешаем на форму списка нужных доков, обязательное условие, что бы проца была указанна в свойствах формы явно!

    P.S.
    Учитесь пользоваться поиском по сайту, подобная тема уже обсуждалась!
  9. TopicStarter Overlay
    Alla
    Offline

    Alla Опытный в 1С

    Регистрация:
    28 дек 2007
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    26
    Я когда вставляю эту процедуру в конфигуратор, мне выдает ошибку :

    Ожидается идентификатор
    Если Элемент.ТекущиеДанные.<<?>>"ваш реквизит"=истина Тогда


    Что делать подскажите, пожалуйста!
  10. B@girusss
    Offline

    B@girusss Опытный в 1С

    Регистрация:
    13 сен 2006
    Сообщения:
    102
    Симпатии:
    0
    Баллы:
    26
    Дело в том что под словосочитанием "ваш реквизит" я имел ввиду реквизит по которому бы происхадил фильтр! Но если вам нужн для всех документов запретить копирование, то тогда уберите если - конец если в центре!

    Более подробно:

    откройте конфигуратор выберите нужный док, откройте в нем форму списка щелкните правой кнопкой мышки на белом поле т е там где обычно у вас отображаются документы, выберите свойства, с правой стороны у вас появится панель свойств, прокрутите ее в самый низ и там найдите надпись на против поля ввода "ПередНачаломДобавления", щелкните с правой стороны этого поля ввода на значке лупы, в результате автоматически будет созданна процедура удалите из нее (ну это по желанию конечно) коментарии "// Вставить содержимое обработчика." а на их место вставте этот код:
    Код:
    Если Копирование Тогда    
    Предупреждение("Запрещено!");     
    Отказ = Истина;                                  
    КонецЕсли;
    
    
    
    Предупреждение("Запрещено!"); // Эта строка не обязательна, просто этим вы сообщите пользователям о невозможности копирования а то иначе они обнажимаются а результата не будет и они не поймут в чем причина! Будут звать админа и говорить что все сломалось и что админ олень....
    в ковычках вы можете разместить любой текст, например вместо запрещено что то более изощреное только если текст будет очень длинным воспользуйтесь методом переноса строк! Пример:

    Код:
    
    Предупреждение("Запре"+Символы.ПС+"щено!"); 
    
    
    
    Результатом в окоше слово будет перенесено и будет 2 строки!
    Ну удачи вам...
  11. TopicStarter Overlay
    Alla
    Offline

    Alla Опытный в 1С

    Регистрация:
    28 дек 2007
    Сообщения:
    150
    Симпатии:
    0
    Баллы:
    26
    Спасибо вам большое! Копировать теперь не дает! B) Но... Выручите меня, пожалуйста, еще раз. Кнопка копирования есть еще и внутри самого документа. Как запретить и там копирование? :unsure:
  12. B@girusss
    Offline

    B@girusss Опытный в 1С

    Регистрация:
    13 сен 2006
    Сообщения:
    102
    Симпатии:
    0
    Баллы:
    26
    Хм... Затрудняюсь лтветить! Попробую конечно что нибудь придумать... Как вариант можно заблокировать всю верхнюю панель добавив в процу ПриОткрытии формы документа следущий код

    Код:
    ЭлементыФормы.ДействияФормы.Доступность = Ложь;
    
    
    Только тогда все кнопки станут недоступными и как решение и этой траблы можно просто нужные кнопки вынести на форму или создать для нех отдельную панель! Честно, не лучший вариант но имеет право существовать!
  13. standvic
    Offline

    standvic

    Регистрация:
    3 янв 2008
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    в Модуле Объекта (Документа)
    Перем Скопирован Экспорт;

    Процедура ПриКопировании(ОбъектКопирования)
    Скопирован=Истина;
    КонецПроцедуры

    Скопирован=Ложь;

    И в модуле формы документа

    Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
    Если Скопирован=Истина тогда
    отказ=Истина;
    предупреждение("Копирование запрещено");
    конецесли;
    КонецПроцедуры;

Поделиться этой страницей