Как же всё-таки вывести значения реквизита в табличную часть документа? #477216


#0 by Russkiy
"...Так я жду ответа на поставленный мной вопрос относительно Шпака" ("Иван Васильевич меняет профессию", управдом Бунша Иван Васильевич) Привет, ребята! Пару дней назад попросил помощи у форума по нижеизложенной проблеме. Получил несколько дельных советов (спасибо добрым людям), но воспользоваться ими не могу, поскольку ответы рассчитаны на более или менее продвинутого 1С-ника, а я - чайник чайником! :) Характер этого форума таков, что нужно ковать железо, пока горячо. Чуть протянул время - и поднятая тема затёрлась и ушла на задний план, оставшись без внимания посетителей... Поэтому моя проблема так пока и не решилась, и я опять выхожу сюда "с протянутой рукой"... :) У меня в конфигурировании версии 8.1 (релиз 8.1.14.15) такое затруднение. Мне нужно, чтобы в любом документе, содержащем набранный тем или иным способом список товарного состава, можно было видеть определённые реквизиты товара. Конкретно: мой товар - книги, для идентификации его элементов нужно ориентироваться на несколько его признаков (название, автор, издательство и т. д.). В справочниках все эти реквизиты уже есть и видны. При подборе номенклатуры в документ они также видны. А вот в самих документах мне не удаётся сделать их видимыми. Сделано следующее в документе "Счёт на оплату покупателю": - в реквизитах табличных частей документа создан реквизит "Автор"; реквизит не индексируется; тип данных - СправочникСсылкаАвторы; - в форме "ФормаДокумента" создана одноимённая колонка; данные - Автор (т. е., как я понимаю, ссылка на соответствующий реквизит, созданный шагом ранее); элемент управления - поле ввода; включены флажки "Доступность", "Видимость", "Только просмотр; (реквизит нужен в документе только для контроля товарной позиции). Мои ожидания: хочу видеть автора книги по той или иной позиции, введённой в документ. При этом данные должны браться из карточки товара Справочника номенклатуры. Фактический результат: колонка в документе появилась, но при заполнении последнего номенклатурой значений этого реквизита нет, т. е. колонка остаётся пустой, хотя в справочниках значения есть. Вопрос: как заставить значения этого реквизита появляться в назначенной колонке документа? Ребята посоветовали поработать с модулем Основной формы, с процедурой "ПриПолученииДанных". Кроме того, дали ссылку "Книга знаний: Книга знаний: v8: Дополнительная вычисляемая или текстовая колонка в списке Пройдя по ссылке, я конечно нашёл интересную информацию, и в конце концов попытался в модуле сделать следующее: В результате получил следующее: в табличных данных в колонке "Автор" по каждой введённой позиции вижу значение "СправочникСсылка.Номенклатура". Оно и понятно, поскольку здесь присутствуют кавычки. Пробовал ввести без них - при обновлении конфигурации выпадает сообщение об ошибке: {Документ.СчетНаОплатуПокупателю.Форма.ФормаДокумента(3062,24)}: Переменная не определена (СправочникСсылка) В статье, открывающейся по вышеприведённой ссылке, отмечается, что "Обычно колонка должна быть рассчитываемой, или зависимой от данных, поэтому задействуется второй параметр ДанныеСтроки. Этот механизм можно использовать для отображения остатков товаров в форме подбора, текущих цен, долга контрагента, другой информации по строкам." А как задействовать параметр ДанныеСтроки? Подскажите, пожалуйста, кто в курсе, что я не так делаю и как нужно сделать, чтобы всё заработало как мне нужно. Заранее весьма признателен.
#1 by Живой Ископаемый
СамаЯчейка.Текст = Оформление.ДанныеСтроки.Номенклатура; ?
#2 by Russkiy
P.S. Вот данная мне в вышеизложенных мытарствах ссылка: Книга знаний: v8: Дополнительная вычисляемая или текстовая колонка в списке
#3 by 73
+ или может: Оформление.ДанныеСтроки.Номенклатура.Автор ЗЫ. Реквизит ТЧ можно было не создавать.
#4 by Russkiy
...Непонятно. При копировании она перестаёт быть ссылкой и становится обычным, да к тому же бесполезным текстом. А как же сохранить ссылку?..
#5 by Живой Ископаемый
2 зачем?
#6 by ptiz
Ссылка на что?
#7 by Mitriy
кто тут?
#8 by Живой Ископаемый
при копировании чего? Ссылка на что?
#9 by 73
Ты сам сказал, что Автор - реквизит Номенклатуры. Достаточно показать.
#10 by Живой Ископаемый
2 Эта ссылка тебе всегда доступна через номенклатуру.. а номенклатура - всегда ссылка. поэтому ты и затеял показывать а не заставлять пользователя вводить заново.
#11 by Russkiy
Ребята, что касается ссылки - я попытался её вставить в этот пост из прежнего, чтобы всякий желающий мог увидеть тот вспомогательный материал, который мне был рекомендован для решения проблемы. А простое копирование приводит к тому, что ссылка перестаёт быть ею... Ну да Бог с ней. Я только что попробовал варианты "Оформление.ДанныеСтроки.Номенклатура" и "Оформление.ДанныеСтроки.Номенклатура.Автор", как мне посоветовали уважеамые Живой Ископаемый и 73. Но 1С выдаёт то же сообщение об ошибке, которое я привёл выше...
#12 by 73
У тебя в тексте не Оформление, а ОформлениеСтроки.
#13 by 73
+ СамаЯчейка.Текст = ОформлениеСтроки.ДанныеСтроки.Номенклатура.Автор;
#14 by Шапокляк
"Сделано следующее в документе "Счёт на оплату покупателю": - в реквизитах табличных частей документа создан реквизит "Автор"; реквизит не индексируется; тип данных - СправочникСсылкаАвторы; - в форме "ФормаДокумента" создана одноимённая колонка; данные - Автор (т. е., как я понимаю, ссылка на соответствующий реквизит, созданный шагом ранее); элемент управления - поле ввода; включены флажки "Доступность", "Видимость", "Только просмотр; (реквизит нужен в документе только для контроля товарной позиции). " то есть в счете в табличной части есть реквизит Автор? В форме надо не колонку добавлять тогда, а нажать пункт Форма - Размещение данных, т.е. колонка должна отображать реквизит табличной части. Следующий вопрос - как в этот реквизит попадают данные. В обработчике события изменения номенклатуры надо менять и этот реквизит, выполняя нечто типа: СтрокаТЧ.Автор=СтрокаТЧ.Номенклатура.Автор И будет счастье.  Впрочем, сама идея такого показа через заполнение реквизита ТЧ сомнительна.
#15 by borozavr
Убираешь реквизиты табличной части, щелкаешь на табличной части, добавляешь колонку с идентификатором, например "ШтрихКод" и прописываешь код типа как выше
#16 by Живой Ископаемый
2 он сейчас скопирует "ЯчейкиСтроки.ШтрихКод.УстановитьТекст(Товар.ОсновнойШтрихКод);" в свой код и опять скажет что у него таже самая ошибка...
#17 by borozavr
Надеюсь сообразит, что надо типа Товар.Автор
#18 by Point
А, что за конфигурация (БП,УПП ....)?
#19 by Russkiy
Ребята, насчёт ссылки: я попытался из прежних постов вывести сюда ссылку, данную мне в качестве вспомогательного материала для решения моей проблемы. А простое копирование приводит к тому, что ссылка превращается в текст. Ну да Бог с ней... Я только что попробовал, следуя советам уважаемых "Живой Ископаемый" и "73", ввести в код модуля "Оформление.ДанныеСтроки.Номенклатура" и "Оформление.ДанныеСтроки.Номенклатура.Автор". К сожалению, опять при попытке обновления конфигурации выдаётся сообщение об ошибке, приведённое выше...
#20 by 73
Де жа вю?
#21 by Russkiy
Да нет, до Де жа вю ещё не дошло... Просто что-то зависло на связи, и я, не видя появившегося сообщения, повторил его немного погодя. Так и получилось...
#22 by 73
А помогло?
#23 by Skylark
да... "вот кол, на колу мочало..." Ну давай с самого начала - бери исходную базу, открывай в конфигураторе форму документа, щелкай правой кнопкой на табличной части и жми "Добавить колонку"
#24 by Skylark
В конце табличной части должна появится Колонка1 Сделал?
#25 by Russkiy
Эту колонку я сделал уже давно, и наименовал её "Автор"
#26 by Skylark
Отлично, теперь переходи в процедуру события табличной части "ТоварыПриВыводеСтроки" или как там у тебя табличная часть называется?
#27 by Skylark
есть такая процедура?
#28 by Skylark
и в этой процедуре добавляй код ОформлениеСтроки.Ячейки.Автор.УстановитьТекст(ДанныеСтроки.Номенклатура.Автор)
#29 by Skylark
Собственно всё
#30 by Skylark
и вот этого не надо: - в форме "ФормаДокумента" создана одноимённая колонка; данные - Автор (т. е., как я понимаю, ссылка на соответствующий реквизит тупо щелкнуть правой кнопкой - добавить колонку, имя колонки исправить с Колонка1 на Автор - и ВСЁ!
#31 by Russkiy
Srylark! Всё, похоже, получилось! Даже не знаю, как Вас благодарить... Огромное Вам спасибо! Впрочем, всех остальных участников этого "симпозия" я также сердечно благодарю за участие и отзывчивость. Есть у нас, очевидно, ещё порох в пороховницах, то бишь добрые люди, готовые прийти на помощь. Дай вам Бог всем всяческих благ - земных и неземных! Пока, ребята!
#32 by Russkiy
P.S. А форум действительно волшебный...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С