Про ссылки, уникальные идентификаторы, GUID и не найденные объекты

Публикация № 127208

Администрирование - Администрирование данных 1С - Поиск данных

Одним из основных постулатов теории по программированию в 1С является понятие объектного типа данных, когда мы говорим, что «удаление объекта ссылочного типа из базы данных и затем создание нового объекта в базе с такими же точно реквизитами приведет базу в новое состояние, в отличие от случая с не объектными данными (например записи регистров)». И для начинающих это так. Но иногда, при решении практических задач, этих безусловно полезных для формирования правильной «картины мира» у новичка знаний становится недостаточно...

Про ссылки, GUID, уникальные идентификаторы и ненайденные объекты.

Одним из основных постулатов теории программирования в 1С является понятие объектного типа данных, когда мы говорим, что «удаление объекта  ссылочного типа из базы данных и затем создание нового объекта в базе с такими же точно реквизитами приведет базу в новое состояние, в отличие от случая с необъектными  данными (записи регистров и пр.)». И для новичков это так.

Но иногда, при решении практических задач, этих безусловно полезных для формирования правильной «картины мира» новичка знаний становится недостаточно.

Итак, что же такое ссылка с точки зрения 1С? Ссылка - это тип данных, однозначно идентифицирующий объект в системе. А как ссылка соотносится с уникальным идентификатором (далее УИД) , получаемым методом УникальныйИдентификатор()?  УИД - это по сути свойство ссылки с типом УникальныйИдентификатор, строковое представление которого является 16-ричным числом и выглядит примерно так:

6a09f20a-8de6-11e1-b3e1-001617ec3f2a

К слову, УИД пустой ссылки всегда такой:

00000000-0000-0000-0000-000000000000

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

Теперь, для полноты картины, поговорим о том, что такое GUID.  По данным сайта wikipedia.org:

«GUID (Globally Unique Identifier) — статистически уникальный 128-битный идентификатор. Его главная особенность — уникальность, которая позволяет создавать расширяемые сервисы и приложения без опасения конфликтов, вызванных совпадением идентификаторов. Хотя уникальность каждого отдельного GUID не гарантируется, общее количество уникальных ключей настолько велико (2128 или 3,4028×1038), что вероятность того, что в мире будут независимо сгенерированы два совпадающих ключа, крайне мала. Тем не менее на системе Windows'95 GUID идентификаторы закладки свойств для ярлыка запуска DOS программ(.pif) и программы Zip Magic совпадали.» 
То есть, новые GUIDы получаются генерацией случайных чисел в диапазоне, сопоставимом с количеством атомов во Вселенной (на самом деле в платформе 1С используется другой способ формирования GUIDов, но пока для простоты давайте не будем на этом заостряться, подробнее об этом в конце публикации).

Таким образом, мы теперь понимаем, что при создании нового элемента объектного типа, в  платформе 1С запускается специальный генератор случайных чисел и получается GUID, который и записывается в качестве УИДа ссылки.

Может ли в базе 1С существовать два объекта с одинаковыми уникальными идентификаторами?  Да,  теоретически могут, но не в одной таблице (не в одном типе метаданных).  То есть,  мы можем иметь, например, элемент справочника «Номенклатура» и элемент справочника «Контрагенты» с одинаковым УИД и это нормально (на работоспособности системы это не скажется).

Можно ли зная УИД найти объект в базе? В общем случае нельзя, нужно дополнительно знать где искать – то есть таблицу данных, имя которой определяется именем объекта метаданных. Но, зная о том, что вероятностью совпадения GUID можно пренебречь, то на практике можно осуществлять поиск ссылки по УИД (например, анализируя файл выгрузки данных в формате XML), плюс учесть возможности программного создания объектов с заданным GUIDом, речь о которых пойдет ниже. 

С теорией мы разобрались и теперь проведем небольшой эксперимент. Развенчаем "миф" о невозможности приведения системы в прежнее состояние после удаления объекта ссылочного типа. Использовать будем исключительно средства платформы 1С.

Во вложении пример обработки (для 8.2) с процедурой "УдалитьВосстановитьЭлемент", которая сначала удаляет элемент справочника по передаваемой ссылке, а потом создает новый такой же элемент (для простоты предполагается, что справочник не содержит табличных частей).  При этом, после удаления, ссылки на  элемент становятся "битыми" (объект не найдент...), а после воссоздания опять становятся "нормальными".         

Теперь немного о практическом применении  полученных знаний. Всем известно такое явление, как «Объект не найден..», которое как известно возникает при удалении объектов без контроля ссылочной целостности.  При этом, в структуре надписи «Объект не найден …» содержится  GUID удаленной ссылки. Вот пример соответствия отображения "битой ссылки" и GUIDа этой ссылки:

Объект не найден (48:b3e2001617ec3f2a11e1912c787ec129)
787ec129-912c-11e1-b3e2-001617ec3f2a:

Здесь видно, что структура отображения ссылки и GUID соответствуют друг другу, но не совпадают. Мы сейчас не будем на этом  останавливаться, скажем только, что восстановить «битую» ссылку можно и этому посвящен ряд отдельных публикаций, например вот эта: Реанимация битых ссылок

Анализируя XML файлы обмена, мы так же можем встретить знакомые уже GUIDы, которые можно в случае необходимости изменять  (такие задачи конечно же редки, но иногда могут встретиться).

Так же, иногда встречаются задачи, когда нам нужно создать и записать сразу два элемента справочника, где один элемент одновременно является владельцем другого и ссылается на него (например, элемент справочника "Номенклатура" с реквизитом "Основная единица измерения" с типом справочник "Единицы измерения", который в свою очередь подчинен номенклатуре).

Используя конструкции:

                УИД = Новый УникальныйИдентификатор();

                НоваяСсылка = Справочники[ИмяМетаданных].ПолучитьСсылку(УИД);

                НовыйЭлемент = Справочники[ИмяМетаданных].СоздатьЭлемент();

                НовыйЭлемент.УстановитьСсылкуНового(НоваяСсылка);

мы можем организовать запись каждого из элементов  за один раз.

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

Замечу, что использовать  данные механизмы нужно крайне осторожно, помня о возможных последствиях.

В начале публикации мы для упрощения понимания основной идеи мы считали, что GUIDы формируются как случайные числа в очень большом диапазоне, к тому же сама идея своей красотой заслуживает к себе внимания. Но, как уже упоминалось ранее, на самом деле в случае платформы 1С это не так - при формировании GUIDов используется время, о чем говорит "1" в первой позиции третьей секции (при случайной генерации на этой позиции "4"):

787ec129-912c-11e1-b3e2-001617ec3f2a

И связи с этим у нас появляется еще одна интересная возможность - получения времени генерации УИДа ссылки. Вот ссылка на публикацию с обработкой получения времени ссылки:

Получить дату создания документа или элемента справочника (по UID)

Подробнее о GUIDах можно прочитать здесь:

Руководство по GUID. Часть 1

Руководство по GUID. Часть 2

Руководство по GUID. Часть 3

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

Наименование Файл Версия Размер
Пример работы с УИДами

.epf 6,98Kb
19.10.19
280
.epf 6,98Kb 280 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. vcv 87 06.05.12 09:19 Сейчас в теме
объекта объектного типа

Гм. А объекты необъектного типа бывают?
Не путайте помянутых новичков терминологией. Объект может быть переменной объектного типа или экземпляром объектного типа. Но не бывает объектов объектного типа.
jONES1979; +1 Ответить
2. TSSV 06.05.12 11:33 Сейчас в теме
(1) vcv, Спасибо за проявленный интерес к публикации и заботу о новичках, которую полностью разделяю.
Позволю себе цитату с ресурса http://v8.1c.ru/:
"При манипулировании данными, хранящимися в базе данных 1С:Предприятия, зачастую используется объектный подход. Это значит, что обращение (чтение и запись) к некоторой совокупности данных, хранящихся в базе, происходит как к единому целому. Например, используя объектную технику, можно манипулировать данными справочников, документов, планов видов характеристик, планов счетов и т.д.

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

Эта ссылка также хранится в поле базы данных, вместе с остальными данными объекта. Кроме того, ссылка может быть использована как значение какого-либо поля другого объекта. Например, ссылка на объект справочника Контрагенты может быть использована как значение соответствующего реквизита документа ПриходнаяНакладная."
И все же думаю Вы правы - вместо "объектного типа" здесь лучше использовать формулировку "ссылочного типа" - так будет понятней о чем идет речь.
3. WKBAPKA 220 12.05.12 13:01 Сейчас в теме
если честно, я не понял про уникальность... если УИД уникальный в пределах вселенной, т.е. вероятность совпадения невероятно мала, то фактически гарантируется уникальность ссылок в пределах всех информационных баз... это, конечно, если 1С придерживается алгоритма генерации гуида
4. TSSV 14.05.12 09:39 Сейчас в теме
(3) WKBAPKA, если мы исходим из того, что 1С придерживается (это конечно не документировано), то УИД уникальный в момент его создания, но, мы можем искусственно записать в базу один и тот же УИД в разные объекты разного типа (например, в элемент справочника "Номенклатура" и элемент справочника "Единицы измерения" - такие вещи могут встретиться при добавлении данных с помощью загрузки с использованием КД). И тогда УИД уже не уникален в пределах базы, но ссылки разные, так как ссылка это тип данных плюс УИД.
5. WKBAPKA 220 14.05.12 14:53 Сейчас в теме
наверное так оно и есть... с одной стороны... а с другой, интересно, получится ли установить две одинаковые ссылки на один и тот же тип данных...
7. Sherlock_kmw 26 17.05.12 14:11 Сейчас в теме
(5) WKBAPKA, нет не получится. в каждой из таблиц базы UUID является ключевым полем. отсюда и невозможность поиметь две номенклатуры с одним UUID
AleksR; TSSV; +2 Ответить
6. dumal 17.05.12 10:04 Сейчас в теме
Замечательная статья. Спасибо Вам за нее
8. Psylocibine 20.05.12 22:48 Сейчас в теме
А можно ли подменить UUID конкретного объекта?
9. TSSV 21.05.12 10:07 Сейчас в теме
(8) Psylocibine, Подменить UUID конкретного объекта можно, но нужно помнить о ссылках на объект - они станут "битыми". Поэтому решение может быть следующим - создаем копию объекта с нужным УИДом, с помощью универсальной обработки "Поиск и замена значений" заменяем ссылки старого объекта на новый, удаляем старый объект. Так же мне приходилось решать задачу перевода метода синхронизации ряда справочников (контрагенты, номенклатура и пр.) с синхронизации по коду на синхронизацию по внутреннему идентификатору в работающей УПП (обмен был с БП) - то есть необходимо было массово заменить УИДы у большого количества элементов. Я поступил следующим образом - сделал полную выгрузку ИБ штатными механизмами УПП - "Выгрузка данных в идентичную конфигурацию" , в сформированном XML файле выгрузки сделал замену GUIDов (предварительно сформировав файл соответствия GUIDов), после чего загрузил переработанный файл выгрузки в пустую базу. Файл выгрузки редактировался как обычный текстовый файл, в каждой строке которого происходил поиск заменяемого GUIDа среди набора подлежащих замене и собственно сама замена. Метод себя оправдал - на операцию ушло несколько часов (не считая подготовки конечно) и в дальнейшем проблем с обменом не возникало.
Tangram; bashinsky; eruil; Kosstikk; +4 Ответить
10. lsp71 19.06.12 11:36 Сейчас в теме
Хорошая статья. И написана понятным языком.
11. petrovaUL 10.07.12 06:12 Сейчас в теме
12. bforce 443 02.09.12 11:51 Сейчас в теме
Может ли в базе 1С существовать два объекта с одинаковыми уникальными идентификаторами? Да, теоретически могут, но не в одной таблице (не в одном типе метаданных). То есть, мы можем иметь, например, элемент справочника «Номенклатура» и элемент справочника «Контрагенты» с одинаковым УИД и это нормально (на работоспособности системы это не скажется).

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

После удаления объект нельзя создать заново. Даже если завести все его реквизиты в соответствии с удаленным объектом, это будет уже другой объект. Для объекта система хранит внутренний идентификатор — ссылку. Ссылка уникальна в пределах всей информационной базы. Двух объектов с одинаковыми ссылками не может существовать на всем протяжении жизни информационной базы. Ссылки удаленных объектов не присваиваются вновь созданным объектам. Система предоставляет возможность хранить в полях базы данных ссылки на объекты базы данных.

При условии, конечно, что вы будете использовать внутренние механизмы для генерации УИДов.
21. AlexO 128 18.07.14 09:51 Сейчас в теме
(12) bforce,
Вот здесь написано иначе

Страничка удалена с ИТС.
13. Lo1jke 21.08.13 10:22 Сейчас в теме
Спасибо, очень помоги, как раз занимался переносом XML нетипизированной партянки и нужно было насильно присваивать ГУИД.
14. TSSV 21.08.13 13:21 Сейчас в теме
(13) Lo1jke, (10) рад что пригодилось, спасибо за отзывы!
Вот еще на эту тему: http://infostart.ru/public/192055/
15. volconok27 33 27.09.13 07:58 Сейчас в теме
Отличная статья. Как раз кстати. Спасибо
16. chmv 05.11.13 16:27 Сейчас в теме
17. MaiorovYury 10 01.04.14 11:18 Сейчас в теме
18. AlexO 128 18.07.14 09:20 Сейчас в теме
(0)
При этом, в структуре надписи «Объект не найден …» содержится GUID удаленной ссылки.

Это логично, т.к. платформа натыкается на ссылку, получить которую не может, и генерирует на основе неё - ошибку "Объект не найден" с указанием "переработанной" исходной ссылки.
19. AlexO 128 18.07.14 09:31 Сейчас в теме
(0)
Итак, миф развенчан, но признаем, что он был полезен нам в начале пути.

Вы ничего не развенчали, а еще больше запутали новичков, для которых, якобы, все и "развенчивали".
Вы гарантируете, что после удаления ссылки те данные, на которые она ссылалась - осталось в целости и сохранности? Нет.
Вы гарантируете, что все подчиненные объекты "внутри" удаленного - остались на месте? Нет.
Так называемое "восстановление", да еще и громко названное
приведения системы в прежнее состояние после удаления объекта ссылочного типа

- не более чем создание и подгонка новых объектов под старые (битые) ссылки, а не восстановление старых объектов. Старые (и их содержимое) - потеряны навсегда.
А хотите "обмануть" систему - да пожалуйста, не надо ничего изобретать: создаете новый объект, удаляете старую ссылку, заменяете все старые - на новые.
Вуаля, ссылки восстановлены!
Т.е. статья написана "умно", но много воды, напущено тумана (для умности статьи?), и, главное, выводы сделаны совершенно неправильные (или двусмысленные - видимо, сам не разобрался).
34. DeniskaRediska 23.05.20 19:31 Сейчас в теме
(19)
А хотите "обмануть" систему - да пожалуйста, не надо ничего изобретать: создаете новый объект, удаляете старую ссылку, заменяете все старые - на новые.
Как раз этого делать и не надо, если создать объект со старым "GUID". Делая минимальные действия, можно решить проблему более качественно. естественно "старый объект" надо создавать с всеми его реквизитами.
20. AlexO 128 18.07.14 09:39 Сейчас в теме
(0)
Может ли в базе 1С существовать два объекта с одинаковыми уникальными идентификаторами? Да, теоретически могут, но не в одной таблице (не в одном типе метаданных).

Это сугубо Ваши домыслы.
1С ищет объект по ссылке, а не по "ссылка+тип данных", и что она должна вернуть, если по ссылке - два объекта?
Была теория, что 1С "зашифровала" тип даннных в ссылке, но пока она не получила ни подтверждения, ни полного отпровержения, т.к. ссылки формируются "подряд" (документ - ссылка №1, справочник - ссылка №2, документ - ссылка №3, ссылки по-порядку, последовательно, формируются), однако, и опровержение "зашифрованности" не получено от 1С.
22. AlexO 128 18.07.14 10:03 Сейчас в теме
(0)Tsaregorodtsev,
создавать новую ссылку:
УИД = Новый УникальныйИдентификатор();

НоваяСсылка = Справочники[ИмяМетаданных].ПолучитьСсылку(УИД);

НовыйЭлемент = Справочники[ИмяМетаданных].СоздатьЭлемент();

НовыйЭлемент.УстановитьСсылкуНового(НоваяСсылка);


нужно так:
УИД = Новый УникальныйИдентификатор();       

НовыйЭлемент = Справочники[ИмяМетаданных].СоздатьЭлемент();

НоваяСсылка = Справочники[ИмяМетаданных].ПолучитьСсылку(УИД);

Все.
И не надо тыркать по десять раз ссылку туда-сюда.
23. AlexO 128 18.07.14 10:09 Сейчас в теме
(0)Tsaregorodtsev,
А как ссылка соотносится с уникальным идентификатором (далее УИД)

Это UUID:
Объект не найден (48:b3e2001617ec3f2a11e1912c787ec129)


Это GIUD (назван "УИД" в 1С):
787ec129-912c-11e1-b3e2-001617ec3f2a:

А у вас туман один клубится в статье.
24. pavelyar 23.12.14 16:17 Сейчас в теме
Нет штатного средства поиска по GUID в конфиграциях и это очень плохо,под УФ тоже обработок не найти это беда...
25. AlexO 128 04.06.15 10:05 Сейчас в теме
(24) pavelyar,
Нет штатного средства поиска по GUID в конфиграциях
GUID как таковой вообще не используется в платформе 1С. Ссылки хранятся в формате UUID. Что и подтвержадет ошибка "Объект не найден (48:b3e2001617ec3f2a11e1912c787ec129)".
26. Videon 14.03.18 18:27 Сейчас в теме
Мне кажется, что "Ссылка - это тип данных," взрывает мозг новичкам, ибо это не тип данных. Вот выдержка с сайта 1С: "Ссылка - это значение, однозначно характеризующее объекты базы данных (элементы справочников, документы и так далее).
Для хранения ссылок предназначены типы встроенного языка СправочникСсылка.<имя>, ДокументСсылка.<имя> и так далее."
Ссылка - это свойство объекта БД (например, экземпляра справочника Номенклатура). Тип данных этого свойства = СправочникСсылка.<Имя справочника> (например, СправочникСсылка.Номенклатура). То же самое есть в Синтакс-помощнике.
Так или не так?
27. TSSV 1017 15.03.18 06:33 Сейчас в теме
Добрый день! Про новичков - прежде всего я себя имел ввиду, никого не хотел обидеть, если речь об этом. По поводу остального контента - спасибо, теперь буду знать.
29. Big Fox 11.10.18 18:15 Сейчас в теме
GUID и UUID взаимозаменяемы
30. Adam12345678 9 06.12.19 21:50 Сейчас в теме
Здравствуйте. Вопрос к знатокам. Если мы перенесли информацию из одной базы в другую, к примеру, номенклатуру с использованием конвертации данных, оставив уникальный идентификатор одинаковым для источника и приёмника, есть ли теоретическая возможность того, что при создании нового элемента в базе приёмнике система сгенерирует уникальный идентификатор такой же как уже имеющийся, перенесенный из другой базы и тем самым "затрет" ранние данные?
31. CheBurator 3421 07.12.19 00:52 Сейчас в теме
(30) ну так сначала, наверное, в базе приемнике ищем СУЩЕСТВУЮЩИЙ элемент, если не нашли - тогда создаем... как здесь что-то может затереть?
32. TSSV 1017 07.12.19 01:34 Сейчас в теме
(30) Нет, этого не может произойти, так как ссылка - кластерный индекс таблицы справочника на уровне СУБД, элемент с существующим в базе УИДом ссылки не будет записан. Можете проверить с помощью конструкции:

УИД = Новый УникальныйИдентификатор(ЗаданныйУИД);
НоваяСсылка = Справочники[ИмяМетаданных].ПолучитьСсылку(УИД);
НовыйЭлемент = Справочники[ИмяМетаданных].СоздатьЭлемент();
НовыйЭлемент.УстановитьСсылкуНового(НоваяСсылка);
НовыйЭлемент.Записать();
33. Adam12345678 9 09.12.19 10:48 Сейчас в теме
35. vvv123f 24.05.20 13:35 Сейчас в теме
Спасибо за статью и подробный разбор темы.
ipoloskov; TSSV; +2 Ответить
Оставьте свое сообщение

См. также

TextRadar - нечеткий поиск в тексте Промо

Разработка внешних компонент Поиск данных v8 1cv8.cf Абонемент ($m)

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

1 стартмани

19.09.2018    15050    17    TSSV    14    

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

Чистка базы Поиск данных Обработка справочников v8 1cv8.cf Абонемент ($m)

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

1 стартмани

22.05.2020    1107    6    alexlx    4    

Быстрая функция поиска ссылки по УИД(GUID)

Поиск данных Прочие инструменты разработчика v8 1cv8.cf Россия Абонемент ($m)

Простая, а самое главное быстрая функция поиска ссылки на объект в информационной базе по УИД(GUID) через запрос.

1 стартмани

11.04.2020    4841    13    Kondratenko.as    27    

Поиск пересекающихся ссылок на комбинации объектов с ограничением области поиска по метаданным

Поиск данных v8 1cv8.cf Абонемент ($m)

Обработка ищет все объекты базы, в которых одновременно присутствуют перечисленные элементы. Построена на базе типовой обработки Все функции - Стандартные - Поиск ссылок на объект, но позволяет накладывать отбор не по одному объекту, а по нескольким, что позволяет настраивать поиск по комбинациям условий. И ограничивать область поиска.

1 стартмани

12.03.2020    3942    11    sapervodichka    18    

Универсальный поиск объектов по глобальному уникальному идентификатору (ГУИД, GUID) Промо

Универсальные обработки Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Универсальная обработка поиска объектов информационной базы по глобальному уникальному идентификатору (ГУИД, GUID) или по его части.

1 стартмани

06.09.2016    31038    101    Dzenn    9    

Мастер полнотекстового поиска

Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Набор инструментов для работы с полнотекстовым индексом платформы 1С. Стандартные и расширенные возможности.

2 стартмани

07.02.2020    5562    40    YPermitin    28    

Помощник работы с идентификаторами объектов

Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Инструмент для расширенного анализа идентификаторов объектов.

2 стартмани

24.01.2020    6396    21    YPermitin    25    

Сценарное сравнение данных (версия 1.4.7)

Поиск данных v8 1cv8.cf Абонемент ($m)

Прикладное решение Сценарное сравнение данных (ССД) предназначено для автоматизации процесса поиска расхождений в данных.

1 стартмани

18.08.2019    4982    11    sertak    16    

Поиск, восстановление битой ссылки, 8.3, v 0.2 Промо

Поиск данных Тестирование и исправление v8 1cv8.cf Абонемент ($m)

Обработка для работы с битой ссылкой, 8.3, v 0.1 Позволяет быстро найти и восстановить битую ссылку.

1 стартмани

24.10.2014    34698    271    infostart user    13    

Подсистема для выгрузки, быстрого поиска и анализа журнала регистрации 1С в Elasticsearch

Журнал регистрации Поиск данных v8 1cv8.cf Абонемент ($m)

Elasticsearch - это opensource решение для очень быстрого поиска данных в больших массивах информации. Использование этого решения позволит решить проблемы с поиском и анализом больших объемов информации журнала регистрации. Протестировано на платформах начиная с 8.3.10.2580.

5 стартмани

15.05.2019    8173    23    Nikolo17    12    

Поиск и чистка битых ссылок в регистрах сведений и накоплений 8.3

Чистка базы Поиск данных v8 1cv8.cf Абонемент ($m)

Данная обработка позволяет чистить устаревшие битые записи в регистрах сведений и накоплений. Я не затрагиваю в ней регистр бухгалтерии, так как там удаление любой записи может быть критичным для баланса. Бухгалтеры иногда готовы терпеть любые ссылки на удаленные раннее из базы объекты, лишь бы баланс сходился, даже если битая ссылка не может пролить свет на её происхождение.

1 стартмани

04.05.2019    4890    36    AlexandrSmith    2    

Поиск по произвольным частям текста

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

Часто мы точно не знаем точное и полное название элемента справочника. Но знаем примерно его части. Например, хотим найти валюту "Доллар США", но помним только что название точно содержит два слова "олл" и "ША".

1 стартмани

07.04.2019    4370    2    user635629_exter    4    

Конвертация данных. Найдется все! И еще немного... Промо

Поиск данных Инструментарий разработчика v8 КД Абонемент ($m)

Каждый разработчик, применяющий конфигурацию «1С:Конвертация данных», когда-нибудь обязательно сталкивается с проблемой поиска данных в правилах обмена и (или) регистрации данных.

2 стартмани

25.06.2015    26961    32    tomvlad    7    

Ошибки, предупреждения и прочее из журнала регистрации на почту и в Telegram автоматически (БП 3, ЗУП 3.1, УТ 11.4, ERP 2.4, Розница 2.2)

Журнал регистрации Поиск данных Тестирование и исправление Email v8 Розница УНФ ERP2 ЗКГУ3.0 БП3.0 УТ11 ЗУП3.x Абонемент ($m)

Данная обработка позволяет анализировать журнал регистрации с пользовательским отбором (4 критерия отбора) и высылать отчет пользователю с заданной периодичностью на электронную почту или в Телеграм. Возможно использовать как регламентное задание (автоматическая отправка отчетов по времени), непосредственно запускать из клиента, а также выгружать в форму обработки отфильтрованные данные из журнала регистрации без отправки.

2 стартмани

28.01.2019    8603    31    Redinternational    3    

Глобальный поиск (для управляемых форм)

Поиск данных v8 1cv8.cf Россия Абонемент ($m)

Данная обработка позволяет выполнить глобальный поиск по программе, вводя команды с помощью клавиатуры. Поиск также осуществляется по дополнительным внешним отчетам и обработкам, поиск по представлению документы, избранное, журналы, полнотекстовый поиск.

1 стартмани

15.01.2019    4940    5    user5300    2    

Сравниваем Управление торговлей 11.4 и Бухгалтерию предприятия 3.0 после обмена

Закрытие периода Анализ учета Поиск данных Закрытие периода Закрытие периода v8 БП3.0 УТ11 Россия БУ УУ Абонемент ($m)

Вам приходилось проверять результаты корректности данных после переноса из УТ в БП? Если "ДА", то Вы знаете какое это "приятное дело". Данная обработка была написана для того, чтобы это стало менее "приятно". И осталось больше времени для других дел.

1 стартмани

07.12.2018    6210    18    RomikR    10    

Удаление помеченных объектов с отображением иерархии ссылок (с возможностью немонопольного удаления и быстрой очистки регистров сведений) Промо

Сервисные утилиты Чистка базы Поиск данных v8 1cv8.cf Россия Абонемент ($m)

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

8 стартмани

09.02.2012    43656    227    TheGrr    51    

Поиск и удаление неиспользуемых элементов справочников для УФ

Чистка базы Поиск данных v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для поиска и пометки на удаление элементов справочников, на которые не найдены ссылки в объектах базы, такие элементы можно будет удалить. Сделана под управляемые формы на платформе 8.3.

1 стартмани

01.11.2018    6026    17    Wildcat55    3    

Нестандартные подсистемы: Живая вода

Поиск данных Тестирование и исправление v8 1cv8.cf Абонемент ($m)

В БСП есть все, чтобы справиться с проблемой «Битых ссылок», но почему-то так и не реализовали возможность сохранять версию объекта перед удалением. Решил исправить эту досадную несправедливость и создать подсистему с кодовым названием «Живая вода».

1 стартмани

11.10.2018    10040    2    dsdred    14    

Поиск документов по представлению

Обработка документов Поиск данных v8 КА1 БП2.0 УТ10 УПП1 БП1.6 Абонемент ($m)

Обработка позволяет найти в БД документы по их представлению и впоследствии выполнить их обработку.

2 стартмани

11.09.2018    7616    3    SITR-utyos    0    

Универсальный поиск документов Промо

Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Для обычных и управляемых форм. Версия 1.15 Создана на 1С8.3, но в режиме совместимости с 8.2.16. Итоговые таблицы одинаковы на обоих закладках

1 стартмани

06.01.2015    20081    13    nikitin19819    10    

Поиск и восстановление битых ссылок (Объект не найден)

Поиск данных Тестирование и исправление v8 v8::УФ 1cv8.cf Абонемент ($m)

Групповая обработка ссылок вида Объект не найден (502:37855254002e11eb11e73b8f36150d9e) заполняется максимально просто копированием и вставкой из буфера: 1) Выделяет уникальные идентификаторы (далее УИ); 2) Ищет ссылки на объекты базы по УИ; 3) Создаёт пустые объекты с указанным УИ; 4) Регистрирует найденные ссылки для обмена данными. Работает на любых продуктах 8.3. Проверялась на 1С:ERP Управление предприятием 2 (2.4.3.167)

1 стартмани

17.08.2018    11318    86    sapervodichka    2    

Поиск во внешних обработках

Универсальные обработки Поиск данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка будет полезна при переходе на НДС 20%. Работает в тонком и толстом клиенте.

2 стартмани

15.06.2018    7811    30    Rus1k    9    

Поиск, замена и удаление битых ссылок

Чистка базы Поиск данных v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Есть битые ссылки? Не получается удалить их? Не помогает встроенная утилита "Тестирование и исправление"? Надоело запускать обработку для конфигурации на управляемом приложении с обычным интерфейсом "Битые ссылки. Поиск, удаление, восстановление"? Тогда вам сюда!

2 стартмани

21.11.2017    16979    215    ZhokhovM    2    

Поиск и замена дублирующих элементов Промо

Сервисные утилиты Поиск данных Универсальные обработки v8 1cv8.cf Абонемент ($m)

Доработана штатная обработка поиска и замены дублирующих элементов, а именно...

1 стартмани

14.10.2011    28545    50    logarifm    36    

Поиск ссылок на объект

Универсальные обработки Поиск данных v8 v8::УФ ДО ERP2 ЗКГУ3.0 БП3.0 УТ11 КА2 ЗУП3.x Абонемент ($m)

Общая команда поиска ссылок на объект для конфигураций на БСП (управляемый режим).

1 стартмани

02.11.2017    18831    94    karpal    4    

История работы пользователей

Поиск данных v8 v8::УФ ERP2 Россия Абонемент ($m)

Подключаемая обработка для просмотра истории работы конкретного пользователя

1 стартмани

17.07.2017    15207    47    PerlAmutor    16    

Узнать дату создания объекта (расширение для конфигурации)

Поиск данных v8 1cv8.cf Абонемент ($m)

Расширение позволяет узнать, когда был создан элемент справочника или документ.

1 стартмани

19.06.2017    11524    6    odineskin2    1    

Поиск элемента справочника в записях регистров сведений (две обработки, для ОФ и УФ) Промо

Поиск данных v8 v8::БУ v8::УФ БП2.0 БП3.0 Россия Абонемент ($m)

Отчет по вхождениям элемента справочника в записях регистров сведений. Подключается как внешняя печатная форма для справочников ОС, контрагентов, физ. лиц и т.п.

1 стартмани

28.04.2012    12781    0    KapasMordorov    6    

Поиск ссылок в метаданных конфигурации

Инструментарий разработчика Поиск данных v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Обработка ищет ссылки на выбранный объект в метаданных конфигурации. Позиционируется как инструмент разработчика. Дополнительно может выступать в качестве аналога "Все функции" с расширенными возможностями и функцией поиска объектов по первым символам набора с клавиатуры. Обработка будет особенно полезна для изучения структуры и взаимосвязей обновленных релизов и незнакомых конфигураций. В удобной форме, предоставлена возможность просмотра подписок на события объектов конфигурации.

2 стартмани

20.04.2017    15435    42    IVC_goal    16    

Поиск чека по акцизной марке для 1С:Розница 2

Обработка документов Поиск данных Розничная торговля Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Россия БУ Акцизы Абонемент ($m)

Обработка предназначена для поиска чека по акцизной марке. Бывает очень трудно доказать продавцу, что он повторно пытается пробить одну бутылку. Данная обработка поможет.

1 стартмани

20.04.2017    9887    9    1csomex    6    

Поиск и восстановление битых ссылок (обычная и управляемая форма) 8.2-8.3

Универсальные обработки Поиск данных Тестирование и исправление v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка для поиска и восстановления битых ссылок (Объект не найден). Адаптирована для конфигураций на обычных и управляемых формах 8.2 - 8.3

1 стартмани

08.04.2017    30916    389    Xershi    64    

Поиск значений Промо

Поиск данных Универсальные обработки v8 1cv8.cf Россия Абонемент ($m)

Удобный поиск ссылок и простых значений. Искать можно ВСЕ, в т. ч. ссылки на планы видов характеристик, планы видов расчета, бизнес-процессы, задачи. Ищет ВЕЗДЕ — даже в регистрах накопления / бухгалтерии / расчетов и в последовательностях! В поиск включены служебные (предопределенные), общие реквизиты. Есть возможность прервать поиск.

1 стартмани

15.09.2009    20384    28    sashocq    24    

Сравнение данных справочника и документа в 2-х базах

Поиск данных v8 1cv8.cf Абонемент ($m)

Данная обработка позволяет сравнивать данные в 2-х базах. Подключение через com-объект. Можно выбрать, какие метаданные сравнить. Сравнение происходит в запросе.

3 стартмани

22.02.2017    10915    16    lesasd    1    

Инструменты: v81_82_83: об./упр. формы. Отключение пользователей: файловый, кл-сервер. Запуск/Вход под другим польз-м. Поиск ссылок на объект СКД. Консоль запр. Отладка ВПФ и ОЗТЧ. Гр.печать, Перепровед-е немоноп-е и др.(Один архив)

Поиск данных Администрирование данных 1С v8 v8::УФ v8::СКД 1cv8.cf Россия Абонемент ($m)

Набор внешних обработок необходимый перед обновлением базы и проверки внесенных изменений после, которые сделал и пользуюсь уже несколько лет и периодически одной из них, да и не окажется под рукой.

1 стартмани

06.09.2016    16151    96    Светлый ум    115    

Обработка для поиска и удаления битых ссылок в регистрах сведений, накопления, бухгалтерии и расчета

Чистка базы Поиск данных Универсальные обработки v8 1cv8.cf Абонемент ($m)

Обработка позволяет найти и удалить все записи регистров сведений, накопления, бухгалтерии и расчетов с битой ссылкой в регистраторе.

1 стартмани

06.08.2016    11686    109    Affendor    2    

Мастер поиска и удаления Промо

Чистка базы Поиск данных Универсальные обработки v8 1cv8.cf Абонемент ($m)

Обработка предназначена для рекурсивного поиска ссылок на выбранный объект с возможностью "кустового" (рекурсивного) удаления всей связанной информации. Корректно работает с независимыми регистрами сведений, экспериментально добавлен режим удаления ключей аналитики в ряде типовых конфигураций (в частности поддерживается КА и УПП). Обработка внешняя, полностью автономная и универсальная. Незаменима на проектах, связанных с обменом данными с внешними системами.

2 стартмани

27.03.2014    34892    156    mbreaker    20    

Полнотекстовый поиск с использованием MS SQL

Поиск данных v8 1cv8.cf Россия Абонемент ($m)

В данной статье я покажу пример того, как можно использовать полнотекстовый поиск MS SQL. Сразу оговорюсь, статья не претендует на полноту, многие вещи вам придется додумывать или доделывать, моя задача лишь провести «лабораторную работу», показать, что это возможно и как это можно применять. Сделанные выводы и полученные результаты – это только мои выводы и мои результаты, в вашем случае, они могут быть другими. Пробуйте, экспериментируйте, получайте свой опыт и свои результаты.

1 стартмани

01.08.2016    20840    14    Silenser    1    

Реализация метода НайтиСтроки для ДанныеФормыДерево

Поиск данных Инструментарий разработчика Практика программирования v8 Абонемент ($m)

Быстро, просто, удобно. Только на клиенте. Для любых деревьев значений на форме. Восполняем пробел платформы.

1 стартмани

24.07.2016    17745    10    Yashazz    9    

Поиск ссылок на объекты

Поиск данных v8 1cv8.cf Абонемент ($m)

Внешний отчет для поиска ссылок на объекты

1 стартмани

26.04.2016    11024    32    gorsh157    1    

Полнотекстовый поиск по значениям реквизитов Промо

Чистка базы Поиск данных Обработка справочников v8 Абонемент ($m)

Обработка расширяет возможности Полнотекстового поиска, позволяя искать похожие элементы в ЛЮБЫХ Справочниках ЛЮБОЙ конфигурации по проценту совпадения значений выбранных реквизитов. Работает в Обычном и Управляемом режиме!!

1 стартмани

25.12.2013    37196    44    vladim-kul    8    

Менеджер данных

Поиск данных Инструментарий разработчика Обработка документов Универсальные обработки Обработка справочников v8 1cv8.cf Абонемент ($m)

Простой инструмент для произвольного изменения данных.

1 стартмани

29.03.2016    13134    25    EvgenURNN    1    

Работа с Active Directory (AD), информация о пользователях домена

Поиск данных v8 1cv8.cf Абонемент ($m)

Обработка получения данных о пользователя AD (Active Directory), поиск пользователя

1 стартмани

26.02.2016    13253    70    infoprograms    10    

Замена дублей средствами SQL (MS SQL, УФ, 8.2, 8.3)

Чистка базы Поиск данных Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Универсальная подсистема из 2-х справочников для выполнения замены дублей справочников средствами MS SQL (реализация на управляемых формах).

3 стартмани

02.02.2016    15582    74    v.krivenko    13    

Качалка Промо

Поиск данных Инструментарий разработчика WEB v8 1cv8.cf Россия Абонемент ($m)

Менеджер закачки и средство автоматизации обработки web-данных в одном флаконе. Интерактивный режим работы: фоновое скачивание, многопоточная фоновая проверка ссылок. Параллельное выполнение парсера, проверки, скачивания, редактирования списка и другие действия. Авто подключение через активный прокси. Индикация всех процессов: парсинга, проверки, скачивания, оставшегося времени, скорости (текущая и средняя), свободного места, состояния прокси соединения. Модульная структура: 3 парсера, 2 модуля скачивания, 2 экспорта, 1 печати. Экспорт в списки закачки для «Download Master», «ReGet». Список закачки в виде дерева значений – логическое структурирование данных, организация подпапок хранения. Печатная форма для дерева закачки на СКД. Веб-браузер: авто подбор парсера, история просмотра, «домашние страницы». Для программиста: легко расширяемых функционал (есть демо-модули для примеров); настраиваемый лог; авто подключение новых модулей в интерфейсе; открытый код. По возможности максимально применены сначала встроенные объекты 1С и затем ОС Windows (ПолеHTMLДокумента, ЧтениеXML и COM: WinHttp.WinHttpRequest, MSXML2.DomDocument, winmgmts). Не использовались: временные файлы, скрипты, внешние компоненты.

1 стартмани

06.09.2013    23840    21    TrashMaster    37    

Поиск ссылок на объекты средствами SQL УФ (MS SQL, УФ, 8.3)

Поиск данных Сервисные утилиты Универсальные обработки v8 v8::УФ 1cv8.cf Абонемент ($m)

Универсальный поиск ссылок на объекты средствами MS SQL на управляемых формах. В результате поиска выводятся все реквизиты, где был найден объект, для ТЧ и регистров указывается номер строки/записи.

1 стартмани

21.01.2016    13109    64    v.krivenko    13    

Нечеткий поиск в справочнике. Версия 1.02

Поиск данных Обработка справочников v8 1cv8.cf Абонемент ($m)

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

1 стартмани

19.01.2016    11604    51    sleeping07    18    

Создание views с человеческими именами в postgresql

Сервисные утилиты Поиск данных Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Обработка для автоматического создания views для всех имеющихся в конфигурации объектов, в базе PostgreSQL.

1 стартмани

17.11.2015    7424    6    xy2    0    

Подсчет количества счетов-фактур Промо

Поиск данных v8 БП2.0 Россия БУ Абонемент ($m)

Обработка позволит найти документы у которых число счет-фактур <>1. Типы документов: ВозвратТоваровПоставщику, ВозвратТоваровОтПокупателя, РеализацияТоваровУслуг, ОказаниеУслуг.

1 стартмани

22.11.2012    15015    0    alextyumen    1    

Поиск подписок по документу

Поиск данных v8 1cv8.cf Абонемент ($m)

Поиск подписок, в которых участвует выбранный вид документа.

1 стартмани

01.09.2015    7415    5    Longinoff    4