УТ 10.3.80.1 Можно ли в качестве ресурса или реквизита регистра сведений использовать Таблицу значений?

1. pentanom 25 07.06.23 17:30 Сейчас в теме
Для элемента справочника "Номенклатура" некоторые дополнительные данные записываются в регистр сведений. Теперь оказалось каждая запись этого регистра должна содержать некую таблицу. Можно ли сделать такое? Например, в качестве ресурса или реквизита регистра сведений использовать Таблицу значений?
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
8. independ 1520 07.06.23 21:29 Сейчас в теме
(1) в ут 10.3 есть рс КомплектующиеНоменклатуры, а так если покопаться в в любой типовой конфигурации есть и другие метаданные для хранения, навскидку Номенклатура поставщиков, регистр штрихкоды, товары на ккм, соответствие алкопродукции
9. user1826630 07.06.23 21:51 Сейчас в теме
(8) Не сбивай с пути автора! Он возомнил себя архитектором...
11. pentanom 25 07.06.23 22:29 Сейчас в теме
(9)
(8) Не сбивай с пути автора! Он возомнил себя архитектором...
Свои пять копеек вставить нужно?
12. пользователь 07.06.23 22:38
Сообщение было скрыто модератором.
...
2. soft_wind 07.06.23 17:32 Сейчас в теме
да, только не саму таблицу, а например ее представление в виде строки,
или как хранилище значений
3. pentanom 25 07.06.23 17:42 Сейчас в теме
(2)
а например ее представление в виде строки
Это как? А представить эту таблицу в форме РС можно?
(2)
или как хранилище значений
И с хранилищем значений работать не приходилось:(
Таблицу как-то нужно записать в хранилище, а при открытии формы РС разворачивать. Где бы на примерчик посмотреть?
4. user1826630 07.06.23 17:58 Сейчас в теме
(3)
Где бы на примерчик посмотреть?
Набираешь в СП слово ХранилищеЗначения.
5. booksfill 07.06.23 18:08 Сейчас в теме
ЗначениеВСтрокуВнутр(ваша_тз)
И
симметричный метод:
тз = ЗначениеИзСтрокиВнутр;

Пример:
&НаКлиенте
Процедура Команда1(Команда)
  поместитьТЗ();
КонецПроцедуры

&НаСервере
Процедура поместитьТЗ()
   тз = Новый ТаблицаЗначений();
   тз.Колонки.Добавить("Кол1", Новый ОписаниеТипов("Строка", ,
                              Новый КвалификаторыСтроки(0, ДопустимаяДлина.Переменная)));
                              
   тз.Колонки.Добавить("Кол2", Новый ОписаниеТипов("СправочникСсылка.Этапы"));                             
   
   новСтр = тз.Добавить();
   новСтр.Кол1 = "Что-то там текстовое";
   новСтр.Кол2 = Справочники.Этапы.НайтиПоКоду("000000001");

   Объект.РеквизитТЗ = ЗначениеВСтрокуВнутр(тз); //РеквизитТЗ  - Строка(0)

КонецПроцедуры 

&НаСервере
Процедура Команда2НаСервере()
  тз = ЗначениеИзСтрокиВнутр(Объект.РеквизитТЗ);
КонецПроцедуры

&НаКлиенте
Процедура Команда2(Команда)
  Команда2НаСервере();
КонецПроцедуры

Показать


P.S.
Это работает, но не делайте так, просто потому, что это из категории "так надо делать оооочень хорошо понимая, зачем и почему", например, если вы пишете обмены.

В частности ваша задача про "каждая запись этого регистра должна содержать некую таблицу" в намекает на то, что у вас уже на этом этапе серьезные проблемы с архитектурой и вы решили их обойти методом отрубания головы.
aka Любитель XML; +1 Ответить
6. pentanom 25 07.06.23 18:52 Сейчас в теме
(5)
В частности ваша задача про "каждая запись этого регистра должна содержать некую таблицу" в намекает на то, что у вас уже на этом этапе серьезные проблемы с архитектурой и вы решили их обойти методом отрубания головы.
Примерно так:)
Мой вариант:
Процедура ПриОткрытии()
	
	ЭлементыФормы.Объем.Заголовок = УпДлина*УпШирина*УпВысота;
	Если Комплектующие <> "" Тогда
		ТЗКомплектующие = ЗначениеИзСтрокиВнутр(Комплектующие);
	КонецЕсли;
	
КонецПроцедуры


Процедура ПриЗаписи(Отказ)
	
	Комплектующие = ЗначениеВСтрокуВнутр(ТЗКомплектующие);
	
КонецПроцедуры
Показать
вроде бы работает. Покритикуйте, если что-то не так.
7. user1826630 07.06.23 20:36 Сейчас в теме
(6) Что такое Комплектующие?
10. pentanom 25 07.06.23 22:28 Сейчас в теме
(8)
(1) в ут 10.3 есть рс КомплектующиеНоменклатуры, а так если покопаться в в любой типовой конфигурации есть и другие метаданные для хранения, навскидку Номенклатура поставщиков, регистр штрихкоды, товары на ккм, соответствие алкопродукции
Я знаю, но уже сделано так. И что-то еще будет ...
(7)
(6) Что такое Комплектующие?
В данном случае это строка.
13. user1826630 07.06.23 22:39 Сейчас в теме
(10)
В данном случае это строка.
Ты же хотел поработать с ХранилищемЗначений! Даже попытался заставить коллег дать тебе ссылки на "примерчик"... А теперь - строка...
Что ж ты, фраер, сдал назад?

PS. За использование ВнутреннейСтроки в 1с8 бьют по рукам.
14. soft_wind 08.06.23 10:55 Сейчас в теме
(10) надо уметь абстрагироваться! вообще 1С это в основном ссылочная методология!
у вас комплект это Ссылка на справочник компплектации
вот и добавьте в свою строку РС Ссылку на этот комплект!

или второй вариант, а почему вы уперлись именно в одну строку РС?
это же таблица! в ней может быть МНОГО строчек!!!

вот и грузите/создавайте столько же строчек РС сколько в комплектации!
просто при работе читаете не ОДНУ строчку а сразу Набор Записей !
(ну все же механизмы есть)
15. pentanom 25 08.06.23 12:44 Сейчас в теме
(14)
(10) надо уметь абстрагироваться!
Спасибо! Понял.
16. pentanom 25 08.06.23 13:09 Сейчас в теме
(14)Напишу подробнее.
Есть некие изделия, которые поставляются покупателю в разобранном виде. Кроме обычных характеристик, покупатель хочет в сопроводительных документах получить и много других. И еще документы должны быть в строгой форме - "шаг вправо, шаг влево - расстрел". Для того, чтобы это все поменьше мешалось с типовой конфигурацией было решено сделать РС, а потом все брать оттуда.
Так было сделано. Теперь требования несколько изменились. Теперь в документах должно быть описано не целиком изделие, а части, на которые оно разобрано. Поэтому и появилась необходимость дополнительно внеси в РС таблицу значений. Плюс ко всему все нужно сделать за очень короткое время.
Слово "Комплектующий" в данном случае не очень подходит, но другого не придумали.
17. Kilka_v_Kepke 08.06.23 14:10 Сейчас в теме
(16) ну сделайте еще один регистр с измерение изделие, ресурс комплектующие
18. pentanom 25 08.06.23 14:16 Сейчас в теме
(17)
(16) ну сделайте еще один регистр с измерение изделие, ресурс комплектующие
Каждый регистр нужно как-то заполнять. Заполняльщики в одном-то регистре ошибки могут сделать, а если их будет два или более, то вообще будет черт знает что.
19. user1826630 08.06.23 14:38 Сейчас в теме
20. Kilka_v_Kepke 08.06.23 14:40 Сейчас в теме
(18) большая задача становится проще если ее разбить на мелкие
21. Kilka_v_Kepke 08.06.23 14:41 Сейчас в теме
(18)ну и как правило пользователи сами то регистр напрямую не заполняют, какую АРМ там запилите
22. pentanom 25 08.06.23 14:45 Сейчас в теме
(21)
(18)ну и как правило пользователи сами то регистр напрямую не заполняют, какую АРМ там запилите
Регистры сведений заполняют обычно пользователи.
23. Kilka_v_Kepke 08.06.23 14:54 Сейчас в теме
(22) надеюсь они и данные из регистра сами напрямую будут тащить
24. Kilka_v_Kepke 08.06.23 15:21 Сейчас в теме
(22) а вы форме регистра кнопку сделайте для изделия она будет открывать другой регистр с комплектующими этого изделия
25. user1826630 08.06.23 15:29 Сейчас в теме
(24) Ну уж нет! Автор хочет, чтобы пользователи работали как в Ёкселе - всё ручками по ячеечкам, никаких тебе вспомогательных форм и никакой автоматизации!
Вот отчет - он должен работать автоматически. А ввод данных - зачем?
26. Kilka_v_Kepke 08.06.23 15:41 Сейчас в теме
(25) я хочу чтоб страдали оба - и автор и пользователи)
27. user1826630 08.06.23 15:42 Сейчас в теме
32. пользователь 08.06.23 18:09
Сообщение было скрыто модератором.
...
34. пользователь 08.06.23 18:34
Сообщение было скрыто модератором.
...
31. pentanom 25 08.06.23 18:08 Сейчас в теме
(24)
(22) а вы форме регистра кнопку сделайте для изделия она будет открывать другой регистр с комплектующими этого изделия
Я понимаю, что можно сделать красивее. Те, кто ставил задачу сами не совсем представляли что нужно получить. А сейчас просто нет времени :(
28. soft_wind 08.06.23 15:57 Сейчас в теме
(16) но ведь все равно кто-то же эти части, где-то как-то заводит!
свяжите эти части с Изделием! добавьте ему еще одну ТЧ ЧастиПоставки
само изделие у вас в Регистре и по ссылке на Изделие получите его тч.ЧастиПоставки
(это как один из вариантов, вашим полетом фантазии)
29. user1826630 08.06.23 16:04 Сейчас в теме
(28) Фантазии у человека хватает только на "дайте примерчик"
30. pentanom 25 08.06.23 18:02 Сейчас в теме
(29)
(28) Фантазии у человека хватает только на "дайте примерчик"
Английская соль, говорят, помогает.
36. user1826630 08.06.23 19:28 Сейчас в теме
(30) Слезай с неё. А то так и будешь всю жизнь "примерчики просить"...
33. pentanom 25 08.06.23 18:17 Сейчас в теме
(28)
(16) но ведь все равно кто-то же эти части, где-то как-то заводит!
свяжите эти части с Изделием! добавьте ему еще одну ТЧ ЧастиПоставки
само изделие у вас в Регистре и по ссылке на Изделие получите его тч.ЧастиПоставки
(это как один из вариантов, вашим полетом фантазии)
Уже в базу введено много информации по старому формату. Если сейчас все переделывать, то старые данные нужно как-то перевести в новый формат. А времени на это нет! И что делать?

(Для пользователя user1826630 - брысь!)
35. user1826630 08.06.23 18:42 Сейчас в теме
(33)
Уже в базу введено много информации по старому формату.
Когда успел-то? Ты ж только вчера придумал формат с "внутренней строкой"...
37. user1936670 08.06.23 21:40 Сейчас в теме
(33)
введено много информации
Заполняльщики в одном-то регистре ошибки могут сделать, а если их будет два или более, то вообще будет черт знает что.
(С) pentanom
38. user1936670 08.06.23 21:42 Сейчас в теме
(33)
А времени на это нет! И что делать?
А затаскивать всё в новый ресурс регистра время, конечно есть. Браво.
39. pentanom 25 08.06.23 22:02 Сейчас в теме
Тема потихоньку перетекает в словоблудие:(
Все спасибо! Будьте здоровы. До свидания.
40. user1936670 08.06.23 22:44 Сейчас в теме
(39)
Будьте здоровы. До свидания.
брысь!
(С) pentanom
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот