gifts2017

Методика доработки конфигурации без снятия с замка (добавление реквизитов для справочников и документов)

Опубликовал And Dna (AnddnA) в раздел Печать - Пакетная печать

Методика доработки конфигурации без снятия с замка (добавление реквизитов для справочников и документов)

В данной статье мы рассмотрим механизм добавления реквизитов справочников путем добавления реквизитов в конфигураторе и альтернативный ему способ (наиболее полно реализованный в современных конфигурациях на основе управляемых форм (УНФ, УТ 11, БУХ 3.0)) – добавление реквизитов в пользовательском режиме через «Дополнительные реквизиты и свойства» (синонимы - «Наборы дополнительных реквизитов и сведений» / «Наборы свойств»).

На примере УНФ 1.4.  добавим реквизит «БизнесРегион» для справочника «ДоговорыКонтрагентов».

В первом варианте нам необходимо в конфигураторе в справочник «ДоговорыКонтрагентов» добавить реквизит «БизнесРегион» (плюс при необходимости создать сам справочник «БизнесРегион»)

Во втором варианте в пользовательском режиме добавляем дополнительное свойство для справочника «ДоговорыКонтрагентов». Для того чтобы такая возможность стала возможной необходимо включить механизм «дополнительных реквизитов и сведений» ,- для УНФ это делается «Администрирование» -> «Настройки» -> «Сервисные настройки» -> флажок «Использовать дополнительные реквизиты и сведения». Само добавление реквизитов делается «Администрирование» -> «Наборы дополнительных реквизитов и сведений» – в подборе можно создать новое свойство или выбрать существующее (в нашем случае мы будем привязывать его к справочнику «ДоговорыКонтрагентов»).

На рис. представлен результат работы обоих вариантов.

 Итого, для пользователя разница минимальна. Стоит упомянуть, что во втором случае кроме того, что совершенно не «тревожится» конфигурация, реквизит будет подхвачен отчетами на СКД (необходимая связь в последних релизах уже включена («Характеристики»))

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

Первый вариант – обычное получение реквизита от договора:

      "ВЫБРАТЬ

      |               РасходнаяНакладная.Договор.БизнесРегион КАК БизнесРегион,

      |               РасходнаяНакладная.Договор,

      |               РасходнаяНакладная.Ссылка,

      |               РасходнаяНакладная.СуммаДокумента КАК СуммаДокумента,

      |               РасходнаяНакладная.Организация,

      |               РасходнаяНакладная.Проведен

      |ИЗ

      |               Документ.РасходнаяНакладная КАК РасходнаяНакладная

      |ГДЕ

      |               РасходнаяНакладная.Заказ.ДатаОтгрузки = &ДатаОтгрузки

      |               И РасходнаяНакладная.Заказ.Дата МЕЖДУ &НачДата И &КонДата

      |               И РасходнаяНакладная.ПометкаУдаления = ЛОЖЬ

      |

      |УПОРЯДОЧИТЬ ПО

      |               БизнесРегион,

      |               РасходнаяНакладная.Контрагент,

      |               РасходнаяНакладная.Договор

      |ИТОГИ

      |               СУММА(СуммаДокумента)

      |ПО

      |               БизнесРегион";

 

Во втором варианте мы соединимся с табличной частью справочника «ДоговорыКонтрагентов»  - «ДополнительныеРеквизиты»  (где физически находится созданный нами в пользовательском режиме реквизит «БизнесРегион»)

 

      "ВЫБРАТЬ

     |               РасходнаяНакладная.Контрагент,

      |               РасходнаяНакладная.Договор,

      |               РасходнаяНакладная.Ссылка,

      |               РасходнаяНакладная.СуммаДокумента КАК СуммаДокумента,

      |               РасходнаяНакладная.Организация,

      |               РасходнаяНакладная.Проведен

      |ПОМЕСТИТЬ ВТ

      |ИЗ

      |               Документ.РасходнаяНакладная КАК РасходнаяНакладная

      |ГДЕ

      |               РасходнаяНакладная.Заказ.ДатаОтгрузки = &ДатаОтгрузки

      |               И РасходнаяНакладная.Заказ.Дата МЕЖДУ &НачДата И &КонДата

      |               И РасходнаяНакладная.ПометкаУдаления = ЛОЖЬ

      |;

      |

      |////////////////////////////////////////////////////////////////////////////////

      |ВЫБРАТЬ

      |               ДоговорыКонтрагентовДополнительныеРеквизиты.Свойство,

      |               ДоговорыКонтрагентовДополнительныеРеквизиты.Значение КАК ДоговорБизнесРегион,

      |               ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка КАК Договор

      |ПОМЕСТИТЬ ВТ_БизнесРегион

      |ИЗ

    |               Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты КАК ДоговорыКонтрагентовДополнительныеРеквизиты

      |ГДЕ

      |               ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка В

      |  (ВЫБРАТЬ  ВТ.Договор  ИЗ  ВТ КАК ВТ)

      |               И ДоговорыКонтрагентовДополнительныеРеквизиты.Свойство.Наименование = ""БизнесРегион""

      |;

      |

      |////////////////////////////////////////////////////////////////////////////////

      |ВЫБРАТЬ

      |               ВТ.Контрагент,

      |               ВТ.Договор,

      |               ВТ.Ссылка,

      |               ВТ.СуммаДокумента КАК СуммаДокумента,

      |               ВТ.Организация,

      |               ВТ.Проведен,

      |               ВТ_БизнесРегион.ДоговорБизнесРегион, КАК ДоговорБизнесРегион

      |ИЗ

      |               ВТ КАК ВТ

      |                               ЛЕВОЕ СОЕДИНЕНИЕ ВТ_БизнесРегион КАК ВТ_БизнесРегион

      |                               ПО ВТ.Договор = ВТ_БизнесРегион.Договор

      |

      |УПОРЯДОЧИТЬ ПО

      |               ВТ_БизнесРегион.ДоговорБизнесРегион,

      |               ВТ.Контрагент,

      |               ВТ.Договор

      |ИТОГИ

      |               СУММА(СуммаДокумента)

      |ПО

      |               ДоговорБизнесРегион";

 

Итого, для программиста тоже разница минимальна. Как говорится «а если нет разницы, зачем …» снимать конфигурацию с замка ?

 

PS: в приложении приводится внешняя обработка (пакетная печать накладных) реализующая указанный функционал (используется несколько реквизитов)

Скачать файлы

Наименование Файл Версия Размер
ПакетнаяПечатьНакладных.epf 48
.epf 18,27Kb
14.12.12
48
.epf 18,27Kb Скачать
Методика доработки конфигурации без снятия с замка.doc 20
.doc 83,00Kb
14.12.12
20
.doc 83,00Kb Скачать
рис 1.JPG 9
.JPG 40,98Kb
14.12.12
9
.JPG 40,98Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Евгений Сосна (pumbaE) 14.12.12 19:35
Добавленный реквизит в конфигурацию, тоже не сильно влияет на обновление.

Свойства не сильно помогут, если какой-то показатель необходимо будет учитывать в проведении, обработке обеспечения складскими запасами (минимальное количество отгрузки поставщика) и т.д.

Имхо: свойствами можно баловаться, когда четко знаем, что будут в основном в отчетах использоваться, как дополнительный уровень аналитики.
portal_orsk; +1 Ответить 1
2. Алексей 1 (AlX0id) 14.12.12 20:55
(1) pumbaE,
Дополнительный реквизит, может, и не влияет на обновление.. Но форму-то надо будет для него поменять. А вот это уже повлияет и не слабо.

А касательно самой публикации - называть "доработкой" использование типовых механизмов.. как минимум странно.
Soikalv; Трактор; +2 Ответить 1
3. Сергей (seermak) 15.12.12 20:47
и как же теперь использовать механизм Дополнительных реквизитов и сведений?!))) он уже настроен и под замком.....
4. And Dna (AnddnA) 15.12.12 21:46
Специфика этой таблицы в том и состоит, что ее содержимое выводится на управляемую форму как псевдо реквизит.
Ее не нужно править вручную. Значения добавляются при добавлении свойств к объекту.

При проведении тоже никто не мешает использовать подобные псевдо реквизиты - особенно если делать это в подписках на события.
5. Дмитрий Утенков (automatizator) 20.12.12 14:29
Мануал по использованию доп реквизитов с неожиданным заголовком )))))
Трактор; +1 Ответить
6. Павел Парамонов (anchovy) 26.12.12 17:57
Необходимо добавить, что при использовании отборов в отчетах в момент выбора значения для отбора вы увидите громадный список справочника, хранящего значения доп.реквизитов. ИМХО кривое решение от 1С, не достойное того, чтобы писать о нем статьи.
7. Александр Лагунов (kit) 05.02.13 20:45
А мне доп. реквизиты часто помогают при несложных внедрениях. Конфа остается типовой, а дополнительная информация, необходимая пользователям, работает на их благо.
8. Аркадий Кучер (Abadonna) 10.05.13 15:35
(2)
Дополнительный реквизит, может, и не влияет на обновление.. Но форму-то надо будет для него поменять.

А ни фига не повлияет, если реквизиты садить на форму программно-динамически. Одну только строчку в общ. модуле добавить. Я таким образом в БП прицепил свою систему бюджетирования. Одна или, максимум, две строчки в стандартке изменены. А доп реквизиты сидели программно на ПКО, РКО, Платежках входящих/исходящих... еще где-то...
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа