Запись ссылки в табличную часть

1. user645801_yyyuuu123q 10.11.22 04:41 Сейчас в теме
Всем привет.
Вот хочется понять как правильно сделать.
Получаю ХМЛ. В нем список услуг.
Все услуги есть у Меня в справочнике, в табличной части услуга сейчас "строка", хочу переделать на ссылку.
Правильно ли будет при записи в цикле писать что то вроде:

Пока ЧитаемХМЛ() Цикл
      //
      Услуга = Справочники.Услуги.НайтиПоНАименование(ЧитаемХМЛ.НашаУслуга);=
      //
КонецЦикла;


ИЛи лучше писать просто строкой?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
7. lmnlmn 69 10.11.22 09:34 Сейчас в теме
(1) Как вариант, строковые названия услуг из XML поместить в ТЗ, передать ее в запрос и соединить со справочником услуг по наименованию.
10. user645801_yyyuuu123q 11.11.22 03:02 Сейчас в теме
(7)Вот тоже идея была. Просто хотелось понять как вообще это делают. И как правильно делать
13. beldieff 14.11.22 10:27 Сейчас в теме
2. laperuz 47 10.11.22 06:06 Сейчас в теме
Обычно оптимальнее выгрузить до цикла справочник в таблицу значений(запросом) и искать потом по ТЗ. Иначе получается запрос к БД в цикле.
user645801_yyyuuu123q; +1 Ответить
4. user645801_yyyuuu123q 10.11.22 07:32 Сейчас в теме
(2) Да Я вот об этом и говорю там будет 6000 тысяч услуг в ХМЛ, а Я их буду искать по найти. По найтиПоНаименованию то это тоже самое что запрос в цикле.
А что если будет 6000 уникальных услуг? Все ровно искать по тз?
5. SlavaKron 10.11.22 09:16 Сейчас в теме
(4)
А что если будет 6000 уникальных услуг? Все ровно искать по тз?
Тем более искать по ТЗ. Ну или по соответствию.
user645801_yyyuuu123q; +1 Ответить
6. user645801_yyyuuu123q 10.11.22 09:27 Сейчас в теме
(5)А что выгоднее по производительности Запров.Выгрузить() или в цикле заполнить соотсвествие новое?
8. SlavaKron 10.11.22 10:26 Сейчас в теме
(6) Проверил на справочнике, в котором 126541 элементов. Поиск через соответствие более чем в 2 раза быстрее поиска через таблицу значений.
11. user645801_yyyuuu123q 14.11.22 03:15 Сейчас в теме
(8) То есть сначала по циклу все в соотвествию из выборки допустим по услугам, а потому уже ищем в этом соответствии так?
12. SlavaKron 14.11.22 09:01 Сейчас в теме
(11) Да. Ключом соответствия будет наименование, а значением – ссылка.
9. starjevschik 10.11.22 10:41 Сейчас в теме
(4)
6000 тысяч услуг в ХМЛ, а Я их буду искать по найти

6 млн строк это немало, стоит подумать об оптимизации, иначе оно будет загружаться сутками.
Хотя в принципе передача таких объемов через текстовые файлы как-то выглядит сомнительно. Его и заполнить для передачи тоже ведь не две секунды будет. Может надо подумать вообще об алгоритме в целом и что-то переделать.
3. salikoff 10.11.22 06:44 Сейчас в теме
И не забудьте, что НайтиПоНаименованию по умолчанию ищет совпадение по началу строки (ТочноеСоответствие = Ложь)
user645801_yyyuuu123q; +1 Ответить
Оставьте свое сообщение

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