Не ищет "НайтиЗначение" в ТЗ.

Форум 1С: Одинэс.Ру

Найти!

Не ищет "НайтиЗначение" в ТЗ.

London
18.05.2009 - 13:45
ТЗСпр = СоздатьОбъект("ТаблицаЗначений");
ТЗСпр.НоваяКолонка("Сотрудник","Строка",50);
...
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку() = 1 Цикл
Список = глРазложить(ТЗ._1);
ФИО = Формат(Список.ПолучитьЗначение(2),"С50");
Если ТЗСпр.НайтиЗначение(ФИО,,"Сотрудник") > 0 Тогда
Сообщить ("Найден");
КонецЕсли;
КонецЦикла;
------------------
Не находит в ТЗСпр сотрудника, хотя он точно есть. Подскажите, что еще можно придумать. Спасибо.
К списку тем 1 > К списку форумов

Интересные темы

odines.ru
22.11.2024 - 07:21
Смотри также:
Регламентированные отчеты
Можно ли вывести на экран таблицу значений, если ее нет на форме?
Почему проверка в списке на принадлежность первый раз тормозит а потом нет?

Re: Не ищет "НайтиЗначение" в ТЗ.

КвазиСпец
8 - 18.05.2009 - 14:08
Кол="Сотрудник";
Если ТЗСпр.НайтиЗначение(ФИО,Поз,Кол)> 0 Тогда

Re: Не ищет "НайтиЗначение" в ТЗ.

victuan
9 - 18.05.2009 - 14:10
(7) Вообще-то, я пытаюсь помочь. Или я должен за автора написать код?
Типа так:
ТЗСпр = СоздатьОбъект("ТаблицаЗначений");
ТЗСпр.НоваяКолонка("Сотрудник","Строка",50);
...
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку() = 1 Цикл
Список = глРазложить(ТЗ._1);
ФИО = Формат(Список.ПолучитьЗначение(2),"С50");
сообщить(ФИО); //!!!
Поз=0;
Если ТЗСпр.НайтиЗначение(ФИО,Поз,"Сотрудник") > 0 Тогда
Сообщить ("Найден");
КонецЕсли;
КонецЦикла;

Re: Не ищет "НайтиЗначение" в ТЗ.

victuan
10 - 18.05.2009 - 14:11
А вообще, почему в этом куске кода
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку() = 1 Цикл
 
должен выполниться цикл, ведь ТЗ пустая?

Re: Не ищет "НайтиЗначение" в ТЗ.

ANik
11 - 18.05.2009 - 14:15
(9) Я извиняюсь за резкость.
(0) Автор - victuan прав хотя бы в том, что по приведенному куску кода непонятна методика заполнения таблиц. Кстати, у Вас в коде сразу после
ТЗ = СоздатьОбъект("ТаблицаЗначений");
Идет строка
ТЗ.ВыбратьСтроки();
И почему мы должны гадать: забыли Вы заполнить ТЗ или просто скопипастили нам несколько строк в произвольном порядке в порядке издевательства над нами?

Re: Не ищет "НайтиЗначение" в ТЗ.

victuan
12 - 18.05.2009 - 14:17
(10) vs (11). Ну вот, мы сказали одно и то же, но разными словами ;))

Интересные темы

odines.ru
22.11.2024 - 07:21
Смотри также:
переход на графу наименование в справочнике
Выгрузка зарплаты на пластиковые карты из 7.7 УСН
Учёт и отчётность предпринимателя 7.70.154 - Не завершается обновление ИБ :)

Re: Не ищет "НайтиЗначение" в ТЗ.

ANik
13 - 18.05.2009 - 14:22
(12) Тем не менее согласитесь, что когда на вопрос "почему этот код не работает" отвечают "потому что это бред" ... В общем-то ответ верный, но так можно отвечать на любой подобный вопрос. И даже не зная 1С :)

Re: Не ищет "НайтиЗначение" в ТЗ.

victuan
14 - 18.05.2009 - 14:27
(13) Это была прелюдия ;)). Разминающий пост, попытка сначала заставить задуматься автора, а потом начал разжевывать сам.

Re: Не ищет "НайтиЗначение" в ТЗ.

London
15 - 18.05.2009 - 14:28
Извиняюсь, конечно же ТЗ заполнена.
 
Текст = СоздатьОбъект("Текст");
СписокСЗ = СоздатьОбъект("СписокЗначений");
Текст.Открыть(СокрЛП(ПутьКФайлу) + "\" + "people.txt");
 
Для Ном=1 По Текст.КоличествоСтрок() Цикл
Стр = Текст.ПолучитьСтроку(Ном);
СписокСЗ.ДобавитьЗначение(Стр,);
КонецЦикла;
...
ТЗСпр = СоздатьОбъект("ТаблицаЗначений");
ТЗСпр.НоваяКолонка("Сотрудник","Строка",50);
...
ТЗ = СоздатьОбъект("ТаблицаЗначений");
СписокСЗ.Выгрузить(ТЗ,,);
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку() = 1 Цикл
Список = глРазложить(ТЗ._1);
ФИО = Формат(Список.ПолучитьЗначение(2),"С50");
Если ТЗСпр.НайтиЗначение(ФИО,,"Сотрудник") > 0 Тогда
Сообщить ("Найден");
КонецЕсли;
КонецЦикла;
 
и еще регистры символов разные в таблицах, но я не думаю, что это причина.

Re: Не ищет "НайтиЗначение" в ТЗ.

London
16 - 18.05.2009 - 14:43
Всем спасибо, получилось. Действительно, регистры должны быть одинаковыми. Не знал этот момент.

Re: Не ищет "НайтиЗначение" в ТЗ.

VZ
17 - 18.05.2009 - 19:29
16-London > Регистронезависимость - это для инлексов токмо. И для методов, которые поиск осуществляют по индексным выражениям. Для всего остального - тупое байтовое сравнение. Учитывай :)
К списку тем 1 > К списку форумов

Добавить новое сообщение

Ваше имя:
Тема сообщения:
Сообщение:
« Подскажите конфигурации по 7.7 Перенос данных »
© 2009 Форум 1С: Одинэс.Ру