Добрый день!
Помогите начинающему разработчику 1С. Есть документ Перемещение ОС. В нем нужно добавить поле с вожможностью вода данных ,на ком или какому складе(МОЛ) принадлежит ОС(Тоесть чтобы было поле "Тот кто здал" и "Тот кто принял". При создании нового документа Перемещение ОС, при добавлении Основного средства необходимо чтобы данные на ком(на каком складе) оно числится добавлялись в созданное поле автоматически.
Подскажите метод или пример кода автоматического заполнения. Я Пытаюсь через обработку формы при изменении документа "Перемещение ОС"
подставить в новое поле (созданное мною "на ком числиться") данные из документа "Основные Средства" вкладка "бух учет" из поля "МОЛБУ",но это не реквизит , а переменная в Процедура ЗаполнитьОписания() формы элемента. Как сделать ссылку на конкретный элемент формы другого документа.
Процедура ОСОсновноеСредствоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ос.ТекущиеДанные;
СтрокаТабличнойЧасти.м =Справочники.ОсновныеСредства.ФормаЭлемента. ???????????
КонецПроцедуры
! | http://pro1c.org.ua/index.php?act=announce&id=2: 4, 9 |
jojojoba2, у вас есть табличная часть, в которой вы выбираете основное средство и в этой строке вам надо заполнить колонку значением из выбранного основного средства?
jojojoba2 @ Сегодня, 15:32
,
http://pro1c.org.ua/redirect.php?https://its.1c.ua/
http://pro1c.org.ua/redirect.php?https://stimul.kiev.ua/materialy.htm?a=index_upravlenie_proizvodstvennym_predpriyatiem_dlya_ukrainy
Acid, если вопрос по программированию, причем тут литература по УПП?
Vofka @ Сегодня, 16:03
,
Да, нужно подставить в созданное поле на ком числится основное средство. Как подтянуть данные из регистра.Я пробую запросом но данные не вставляются:
Функция ПолучитьДанныеИзРС(ОС)
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ОС",ОС);
Запрос.Текст = "ВЫБРАТЬ
| МестонахождениеОС.МОЛ
|ИЗ
| РегистрСведений.МестонахождениеОС КАК МестонахождениеОС ";
// получение данных по конкретному ОС
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
КонецФункции
Процедура ОСОсновноеСредствоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ос.ТекущиеДанные;
СтрокаТабличнойЧасти.М = ПолучитьДанныеИзРС(СтрокаТабличнойЧасти.ОС);
КонецПроцедуры
! | http://pro1c.org.ua/index.php?act=announce&id=2: 9 |
jojojoba2 @ Вчера, 16:50
,
Функция ПолучитьДанныеИзРС(ОС)
.....
.....
КонецФункции
Потеряли:
Возврат <Возвращаемое значение>
Ключевое слово, которое завершает выполнение функции и возвращает указанное значение в выражение, в котором используется функция.
В качестве возвращаемого значения может выступать выражение или переменная, значение которого содержит результат обращения к функции.
Возврат <Возвращаемое значение> = 1но значение
Запрос ваш может выдавать множественное значение (может быть > 1).
переделайте запрос на "срез последних".
Запрос условие = ОС???? - "....ГДЕ......" -
Но это плохое решение, так как при изменении ОС, постоянно будет меняться МОЛ. Ответственный - последнее значение по строкам документа может быть различным.
Рискуете получить 2а ответственных "Сдал" - фактически, а подписывает документ один Сдающий.
Всем спасибо!
Вставляю рабочий код, может кому то пригодиться
Функция ПолучитьДанныеИзРС(ОС)
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ОС",ОС);
Запрос.УстановитьПараметр("Дата",Дата);
Запрос.Текст = "ВЫБРАТЬ
| МестонахождениеОСБухгалтерскийУчет.МОЛ
|ИЗ
| РегистрСведений.МестонахождениеОСБухгалтерскийУчет.СрезПоследних(&Дата,ОсновноеСредство = &ОС) КАК МестонахождениеОСБухгалтерскийУчет";
// получение данных по конкретному ОС
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
Возврат Выборка.МОЛ;
КонецФункции
Процедура ОСОсновноеСредствоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.ос.ТекущиеДанные;
СтрокаТабличнойЧасти.М = ПолучитьДанныеИзРС(СтрокаТабличнойЧасти.ОсновноеСредство);
КонецПроцедуры
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua