Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
22 Янв 2018, 05:34
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Сделать свой подбор  (Прочитано 8086 раз)

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

Оффлайн John46

  • *
  • Сообщений: 28
  • РЕПУТАЦИЯ: 2
  • КПД: 7%
  • Регистрация: 2010-07-16
  • Сайт: 
Добрый вечер! Подскажите с чего начать. Хочу сделать подбор как демо УТ(ну попроще немного). Ничего толком за день не нашел. Сделал форму для подбора:
Процедура ПодборНажатие(Элемент)
ФормаПодбора = Справочники.Материалы.ПолучитьФорму("ФормаПодбора");
ФормаПодбора.РежимВыбора = Истина;
ФормаПОдбора.МножественныйВыбор = Истина;
ФормаПодбора.ЗакрыватьПриВыборе = Ложь;
ФормаПодбора.Открыть();
КонецПроцедуры
А как сделать чтобы при двойном щелчке позиция перескакивала в тч документа?
Дали ссылку на:
Процедура ОбработкаВыбора(ЗначениеВыбора, Источник)

 Если ТипЗнч(ЗначениеВыбора) = Тип("СправочникСсылка.Номенклатура") Тогда
  Строка = Товары.Найти(ЗначениеВыбора,"Номенклатура");
  Если Строка = Неопределено Тогда
     Строка = Товары.Добавить();
     Строка.Товар = Товар;
     Строка.Количество = 1;
  Иначе
     Если Вопрос("Такой товар уже есть (" + СокрЛП(Товар) +
                         ")! Увеличить кол-во?",
                 РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Да Тогда
         Строка.Количество = Строка.Количество + 1;
     КонецЕсли;
  КонецЕсли;
КонецПроцедуры

Но не разобрался - помогите!


Оффлайн crow1983

  • Глобальный модератор
  • *****
  • Сообщений: 438
  • РЕПУТАЦИЯ: 43
  • КПД: 10%
  • Регистрация: 2010-04-26
  • Сайт: 
  • Профессия: Программист 8.1
Строка = Товары.Добавить(); где Товары и есть табличная часть вашего документа.
Преподаватель, программист...и просто хороший человек

Оффлайн crow1983

  • Глобальный модератор
  • *****
  • Сообщений: 438
  • РЕПУТАЦИЯ: 43
  • КПД: 10%
  • Регистрация: 2010-04-26
  • Сайт: 
  • Профессия: Программист 8.1
Предлагаю проще как я сделал:
В форме документа с таб.ч ПереченьНоменклатуры на панели создал кнопку Подбор, далее для нее процедура действия.

Процедура КоманднаяПанель1Подбор(Кнопка)
   ФормаПодбора = Справочники.Номенклатура.ПолучитьФормуСписка( ,ЭлементыФормы.ПереченьНоменклатуры);
   ФормаПодбора.РежимВыбора = Истина;
   ФормаПодбора.ЗакрыватьПриВыборе = Ложь;
   ФормаПодбора.Открыть();
КонецПроцедуры

Далее для табличной части создал обработку выбора:

Процедура ПереченьНоменклатурыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   НоваяСтрока = ПереченьНоменклатуры.Добавить();
   НоваяСтрока.Номенклатура = ВыбранноеЗначение;
   НоваяСтрока.Цена =  РаботаСНоменклатурой.АктуальнаяЦенаПоНоменклатуре(Дата,ВыбранноеЗначение);
    ЭлементыФормы.ПереченьНоменклатуры.ТекущаяСтрока = НоваяСтрока;
КонецПроцедуры

Преподаватель, программист...и просто хороший человек

Оффлайн John46

  • *
  • Сообщений: 28
  • РЕПУТАЦИЯ: 2
  • КПД: 7%
  • Регистрация: 2010-07-16
  • Сайт: 
Спасибо, сейчас попробую

Оффлайн John46

  • *
  • Сообщений: 28
  • РЕПУТАЦИЯ: 2
  • КПД: 7%
  • Регистрация: 2010-07-16
  • Сайт: 
СПАСИБО!!! Работает:
Процедура ПодборНажатие(Элемент)
   ФормаПодбора = Справочники.Материалы.ПолучитьФормуСписка(,ЭлементыФормы.Материалы);
   ФормаПодбора.РежимВыбора = Истина;
   ФормаПОдбора.МножественныйВыбор = Ложь;
   ФормаПодбора.ЗакрыватьПриВыборе = Ложь;
   ФормаПодбора.Открыть();
КонецПроцедуры

Процедура МатериалыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   НоваяСтрока = Материалы.Добавить();
   Сообщить(ВыбранноеЗначение);
    НоваяСтрока.Наименование = ВыбранноеЗначение;
   НоваяСтрока.Объект = ВыбранноеЗначение.Родитель;
   НоваяСтрока.Единицы =  ВыбранноеЗначение.Единицы;
       ЭлементыФормы.Материалы.ТекущаяСтрока = НоваяСтрока;
КонецПроцедуры

А не можешь подсказать как сделать запрос количества?
Если что и без него обойдусь)

Оффлайн crow1983

  • Глобальный модератор
  • *****
  • Сообщений: 438
  • РЕПУТАЦИЯ: 43
  • КПД: 10%
  • Регистрация: 2010-04-26
  • Сайт: 
  • Профессия: Программист 8.1
Сейчас нет времени разбираться. Мой тебе совет посмотреть как это в УТ ДЕЛАЕТСЯ. Я там смотрел. Потом можешь всем рассказать.
Преподаватель, программист...и просто хороший человек

Оффлайн John46

  • *
  • Сообщений: 28
  • РЕПУТАЦИЯ: 2
  • КПД: 7%
  • Регистрация: 2010-07-16
  • Сайт: 
ага, посмотрю. если разберусь, отпишусь.

Оффлайн John46

  • *
  • Сообщений: 28
  • РЕПУТАЦИЯ: 2
  • КПД: 7%
  • Регистрация: 2010-07-16
  • Сайт: 
А как в 1с сделать диалог, такой как вопрос, только с полем для ввода, типа как InputQuery в делфи?

Оффлайн Vit1501

  • ****
  • Сообщений: 360
  • РЕПУТАЦИЯ: 60
  • КПД: 17%
  • Регистрация: 2010-06-05
  • Сайт: 
  • Профессия: Программист 1С
ВвестиЧисло (InputNumber)
Синтаксис:
ВвестиЧисло(<Число>, <Подсказка>, <Длина>, <Точность>)
Параметры:
<Число> (обязательный)
Тип: Число. Имя доступной в модуле переменной. В эту переменную будет помещено введенное число. Начальное значение переменной будет использовано в качестве начального значения в диалоге.
<Подсказка> (необязательный)
Тип: Строка. Текст заголовка окна диалога ввода числа. Может использоваться в качестве подсказки пользователю.
Значение по умолчанию: Пустая строка
<Длина> (необязательный)
Тип: Число. Длина вводимого числа включая дробную часть (символы разделителей не учитываются).
Значение по умолчанию: 0
<Точность> (необязательный)
Тип: Число. Количество знаков в дробной части вводимого числа.
Значение по умолчанию: 0
Возвращаемое значение:
Тип: Булево. Истина - число введено; Ложь - пользователь отказался от ввода.
Описание:
Вызывает диалог для ввода числа.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Пример:
Количество = 1;
Если ВвестиЧисло(Количество, "Введите количество", 10, 2) Тогда
    // обработка введенного количества
КонецЕсли;

Оффлайн Vit1501

  • ****
  • Сообщений: 360
  • РЕПУТАЦИЯ: 60
  • КПД: 17%
  • Регистрация: 2010-06-05
  • Сайт: 
  • Профессия: Программист 1С
или
ВвестиСтроку (InputString)
Синтаксис:
ВвестиСтроку(<Строка>, <Подсказка>, <Длина>, <Многострочность>)
Параметры:
<Строка> (обязательный)
Тип: Строка. Имя доступной в модуле переменной. В эту переменную будет помещена введенная в диалоге строка. Начальное значение переменной будет использовано в качестве начального значения в диалоге.
<Подсказка> (необязательный)
Тип: Строка. Текст заголовка окна диалога ввода строки. Может использоваться в качестве подсказки пользователю.
Значение по умолчанию: Пустая строка
<Длина> (необязательный)
Тип: Число. Длина вводимой строки. Если параметр не указан, то строка неограниченной длины.
Значение по умолчанию: 0
<Многострочность> (необязательный)
Тип: Булево. Определяет режим ввода многострочного текста: Истина - ввод многострочного текста с разделителями строк; Ложь - ввод простой строки.
Значение по умолчанию: Ложь
Возвращаемое значение:
Тип: Булево. Истина - строка введена; Ложь - пользователь отказался от ввода строки.
Описание:
Вызывает диалог для ввода строки.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Пример:
Текст = "";
Подсказка = "Введите текст напоминания";
Если ВвестиСтроку(Текст, Подсказка, 0, Истина) Тогда
    // запомнить текст напоминания
КонецЕсли;


Теги:
 

Как сделать, чтобы поле в документе имело тип "ссылка на поле справочника"?

Автор друганРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 2173
Последний ответ 05 Мар 2017, 14:36
от Igor100500
Добрый день Необходимо на основании типовой конфигурации бухгалтерии сделать обработку, которая будет переносить остатки со счета расчетов 62.01 с одной организации в документ ввода начальных

Автор ZSSРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 288
Последний ответ 18 Авг 2017, 11:57
от ZSS
Как "Наименование" сделать числом

Автор zedikusРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 1824
Последний ответ 24 Авг 2015, 06:26
от cska-fanat-kz
Добрый вечер! Прошу помочь, кто знает, подскажите пож. В счете не выводит грузоотправителя и грузополучаетля. Куда их внести ? Как сделать что бы выводило ? У меня 1с 8.3 редакция 11.1 управление торговлей Спасибо!

Автор Farid GasimliРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 2070
Последний ответ 07 Фев 2016, 14:34
от pavl_vs
1 страница - портрет, 2 страница - ландшафт Подскажите как сделать?

Автор YaposhaРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4686
Последний ответ 05 Апр 2012, 11:37
от Yaposha

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
100 Сообщений
AIFrame
57 Сообщений
alex0402
29 Сообщений
kiksi
24 Сообщений
pavl_vs
24 Сообщений
alexandr_ll
17 Сообщений
andron81_81
16 Сообщений
Norfolk
16 Сообщений
KOI8-R
14 Сообщений
MuI_I_Ika MuI_I_Ika
13 Сообщений

* Кто онлайн

  • Точка Гостей: 293
  • Точка Скрытых: 0
  • Точка Пользователей: 3
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal