|   |   | 
| 
 | СтрНайти, что ему не нравится? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Kigo_Kigo 13.11.19✎ 11:34 | 
        Во внешней обработке
 код НомерВхождения=0; СтрНайти(СокрЛП(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий),"#",,,НомерВхождения); Если НомерВхождения > 0 Тогда ОтчетКоммент = СокрЛП(Сред(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий,НомерВхождения)); Если ОтчетКоммент = РеализацияКомментарий Тогда СтрРеалицации.СформированОтчет = "Сформирован"; КонецЕсли; КонецЕсли; Ошибка {ВнешняяОбработка.ФормированиеОтчетовЗаСменуНаОснованииРеализации.Форма.Форма.Форма(7565,5)}: Процедура или функция с указанным именем не определена (СтрНайти) <<?>>СтрНайти(СокрЛП(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий),"#",,,НомерВхождения); (Проверка: Толстый клиент (обычное приложение)) что ему не нравится? | |||
| 1
    
        boozin 13.11.19✎ 11:36 | 
        Релиз платформы проверь или режим совместимости у конфигурации. Древний поди...     | |||
| 2
    
        Kigo_Kigo 13.11.19✎ 11:42 | 
        (1) 8.3.12.1790     | |||
| 3
    
        pechkin 13.11.19✎ 11:43 | 
        вообще то это функция     | |||
| 4
    
        RomanYS 13.11.19✎ 11:43 | 
        (2) совместимость конфы?     | |||
| 5
    
        Жан Пердежон 13.11.19✎ 11:43 | 
        Режим совместимости?     | |||
| 6
    
        ChMikle 13.11.19✎ 11:44 | 
        (0) на сервере это делаешь или на клиенте?     | |||
| 7
    
        ChMikle 13.11.19✎ 11:45 | 
        +(6) первый символ проверь названия функции , м.б. "C" латиница     | |||
| 8
    
        Kigo_Kigo 13.11.19✎ 11:45 | 
        (5) Режим совместимости = да 
 (6) ОФ - толстый клиент вообще Доступность: Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер), интеграция. | |||
| 9
    
        pechkin 13.11.19✎ 11:46 | 
        (8) не да , а номер режима     | |||
| 10
    
        Kigo_Kigo 13.11.19✎ 11:50 | 
        (7) Выделение ctrl+f1 слызу вываливаемся в справку - куда надо(с проверял на латиницу, это первое что сделал) 
 (9) Версия 8.2.16 | |||
| 11
    
        Жан Пердежон 13.11.19✎ 11:51 | 
        (10) СтрНайти с 8.3.6 работает     | |||
| 12
    
        pechkin 13.11.19✎ 11:52 | 
        Это в справке кстати написано     | |||
| 13
    
        Kigo_Kigo 13.11.19✎ 11:53 | 
        (3) И что?
 Мне не надо проверять, есть вхождение или нет, мне нужен номер вхождения, если он есть то идем дальше, если нет, то нет | |||
| 14
    
        Lama12 13.11.19✎ 11:53 | 
        Может так сработает?
 Вместо СтрНайти(СокрЛП(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий),"#",,,НомерВхождения); вот так НомерВхождения = СтрНайти(СокрЛП(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий),"#"); | |||
| 15
    
        craxx 13.11.19✎ 11:54 | 
        (10) Версия 8.3.6 как минимум     | |||
| 16
    
        Кац 13.11.19✎ 11:54 | 
        (10) Тогда используй Найти()     | |||
| 17
    
        Lama12 13.11.19✎ 11:55 | 
        (16) Синтакс-помошник, так не рекомендует.     | |||
| 18
    
        pechkin 13.11.19✎ 11:55 | 
        (13) так разве стрнайти ищет номер вхождения?  вроде нет | |||
| 19
    
        Kigo_Kigo 13.11.19✎ 11:55 | 
        (12) Да даже
 {ВнешняяОбработка.ФормированиеОтчетовЗаСменуНаОснованииРеализации.Форма.Форма.Форма(7565,10)}: Процедура или функция с указанным именем не определена (СтрНайти) Если <<?>>СтрНайти(СокрЛП(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий),"#",,,НомерВхождения)> 0 Тогда (Проверка: Толстый клиент (обычное приложение)) | |||
| 20
    
        Kigo_Kigo 13.11.19✎ 11:56 | 
        (14) {ВнешняяОбработка.ФормированиеОтчетовЗаСменуНаОснованииРеализации.Форма.Форма.Форма(7565,22)}: Процедура или функция с указанным именем не определена (СтрНайти)
 НомерВхождения = <<?>>СтрНайти(СокрЛП(СтрокаТЗОтчетПроизводстваЗаСмену.Комментрарий),"#"); (Проверка: Толстый клиент (обычное приложение)) | |||
| 21
    
        pechkin 13.11.19✎ 11:56 | 
        (20) тебе уже сказали что не будет ибо режим     | |||
| 22
    
        Kigo_Kigo 13.11.19✎ 11:57 | 
        (18) Читаем СП
 СтрНайти (StrFind) Синтаксис: СтрНайти(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) Параметры: <Строка> (обязательный) Тип: Строка. Исходная строка. <ПодстрокаПоиска> (обязательный) Тип: Строка. Искомая подстрока. <НаправлениеПоиска> (необязательный) Тип: НаправлениеПоиска. Указывает направление поиска подстроки в строке. Значение по умолчанию: СНачала. <НачальнаяПозиция> (необязательный) Тип: Число. Указывает позицию в строке, с которой начинается поиск. Если параметр не задан и в параметре НаправлениеПоиска указано значение СНачала, то значение по умолчанию равно 1. Если параметр не задан и в параметре НаправлениеПоиска указано значение СКонца, то значение по умолчанию равно длине строки. Допускаются значения от 1 до количества символов в строке, в которой выполняется поиск. Если указано значение, не входящее в диапазон, генерируется ошибка "Неверное значение параметра". <НомерВхождения> (необязательный) Тип: Число. Указывает номер вхождения искомой подстроки в исходной строке. Значение по умолчанию: 1. Возвращаемое значение: Тип: Число. Позиция первого знака найденной подстроки. Нумерация символов в строке начинается с 1. Если строка не содержит указанной подстроки, то возвращается 0. Описание: Находит первое вхождение искомой строки как подстроки в исходной строке. Сравнение выполняется с учетом регистра. Доступность: Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер), интеграция. Примечание: Если параметр <ПодстрокаПоиска> пустая строка, то возвращает 1. Если оба параметра пустые строки, то возвращает 1. Пример: Если СтрНайти(Сотрудник.Имя, "Сергей") > 0 Тогда Сообщить(Сотрудник.Имя + " таб. №" + Сотрудник.Код); КонецЕсли; См. также: Глобальный контекст, метод СтрНачинаетсяС Глобальный контекст, метод СтрЗаканчиваетсяНа -------------------------------------------------------------------------------- Методическая информация | |||
| 23
    
        pechkin 13.11.19✎ 11:57 | 
        (22) про режим не скопировал почемуто     | |||
| 24
    
        Kigo_Kigo 13.11.19✎ 11:58 | 
        (21) кто сказал , где?
 (23) Скопировал вс что есть | |||
| 25
    
        Lama12 13.11.19✎ 11:58 | 
        (22) Смотри (21) и (10).
 (23) В некоторых версиях СП не написано на совместимость :-( Уже натыкался на это. | |||
| 26
    
        Kigo_Kigo 13.11.19✎ 11:59 | 
        (23) Это что получается элементарная функция не будет работать в режиме совместимости? Что за бредятина?     | |||
| 27
    
        spiller26 13.11.19✎ 11:59 | 
        В режиме совместимости 8.3.5 и ниже возникает ошибка
 {ВнешняяОбработка.ВнешняяОбработка1.МодульОбъекта(1,10)}: Процедура или функция с указанным именем не определена (СтрНайти) | |||
| 28
    
        Cyberhawk 13.11.19✎ 11:59 | 
        (12) (23) В свежих релизах этого уже нет     | |||
| 29
    
        pechkin 13.11.19✎ 11:59 | 
        (26) добро пожалоать в чудный мир 1с     | |||
| 30
    
        Tonik992 13.11.19✎ 11:59 | 
        (26) Да-да, жизнь она такая.     | |||
| 31
    
        pechkin 13.11.19✎ 12:00 | 
        (28) в 15 релизе есть     | |||
| 32
    
        boozin 13.11.19✎ 12:00 | 
        Тебе весь пост пытаются объяснить, что у тебя функция в принципе работать не будет, т.к режим совместимости 8.2.16. Что не понятно ? Пока не изменишь режим совместимости минимум на 8.3.6 - работать не будет.     | |||
| 33
    
        Kigo_Kigo 13.11.19✎ 12:02 | 
        (32) Никто это не написал, чем это может грозить для БП 2.0 в принципе?     | |||
| 34
    
        pechkin 13.11.19✎ 12:03 | 
        (33) отчеты перестанут работать     | |||
| 35
    
        Kigo_Kigo 13.11.19✎ 12:03 | 
        (34) Давайте посерьезней     | |||
| 36
    
        boozin 13.11.19✎ 12:04 | 
        А вот режим совместимости у старых конфигураций лучше не трогать. Используй Найти()     | |||
| 37
    
        pechkin 13.11.19✎ 12:04 | 
        если тебе нужно второе вхождение то делай как раньше, нашел первое, обрезал нашел второе (35) серьезно, там пытаются какие то несереализуемые данные сохранять сломалось с 8.2.14 | |||
| 38
    
        Cyberhawk 13.11.19✎ 12:04 | 
        (31) Значит наоборот ) В свежих добавили графу "Использование в версии"     | |||
| 39
    
        Kigo_Kigo 13.11.19✎ 12:05 | 
        Знаю я 1С, элементное действие, без объявления войны может привести к всеобщему пиздетсу     | |||
| 40
    
        Kigo_Kigo 13.11.19✎ 12:06 | 
        (37) Второго не надо, только и первое     | |||
| 41
    
        RomanYS 13.11.19✎ 12:06 | 
        (26) Абсолютно логично. Конфа должна запускать и работать на всех платформах подходящих по режиму совместимости.     | |||
| 42
    
        spiller26 13.11.19✎ 12:07 | 
        (38) Предупреждали же, читайте иногда отличия в новых ветках платформы     | |||
| 43
    
        Kigo_Kigo 13.11.19✎ 12:07 | 
        Во уже на копии понеслось 
 (41) Вы сами себе противоречите | |||
| 44
    
        Cyberhawk 13.11.19✎ 12:08 | 
        (42) Какие отличия и где читать, ты о чем?     | |||
| 45
    
        Kigo_Kigo 13.11.19✎ 12:08 | 
        Конфа ушла в аут с какой то кучей ошибок     | |||
| 46
    
        RomanYS 13.11.19✎ 12:09 | 
        (43) в чем противоречие?
 У тебя совместимость 8.2 - значит запускаться должно и на 8.2. А там таких функций нет. | |||
| 47
    
        Kigo_Kigo 13.11.19✎ 12:11 | 
        Я так понимаю, придется каждую строку посимвольно перебирать?
 Ога говорили они, переходи к нам, на темную сторону снеговиков, все просто окуенно, ББббггггг, Злоп если ты это читаешь, не верь им :) | |||
| 48
    
        Kigo_Kigo 13.11.19✎ 12:12 | 
        (46) Режим совместимости подрузумевает под собой, функционал старого и фишки нового не?
 а что в 8.2 СтрНайти не было, как тогда выкручивались, посимвольно перебирали? | |||
| 49
    
        spiller26 13.11.19✎ 12:13 | 
        Встроенный язык.
 Реализованы функции работы со строками: СтрШаблон() - выполняет замену маркеров подстановки (вида %1) в шаблонной строке на реальные значения; СтрСравнить() - выполняет лексикографическое сравнение строк без учета регистра; СтрНачинаетсяС() - проверяет, что строка начинается на подстроку; СтрЗаканчиваетсяНа() - проверяет, что строка оканчивается подстрокой; СтрНайти() - выполняет поиск подстроки в различных направлениях и не только с начала строки; СтрРазделить() - разделяет строку на части по указанному разделителю; СтрСоединить() - соединяет строки из массива подстрок. Реализовано системное перечисление НаправлениеПоиска. Функция Найти() является устаревшей и поддерживается для совместимости. В режиме совместимости с версией 8.3.5 поведение не изменилось. Данная возможность не предоставлялась. Возможности новых функций можно было реализовать с помощью встроенного языка. Упростилась реализация некоторых типовых алгоритмов работы со с Источник: https://dl03.1c.ru/content/Platform/8_3_16_1030/1cv8upd_8_3_16_1030.htm#df1a5bfb-00fe-11e4-98ab-e61f135f174b | |||
| 50
    
        boozin 13.11.19✎ 12:14 | 
        Режим совместимости подразумевает, что должно без ошибок работать на 8.2.16     | |||
| 51
    
        spiller26 13.11.19✎ 12:17 | 
        (48) Была кажется экспортная функция в общих модулях.     | |||
| 52
    
        Сергиус 13.11.19✎ 12:20 | 
        (48)Использовали просто Найти, хотя она конечно медленней работает.     | |||
| 53
    
        spiller26 13.11.19✎ 12:23 | 
        (52) Вот как было и как стало.
 Найти(<Строка>, <ПодстрокаПоиска>) СтрНайти(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) | |||
| 54
    
        Кац 13.11.19✎ 12:31 | 
        (17) да пофиг, у него режим совместимости 8.2.16
 Так что только Найти() | |||
| 55
    
        spiller26 13.11.19✎ 12:34 | 
        Я бы посоветовал автору переходить на 3.0, когда нибудь придется всё равно, только "лавочку" переходного релиза закроют и будет "ай-ай-ай".
 Ну или сидеть на какой либо старой платформе. | |||
| 56
    
        pechkin 13.11.19✎ 12:36 | 
        (47) в 77 тоже было найти как и 8     | |||
| 57
    
        boozin 13.11.19✎ 12:38 | 
        А казалось бы тема на пару постов..... :)     | |||
| 58
    
        D_E_S_131 13.11.19✎ 12:39 | 
        "Режим совместимости подрузумевает под собой, функционал старого и фишки нового не?" - ага, и еще кое-что на пробу из неизданных релизов платформы xD     | |||
| 59
    
        hhhh 13.11.19✎ 13:11 | 
        (47) у меня режим 8.3.8. Работает. Только не сразу перескакивай, а поэтапно. Сначала на 8.3.3, потом на 8.3.4 и т.д. и так дойдешь до 8.3.8.     | |||
| 60
    
        Kigo_Kigo 13.11.19✎ 13:13 | 
        (56) В 77 СрнНайти Прекрасно работала, не надо тут, это вам не там 
 (59) не у меня уже тестовая свалилилась, гружу новую (58) вы не в 1с работаете? очень умозаключения в их стиле попробую сча через "найти" | |||
| 61
    
        hhhh 13.11.19✎ 13:16 | 
        (60) так ты сразу небось на 8.3.16 небось жахнул, не глядя. Так не делается, надо потихоньку, и обязательно кеши чистить и полный ТИИ запускать после каждого перехода.     | |||
| 62
    
        Kigo_Kigo 13.11.19✎ 13:20 | 
        (61) сразу на 8.3.6, не пока работает не буду трогать, пока что задачи по этой БД заканчиваются, это последний затык, если через найти сработает, пусть так и остается, а то как то мне тут к УПП еще с этой проблем не хватало     | |||
| 63
    
        Дмитрий 13.11.19✎ 13:22 | 
        (60) В 7.7 нет функции СтрНайти.     | |||
| 64
    
        Aleksandr N 13.11.19✎ 13:26 | 
        СтрНайти в 7.7? Я вас умоляю.     | |||
| 65
    
        Kigo_Kigo 13.11.19✎ 13:26 | 
        (63) А , ну да, с СтрЗаменить спутал, ну и ладно, у меня сча смешалось пока, кони клюшки снеговики, да и пох     | |||
| 66
    
        D_E_S_131 13.11.19✎ 13:27 | 
        (60) Режим совместимости с версией означает только одно - будет работать только тот функционал, который был в указанной версии и раньше. Если нужно "новое", то совместимость наоборот убирают. Такая "логика у 1С".     | |||
| 67
    
        ptiz 13.11.19✎ 13:59 | 
        (48) УТ 10
 ///////////////////////////////////////////////////////////////////////////////////////// // // Функции обратной совместимости для эмуляции новых возможностей платформы // Удалить лишние при необходимости // ///////////////////////////////////////////////////////////////////////////////////////// Функция СтрНайти(Строка, ПодстрокаПоиска, НаправлениеПоиска = Неопределено, НачальнаяПозиция = 1, НомерВхождения = 1) Экспорт Если НаправлениеПоиска = "СКонца" Тогда ВызватьИсключение НСтр("ru = 'Требуется доработать функцию ""СтрНайти"" в общем модуле ""ИнтеграцияЕГАИСКлиентСерверГлобальный"": |Не поддерживается поиск с конца'"); КонецЕсли; Если ПодстрокаПоиска = "" Тогда Возврат 1; КонецЕсли; Если НачальнаяПозиция > 1 Тогда Возврат НачальнаяПозиция - 1 + СтрНайти(Сред(Строка, НачальнаяПозиция), ПодстрокаПоиска, НаправлениеПоиска,,НомерВхождения); КонецЕсли; Если НомерВхождения > 1 Тогда Вхождение1 = Найти(Строка, ПодстрокаПоиска); Если Вхождение1 > 0 Тогда Возврат Вхождение1 + СтрНайти(Сред(Строка,Вхождение1 +1),ПодстрокаПоиска,НаправлениеПоиска,,НомерВхождения - 1); КонецЕсли; КонецЕсли; Возврат Найти(Строка, ПодстрокаПоиска); КонецФункции Функция СтрНачинаетсяС(Строка, ПодстрокаПоиска) Экспорт Возврат (Найти(Строка, ПодстрокаПоиска)=1); КонецФункции Функция СтрЗаканчиваетсяНа(Строка, ПодстрокаПоиска) Экспорт Возврат Прав(Строка, СтрДлина(ПодстрокаПоиска)) = ПодстрокаПоиска; КонецФункции Функция СтрСоединить(МассивСтрок, Разделитель = "") Экспорт Возврат СтроковыеФункцииКлиентСервер.ПолучитьСтрокуИзМассиваПодстрок(МассивСтрок, Разделитель); КонецФункции Функция СтрРазделить(Строка, Разделитель, ВключатьПустые = Ложь) Экспорт Возврат СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(Строка, Разделитель, ВключатьПустые); КонецФункции // СтрРазделить() Функция СтрШаблон(Знач СтрокаПодстановки, Параметр1, Параметр2 = Неопределено, Параметр3 = Неопределено, Параметр4 = Неопределено, Параметр5 = Неопределено, Параметр6 = Неопределено, Параметр7 = Неопределено, Параметр8 = Неопределено, Параметр9 = Неопределено) Экспорт Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаПодстановки, Параметр1, Параметр2, Параметр3, Параметр4, Параметр5, Параметр6, Параметр7, Параметр8, Параметр9); КонецФункции Функция ФорматированнаяСтрока(Содержимое, Шрифт = Неопределено, ЦветТекста = Неопределено, ЦветФона = Неопределено, Ссылка = Неопределено) Экспорт Описание = ИнтеграцияЕГАИСУТКлиентСервер.ОписаниеФорматированнойСтроки(); Описание.Заголовок = Содержимое; Описание.Шрифт = Шрифт; Описание.ЦветТекста = ЦветТекста; Описание.ЦветФона = ЦветФона; Описание.Ссылка = Ссылка; Возврат Описание; КонецФункции // ФорматированнаяСтрока() | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |