Имя: Пароль:
1C
1С v8
Поиск информации в форме таблицы значений
0 KoalaJustKoala
 
22.02.21
13:15
Ситуация стильно-модно-молодёжная
Имеется сканер ШК, полностью настроенный на работу через COM порт
Имеется таблица, которая заполняется с помощью макета
И имеется задание, цель которого находить ячейки в разных строках и столбцах по этой самой таблице выше, не используя при этом Ctrl+F

ТекДокумент = Документы[ВидДок].НайтиПоНомеру(НомерДок,ДатаДок);
    
    Если ВидДок = "ПереоценкаТМЗ"  Тогда  //Переоценка
            //вот здесь должен быть поиск ячейки, но его нет :(((
            
        Иначе
            предупреждение("такой товар не найден! Внесите его ручной добивкой");
        КонецЕсли;
1 ДенисЧ
 
22.02.21
13:17
(тут картинка с особистом в исполнении Охлобыстина)
2 KoalaJustKoala
 
22.02.21
13:18
(1) Да-да-да, наркомания, согласен
Но вот такое задание пришло, а идей как решить от слова совсем нет
3 ДенисЧ
 
22.02.21
13:20
(2) Нужно себя заставить... Полистать книжки... Вдруг (совершенно случайно) ты наткнёшься на метод Найти() или (чт ещё менее вероятно) НайтиСтроки()...
4 KoalaJustKoala
 
22.02.21
13:22
(3) А вот тут вступает тот мааааленький фактор, что таблица заполняется с помощью Макета
И вот Найти() или НайтиСтроку(), вообще контачить не хотят (
5 KoalaJustKoala
 
22.02.21
13:22
Сюда как-то можно скинуть скрин?
6 ДенисЧ
 
22.02.21
13:23
(4) Какая разница, как заполняется ТЗ?
(5) картинку хоть на pics.rsh.ru, а ссылку сюда
7 KoalaJustKoala
 
22.02.21
13:25
(6)
Как выглядит таблица:
http://pics.rsh.ru/img/_gvwqgyyz.png

Как выглядит макет:
http://pics.rsh.ru/img/1_nc1sdr9b.png
8 KoalaJustKoala
 
22.02.21
13:26
(6) Очень просто, я никак не могу зацепиться хоть за что-то в таблице
Т.к. по форме она просто пустая
9 ДенисЧ
 
22.02.21
13:27
(7) Мм... А колонки тз где? Может, она вообще не заполняется? Ты в отладчике её покажи...
А то рисуешь тут.. Как Малевич-расист...
10 KoalaJustKoala
 
22.02.21
13:29
(9) http://pics.rsh.ru/img/2_crrl0nrd.png
Да пожалуйста, база тестовая так что данных за последний месяц как кот наплакал
11 Kassern
 
22.02.21
13:30
(7) а где тут таблица значений?)) Я вижу только поле табличного документа
12 ДенисЧ
 
22.02.21
13:30
А.. Понял. У тебя табдокумент, а не ТЧ...
Ну так тоже книжки и документация помогут...
13 ДенисЧ
 
22.02.21
13:31
ТабличныйДокумент (SpreadsheetDocument)
НайтиТекст (FindText)
Синтаксис:
НайтиТекст(<Строка>, <Начало>, <Где>, <ИскатьПоСтрокам>, <ЯчейкаЦеликом>, <ИскатьВперед>, <ИгнорироватьРегистр>)
Параметры:
<Строка> (обязательный)
Тип: Строка.
Искомый текст.
<Начало> (необязательный)
Тип: ОбластьЯчеекТабличногоДокумента.
Область, после которой начинать поиск. Если параметр не указан, поиск будет выполнен с начала табличного документа.
<Где> (необязательный)
Тип: ОбластьЯчеекТабличногоДокумента.
Область, в которой осуществляется поиск. Если параметр не указан, поиск будет выполнен по всем ячейкам табличного документа.
<ИскатьПоСтрокам> (необязательный)
Тип: Булево.
Определяет последовательность обхода ячеек при поиске.
Истина - искать по текущей строке, затем переходить на следующую и т.д. в общем направлении поиска, Ложь - искать по текущей колонке, затем переходить на следующую и т.д. в общем направлении поиска.
Значение по умолчанию: Истина.
<ЯчейкаЦеликом> (необязательный)
Тип: Булево.
Истина - искать только такие ячейки, в которых с искомым текстом совпадает весь текст ячейки, Ложь - искать часть текста ячейки.
Значение по умолчанию: Ложь.
<ИскатьВперед> (необязательный)
Тип: Булево.
Определяет направление поиска: Истина - искать вперед; Ложь - искать назад.
Значение по умолчанию: Истина.
<ИгнорироватьРегистр> (необязательный)
Тип: Булево.
Истина - без учета регистра, Ложь - поиск с учетом регистра.
Значение по умолчанию: Ложь.
Возвращаемое значение:
Тип: ОбластьЯчеекТабличногоДокумента, РисунокТабличногоДокумента.
Область, содержащая искомый текст. Если текст не найден, то возвращается значение Неопределено.
Описание:
Осуществляет поиск текста в ячейках табличного документа.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Пример:
// чтобы посмотреть работу данного метода, добавьте

// следующие строки в конец примера метода НачатьГруппуСтрок()

Отдел = "Итого2";
Область=ТабДок.НайтиТекст(Отдел);
Если ТипЗнч(Область)=Тип("Неопределено") Тогда
    Сообщить("Значение не найдено!");
Иначе
    Поз = Найти(Область.Имя,"C");
    Имя= Лев(Область.Имя,Поз)+
        Строка(Число(Прав(Область.Имя,СтрДлина(Область.Имя)-Поз))+1);
    Сообщить("Итог по отделу 2 = "+ТабДок.Область(Имя).Текст);
КонецЕсли;
Использование в версии:
Доступен, начиная с версии 8.1.
     Методическая информация
14 KoalaJustKoala
 
22.02.21
13:31
(11) Гхм, еще не до конца вкурил за все названия(
2й месяц с 1с(
15 KoalaJustKoala
 
22.02.21
13:34
(13) Пуф, я это уже видел...
Но мысля кое-какая родилась
Пошел тестить)
16 acht
 
22.02.21
13:36
(15) "мазахист" пишется через "о"
Ты смотри, там в 1С все по русски писать надо.
17 Kassern
 
22.02.21
13:37
(16) не обязательно
18 Kassern
 
22.02.21
13:37
(17) но желательно)
19 KoalaJustKoala
 
22.02.21
13:38
(16) Не, в моем случае именно через "а" :3
20 KoalaJustKoala
 
22.02.21
13:38
Чтобы глазам еще больнее было :3
21 acht
 
22.02.21
13:41
22 KoalaJustKoala
 
22.02.21
13:44
(21) Да-да, что-то типа такого!
Только у меня ошибка допущена специально =3