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