20 октября, суббота 04:00
Bankir.Ru

Объявление

Свернуть
Пока нет объявлений.

Собственные модули в Workflow

Свернуть
X
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Собственные модули в Workflow

    Добрый день!

    Кто нибудь пробовал в скриптах Workflow вызвать внешнюю программу.
    А вообще меня больше интересует подключение DLL и вызов ее функций.
    Есть ли такая возможность вообще в данной АБС (т.е. например как в RS-Bank)?

    Нужно мне это для того, что бы создавать свои визуальные формы, а тот инструментарий который в Workflow (в части визуальных компонент) меня не устраивает.

  • #2
    Теоретически такая возможность есть. Практически - один раз поразвлекались и обошлись встроенными средствами или честной внешней прогой, вызываемой не из скрипта.
    А что конкретно не устраивает в имеющихся механизмах рисования интерфейса?
    Serg Voronov

    Комментарий


    • #3
      Как простой пример, это создание на форме динамических списков. Т.е. те, которые бы создавались в процессе поднятия формы, а не прописывались жестко в домене.
      Более сложные примеры это создание форм с набором данных, на подобии их окон класса Browse.
      А у Вас есть какой нибудь рабочий пример?

      Комментарий


      • #4
        Вот, что мне ответили на форуме компании

        Добрый день.
        Нашла эту рекомендацию тут, на форуме:
        В DiasoftŠcript существует возможность вызвать любую функцию из любой DLL. Вот список шагов, необходимых для этого. Все это производится в словарной системе в пользовательском проекте.

        1. Регистрируется внешняя DLL, Справочники -> Приложения, в ней заводится фальшивый модуль (как бы с исходным текстом), с любым именем.
        2. В списке методов заводятся глобальные функции по шаблону Source, привязываются к этой DLL, к модулю, указывается calling convention, прототип, и есть одно поле, 'Имя в DLL', которое заполняется для не-кларионовских DLL как истинное экспортное имя.
        3. Все, функцию можно вызывать из скрипта.
        Если написать свою DLL, и в ней экспортировать свою функцию, которая будет поднимать стандартный диалог выбора файла, и возвращать имя выбранного файла, то должно сработать

        Комментарий


        • #5
          Вячеслав Лунев
          Ответ на форуме я читал. примерно тоже самое и мне предлагалось в свое время.
          Динамических списков не создавали, всегда хватало статических или лукапов в таблицы. Брозы собственные иногда нужны, но есть несильно документированная возможность редактировать SQL-Browse, нам пока этого хватило, а вот с лукапами действительно проблема. Но чаще всего удается обойтись или доменом или штатными или заказать у дельфина один конкретный лукап. Это проще, чем вызов внешних прог, который из клариона всегда работал кривовато, а уж из скрипта и подавно.
          Serg Voronov

          Комментарий


          • #6
            Дело в том, что наши технологи в очередной раз придумали гениальное ТЗ.
            Раньше мне удовалось выкручиваться стандартными средствами системы.

            Но сейчас задача стоит таким образом.

            Произвести выборку данных по определенным условиям, результат вернуть в Grid.
            Экономист анализирует полученные данные, помечает нужные строки и нажимает кнопку "Обработать".
            Система должна выполнить определенные действия только над выделенными строками.

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

            ни когда не приходилось решать такого рода задачи, без обращения в диасофт?


            в рсбанке я могу реализовать. осталось решить проблему в Workflow.

            Комментарий


            • #7
              А пользовательские параметры представления не курили? Документ находится в пакете sql_browse.exe (Расширение функциональности SQL-Browse ). А уж потом обычные администрируемые массовые переходы.
              Serg Voronov

              Комментарий


              • #8
                есть несильно документированная возможность редактировать SQL-Browse, нам пока этого хватило, а вот с лукапами действительно проблема.
                Сергей, а что за возможность, если не секрет?..
                P.S. Динамические лукапы работают в DSForm, но только с одним ограничением - "напихивать" в них данные нужно перед визуализацией самой формы...

                Комментарий


                • #9
                  В словарке заходим на класс со скульной брозой (например tAccountAnl, жмем F3, находим метод SQLBrowse, на нем F2 (поля SQL-запроса) и получаем некоторую форму по конструированию. Можно тобавить связанную таблицу, только по связям из словарки, нет возможности прописывать в поля связи константы. Соотв. невозможно реализовать связь скажем с tClassifier. Если удалось добавить - из привязанной таблицы выбираем нужные поля для выдачи в результирующем select'е. Главный хинт - найти записи в t_attribute, отвечающие за эти поля и поставить им скулем пользовательский проект, ибо дельфин не сподобился сделать это и первый же перелив словарки убьет ваши довески.
                  Serg Voronov

                  Комментарий


                  • #10
                    Serg_FSB пасиб! Полезно и познавательно...

                    Комментарий

                    Пользователи, просматривающие эту тему

                    Свернуть

                    Присутствует 1. Участников: 0, гостей: 1.

                    Обработка...
                    X