Digitals Exchange

Вопрос по поводу Digitals Exchange:
[Новые возможности программы - #26 від Sergiy_Oliynyk)

А почему же не записываются в Output.txt отрицательные параметры??? (площадь,X,Y,Z, и.т.д.) :frowning:

Совокупность геометрических параметров - чем не уникальный идентификатор объекта ?:idea:

Продолжаю искать пути применения этого Exchange…

Проблема №1:

[Input] File=Input.txt Parameters=1002 CheckInterval=250 Action=@Map.Selected.ChangeParameter ID1002 12345
Все это пишется в CONFIG, который считывается только при запуске программы, а значит может быть только ОДИН набор Parameters и Action, что очень плохо.

В разных случаях могут понадобиться разные Parameters и уж подавно разные Action.

Конкретная задача:
Для связи должен использоваться ключевой параметр.
А как быть если объект новый и параметр пустой?.. Надо его заполнить, причем не руками, а внешней программой. Вот этого я то и не могу делать (если могу, то подскажите как)

Нельзя ли поступить также как с формулами?

[Input]
File=Input.txt
Parameters=FFF(params.txt)
CheckInterval=250
Action=FFF(actions.txt)

P.S. Кстати функция @Map.Selected.ChangeParameter ID1002 12345
при использовании в Exchange работает неправильно. Выбранным объектам присваивается не значение “12345” а значение параметра ID1002 того объекта, который был выделен ДО ЭТОГО (до появления input.txt) :open_mouth:

Exchange усовершенствован:

  1. Нормально обрабатываются отрицательные параметры.

  2. В Астion теперь работают функции.
    (раньше они не работали вообще)

  3. Добавлена возможность динамического указания перечня входных параметров и выполняемых действий.
    Конфиг в этом случае должен выглядеть так:
    [Input]
    File=Input.txt
    Parameters=
    CheckInterval=250
    Action=

    А список параметров и выполняемых действий должен идти в первых двух строках входного файла Input.txt. (я понял, что они все равно генерятся программой на лету, так что нет смысла раскидывать их еще по двум разным файлам)
    Пример входного файла Input.txt:
    1002
    @Map.Selected.ChangeParameter ID1002 12345
    Значения параметра для поиска (которые раньше начинались с первой строки файла)

:smiley: :smiley: :smiley:
Вот спасибо! Будем пробовать!

Ну немножко еще надо доделать: :slight_smile:

У нас первичная задача заполнить ключевой параметр у нового обекта при помощи внешней программы

Для этого надо чтоб при отсутствии 3-й сточки в Input’е срабатывал Action над помеченным объектом (без предварительного поиска по параметрам)
Т.е. если 3-й сточки нет вообще, то искать ненадо, а сразу Action, а если есть, то сначала поиск.

Сейчас при отсутсвии 3-й срочки ничё не срабатывает, а при пустом значении - помечается все, что пустое.


В связи с этим еще одна давняя тема возникает:
Если пользоваться каким-то праметром как ключом - надо его защищать от вмешательства в него пользователя.

Есть же в менеджере параметров статус параметра “видимый”. Надо чтоб этот статус влиял на редактируемость/видимость значения параметра в закладке “Инфо”, а все остальные возможности изменения значения параметра остались в силе.

В частности нам нужно, чтоб ключевой параметр менялся только програмно. Тогда мы сможем быть уверенны в его достоверности.

Небольшой глюк:

делаем input.txt вида:

Все работает, но не меняется в нижней строке число помеченных объектов. Это несколько дезинформирует о происходящем… :confused: