Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Поиск в массиве

Поиск в массиве
Я
   LittlePumpkin
 
18.08.20 - 10:34
Хочу найти значение в массиве. Преобразую нужное значение к строке и ищу в массиве. Но на выходе пусто, хотя элемент, который ищу там точно есть.

стр = Строка(ЗначениеИтератора);
ИскомоеЗначение = МассивПоиска.Найти(стр);

В Интернете везде примеры с поиском конкретно указанного значения (типо .Найти("2")). Неужели нет способа искать в массиве через переданную переменную?
   vicof
 
1 - 18.08.20 - 10:36
В массиве-то строки?
   acht
 
2 - 18.08.20 - 10:37
(0) > хотя элемент, который ищу там точно есть
А тип у него какой?
   H A D G E H O G s
 
3 - 18.08.20 - 10:38
Делаю ставку на неразрывный пробел.
   LittlePumpkin
 
4 - 18.08.20 - 10:40
(2) (1) Блин, в массиве тип Справочник.Ссылка. Подскажите как тогда осуществить поиск, если в массиве ссылки, а у меня строковое значение?
   seevkik
 
5 - 18.08.20 - 10:41
(4) справочники.справочник.найтипонаименованию("строка")
   acht
 
6 - 18.08.20 - 10:41
(4) Избавиться от строкового значения и искать по ссылке. Ваш К.О.
   acht
 
7 - 18.08.20 - 10:42
(5) И какой из 10 с одинаковым наименованием найдешь? А, точно, помеченный на удаление.
   LittlePumpkin
 
8 - 18.08.20 - 10:49
(6) В массиве тип элемента оказывается структура( Картинки для наглядности вот:https://imgur.com/a/kGO2xVY
И как же тогда осуществлять поиск?(
   Василий Алибабаевич
 
9 - 18.08.20 - 10:54
(8) А че просто тупым перебором уже запрещено? Или вы взяли принципиально неиндексируемые данные и хотите индексный поиск?
   H A D G E H O G s
 
10 - 18.08.20 - 10:56
Черт побери, мой ванга-модуль дал сбой
   ZDenis
 
11 - 18.08.20 - 10:56
(8) Используй вместо массива - соответствие ( Номенклатура - цена )
   VladZ
 
12 - 18.08.20 - 10:59
(0) Вангую: не нужен тебе массив.
Давай задачу целиком.
   LittlePumpkin
 
13 - 18.08.20 - 11:05
Я хочу получить массив/структуру/соответствие, где по номенклатуре смогу искать цену. Сейчас у меня есть массив структур. Во что и как его лучше превратить для моей задачи? (9) (11) (12)
   Garykom
 
14 - 18.08.20 - 11:07
(10) Возможно кортексин уже не поможет и надо сильнее
   Garykom
 
15 - 18.08.20 - 11:09
(13) Если не надо с сервера на клиент то ТЗ.
Или запросом даже
   vde69
 
16 - 18.08.20 - 11:09
(13) может тебе лучше использовать "ТаблицаЗначений"
   LittlePumpkin
 
17 - 18.08.20 - 11:12
Это с сервера уже вернулся массив структур. Его лучше во что то преобразовать, так как саму функцию на сервере трогать нельзя.
   Жан Пердежон
 
18 - 18.08.20 - 11:45
преврати в соответствие, ищи по ссылке
   Salimbek
 
19 - 18.08.20 - 11:47
(18) +100
Изначально лучше с сервера возвращать Сответствие, типа Соотв.Вставить(Номенклатура, Цена) - и так для всей номенклатуры. Потом, как надо найти цену нужной номенклатуры, так просто Цена = Соотв.Получить(Номенклатура);
   Salimbek
 
20 - 18.08.20 - 11:48
+(19) Ну если нельзя на сервере, то тогда на клиенте этот массив в соответствие загнать.
   VladZ
 
21 - 18.08.20 - 11:56
(17) Что за функция?
   LittlePumpkin
 
22 - 18.08.20 - 14:05
(19) (18) Спасибо большое!
   mikecool
 
23 - 18.08.20 - 14:06
(4) не, не сдашь спеца ((((
   LittlePumpkin
 
24 - 18.08.20 - 14:16
(23) Ну а то
   rudnitskij
 
25 - 18.08.20 - 15:08
(13) "Вангую: не нужен тебе массив.
Давай задачу целиком.
    13
   LittlePumpkin
 
Я хочу получить массив/структуру/соответствие, где по номенклатуре смогу искать цену. Сейчас у меня есть массив структур. Во что и как его лучше превратить для моей задачи? "

----------------
А в задании что требуется? "Я хочу" нередко отличается от ТЗ. Иногда кардинально
   LittlePumpkin
 
26 - 18.08.20 - 20:01
(25) Нужно взять номенклатуру из ТЧ формы документа, на сервере получить цены этой номенклатуры из регистра и вернуть полученные цены+номенклатуру на форму.
   МимохожийОднако
 
27 - 18.08.20 - 20:59
Начал за здравие, закончил за упокой. Тема никак не совпадает с последним постом.
   VladZ
 
28 - 19.08.20 - 11:04
(26) Массив не нужен.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.