Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
18 Июн 2021, 07:43
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
МультиВход
 
collapse

Автор Тема: Добавление кнопки "Подбор" в табличную часть  (Прочитано 12340 раз)

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

Оффлайн r-try

  • *
  • Регистрация: 2012-03-11
  • Сообщений: 14
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
Добрый день. Понадобилась база для ведения не большого учета оборудования. Решил написать сам на 1с, заодно разобрать что к чему. Возникла проблема при добавлении кнопки "Подбор" в табличной части документа. Не работает, форма выбора открывается, но строка с номенклатурой не добавляется. Понятно что где-то накосячил, что с наскока нельзя делать, но вот так получилось :)
код
// отрабатываем подбор
&НаКлиенте
 Процедура Подбор(Команда)
ПараметрыФормы = Новый Структура ("ЗакрыватьПриВыборе", Истина);
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыФормы, Элементы.СписокОборудования);
 КонецПроцедуры
 // отрабатываем подбор
&НаКлиенте
 Процедура СписокОборудованияОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Сч =  проверкаНаличия(ВыбранноеЗначение);

Если Сч = 0 Тогда
Элементы.СписокОборудования.ДобавитьСтроку();
Элементы.СписокОборудования.ТекущиеДанные.Номенклатура = ВыбранноеЗначение;
КонецЕсли
 КонецПроцедуры
         // отрабатываем подбор
 &НаСервере
Функция проверкаНаличия(ВыбранноеЗначение)
Сч = 0;
Для каждого Строч Из Объект.СписокОборудования Цикл
Если Строч.Номенклатура = ВыбранноеЗначение тогда
Строч.Количество = Строч.Количество + 1;// Если товар уже есть - то просто приплюсуем его;
Сч = 1;
КонецЕсли;
КонецЦикла;
Возврат Сч;
КонецФункции


Оффлайн vitasw

  • *****
  • Регистрация: 2015-02-10
  • Сообщений: 2597
  • РЕПУТАЦИЯ: 317
  • КПД: 12%
  • Профессия: Программист 1С
Так а что форма подбора возвращает?

Оффлайн Artjomrgv

  • ***
  • Регистрация: 2014-02-25
  • Сообщений: 143
  • РЕПУТАЦИЯ: 12
  • КПД: 8%
  • Профессия: Консультант 1С
Добрый день. Понадобилась база для ведения не большого учета оборудования. Решил написать сам на 1с, заодно разобрать что к чему. Возникла проблема при добавлении кнопки "Подбор" в табличной части документа. Не работает, форма выбора открывается, но строка с номенклатурой не добавляется.
[/code]

Я конечно "сварщик не настоящий". Тебе здесь опытные программисты напишут вариант лучше. Но на всякий случай попробуй вот. У меня работает.
//
&НаКлиенте
Процедура Подбор(Команда)
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора",,Элементы.Номен)
КонецПроцедуры

&НаКлиенте
Процедура НоменОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   
Для Каждого Элемен из Объект.Номен Цикл

Если Элемен.Номенклатура=ВыбранноеЗначение Тогда
Элемен.Количество=Элемен.Количество+1  Иначе
КонецЕсли
КонецЦикла;
Элемент=0;    
Для Каждого Элемен из Объект.Номен Цикл
    Если Элемен.Номенклатура = ВыбранноеЗначение Тогда Элемент=Элемент+1
КонецЕсли
    КонецЦикла;
   Если Элемент=0  Тогда
    Элементы.Номен.ДобавитьСтроку();
    Элементы.Номен.ТекущиеДанные.Номенклатура=ВыбранноеЗначение;
КонецЕсли
КонецПроцедуры
[/quote]

Оффлайн r-try

  • *
  • Регистрация: 2012-03-11
  • Сообщений: 14
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
Добрый день. Понадобилась база для ведения не большого учета оборудования. Решил написать сам на 1с, заодно разобрать что к чему. Возникла проблема при добавлении кнопки "Подбор" в табличной части документа. Не работает, форма выбора открывается, но строка с номенклатурой не добавляется.
[/code]

Я конечно "сварщик не настоящий". Тебе здесь опытные программисты напишут вариант лучше. Но на всякий случай попробуй вот. У меня работает.
//
&НаКлиенте
Процедура Подбор(Команда)
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора",,Элементы.Номен)
КонецПроцедуры

&НаКлиенте
Процедура НоменОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   
Для Каждого Элемен из Объект.Номен Цикл

Если Элемен.Номенклатура=ВыбранноеЗначение Тогда
Элемен.Количество=Элемен.Количество+1  Иначе
КонецЕсли
КонецЦикла;
Элемент=0;    
Для Каждого Элемен из Объект.Номен Цикл
    Если Элемен.Номенклатура = ВыбранноеЗначение Тогда Элемент=Элемент+1
КонецЕсли
    КонецЦикла;
   Если Элемент=0  Тогда
    Элементы.Номен.ДобавитьСтроку();
    Элементы.Номен.ТекущиеДанные.Номенклатура=ВыбранноеЗначение;
КонецЕсли
КонецПроцедуры
[/quote]

Все также :( Форма выбора открывается, тыкаю номенклатуру, форма закрывается, в табличной части документа пусто. не добавляется.

Оффлайн Artjomrgv

  • ***
  • Регистрация: 2014-02-25
  • Сообщений: 143
  • РЕПУТАЦИЯ: 12
  • КПД: 8%
  • Профессия: Консультант 1С
А в событиях формы процедура указана.

Оффлайн r-try

  • *
  • Регистрация: 2012-03-11
  • Сообщений: 14
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
А в событиях формы процедура указана.

Эврика, код переписывал несколько раз, там и пропало указание процедуры. СПС!


 

Как настроить видимость дополнительных реквизитов по отдельности"

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

Ответов: 1
Просмотров: 5562
Последний ответ 13 Мая 2015, 10:25
от StaFF StaFF
Для контрагента в договоре установлен вариант ведения взаиморасчетов "По заказам

Автор DDDРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 5051
Последний ответ 25 Ноя 2008, 10:33
от DDD
Ошибка в 1С 8.3 Бух-я "Индекс находится за границами массива. ПОМОГИТЕ!!!!

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

Ответов: 1
Просмотров: 2296
Последний ответ 04 Фев 2018, 18:36
от LexaK
Бесплатная конференция «Отчетность за I полугодие: актуальные вопросы подготовки и требования законодательства"

Автор mixqnРаздел Мероприятия

Ответов: 0
Просмотров: 2260
Последний ответ 15 Июн 2014, 18:16
от mixqn
Ошибка "Поле объекта не обнаружено (Материал)

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

Ответов: 4
Просмотров: 7039
Последний ответ 04 Мар 2015, 11:35
от Danonya

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

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

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


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

* Реклама

* Поиск

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

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

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

LexaK
69 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
67 Сообщений
neek666
33 Сообщений
antoneus antoneus
31 Сообщений
Ивашка
25 Сообщений
KATERINA 861
18 Сообщений
Алексей_1985_06
17 Сообщений
SSC
13 Сообщений
alexandr_ll
12 Сообщений
BuhRust
10 Сообщений

* Кто онлайн

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

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

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

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

Поиск