|
|
В каких случаях СтрНайти() возращает булево?
Fedor-1971, ДенисСмирнов, корум, ryutao, StanLee, Ёпрст, shuhard, Гипервизор, nick86, KJlag, АгентБезопаснойНацио, Lama12, banco, Доминошник, toypaul, Mihenius, Stepashkin, Sabron, Garykom, rbcvg, LienXo, lEvGl, avkynev, Михаил Козлов, PuhUfa, Kongo2019, Хряк, Кир Пластелинин, orakool, integer, Климов Сергей, maxar, Мультук, vbus, sikuda, reloc, Ненавижу 1С, MM, zenik, StanyaGeya, RomanYS, KuznecovvIvan, rozer76, skafandr, DemonShinji2, КогнитивныйДиссонанс, Telcher, Kobol, , AAP, Junior1s, Guk, zzz_zzz_zzz, ReaLg, DimVad, crasler, Amfiaray, ads55, zva, ildary
| ☑ |
|
0
Когнитивный Диссонанс
10.02.26
✎
20:09
|
С какого-то перепугу СтрНайти() начал возвращать булево, хотя в СП такого случая нет и переопределения функции тоже
Поз = СтрНайти("имсавпвап впа 23123", "23");
И получается, что Поз = Истина, голову сломал
Версия 1С:Предприятие 8.3 (8.3.18.1208)
|
|
|
1
ass1c
10.02.26
✎
20:30
|
(0) Все бывает в первый раз...
Люблю проверять есть ли данные в коллекции либо нет при помощи условия:
Если КонтейнерДанных.Количество() Тогда
а не
Если КонтейнерДанных.Количество() > 0 Тогда
Хотя КонтейнерДанных.Количество() = "Какое то число"
Но при этом НЕ КонтейнерДанных.Количество() = Истина
Парадокс...
|
|
|
2
Гипервизор
10.02.26
✎
20:34
|
(0) На 8.3.27 ожидаемо получаю 15.
Какой режим совместимости?
А переопределение как проверяли?
|
|
|
3
Ненавижу 1С
гуру
10.02.26
✎
20:39
|
(0) возможно Поз это у вас реквизит типизированный. Тогда неявное преобразование даст Истина
|
|
|
4
ak71
10.02.26
✎
20:40
|
А что такое поз - не реквизит ли объекта с типом булево?
Если реквизиту с типом булево присваивать число то 0 даёт ложь, не ноль - истина.
Что если присвоить переменной Поз999?
|
|
|
5
Когнитивный Диссонанс
10.02.26
✎
20:48
|
Режим совместимости Версия 8.2.13
обработка вообще голая
Поз инициализируется функцией СтрНайти()
как ни менял имя переменной, все равно выходит булево
|
|
|
6
Когнитивный Диссонанс
10.02.26
✎
20:53
|
Вот
|
|
|
7
Franchiser
10.02.26
✎
21:01
|
(6) поищи в конфигурации где есть стрнайти(), в том числе по глобальным модулям процедуру с таким названием. Это обычные формы?
|
|
|
8
Когнитивный Диссонанс
10.02.26
✎
21:04
|
нашел уже, блин, местные внедрили, получается во всех других модулях все идет наперекосяк, где используется СтрНайти
|
|
|
9
Когнитивный Диссонанс
10.02.26
✎
21:09
|
(2) по F12 в первый раз не нашло, после перезапуска - вылезло
|
|
|
10
Timon1405
10.02.26
✎
21:09
|
(0)может Стрнайти есть в глобальном модуле и вызывается она, а не платформенная? по f12 переходит в функции?
|
|
|
11
Asmody
10.02.26
✎
22:10
|
(8) за такое, конечно, линейкой по рукам бить надо. В первую очередь, разработчикам платформы. Потому что язык такое должен ловить.
|
|
|
12
Когнитивный Диссонанс
11.02.26
✎
02:53
|
(10) Да вызывается она, а платформенная нет, не знаю как вызывать платформенную вместо того гуанокостыля
|
|
|
13
Ёпрст
гуру
11.02.26
✎
03:49
|
(12) пробовать англоязычный синоним.
|
|
|
14
Когнитивный Диссонанс
11.02.26
✎
03:56
|
(13) пробовал, выдает ошибку типа не найден метод
|
|
|
15
Гипервизор
11.02.26
✎
07:24
|
(12) Никак вы не вызовете платформенную, режим совместимости должен быть 8.3.6+, и об этом в СП написано.
Потому и втыкают замену в глобальный модуль.
Исправьте костыль, или нет возможности? Постучите в грудную клетку местным, пусть исправляют. Во всяких УТ 10.3, УПП вполне нормальные замены сделаны всяким СтрНайти(), СтрШаблон() и т.д.
Или используйте старую-добрую Найти(), если вам как в примере только первые 2 параметра нужны. Хотя эта функция "является устаревшей", ну и что? )
|
|
|
16
Garykom
гуру
11.02.26
✎
09:16
|
(0) Эмм давным-давно 0=Ложь а 1(и более)=Истина
|
|
|
17
Stepashkin
11.02.26
✎
09:19
|
(16) 👍
|
|
|
18
ДенисСмирнов
11.02.26
✎
09:35
|
(16) меньше 0 - тоже истина. все истина, что не ноль
|
|
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой