Действия
Разработка #6670
открытоРеализовать универсальную функцию для переопределения полей запроса под различные конфигурации
Разработка #6670:
Реализовать универсальную функцию для переопределения полей запроса под различные конфигурации
Дата начала:
Срок завершения:
Готовность:
0%
Оценка временных затрат:
Обновлено кб99 Евгений 2 дня назад
· Изменено
Реализован упрощенный механизм адаптации интеграции под любую конфигурацию.
В общем модуле кб99_ВСД_Общий все возможные поля, по которым могут быть расхождения в различных конфигурациях вынесены в переопределяемые функции:
Функция ПолучитьПредставлениеПолейДокументаВЗапрос() Возвращает структуру с наименованиями объектов метаданных для использования в запросах Ключи структуры: ПолеСклад = Название справочника Склады в конфигураторе ТекстПоляГоловнойКонтрагент = Определение плательщика НаименованиеТабличнойЧастиТовары = Название табличной части с товарами в документах ТекстПоляИсточникОтгрузка = Название документа Реализация в конфигураторе ТекстПоляИсточникЗаказ = Название документа Заказ клиента в конфигураторе ТекстПоляИсточникПеремещение = Название документа Перемещение в конфигураторе ПолеСкладОтправитель = Название реквизита Склад отправитель документа Перемещение ПолеСкладПолучатель = Название реквизита Склад получатель документа Перемещение СправочникСклады = Название справочника Склады в конфигураторе
Функция ЭтоДокументПеремещение(ВыбДок) Возвращает результат проверки Тип проверяемого документа = документ перемещение
Функция ЭтоДокументОтгрузка(ВыбДок) Возвращает результат проверки Тип проверяемого документа = документ реализация
Функция ПолучитьТекущегоПользователя() Возвращает текущего авторизованного пользователя
Для адаптации интеграции необходимо переопределять только эти функции. Функции с запросами остаются общими.
Обновлено кб99 Евгений 2 дня назад
Для УНФ модуль переопределения будет выглядеть так
// Модуль используется для переопределения стандартный функций модуля Интеграции // чтобы при обновлении изменения сохранились - используйте переопределение в этом модуле // переопределение функций модуля Функция НайтиФункцию( ИмяФункции ) Экспорт ПереопределяемыеФункции = новый Структура; ПереопределяемыеФункции.Вставить("ЭтоДокументОтгрузка", Истина); ПереопределяемыеФункции.Вставить("ЭтоДокументПеремещение", Истина); ПереопределяемыеФункции.Вставить("ПолучитьПредставлениеПолейДокументаВЗапрос", Истина); Результат = ПереопределяемыеФункции.Свойство( ИмяФункции ); Возврат Результат; КонецФункции Функция ЭтоДокументОтгрузка(ВыбДок) Экспорт Возврат ТипЗнч(ВыбДок) = Тип("ДокументСсылка.РасходнаяНакладная"); КонецФункции Функция ЭтоДокументПеремещение(ВыбДок) Экспорт Возврат ТипЗнч(ВыбДок) = Тип("ДокументСсылка.ПеремещениеЗапасов"); КонецФункции Функция ПолучитьПредставлениеПолейДокументаВЗапрос() Экспорт Результат = Новый Структура; Результат.Вставить("ПолеСклад", "Склад"); Результат.Вставить("ТекстПоляГоловнойКонтрагент", "Контрагент.ГоловнойКонтрагент"); Результат.Вставить("НаименованиеТабличнойЧастиТовары", "Запасы"); Результат.Вставить("ТекстПоляИсточникОтгрузка", "РасходнаяНакладная"); Результат.Вставить("ТекстПоляИсточникЗаказ", "ЗаказПокупателя"); Результат.Вставить("ТекстПоляИсточникПеремещение", "ПеремещениеЗапасов"); Результат.Вставить("ПолеСкладОтправитель", "СтруктурнаяЕдиница"); Результат.Вставить("ПолеСкладПолучатель", "СтруктурнаяЕдиницаПолучатель"); Результат.Вставить("СправочникСклады", "СтруктурныеЕдиницы"); Возврат Результат; КонецФункции
Действия