Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 мар 2024, 19:40

Автозаполнение реквизитов на управляемой форме

Автор kot_oo, 17 окт 2013, 12:12

0 Пользователей и 1 гость просматривают эту тему.

kot_oo

&НаСервере
Процедура ВыборЛегковойПриИзменении(Элемент)
   Запрос = Новый Запрос;
   Запрос.Текст =
         "ВЫБРАТЬ
         |   Транспорт.НомерПрицепа,
         |   Транспорт.НомерАвтомобиля,
         |   Транспорт.Водитель.Наименование
         |ИЗ
         |   Справочник.Транспорт КАК Транспорт";
       
   
    Запрос.УстановитьПараметр();
    Результат = Запрос.Выполнить();
    Объект.НомерАвтомобиля(Результат.Выгрузить());
    Объект.НомерПрицепа(Результат.Выгрузить());
    Объект.Водитель(Результат.Выгрузить());
    КонецПроцедуры


Вот Процедура, никак не работает, что тут не так???

Dethmontt

Потому что события кнопок на форме должны вызываться с КЛИЕНТА
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

MuI_I_Ika

&НаСервере
Процедура ВыборЛегковойПриИзменении(Элемент)
   Запрос = Новый Запрос;
   Запрос.Текст =
         "ВЫБРАТЬ
         |   Транспорт.НомерПрицепа,
         |   Транспорт.НомерАвтомобиля,
         |   Транспорт.Водитель.Наименование КАК Водитель
         |ИЗ
         |   Справочник.Транспорт КАК Транспорт
         |ГДЕ Транспорт.Ссылка = &Ссылка";
       
   
    Запрос.УстановитьПараметр("Ссылка",ТранспортноеСредство);
    Результат = Запрос.Выполнить().Выбрать();
    Если Выборка.Количество()>0 Тогда
        Выборка.Следующий();
        Объект.НомерАвтомобиля = Выборка.НомерАвтомобиля;
        Объект.НомерПрицепа = Выборка.НомерПрицепа;
        Объект.Водитель = Выборка.Водитель;
    КонецЕсли;

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

Dethmontt

P.S. То что вы написали, точно работать не будет
Добавлено: 17 окт 2013, 12:59


Цитата: MuI_I_Ika от 17 окт 2013, 12:58&НаСервере
Процедура ВыборЛегковойПриИзменении(Элемент)
Это работает???
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

MuI_I_Ika


kot_oo

Цитата: Dethmontt от 17 окт 2013, 12:59
P.S. То что вы написали, точно работать не будет
Добавлено: 17 окт 2013, 12:59


Цитата: MuI_I_Ika от 17 окт 2013, 12:58&НаСервере
Процедура ВыборЛегковойПриИзменении(Элемент)
Это работает???

Он ругается когда на клиенте, не может опознать Новый Запрос

MuI_I_Ika

Ну я же не знаю что он там в элементе передает.

MuI_I_Ika

Нужно создать процедуру на клиенте и уже оттуда вызывать описанную процедуру.

kot_oo

Цитата: MuI_I_Ika от 17 окт 2013, 13:02
Нужно создать процедуру на клиенте и уже оттуда вызывать описанную процедуру.

Спасибо
Добавлено: 17 окт 2013, 13:04


Цитата: MuI_I_Ika от 17 окт 2013, 12:58
&НаСервере
Процедура ВыборЛегковойПриИзменении(Элемент)
   Запрос = Новый Запрос;
   Запрос.Текст =
         "ВЫБРАТЬ
         |   Транспорт.НомерПрицепа,
         |   Транспорт.НомерАвтомобиля,
         |   Транспорт.Водитель.Наименование КАК Водитель
         |ИЗ
         |   Справочник.Транспорт КАК Транспорт
         |ГДЕ Транспорт.Ссылка = &Ссылка";
       
   
    Запрос.УстановитьПараметр("Ссылка",ТранспортноеСредство);
    Результат = Запрос.Выполнить().Выбрать();
    Если Выборка.Количество()>0 Тогда
        Выборка.Следующий();
        Объект.НомерАвтомобиля = Выборка.НомерАвтомобиля;
        Объект.НомерПрицепа = Выборка.НомерПрицепа;
        Объект.Водитель = Выборка.Водитель;
    КонецЕсли;

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

{Документ.ПутевойЛист.Форма.ФормаДокумента.Форма(321,31)}: Переменная не определена (Выборка)
        Объект.НомерПрицепа = <<?>>Выборка.НомерПрицепа; (Проверка: Сервер)

MuI_I_Ika

Вот эта строка неправильная Результат = Запрос.Выполнить().Выбрать();

должно быть Выборка = Запрос.Выполнить().Выбрать();

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск