Универсальный механизм поиска связанных объектов для 1С 8.1

02.04.14

Задачи пользователя - Поиск данных

Механизм поиска связанных объектов в виде встраиваемой обработки

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка (обновлено 02-апр-2014)
.epf 8,04Kb
121
121 Скачать (1 SM) Купить за 1 850 руб.

 

Обработку встраиваете в любую конфигурацию.

На входе принимается объект по типу ДокументСсылка, либо СправочникСсылка (не проверял).

Обращение к экспортному методу возвращает ТЗ связанных объектов со структурой подчинения. Открытие обработки показывает дерево связанных объектов.

Поиск связанных объектов выполняется одним запросом.

 

Обновлено 2-апр-2014.

Спасибо unoDosTres за совет!

См. также

Поиск данных Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Обработки помогут Вам легко и, главное, быстро (в 5 раз и быстрее штатной обработки 1С), выполнить поиск дублирующих данных в Ваших базах 1С на платформах 8.1-8.3. Это позволит уменьшить объем лишней информации в справочниках и документах, планах видов характеристик и др., упростит работу с данными пользователям. А так же можно, одним нажатием, узнать в каких ссылочных объектах есть вообще дубли! Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. А так же обновления Вы получаете бесплатно в течение года с момента приобретения данных обработок! (Обновление от 27.11.2023, версия 6.12)

10800 руб.

14.05.2012    159705    341    253    

573

Математика и алгоритмы Инструментарий разработчика Универсальные функции Поиск данных Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Абонемент ($m)

Несколько упакованных в один класс интерфейсов для обработки популярных универсальных коллекций. Для тех, кого раздражает отсутствие действительно единого интерфейса для универсальных коллекций.

5 стартмани

25.09.2024    2629    1    Артано    14    

19

Поиск данных Программист Платформа 1С v8.3 Россия Бесплатно (free)

В этой статье я хочу рассмотреть еще один кейс применения Clickhouse в связке с 1С - оптимизацию поиска в справочнике по ключевым словам. Здесь не будет готового решения, но будут описаны важные моменты, которые позволят легко применить данный кейс в реальности.

18.08.2024    2223    1cnik2    23    

16

Поиск данных Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Отображение и просмотр реквизитов справочника или документа - с бесконечным открытием подуровней.

1 стартмани

14.06.2024    3707    10    RustIG    29    

22

Поиск данных Системный администратор Программист Платформа 1С v8.3 Россия Абонемент ($m)

Статья об опыте развертывания и интеграции с базой данных Manticore Search для быстрого полнотекстового поиска.

1 стартмани

30.11.2023    5085    andreysidor4uk    18    

54

Поиск данных Корректировка данных Пользователь Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Абонемент ($m)

PowerOffice - обработка для поиска, просмотра и обработки данных для пользователей. Доступ к объектам на просмотр и редактирование данных определяется правами пользователя.

1 стартмани

05.06.2023    2455    26    PowerBoy    1    

16

Поиск данных Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Абонемент ($m)

Получение ссылки в 1С по бинарной строке из PostgreSQL в виде строки формата bytea или из MSSQL в виде шестнадцатиричной строки. Кроме ссылочных объектов ссылки могут быть получены и для перечислений. Это может быть полезно при анализе логов журнала регистрации или СУБД.

1 стартмани

04.04.2023    3354    4    berserg    2    

13
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. artbear 1566 31.10.10 16:33 Сейчас в теме
2. sondarium 177 31.10.10 20:47 Сейчас в теме
Вообще, это просто интересно было сделать - и в этом причина появления на свет сего создания.
А зачем встраивать... Ну, например, есть своя конфа. И вы хотите, чтобы при распроведении документов, выдавались предупреждение о невозможности распроведения и структура связанных с этим документом объектов. Вот для этого и понадобится этот зверёныш.
3. e.kogan 1895 01.11.10 11:16 Сейчас в теме
А как с кольцевыми ссылками работает?
4. Ish_2 1114 01.11.10 12:21 Сейчас в теме
(3) Дерево с кольцевыми ссылками (зацикливание при рекурсии) - тема интересная.
При очень большом количестве элементов (например, "разузлование" номенклатуры) - так и вовсе очень интересная. Требует совсем других подходов.
Скоро мы рассмотрим это чудо и как с ним бороться.
5. sondarium 177 01.11.10 13:17 Сейчас в теме
С кольцевыми ссылками всё нормально работает. Упреждающий алгоритм прост: в результат добавляются только уникальные сочетания объект-мама. Посему хвостик к исходном объекту у кольца будет, а вот дальше дерево не проростёт.
6. gaglo 02.11.10 11:04 Сейчас в теме
Описание обработки так кратко - похвально, конечно, но ...


На экране возникло изображение венерианина - руки в боки, ноги широко расставлены. Он поднял руку с шестью растопыренными пальцами.
- Все пьют воду. Вода полезна. Вода необходима для жизни. Напиток "Витси" тоже полезен. Бутылка "Витси" стоит четыре фала. Все.


Прошу, короче, расширить.
Как соотносится сей механизм с имеющимся в УПП выводом структуры подчиненности документов? Возможные ответы:
- мой быстрее.
- мой работает и с элементами справочников.
- мой не только показывает, а еще выдает отдельно ТЗ со структурой связанных объектов
- эх, если бы я знал, что подобный механизм уже есть...
sondarium; +1 Ответить
8. gaglo 02.11.10 12:16 Сейчас в теме
(6) Немного поисследовал.

Механизм работает на документах быстрее встроенного в УПП, но за счет того, что не обрабатывает ссылки из строк табличных частей (в УПП это частое явление), а только из реквизитов. Ну и дерево получается короче (ниже?).

Встроенный в УПП механизм работает сразу и на подчиненные документы, и на родительские. ИМХО это удобно, хотя и не всегда нужно.

Динамически построенный запрос становится "двусмысленным" по синтаксису и оттого невыполнимым, когда попадается реквизит чего-то с именем Объект:
ВЫБРАТЬ Объект.Ссылка Как Ссылка
ИЗ Справочник.ХранилищеДополнительнойИнформации КАК Объект
ГДЕ Объект.Объект = &ВходСсылка
Но это совсем легко поправить.
7. sondarium 177 02.11.10 12:09 Сейчас в теме
Ахаха :D Классный коммент! Конечно, я знаю про механизм в ут/упп. Там тоже запросом сделано, только структура чуть более разветлённая (на несколько общих модулей раскинуты функции). Я считаю главным достоинством своей штуки то, что она проще. Меньше объектов, легче изменять, легче встраивать в неизвестную конфу. А насчёт других достоинств и недостатков не уверен, но не стану сильно удивляться, если таковые найдутся.
9. unoDosTres 02.04.14 10:48 Сейчас в теме
я не знаю конечно, но может и работала эта обработка, но там есть функция
Функция ВернутьОбщийТип(ВходящееЗначение)
	
	Если Найти(ТипЗнч(ВходящееЗначение), "Справочник ссылка") Тогда
		Возврат "Справочник";
	ИначеЕсли Найти(ТипЗнч(ВходящееЗначение), "Документ ссылка") Тогда
		Возврат "Документ";
	КонецЕсли;
	
	Возврат Неопределено;
	
КонецФункции
Показать


Где ВходящееЗначение это ДокументСсылка и использовать ВстроеннуюФункцию Найти(ТипЗнч(ВходящееЗначение), "Документ ссылка") здесь безполезно потому что первый параметр должен быть строковым, а иначе будет на выходе всегда 0, и в результате дерево структуры выходить не будет, так что без доработки я что-то не знаю как это будет работать, либо я чего-то недопонял

10. unoDosTres 02.04.14 14:18 Сейчас в теме
в догонку к (9) надо было как то так в той функции писать

Функция ВернутьОбщийТип(ВходящееЗначение)
Если Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(ВходящееЗначение)) Тогда
		//это спрвочник
		Возврат "Справочник";
ИначеЕсли Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(ВходящееЗначение)) Тогда
		//это документ
		Возврат "Документ";
КонецЕсли            ;
Возврат Неопределено;
КонецФункции
Показать
11. sondarium 177 02.04.14 16:24 Сейчас в теме
(10) unoDosTres, спасибо, поправил!
Оставьте свое сообщение