AXForum  
Вернуться   AXForum > Блоги > Заметки по Dynamics Ax от Poleax
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

Оценить эту запись

Вспомогательный документооборот. Поле "Код конфигурации вспомогательного бизнес-правила" lookup ни чего не показывает.

Запись от Poleax размещена 08.04.2011 в 10:00
Обновил(-а) Poleax 11.04.2011 в 16:31

На форме РсП\Настройка\Конфигурация документооборота. Вкладка Разное --> кнопка Изменить

Форма "Бизнес-правило: Шаблон выплаты клиенту"
Вкладка Подробности. Добавляем Вспомогательный документооборот. (Идентификатор вспомогательного документооборота)
Выбираем "Вспомогательный документооборот 1"

Поле "Код конфигурации вспомогательного бизнес-правила" lookup ни чего не показывает. Почему? (исследуем)
Нажмите на изображение для увеличения
Название: wfTempDoc.png
Просмотров: 215
Размер:	87.0 Кб
ID:	123

Выявляем причину:
На форме "Конфигурация документооборота" выбран "Шаблон выплаты клиенту" это есть \Workflow\Workflow Templates\CustPaymentTemplate

Для него через свойство Document выбран класс CustPaymentWFApprDoc наследованный от класса LedgerJournalWFApprovalDocument
У LedgerJournalWFApprovalDocument есть метод getQueryName возвращающий Query\LedgerJournalWFApprovals.
У Query \LedgerJournalWFApprovals DataSource = LedgerJournalTable

Lookup вызывается из формы "Конфигурация документооборота" \Forms\WorkflowConfiguration\Data Sources\WorkflowSubWorkflowTable\Fields\ConfigurationSequenceNumber\Methods\lookup

Вызывается \Classes\WorkflowConfigurationForm\subWorkflowConfiguration_lookup, где видим строку
X++:
formRunLookup.setTemplateFilterList(subWorkflowTemplateList);
Переменная subWorkflowTemplateList содержит названия шаблонов документооборота, которые можно выбирать как вспомогательные.

В методе \Classes\WorkflowConfigurationBase\loadSubWorkflowTemplates
как раз и собирается список subWorkflowTemplateList.
При добавлении в список шаблоны документооборота проходят фильтрацию:
  1. Шаблоны документооборота настроены на свои таблицы. Шаблон пройдет фильтрацию, если его таблица был замечена в связи у поля с таблицы LedgerJournalTable. (Проверка через класс SysDictRelation метод loadFieldRelation)
    Проверяются все не системные поля таблицы. В связанной таблице должно быть хотя бы одна запись.
    Список отобранных связанных таблиц содержится в parentTableRelations.
    Не путать с \Data Dictionary\Tables\LedgerJournalTable\Relations
  2. во вспомогательные шаблоны могуть попать все кроме самого себя Т.е. Lookup не покажет выборку со связкой на CustPaymentTemplate если мы настраиваем сам CustPaymentTemplate.
  3. Ну и проверка на конфигурационные ключи у шаблонов документооборота.
В итоге отобранные шаблоны идут как фильтр для формы WorkflowConfigurationLookup

В Lookup выдим выборку по таблице WorkflowConfigurationTable с доп. условиями:
  • должны быть активна Конфигурации документооборота
  • Тип конфигурации = Определение (Тип конфигурации определяет, является ли конфигурация определением или она представляет собой конфигурацию обработки (времени выполнения).)

P.S. Если subWorkflowTemplateList пуст, то Lookup показывает все конфигурации документооборота.
Размещено в Без категории
Просмотров 10103 Комментарии 0
Всего комментариев 0

Комментарии

 


Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:07.