0. sapervodichka 2795 22.07.19 17:49 Сейчас в теме

Структура подчиненности с хронологией документов и кнопками проведения и удаления

Часто не хватает визуализации хронологии документов в структуре подчиненности и кнопок проведения. Это расширение конфигурации, с функционалом структуры подчиненности документов, отображающее хронологическую последовательность документов во времени и дающее доступ к проведению, отмене проведения, пометке на удаление документов непосредственно в форме подчиненности.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо
1. insurgut 187 23.07.19 12:09 Сейчас в теме
Если эта штука ещё из журнала регистрации выводила бы когда документы изменялись/перепроводились - было бы вообще круто :)
sapervodichka; +1 Ответить
2. KazanKokos 7 23.07.19 12:43 Сейчас в теме
(1) анрил. ЖР тормоз и быстрая выборка в ней невозможна. Необходимо отдельный регистр заводить по операциям над документами, ну или где-то видел готовые механизмы типа нетипового ЖР на регистрах. Контроль версий опять таки можно включить то он вроде быстрый и его еще можно использовать.
sapervodichka; +1 Ответить
3. shard 251 24.07.19 15:36 Сейчас в теме
(1) ковырнул в этом направлении с применением данных регистра версий объектов (естественно, версионирование должно быть включено). Вот что получилось:

история версий ведется по заказам и реализациям, по счф не ведется. Заказ 19854 проводился в 10, 15-17 числах, реализация 10877 проводилась 15го числа, была распроведена 17го. счф 11123 от 15го числа висит непроведенной. Проверял на УТ 11.4.8.84.
По изменениям документов считаю нецелесообразным собирать инфу в структуре подчиненности.

Для этого необходимо изменить процедуру Расш1_ДобавитьДокументВТаблицу на
&НаСервере
Процедура Расш1_ДобавитьДокументВТаблицу(_Документ, _ТаблицаДокументов)
	
	запрос=новый запрос("ВЫБРАТЬ
		|	НАЧАЛОПЕРИОДА(ВерсииОбъектов.ДатаВерсии, ДЕНЬ) КАК ДеньВерсии,
		|	ВерсииОбъектов.ДатаВерсии КАК ДатаВерсии,
		|	ВерсииОбъектов.НомерВерсии КАК НомерВерсии
		|ПОМЕСТИТЬ ВТ
		|ИЗ
		|	РегистрСведений.ВерсииОбъектов КАК ВерсииОбъектов
		|ГДЕ
		|	ВерсииОбъектов.Объект = &Объект
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	ВТ.ДеньВерсии КАК ДеньВерсии,
		|	МАКСИМУМ(ВТ.ДатаВерсии) КАК ДатаВерсии
		|ПОМЕСТИТЬ ВТ1
		|ИЗ
		|	ВТ КАК ВТ
		|
		|СГРУППИРОВАТЬ ПО
		|	ВТ.ДеньВерсии
		|;
		|
		|////////////////////////////////////////////////////////////­////////////////////
		|ВЫБРАТЬ
		|	ВТ1.ДеньВерсии КАК ДеньВерсии,
		|	ВТ1.ДатаВерсии КАК ДатаВерсии,
		|	МАКСИМУМ(ВТ1.НомерВерсии) КАК НомерВерсии
		|ИЗ
		|	ВТ1 КАК ВТ
		|		ЛЕВОЕ СОЕДИНЕНИЕ ВТ КАК ВТ1
		|		ПО ВТ.ДатаВерсии = ВТ1.ДатаВерсии
		|
		|СГРУППИРОВАТЬ ПО
		|	ВТ1.ДеньВерсии,
		|	ВТ1.ДатаВерсии
		|");
	запрос.УстановитьПараметр("Объект",_Документ);
	выборкаСостояний=запрос.Выполнить().выбрать();
	пока выборкаСостояний.Следующий() цикл
		тзРеквизитов=ВерсионированиеОбъектов.РазборВерсии(_Документ, выборкаСостояний.НомерВерсии).Реквизиты;
		НовСтр_ТаблицаДокументов = _ТаблицаДокументов.Добавить();
		НовСтр_ТаблицаДокументов.Документ = _Документ;
		НовСтр_ТаблицаДокументов.Дата = выборкаСостояний.ДеньВерсии;
		
		строчка=тзРеквизитов.найти("DeletionMark","НаименованиеРеквизита");
		если строчка<>Неопределено тогда
			НовСтр_ТаблицаДокументов.ПометкаУдаления=строчка.ЗначениеРеквизита;
		КонецЕсли;		
		строчка=тзРеквизитов.найти("Posted","НаименованиеРеквизита");
		если строчка<>Неопределено тогда
			НовСтр_ТаблицаДокументов.Проведен=строчка.ЗначениеРеквизита;
		КонецЕсли;		
	КонецЦикла;
	
	Попытка 
		_Реквизиты = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(_Документ, "Дата, Проведен, ПометкаУдаления");
	Исключение
		Возврат;
	КонецПопытки;
	
	Если _ТаблицаДокументов.Найти(_Документ, "Документ") = Неопределено Тогда
		НовСтр_ТаблицаДокументов = _ТаблицаДокументов.Добавить();
		ЗаполнитьЗначенияСвойств(НовСтр_ТаблицаДокументов, _Реквизиты);
		НовСтр_ТаблицаДокументов.Документ = _Документ;
	КонецЕсли;
	
КонецПроцедуры
Показать
molodoi1sneg; +1 Ответить
4. blindcat2006 70 28.07.19 18:09 Сейчас в теме
Шикарная штука, "+" поставил.
Из маленьких "придеризмов" - а можно в диаграме выделить как-то документ по которому построилось дерево? (жирным шрифтом например , как и в самом отчете)
5. gull22 87 30.07.19 14:29 Сейчас в теме
Программа ЕРП. В настройках расширения поставил единицу времени ЧАС. Рассчитывал увидеть начало диаграммы для документа в момент его создания (поле = Дата). Увы, прорисовывается на весь день. Можно учитывать на диаграмме время создания документа при выборе единицы времени меньше дня. Логично, что конец диаграммы для документа - это конец дня создания.
6. sapervodichka 2795 30.07.19 14:54 Сейчас в теме
(5) с практической точки зрения зачем это нужно?
7. gull22 87 31.07.19 09:34 Сейчас в теме
Пока простое любопытство.
Но возникает встречный вопрос: зачем в настройках нужны единицы времени менее дня, если в диаграмме все равно прорисовывается день целиком?
8. sapervodichka 2795 31.07.19 09:46 Сейчас в теме
(7) это штатная опция диаграммы ганта, её здесь можно не использовать, т.к. у меня минимальный интервал день заложен в коде. Сделано из-за масштаба, когда документы разбегаются на длительные промежутки, чтобы были видны интервалы в диаграмме
9. gull22 87 31.07.19 09:55 Сейчас в теме
(8)
Тогда чисто теоретический вопрос: а можно выводить в диаграмме начало документа, учитывая час создания?
10. sapervodichka 2795 31.07.19 09:56 Сейчас в теме
(9) да, вместо интервала в коде нач и кон дня, можно сделать нач и кон часа от даты документа.
11. 7OH 32 31.07.19 11:18 Сейчас в теме
А зачем вызов методов через Выполнить сделали ?
12. sapervodichka 2795 31.07.19 11:30 Сейчас в теме
(11) часть вызовов сделана с вилками вариантов через Выполнить("...") для адаптации к конфигурациям, в том числе к Бухгалтерии предприятия, где форма структуры подчиненности с другими реквизитами.
Прикрепленные файлы:
13. 7OH 32 31.07.19 11:31 Сейчас в теме
(12) а попытка исключения с обычным кодом не сработает разве также ?
14. ivan_luzinov 37 05.08.19 15:02 Сейчас в теме
Офигенская штука! Спасибо!
15. tsatsur 10 12.08.19 08:41 Сейчас в теме
Отличное расширение. Забрал и немного переделал (сделал программное добавление на форму команд и кнопок, чтобы смело переживало обновления формы:). Спасибо.
16. user1166203 07.11.19 10:45 Сейчас в теме
А нет расширения с возможностью сворачивать структуру подчиненности по группировкам?
17. Award 27.12.19 16:16 Сейчас в теме
Добрый день,

Платформа: 1С:Предприятие 8.3 (8.3.16.1063)
Конфигурация: Бухгалтерия предприятия, редакция 3.0 (3.0.75.37)

Расширение не функционирует, т.к. из списка общих форм разработчики 1С убрали форму СтруктураПодчиненности. Теперь она называется СвязанныеДокументы. Если есть возможность, исправьте пожалуйста.
sapervodichka; +1 Ответить
18. sapervodichka 2795 28.12.19 19:27 Сейчас в теме
(17) спасибо, добавил отдельную ссылку с изменениями для новой Бухгалтерии. Если лично вам нужна новая версия для Бухгалтерии, напишите в личку.
19. Award 29.12.19 17:40 Сейчас в теме
(18) Спасибо. Мне не нужно, сам поправил. Расширение достойное, используем.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
зарплата от 80 000 руб. до 120 000 руб.
Полный день

Консультант по 1С:Документооборот
Санкт-Петербург
зарплата от 120 000 руб. до 150 000 руб.
Полный день

Программист по 1С:Бухгалтерии
Санкт-Петербург
зарплата от 120 000 руб. до 150 000 руб.
Полный день

Программист по 1С:ЗУП
Санкт-Петербург
зарплата от 120 000 руб. до 150 000 руб.
Полный день

Консультант-аналитик 1С
Москва
зарплата от 100 000 руб. до 150 000 руб.
Полный день