2013-12-30 10:57:56
Краткое описание :
Интерфейс L_Dogovor::GETSOMKATOTES. Создание новых записей и веток не наследует иерархию позиции источника созданияОписание :
Не знаю, какая именно часть модуля Управление договорами, научитеЧто измененно :
Интерфейс L_Dogovor::GETSOMKATOTES. Создание новых записей и веток не наследует иерархию позиции источника создания
Поместил сюда, т.к. интерфейс лежит в L_Dogovor.
Смотрел на старых EXE - поведение давно не менялось, по крайней мере в 2013 г. точно.
При редактировании каталога статусов, скажем, на примере договоров, наблюдаем забавную картину:
Имеем в начале 3 стандартных статуса:
-Оформляемый
-Исполняемый
-Закрытый
Желаем завести новый пользовательский статус к ветке "Исполняемый". Помещаем на него курсор - F7 - задаем значение "111".
Все ок.
Теперь хотим завести новую ветку для этого же статуса.
1. Этом можно сделать только, если курсор находится на верхнем уровне иерархии, т.е. на значении "Исполняемый".
Если курсор стоит на внутреннем пользовательском статусе, по при нажатии Ctrl+F7 создается обычный новый пункт,
как и при нажатии просто F7. Более того, этот пункт создается не на уровне "Исполняемый", а создает новый пользовательский
статус на нижнем уровне "Закрытый".
2. Пробуем создать ветку в ситуации, когда курсор находится на верхнем уровне иерархии "Исполняемый".
Нажимаем Ctrl+F7, создается не папка, а пункт иерархии, скажем "222". Если мы хотим действительно создать новую ветку, то в этом
месте нужно нажать F7. При этом, если мы сохраняем значение этого пункта, то сделать его веткой уже не получится (т.е. в реалиях получим
при использовании Ctrl+F7 не ветку, а конечный пункт). Единственный способ создания ветки - при условии отсутствия пользовательских статусов и веток
вообще. Отрабатывает следующая последовательность: курсор стоит на стандартном статусе "Исполняемый", нажимаем Ctrl+F7, создается подчиненный
пользовательский статус (не ветка) с тем же именем "Исполняемый", если тут же нажать на новом статусе F7, то первый пользовательский статус
становится веткой иерархии, а второй - пользовательским статусом, оба - со значением "Исполняемый". Если мы правили имя первого статуса
(после Ctrl+F7), то оно скидывается в значение "родительского стандартного статуса".
3. Если мы создали пользовательский статус, то создать после этого новую ветку вообще нельзя до тех пор, пока мы не очистим все
подчиненные записи к стандартному статусу.
Ну и, наконец, собственно по заголовку проблемы: если курсор находится не на стандартном статусе, то при нажатии F7, равно как и Ctrl+F7,
создается новый пользовательский статус, но он безусловно создается как подчиненная запись к последнему значению стандартного статуса.
По логике, если нельзя от конечного пункта иерархии создавать ветку, то Ctrl+F7 вообще не должен отрабатывать. Если по F7 новый статус пользователя
можно создавать только от верхнего стандартного статуса (не предполагается глубина вложенности более 2-х уровней), то при попытке нажать F7
на конечном статусе иерархии должно появляться соотв. сообщение, а не создаваться новая запись в совершенно другом разделе иерархии.
PS
В 9-ке ситуация подобная.
Как измененно :
Исправлено добавление записей по F7 и Ctrl+F7