Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как в название документа добавить текст взятый с определенного поля
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
600w
Добрый день!
Business Automation Software for small company. PROF (1.6.21.3)
1С:Підприємство 8.3 (8.3.25.1286)


Есть такая необходимость
документ задание на работу и при сохранении дока надо в название документа дописать нужный параметр с таблицы
Не могу найти где то прописывается
не могли бы подсказать?

andytg
Цитата(600w @ 18.08.25, 18:19) необходимо зарегистрироваться для просмотра ссылки
Не могу найти где то прописывается


модуль менеджера, процедуры ОбработкаПолученияПолейПредставления() и ОбработкаПолученияПредставления()

пример:

// Переопределяет стандартное представление ссылки.
//
Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    Поля.Добавить("Ссылка");
    Поля.Добавить("Дата");
    Поля.Добавить("Номер");
    Поля.Добавить("_СнятиеРезерва");
    Поля.Добавить("Проведен");
    Поля.Добавить("ПометкаУдаления");
    
КонецПроцедуры // ОбработкаПолученияПолейПредставления()

// Переопределяет стандартное представление ссылки.
//
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
    
    Если Данные.Номер = Null Тогда
        Возврат;
    КонецЕсли;
    
    СтандартнаяОбработка = Ложь;
    
    Если Данные.Проведен Тогда
        Состояние = "";
    Иначе
        Если Данные.ПометкаУдаления Тогда
            Состояние = "(удален)";
        ИначеЕсли Данные.Свойство("Проведен") И НЕ Данные.Проведен Тогда
            Состояние = "(не проведен)";
        КонецЕсли;
    КонецЕсли;
    
    ЗаголовокПредставление = ?(Данные._СнятиеРезерва = Истина, "Отмена резервирования", "Резервирование");
    
    Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
        "%1 %2 (%3) %4",
        ЗаголовокПредставление,
        ?(Данные.Свойство("Номер"), ПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать(Данные.Номер, Истина, Истина), ""),
        Формат(Данные.Дата, "ДЛФ=D"),
        Состояние);
    
КонецПроцедуры // ОбработкаПолученияПредставления()


это, кстати, из УНФ как раз и пример (только старой очень)
600w
andytg @ Сегодня, 19:36 необходимо зарегистрироваться для просмотра ссылки ,
спасибо буду смотреть
600w
andytg @ Сегодня, 19:36 необходимо зарегистрироваться для просмотра ссылки ,
нету таких процедур.
а вот в старой унф есть и все отрабатывает.
Есть мысли как мне их найти?)
UmbertoVasyl`ovich
600w @ Сегодня, 22:32 необходимо зарегистрироваться для просмотра ссылки ,
має бути, якщо не видалив хтось. навіть в останніх PROF (2.0.1.2) є
andytg
600w @ Вчера, 23:32 необходимо зарегистрироваться для просмотра ссылки ,

да руками написать smile.gif

это предопределенные процедуры, как, например, ПриСозданииНаСервере(), ПриОткрытии() и т.д.

должны быть

если нету -- создать
600w
спасибо!!
600w
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
    
    Если Данные.Номер = Null Тогда
        Возврат;
    КонецЕсли;
    
    СтандартнаяОбработка = Ложь;
    
    Если Данные.Проведен Тогда
        Состояние = "";
    Иначе
        Если Данные.ПометкаУдаления Тогда
            Состояние = НСтр("ru='(удален)';uk='(видалений)'");
        ИначеЕсли Данные.Свойство("Проведен") И НЕ Данные.Проведен Тогда
            Состояние = НСтр("ru='(не проведен)';uk='(не проведений)'");
        КонецЕсли;
    КонецЕсли;
    
    ЗаголовокПредставление = НСтр("ru='Задание на работу';uk='Завдання на роботу'");
    
    Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
        НСтр("ru='%1 %2 от %3 %4 ';uk='%1 %2 від %3 %4'"),
        ЗаголовокПредставление,
        ?(Данные.Свойство("Номер"), ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(Данные.Номер, Истина, Истина), ""),
        Формат(Данные.Дата, "ДЛФ=D"),
        Состояние)+" "+Данные.ПредставлениеОперации;

КонецПроцедуры

Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    Поля.Добавить("Ссылка");
    Поля.Добавить("Дата");
    Поля.Добавить("Номер");
    Поля.Добавить("ПредставлениеОперации");
    Поля.Добавить("Проведен");
    Поля.Добавить("ПометкаУдаления");

КонецПроцедуры



не отрабатывает - буду дальше копать....
andytg
600w @ Сегодня, 11:08 необходимо зарегистрироваться для просмотра ссылки ,

написано, что "Примечание: Результат обработки события кэшируется для сеанса."

выйти/зайти/почистить кэш пользователя не помогает?

на руборде есть специальная обработка для чистки кешей -- необходимо зарегистрироваться для просмотра ссылки (два батника, чистят локальный профиль текущего пользователя и/или кеши всех пользователей -- незаменимая штука)

andytg
Цитата(600w @ 19.08.25, 11:08) необходимо зарегистрироваться для просмотра ссылки
не отрабатывает - буду дальше копать....

я кажется понял, чего оно у вас не работает
надо не копировать тексты процедур, а добавлять через "процедуры и функции"

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.