Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Автозаполнение табличного документа , Автозаполнение табличного документа из парамента в справочнике          
burza Подменю пользователя
сообщение 10.11.17, 13:00
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

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

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


Vidocq05 Подменю пользователя
сообщение 10.11.17, 15:38
Сообщение #2

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 214
Из: Сумы
Спасибо сказали: 38 раз
Рейтинг: 0

burza @ Сегодня, 14:00 * ,
Давно не работал с управляемым приложением.
Попробуйте так:
&НаКлиенте
Процедура ПланПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
    Если НоваяСтрока И Не Копирование тогда
        Элемент.ТекущиеДанные.Дата = ТекущаяДата();
        Элемент.ТекущиеДанные.СтатусВыполнения = ПолучитьСтатусСервер();
    КонецЕсли;

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

&НаСервереБезКонтекста
Функция ПолучитьСтатусСервер()
    Возврат Справочники.СтатусВыполнения.НайтиПоНаименованию("В работе");
КонецФункции


Спасибо сказали: burza,

burza Подменю пользователя
сообщение 10.11.17, 15:49
Сообщение #3

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Vidocq05 @ Сегодня, 15:38 * ,
Спасибо помогло)

logist Подменю пользователя
сообщение 11.11.17, 0:40
Сообщение #4

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Помогло, но с точки зрения программирования это не совсем правильно, если у вас один и тот же статус (даже если не один можно хранить их в Соответствии), то каждый раз дергать сервер не имеет смысла, лучше сделать реквизит формы, в который ПриСозданииНаСервере поместить нужное значение, и присваивать его в нужном месте, не вызывая сервер.


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Vofka Подменю пользователя
сообщение 13.11.17, 9:01
Сообщение #5

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13948
Из: Киев
Спасибо сказали: 4514 раз
Рейтинг: 3635.6

logist, зачем так сложно?
Можно разве что вынести получение статуса за пределы цикла:

&НаКлиенте
Процедура ПланПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)

    Статус_ВРаботе = ПолучитьСтатусСервер();

    Если НоваяСтрока И Не Копирование тогда
        Элемент.ТекущиеДанные.Дата = ТекущаяДата();
        Элемент.ТекущиеДанные.СтатусВыполнения = Статус_ВРаботе;
    КонецЕсли;

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

&НаСервереБезКонтекста
Функция ПолучитьСтатусСервер()
    Возврат Справочники.СтатусВыполнения.НайтиПоНаименованию("В работе");
КонецФункции


А вообще может платформа ещё и закеширует значение статуса при первом обращении и далее при проходе цикла на сервер обращаться не будет.

logist Подменю пользователя
сообщение 13.11.17, 18:53
Сообщение #6

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(Vofka @ 13.11.17, 10:01) *
logist, зачем так сложно?

Это не я придумал, посмотри, например УТ3, там создается некий реквизит на форме (а-ля ДополнительныеСвойства), типа Структура, и по ходу работы формы с этим реквизитом работает клиентская часть, и считаю, что это очень удобно - перед открытием формы сгрести туда с сервера всё статичное что может понадобиться, и не создавать кучу лишних процедур СерверБезКонтекста, и т.п.

Цитата(Vofka @ 13.11.17, 10:01) *
вообще может платформа ещё и закеширует значение статуса при первом обращении

Ага, где-то в релизе платформы 8.43, они добавят директиву НаСервереБезКонтекстаПовторноеИспользование smile.gif)


Signature
Личные бесплатные консультации не даю, для этого есть форум!

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 28.03.24, 21:16
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!