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

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

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

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. insurgut 190 23.07.19 12:09 Сейчас в теме
Если эта штука ещё из журнала регистрации выводила бы когда документы изменялись/перепроводились - было бы вообще круто :)
sapervodichka; +1 Ответить
2. KazanKokos 8 23.07.19 12:43 Сейчас в теме
(1) анрил. ЖР тормоз и быстрая выборка в ней невозможна. Необходимо отдельный регистр заводить по операциям над документами, ну или где-то видел готовые механизмы типа нетипового ЖР на регистрах. Контроль версий опять таки можно включить то он вроде быстрый и его еще можно использовать.
sapervodichka; +1 Ответить
3. shard 256 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 72 28.07.19 18:09 Сейчас в теме
Шикарная штука, "+" поставил.
Из маленьких "придеризмов" - а можно в диаграме выделить как-то документ по которому построилось дерево? (жирным шрифтом например , как и в самом отчете)
5. gull22 87 30.07.19 14:29 Сейчас в теме
Программа ЕРП. В настройках расширения поставил единицу времени ЧАС. Рассчитывал увидеть начало диаграммы для документа в момент его создания (поле = Дата). Увы, прорисовывается на весь день. Можно учитывать на диаграмме время создания документа при выборе единицы времени меньше дня. Логично, что конец диаграммы для документа - это конец дня создания.
6. sapervodichka 3907 30.07.19 14:54 Сейчас в теме
(5) с практической точки зрения зачем это нужно?
7. gull22 87 31.07.19 09:34 Сейчас в теме
Пока простое любопытство.
Но возникает встречный вопрос: зачем в настройках нужны единицы времени менее дня, если в диаграмме все равно прорисовывается день целиком?
8. sapervodichka 3907 31.07.19 09:46 Сейчас в теме
(7) это штатная опция диаграммы ганта, её здесь можно не использовать, т.к. у меня минимальный интервал день заложен в коде. Сделано из-за масштаба, когда документы разбегаются на длительные промежутки, чтобы были видны интервалы в диаграмме
9. gull22 87 31.07.19 09:55 Сейчас в теме
(8)
Тогда чисто теоретический вопрос: а можно выводить в диаграмме начало документа, учитывая час создания?
10. sapervodichka 3907 31.07.19 09:56 Сейчас в теме
(9) да, вместо интервала в коде нач и кон дня, можно сделать нач и кон часа от даты документа.
11. 7OH 32 31.07.19 11:18 Сейчас в теме
А зачем вызов методов через Выполнить сделали ?
12. sapervodichka 3907 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 12 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 3907 28.12.19 19:27 Сейчас в теме
(17) спасибо, добавил отдельную ссылку с изменениями для новой Бухгалтерии. Если лично вам нужна новая версия для Бухгалтерии, напишите в личку.
19. Award 29.12.19 17:40 Сейчас в теме
(18) Спасибо. Мне не нужно, сам поправил. Расширение достойное, используем.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

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

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

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

Ведущий программист 1С
Москва
зарплата от 150 000 руб.
Полный день

Ведущий программист 1С (УТ 11)
Москва
зарплата до 200 000 руб.
Полный день