|   |   | 
| 
 | v7: Работа в подчиненном справочнике. | ☑ | ||
|---|---|---|---|---|
| 0
    
        Slim747 27.03.20✎ 07:40 | 
        Здравствуйте форумчане.
 Очередная проблемка. Есть справочник Контрагенты у которого в подчинении справочник Договора. У справочника Договора есть в подчинении справочник СрокиПоставкиТМЦ. В нем есть поля Номенклатура - тип Справочник.Номенклатура. И Количество - тип Число. Необходимо чтобы во время интерактивного заполнения справочника СрокиПостакиТМЦ, при заполнении поля Количество, поле Номенклатура заполнялось автоматически значением последнего элемента Номенклатура. Не могу сообразить как это можно выкрутить. И можно ли вообще? | |||
| 1
    
        Kigo_Kigo 27.03.20✎ 07:44 | 
        Что значит - "автоматически значением последнего элемента Номенклатура" ?     | |||
| 2
    
        welwel 27.03.20✎ 07:47 | 
        Если есть код, то можно выбрать элементы в порядке кодов в обратном порядке, первый из них     | |||
| 3
    
        Kigo_Kigo 27.03.20✎ 07:49 | 
        (2) как это ты такое провернешь?
 ПорядокКодов(); Синтаксис: ПорядокКодов() Назначение: Установить порядок выборки элементов справочника по возрастанию кода. Замечание: Метод вызывается до вызова метода ВыбратьЭлементы. Метод можно использовать только для объектов, созданных функцией СоздатьОбъект. | |||
| 4
    
        Voronve 27.03.20✎ 07:50 | 
        (0) Тебе надо при вводе нового элемента получить/передать сортировку становленную в списке справочника.     | |||
| 5
    
        Slim747 27.03.20✎ 07:52 | 
        Что значит - "автоматически значением последнего элемента Номенклатура" ?
 Если справочник СрокиПоставкиТМЦ содержит элементы, то необходимо определить значение номенклатуры последнего элемента. В пределах подчинения справочника конечно. | |||
| 6
    
        Slim747 27.03.20✎ 07:55 | 
        Пробовал обойти подчиненные элементы при помощи УстановитьВладельца().
 Все ОК. Элементы получаю. Получаю и последний. А вот как это найденное значение засунуть в новое значение - вот в этом пока загвоздка. | |||
| 7
    
        welwel 27.03.20✎ 07:55 | 
        "В пределах подчинения справочника"
 Если автонумерация кодов в пределах подчинения, то примерно этими методами СоздатьОбъект ПорядокКодов ОбратныйПорядок ВыбратьЭлементы ПолучитьЭлемент | |||
| 8
    
        welwel 27.03.20✎ 07:56 | 
        (6) редактирование в диалоге или в списке?     | |||
| 9
    
        Slim747 27.03.20✎ 07:57 | 
        ФормаСписка     | |||
| 10
    
        welwel 27.03.20✎ 07:58 | 
        (9) ПриРедактированииНовойСтроки пробовали уже?     | |||
| 11
    
        Slim747 27.03.20✎ 07:59 | 
        Не пробовал.Сейчас попробую.     | |||
| 12
    
        Slim747 27.03.20✎ 08:29 | 
        Процедура ПриРедактированииНовойСтроки()
 Перем п; Спр = СоздатьОбъект("Справочник.Срок"); Спр.ИспользоватьВладельца(Владелец); Спр.ВыбратьЭлементы(); Пока Спр.ПолучитьЭлемент() = 1 Цикл п = Спр.Ном; КонецЦикла; Ном = П; КонецПроцедуры | |||
| 13
    
        Slim747 27.03.20✎ 08:29 | 
        Проканало!
 Элемент добавляется! | |||
| 14
    
        Slim747 27.03.20✎ 08:31 | 
        А если элементов типа справочник.Номенклатура несколько     | |||
| 15
    
        Slim747 27.03.20✎ 08:32 | 
        Т.е 2 поля типа Справочник.Номенклатура.
 Есть ли возможность добавлять последнее значение в конкретное поле? | |||
| 16
    
        Slim747 27.03.20✎ 08:55 | 
        Решил проблему следующим образом.
 Добавил предопределенную процедуру ПриЗаписи() В ней сделал проверку всех полей Количество, которые соответствуют полям Номенклатура. Если Количество = 0 Тогда поле Номенклатура очищаем. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |