Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 июн 2021, 20:29

Выбрать значения в справочник программно

Автор Dirc, 13 фев 2017, 14:30

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

Dirc

Доброго времени суток.
В программировании 1С я новичок, прошу помощи в решении следующий задачи.
Есть форма документа Заправка, в этой форме есть чекбокс рядом с ним есть поля ввода которая ссылается на Справочник ДеталиЧип.
Задача: Когда пользователь ставит галочку в чекбоксе в поле ввода автоматические ставится значения «Чип» из справочника ДеталиЧип (Значения там есть).



Mitay_D

В свойстве Флажка (Чекбокс), вкладка дополнительно - формула, назначаете процедуру, которая будет выполняться при установке/снятии флажка, допустим процедура ИзменениеЗначенияЧекбокса().
далее в модуле пишем.
Процедура ИзменениеЗначенияЧекбокса()
Если "ЗначениеИдентификатора Чекбокса"  = 1 Тогда
спр = СоздатьОбъект("Справочник.ДеталиЧип");
Спр.найтиПокоду("КодВашегоЭлементаСправочника")
ИдентификаторПоляВвода = Спр.ТекущийцЭлемент();
Иначе
ИдентификаторПоляВвода = "";
КонецЕсли;
КонецПроцедуры


Както так.

Dirc

Всё работает (чуть видоизменил):zebzdr::

      //Заполения переключателями-----------------------
        Если ПерЧип=1 Тогда
      Предупреждение("Да");
         СпрСотр = СоздатьОбъект("Справочник.ДеталиЧипы");;
         СпрСотр.НайтиПоНаименованию("Да");
         ДеталиЧип = СпрСотр.ТекущийЭлемент();
      Иначе;
         Предупреждение("Нет");
           ДеталиЧип = "Нет";
      КонецЕсли;
      //---------------------------------------------
Добавлено: 14 фев 2017, 11:37


Столкнулся со следующий проблемой, положения флажка не сохраняется, в связи с этим происходят неудобства.
Пытался программно поставить флажок, но мои способы не работают:
1.
Процедура ПриОткрытии()
  Если ДеталиЧип="Да" Тогда
  ПерЧип = Истина;
  Иначе;
  ПерЧип = Ложь;
  КонецЕсли;
КонецПроцедуры
2.
Процедура ПриОткрытии()
  Если ДеталиЧип="Да" Тогда
  ЭлементыФормы.ПерЧип = Истина;
  Иначе;
  ЭлементыФормы.ПерЧип = Ложь;
  КонецЕсли;
КонецПроцедуры
3.
Процедура ПриОткрытии()
  Если ДеталиЧип="Да" Тогда
  ПерЧип = 1;
  Иначе;
  ПерЧип = 0;
  КонецЕсли;
КонецПроцедуры

Как правильно?:dfbsdfbsdf:

Mitay_D

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

Dirc

Добавляю новый реквизит в документ (1С 7.7) из в предложенных типов значения нет булевой:


Подскажите как добавить реквизит в виде флажка:(

alex0402

Спасибо за Сказать спасибо

Dirc


Рейтинг@Mail.ru Rambler's Top100

Поиск