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

Нужна очень помощь с написанием списка

Автор vip1987, 09 авг 2017, 16:43

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

vip1987

Доброе время.
Подскажите как сделать такое:
Мне нужно создать справочник Номенклатура с пунктом выбора нескольких значений в одну строку.
Например:
1 Артикул
2 Название
3 Состав (т е в этом пункте надо сделать выборку состава)

Подскажите как это сделать)
Заранее спасибо)

Golickoff

Попробуйте описать проблему другими словами. Я вообще не понял чего вы хотите.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

vip1987

Цитата: Golickoff от 10 авг 2017, 02:12
Попробуйте описать проблему другими словами. Я вообще не понял чего вы хотите.

Форма номенклатуры например такая:
Фио
Дата рождения
Навыки ---> а в нем открывается список навыков которые при выборе появляются в строку Навыки через запятую.

Ну примерно так.

oleg-x

ЦитироватьНавыки ---> а в нем открывается список навыков которые при выборе появляются в строку Навыки через запятую
делаешь табличную часть, в которую будут записываться все навыки сотрудника и создаешь реквизит формы типа строка, в который будет выводится все значения из ТЧ через запятую. У реквизита формы должно быть событие выбора, при котором будет открываться форма для редактирования ТЧ навыков.
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

vip1987

Цитата: oleg-x от 10 авг 2017, 16:46елаешь табличную часть, в которую будут записываться все навыки сотрудника и создаешь реквизит формы типа строка, в который будет выводится все значения из ТЧ через запятую. У реквизита формы должно быть событие выбора, при котором будет открываться форма для редактирования ТЧ навыков.

Я вообще "профессионал" т е так-то новичок и пишу конфигу по книге.
А есть где набросок или пример?

oleg-x

1) Создаешь табличную часть, но не выводишь её на форму.
2) создаешь основную форму и реквизит формы, поле  ввода, тип строка.
3) Создаешь форму (допустим ФормаНавыки).
4) Дальше в реквизите формы, в свойствах поставь галку "кнопка выбора" и в событие реквизита, начало выбора, пропиши этот код.
Процедура НавыкиНачалоВыбора(Элемент, СтандартнаяОбработка)
Навыки = ЭлементыФормы.Навыки.Значение;  //сокращаем путь, чтобы не писать каждый раз.
СтандартнаяОбработка = Ложь;
Форма = ЭтотОбъект.ПолучитьФорму("ФормаНавыки");  //получили форму, где доступна ТЧ для редактирования
Форма.ОткрытьМодально(); //открываем модально, после закрытия формы выполнится остально код, который ниже. Если открывать не модально, код надо переписывать.
КоличествоСтрок = ТЧ.Количество();
//Эту чать, также вставить в событие при открытие основной формы
Навыки = ""; //Очистили значение реквзита, а иначе задублируется представление строки
СЧ = 1;
Для каждого стр из ТЧ Цикл
Если СЧ < КоличествоСтрок Тогда
Навыки = Навыки + стр.Реквизит + ", "; //записываем все значения из ТЧ в одну строку. Если ипользуется справочник, тогда путь будет стр.Реквизит.Наименование
Иначе
Навыки = Навыки + стр.Реквизит + "."; //После последней строчки нам нужна точка, а не запятая.
КонецЕсли;
КонецЦикла;
КонецПроцедуры


данный код написан для обычных приложений, для управляемых надо подправить.
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

vip1987

Цитата: oleg-x от 10 авг 2017, 22:10
1) Создаешь табличную часть, но не выводишь её на форму.
2) создаешь основную форму и реквизит формы, поле  ввода, тип строка.
3) Создаешь форму (допустим ФормаНавыки).
4) Дальше в реквизите формы, в свойствах поставь галку "кнопка выбора" и в событие реквизита, начало выбора, пропиши этот код.
Процедура НавыкиНачалоВыбора(Элемент, СтандартнаяОбработка)
Навыки = ЭлементыФормы.Навыки.Значение;  //сокращаем путь, чтобы не писать каждый раз.
СтандартнаяОбработка = Ложь;
Форма = ЭтотОбъект.ПолучитьФорму("ФормаНавыки");  //получили форму, где доступна ТЧ для редактирования
Форма.ОткрытьМодально(); //открываем модально, после закрытия формы выполнится остально код, который ниже. Если открывать не модально, код надо переписывать.
КоличествоСтрок = ТЧ.Количество();
//Эту чать, также вставить в событие при открытие основной формы
Навыки = ""; //Очистили значение реквзита, а иначе задублируется представление строки
СЧ = 1;
Для каждого стр из ТЧ Цикл
Если СЧ < КоличествоСтрок Тогда
Навыки = Навыки + стр.Реквизит + ", "; //записываем все значения из ТЧ в одну строку. Если ипользуется справочник, тогда путь будет стр.Реквизит.Наименование
Иначе
Навыки = Навыки + стр.Реквизит + "."; //После последней строчки нам нужна точка, а не запятая.
КонецЕсли;
КонецЦикла;
КонецПроцедуры


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

Огромнишее спасибо Вам.... Сегодня буду разбираться и учиться) Если остануться вопросы можно написать будет? Или лучше новую тему открыть?

oleg-x

ЦитироватьЕсли остануться вопросы можно написать будет? Или лучше новую тему открыть?
Если вопрос по данной теме, то пиши сюда же, если совсем другой, то новая тема
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

vip1987

Цитата: oleg-x от 11 авг 2017, 10:26
ЦитироватьЕсли остануться вопросы можно написать будет? Или лучше новую тему открыть?
Если вопрос по данной теме, то пиши сюда же, если совсем другой, то новая тема

Вопрос встал по теме:
А сделав так позднее в поиске по одному из списка навыков программа будет искать номенклатуры в котором есть одно и более из списков навыки?

oleg-x

Как настроишь запрос, так и будет искать.
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

Теги:

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

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

Поиск