| 
    
            
         
         | 
    
    
  | 
Занятная переписка с ИТС | ☑ | ||||||
|---|---|---|---|---|---|---|---|---|
| 
    0
    
        Zhuravlik    
     29.05.24 
            ✎
    14:01 
 | 
    
 
        Всем привет. Состоялся "интереснейший" диалог по поводу реализации метода в БСП. Интересно узнать мнение разрабов по этому поводу. 
 
        Суть проблемы - в файловой базе программно запускаю отчет по внедрению БСП. При этом есть подключенное активное расширение. Мне его не надо тестировать, просто оно есть. Отчет упорно запускается в фоне, и т.к. формирование программное - я фоновый запуск не хочу, и подредактировал параметры запуска метода отчета: ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(ИдентификаторФормы); ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Проверка внедрения БСП'"); ПараметрыВыполнения.БезРасширений = Истина; ПараметрыВыполнения.СРасширениямиБазыДанных = Ложь; ПараметрыВыполнения.ЗапуститьНеВФоне = Истина; // ... РезультатВыполнения = ДлительныеОперации.ВыполнитьФункциюВНесколькоПотоков(ИмяФункции, ПараметрыВыполнения, ПараметрыМетода); Он все-равно запускается в фоне. Базу с параметром "РежимОтладки" запускать смысла нет, т.к. если раскопать модуль длительных операций, то вызов уходит в ДлительныеОперации.ВыполнитьВФоне. А там такое условие: //.. ВыполнитьБезФоновогоЗадания = Не ПараметрыВыполнения.БезРасширений И Не ПараметрыВыполнения.СРасширениямиБазыДанных И (ОбщегоНазначения.РежимОтладки() Или ПараметрыВыполнения.ЗапуститьНеВФоне Или (ЕстьФоновыеЗаданияВФайловойИБ() И Не ПараметрыВыполнения.ЗапуститьВФоне) Или Не ВозможноВыполнитьВФоне(ИмяПроцедуры)); //.. Мое последнее сообщшение в поддержку было таким: ...Меня смутило условие: Не ПараметрыВыполнения.БезРасширений И Не ПараметрыВыполнения.СРасширениямиБазыДанных Не ПараметрыВыполнения.БезРасширений = с расширениями Не ПараметрыВыполнения.СРасширениямиБазыДанных = без расширений Т.е. получается что Истина ожидается если "с расширениями" и "без расширений". Вы тут ничего странного не видите? ... Ответ: ...чтобы ВыполнитьБезФоновогоЗадания было Истина, нужно чтобы ПараметрыВыполнения.БезРасширений было ЛОЖЬ и ПараметрыВыполнения.СРасширениямиБазыДанных было ЛОЖЬ, а не как вы пишите, чтобы это было ИСТИНА. При этом не важно есть режим отладки или нет, есть признак ЗапуститьНеВФоне или нет, т.к. БезРасширений и СРасширениямиБазыДанных имеют над ними приоритет в силу технических возможностей платформы. У меня что-то разрыв шаблона. Это я чего-то не понимаю, или все таки тупит поддержка?  | 
|||||||
| 
    1
    
        Zhuravlik    
     29.05.24 
            ✎
    14:03 
 | 
         
        + Версия БСП 3.1.9.238     
         | 
|||||||
| 
    2
    
        Garykom    
     29.05.24 
            ✎
    14:07 
 | 
        
    
  | 
|||||||
| 
    3
    
        Garykom    
     29.05.24 
            ✎
    14:29 
 | 
         
        wiki:Булева_алгебра
 
        раскрытие скобок ВыполнитьБезФоновогоЗадания = Не ПараметрыВыполнения.БезРасширений И Не ПараметрыВыполнения.СРасширениямиБазыДанных И ...= ВыполнитьБезФоновогоЗадания = НЕ(ПараметрыВыполнения.БезРасширений ИЛИ ПараметрыВыполнения.СРасширениямиБазыДанных) И ...  | 
|||||||
| 
    4
    
        PLUT    
     29.05.24 
            ✎
    14:11 
 | 
         
        (0) ну надо это просто принять как должное и "двигаться дальше в направлении намеченной цели"
 
        "сол/фасол пишется с мягким знаком, а вилька/тарелька - без мягкого" я тоже искренне обескуражен был, что некоторые методы платформы не работают в жЫрном толстом режиме клиента. а уж как компоновку данных (СКД) корёжит в толстом....  | 
|||||||
| 
    5
    
        Lama12    
     29.05.24 
            ✎
    14:18 
 | 
         
        (0) Они тебя не поняли. По мне, так и оба утверждения верны. ☺ Но полагаю, что и мое утверждение имеет неоднозначное трактование.     
         | 
|||||||
| 
    6
    
        Garykom    
     29.05.24 
            ✎
    14:32 
 | 
         
        (4) пофиг на СКД в толстом
 
        программные лицензии и проверку лицензионности конфы в толстом клиенте корежит в т.ч. для лицензии для разработчиков  | 
|||||||
| 
    7
    
        Мультук    
     29.05.24 
            ✎
    14:32 
 | 
         
        (0)
 
        Обратите внимание, что в документации описано поведение флагов ТОЛЬКО при ИСТИНА. А вот поведение флагов при ложь не описано. В данном случае ложь это что-то вроде "неопределено". А вы исходя из булевой логики, считаете что флаг при "ЛОЖЬ" делает обратное действие, но имхо по замыслу разработчиков флаг при "ЛОЖЬ" ничего не делает. P.S. Без понятия как и зачем так было сделано. Скорее всего "так исторически сложилось, переделывать не стали"  | 
|||||||
| 
    8
    
        Zhuravlik    
     29.05.24 
            ✎
    15:08 
 | 
         
        (3) от перестановки слагаемых сумма не меняется..
 
        (7) действительно, спасибо  | 
|||||||
| 
    9
    
        Garykom    
     29.05.24 
            ✎
    15:20 
 | 
         
        (8)  
        от перестановки слагаемых сумма не меняется.. 
Не понял что не нравится Как в документации написано так и работает Почему так задачу поставили разработчикам - это вопрос другой Если не нравится - ну так сделай как тебе надо, обычно такое расширением правят Например для отладки внешних обработок там тоже идиотизм в типовых на БСП  | 
|||||||
| 
    10
    
        bird    
     04.06.24 
            ✎
    21:35 
 | 
         
        (0)
 
        > При этом есть подключенное активное расширение. Мне его не надо тестировать, просто оно есть. И отчету "Проверка внедрения БСП" не нужно его тестировать, поэтому он и запускается с признаком БезРасширений = Истина. > Отчет упорно запускается в фоне, и т.к. формирование программное - я фоновый запуск не хочу Если запустится не в фоне, то будет тестировать расширение, но выгружать в файлы только конфигурацию - итого у результата проверки может случиться "разрыв шаблона" Хочется не в фоне, но нужно в фоне запускать (с признаком БезРасширений = Истина), чтобы конфигурацию тестировал без влияния расширений, иначе можно получить ошибки каких нет или отсутствие ошибок, которые есть. Поддержка все правильно говорит      | 
|||||||
| 
    11
    
        bird    
     04.06.24 
            ✎
    21:56 
 | 
         
        (7) Для сведения:
 
        1. Флаги БезРасширений и СРасширениямиБазыДанных технологические (по умолчанию не используются). Они логически не имеют никакого отношения к операции, которая может быть выполнена, как прямо в сеансе, так и в фоне (как длительная операция), так их применение меняет состав метаданных, а такое изменение в текущем сеансе невозможно (метаданные постоянны от начала сеанса до его конца). 2. Поэтому говорить про "БезРасширений" в текущем сеансе или "СРасширениямиБазыДаннных" в текущем сеансе нет никакого смысла. Применение этих флагов возможно только для запуска нового сеанса, а значит: а) либо в фоне с помощью методов платформы: РасширенияКонфигурации.ВыполнитьФоновоеЗаданиеБезРасширений РасширенияКонфигурации.ВыполнитьФоновоеЗаданиеСРасширениямиБазыДанных б) либо в новом сеансе (но для варианта, аналогичного "ВыполнитьФоновоеЗаданиеБезРасширений", перед запуском нового сеанса все расширения нужно отключить). Понятно, что вариант (а) программно проще применить, чем вариант (б). Поддержка все правильно говорит      | 
|||||||
| 
    12
    
        breezee    
     05.06.24 
            ✎
    06:13 
 | 
         
        Зачем файловая?     
         | 
|||||||
| 
    13
    
        DJ Anthon    
     05.06.24 
            ✎
    06:37 
 | 
         
        не понимаю, какой смысл разговаривать с поддержкой, это ж как с кописпастой разговаривать. кинул им баг, поправили - хорошо, не поправили, ну и хсним. я думаю, что проблемы, решаемые изменением кода, перестали быть проблемами с момента изобретения расширений.     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |