| 
    
        
     
     | 
    
    
  | 
пропадает значение локальной переменной при отладке и зависает | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Игорь_МММ    
     25.01.22 
            ✎
    13:32 
 | 
         
        в режиме отладки на определенной строке пропадают значения всех переменных, при дальнейшем шаге - зависание
 
        код простой начало: Запрос = Новый Запрос; Запрос.УстановитьПараметр("МатрицаПроизводства" ,МатрицаПроизводства); Запрос.УстановитьПараметр("ПолуфабрикатыМаксЦепочка",ПолуфабрикатыМаксЦепочка); Запрос.УстановитьПараметр("ОбеспечениеЗаказов" ,ОбеспечениеЗаказов); Запрос.УстановитьПараметр("ВремяНачала" ,ВремяНачала); #Область ВременныеТаблицы Запрос.Текст = "ВЫБРАТЬ | .... " затем идет несколько секций Запрос.Текст = Запрос.Текст + " ... " при выполнении одной из них значения переменных пропадают (F2 не доступно) и при следующем шаге виснет что бы это могло быть?  | 
|||
| 
    1
    
        acht    
     25.01.22 
            ✎
    13:35 
 | 
         
        Выделение памяти при конкатенации строк, например.     
         | 
|||
| 
    2
    
        Игорь_МММ    
     25.01.22 
            ✎
    13:59 
 | 
         
        сделал одну строку, получилось 704 строки, результат тот же ... ограничения нет на длину текста запроса?     
         | 
|||
| 
    3
    
        DrShad    
     25.01.22 
            ✎
    14:02 
 | 
         
        нету     
         | 
|||
| 
    4
    
        Мимохожий Однако    
     25.01.22 
            ✎
    14:03 
 | 
         
        "Запрос.Текст" замени на "ТексЗапроса". И посмотри еще раз, что слепилось     
         | 
|||
| 
    5
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    14:23 
 | 
         
        (0) Версия платформы какая?
 
        Может у вас это? Отладка с использованием протокола HTTP. Код ошибки: 10232642 Статус: Планируется исправление в будущих версиях Зарегистрирована: 12.07.2021. Планируется исправить: "Технологическая платформа", версия 8.3.21. Описание: При отладке с использованием протокола HTTP при включенной отладке фоновых заданий или любых других предметов отладки, которые могут автоматически подключаться, при срабатывании точки останова, конфигуратор может постоянно переключать фокус на себя у любого активного окна. Способ обхода: Использовать протокол отладки TCP или не использовать автоматическое подключение предметов отладки. Дополнительная информация: Ошибка платформы. Конфигуратор переключает фокус активного окна на код в другом предмете отладки (каком-нибудь фоновом задании, например) и соответственно F2 недоступно. Поставить точку останова на следующей строке кода, после той, где происходит зависание и нажать f5 (продолжить отладку).  | 
|||
| 
    6
    
        Игорь_МММ    
     25.01.22 
            ✎
    14:29 
 | 
         
        (5) пробовал на двух 3.15.1830 и 3.18.1698 
 
        (4) ТекстЗапроса получаю, проблема возникает на Запрос.Текст = ТекстЗапроса  | 
|||
| 
    7
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    14:42 
 | 
         
        Синтаксконтроль успешно проходит?
 
        ТекстЗапроса можно скопипастив открыть в конструкторе запроса? Может там какая-нибудь хитрая строка получается, которая проходит синтаксконтроль (т.к. это просто строка), но является ошибкой с точки зрения текста запроса. То есть ошибка в самом получившемся после конкатенации тексте запроса.  | 
|||
| 
    8
    
        Игорь_МММ    
     25.01.22 
            ✎
    14:54 
 | 
         
        (7) конструктор текст скушал     
         | 
|||
| 
    9
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    15:03 
 | 
         
        У запроса нет менеджера временных таблиц, содержащего уже таблицы с такими же именами, которые используются в тексте этого запроса?     
         | 
|||
| 
    10
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    15:07 
 | 
         
        + к (9) Возможно дублирование имён временных таблиц или некорректное использование временных таблиц.     
         | 
|||
| 
    11
    
        Игорь_МММ    
     25.01.22 
            ✎
    15:19 
 | 
         
        (9) менеджера нет (10)разве все это проверяется не при выполнении запроса?     
         | 
|||
| 
    12
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    15:55 
 | 
         
        (11) По идее да. Но если ты действительно исключил вариант (5) со сменой фокуса конфигуратора из-за ошибки платформы, испробовав другие версии, то особых вариантов не остаётся. Только какая-то ошибка, которая не выявляется синтаксконтролем и при компиляции, но вылетает при исполнении кода. Что ещё может происходить в строке Запрос.Текст = ТекстЗапроса? А что в следующей строке?     
         | 
|||
| 
    13
    
        hhhh    
     25.01.22 
            ✎
    16:16 
 | 
         
        может текст запроса содержит непечатные символы.     
         | 
|||
| 
    14
    
        Игорь_МММ    
     25.01.22 
            ✎
    16:32 
 | 
         
        Запрос сделал через конструктор скопировав в него текст запроса. Результат тот же: на этапе Запрос.Текст = ТекстЗапроса, пропадают переменные, на след. строке все виснет     
         | 
|||
| 
    15
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    16:32 
 | 
         
        (13) В (8) автор утверждает, что получившийся текст запроса переносится через буфер обмена в конструктор запроса и тот успешно его проглатывает.     
         | 
|||
| 
    16
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    16:40 
 | 
         
        Чтобы исключить проблему с текстом запроса, попробовать остановить отладку перед строчкой Запрос.Текст = ТекстЗапроса и установить в качестве значения переменной ТекстЗапроса какой-то простейший текст запроса типа "ВЫБРАТЬ 1 ИЗ Справочник.Организации". Посмотреть что будет. Если отладка пойдёт дальше, значит проблема именно в тексте запроса или объекте Запрос.     
         | 
|||
| 
    17
    
        Dmitrii    
     гуру 
    25.01.22 
            ✎
    16:43 
 | 
         
        Если отладка зависнет, значит проблема в платформе или в отладке. Пытаться менять протокол отладки, чистить кеш на компе и на сервере, менять версии платформы, возможно что-то ещё.     
         | 
|||
| 
    18
    
        Игорь_МММ    
     25.01.22 
            ✎
    21:29 
 | 
         
        решило проблему создание чистой базы с загрузкой dt из текущей. Текст запросу присваивается, но проблема где-то в данных (или в самом запросе) поскольку запрос и за пол-часа не отрабатывает
 
        видимо в какой-то момент это находит отражение в кеше и начинаются глюки. Спасибо всем откликнувшимся  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |