Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: НайтиПоНаименованию(Значение), где в Значение строка с кавычками
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
Isatsana
Добрый день.
Вопрос такой, например:
Значение взято из таблицы Excel и равно: Мыло "Duru" в ассортименте

Спр = СоздатьОбъект("Справочник.Номенклатура");
Если Спр.НайтиПоНаименованию(СокрЛП(Значение),0)=1 Тогда
    Ном = Спр.ТекущийЭлемент();
КонецЕсли;


В Exсel из 1С записывала номенклатуру, поэтому название правильное.
Пробовала вставить:
Значение = СтрЗаменить(Значение,"""","""""");

Но все равно не находится это наименование.
Подскажите, пожалуйста, как правильно написать, чтобы находился этот элемент.
Flamepayne
Ничего не понял. Зачем это? blink.gif
Цитата(Isatsana @ 18.10.11, 21:06) необходимо зарегистрироваться для просмотра ссылки
Значение = СтрЗаменить(Значение,"""","""""");

И как у Вас переменная "Значение" вообще заполняется?
vadim007
А в самом справочнике Номенклатура смотрели это мыло? Может в наименовании есть начальные или конечные пробелы? Когда записывали номенклатуру из Екселя, делали СокрЛП(..)?
Isatsana
Да, СокрЛП() делала...
Кавычки на двойные меняла, потому что где-то прочитала, что так может помочь...

Вот что, я подумала, НайтиПоНаименованию() ищет по наименованию или по полному наименованию?

Значение:
Значение = СокрЛП(Лист.Cells(р,1).Value);


Остальные элементы находятся, а те, которые с кавычками - нет...

Убрала замену на двойные кавычки. И до этого заполняла таблицу краткими наименованиями.
Теперь начало находить! Всем спасибо happy.gif
Читатель
Цитата(Isatsana @ 18.10.11, 16:38) необходимо зарегистрироваться для просмотра ссылки
Вот что, я подумала, НайтиПоНаименованию() ищет по наименованию или по полному наименованию?


По наименованию. А в Екселе случаем не полное наименование?
Isatsana
Да, было полное наименование. Всё исправила и заработало)
Читатель
Цитата(Isatsana @ 18.10.11, 17:50) необходимо зарегистрироваться для просмотра ссылки
Да, было полное наименование. Всё исправила и заработало)

Кстати. Я бы не рисковал искать по наименованию. Они могут повторяться. Надо бы по коду. Если коды уникальные только в группах, то по полному коду.
mister-x
Цитата
Кстати. Я бы не рисковал искать по наименованию. Они могут повторяться. Надо бы по коду. Если коды уникальные только в группах, то по полному коду.
а якщо ще коди не унікальні, автор ж конфу не озвучила - тоді шукати по унікальному реквізиту
Читатель
Цитата(mister-x @ 18.10.11, 18:48) необходимо зарегистрироваться для просмотра ссылки
а якщо ще коди не унікальні, автор ж конфу не озвучила - тоді шукати по унікальному реквізиту

Згоден. Власне я й мав на увазі що коди унікальні. Хоч як-небудь, але унікальні. А оскільки згадувалась Номеклатура, то мабуть якась унікальність кодів присутня.
MOTAR
Споробуйте
Спр = СоздатьОбъект("Справочник.Номенклатура");
Если Спр.НайтиПоНаименованию(СокрЛП(Значение),0,0)=1 Тогда
    Ном = Спр.ТекущийЭлемент();
Иначе
    Сообшить("Помилка пошуку за назвою ="+СокрЛП(Значение));
КонецЕсли;

а далі перевірте співпадіння назв.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.