Загадка возвращамого значения ЗначениеВСтрокуВнутр()

05.08.13

Разработка - Математика и алгоритмы

ЗначениеВСтрокуВнутр(Значение); Из синтаксис помощника: Получает системное строковое представление переданного значения. Что же такое "системное строковое представление"? точнее из чего оно состоит?

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

Наименование Файл Версия Размер
1
.png 22,30Kb
24
.png 1 22,30Kb 24 Скачать

Функция ЗначениеВСтрокуВнутр(Значение) возвращает системное строковое представление в виде строки (пример):

{"#",a86305d7-b8a1-4312-901f-2ade3efdb351,135:bc8b001ec9dd45d011dda3f1f556bd7a}

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

После поиска на просторах интернета попадая и на форум миста и на форум 1с получилась примерно следующая общая картина:

Расшифровка строки :               

{"#",a86305d7-b8a1-4312-901f-2ade3efdb351,135:bc8b001ec9dd45d011dda3f1f556bd7a}

 

a86305d7-b8a1-4312-901f-2ade3efdb351 – это тип объекта 1с (например справочник организации в данном случае). Описание типов в каждой отдельной базе соответственно разное.

 

135:bc8b001ec9dd45d011dda3f1f556bd7a – UUID (Universally Unique Identifier), где

 

135 – это номер таблицы в sql базе или не в sql (для файлового режима) данных например _ReferenceN135 (в другой базе этот номер может быть другой, в разрезе баз они разные)

 

bc8b001ec9dd45d011dda3f1f556bd7a – перевернутый гуид объекта. (во вложении схема переворачивания). (процедуры прямого и обратного преобразования имеются в виде кода 1с, информация о преобразовании найдена здесь в виде публикации).

См. также

Метод Дугласа-Пойкера для эффективного хранения метрик

Математика и алгоритмы Платформа 1C v8.2 Конфигурации 1cv8 Россия Абонемент ($m)

На написание данной работы меня вдохновила работа @glassman «Переход на ClickHouse для анализа метрик». Автор анализирует большой объем данных, много миллионов строк, и убедительно доказывает, что ClickHouse справляется лучше PostgreSQL. Я же покажу как можно сократить объем данных в 49.9 раз при этом: 1. Сохранить значения локальных экстремумов 2. Отклонения от реальных значений имеют наперед заданную допустимую погрешность.

1 стартмани

30.01.2024    1753    stopa85    12    

33

Алгоритм симплекс-метода для решения задачи раскроя

Математика и алгоритмы Бесплатно (free)

Разработка алгоритма, построенного на модели симплекс-метода, для нахождения оптимального раскроя.

19.10.2023    4415    user1959478    50    

34

Регулярные выражения на 1С

Математика и алгоритмы Инструментарий разработчика Платформа 1С v8.3 Мобильная платформа Россия Абонемент ($m)

Что ж... лучше поздно, чем никогда. Подсистема 1С для работы с регулярными выражениями: разбор выражения, проверка на соответствие шаблону, поиск вхождений в тексте.

1 стартмани

09.06.2023    7450    4    SpaceOfMyHead    17    

56

Модель распределения суммы по базе

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

Обычно под распределением понимают определение сумм пропорционально коэффициентам. Предлагаю включить сюда также распределение по порядку (FIFO, LIFO) и повысить уровень размерности до 2-х. 1-ое означает, что распределение может быть не только пропорциональным, но и по порядку, а 2-ое - это вариант реализации матричного распределения: по строкам и столбцам. Возможно вас заинтересует также необычное решение этой задачи через создание DSL на базе реализации текучего интерфейса

1 стартмани

21.03.2022    7848    7    kalyaka    11    

44

Изменения формата файлов конфигурации (CF) в 8.3.16

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

Дополнение по формату файлов конфигурации (*.cf) в версии 8.3.16.

16.12.2021    4443    fishca    13    

36

Интересная задача на Yandex cup 2021

Математика и алгоритмы Бесплатно (free)

Мое решение задачи на Yandex cup 2021 (frontend). Лабиринт. JavaScript.

12.10.2021    8830    John_d    73    

46

Механизм анализа данных. Кластеризация.

Математика и алгоритмы Анализ учета Платформа 1С v8.3 Анализ и прогнозирование Бесплатно (free)

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

31.08.2021    7796    dusha0020    8    

70
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Антон Ширяев 527 05.08.13 15:37 Сейчас в теме
Название у статьи заманчивое, но к сожалению тема практически не раскрыта. Рассмотрена только одна узкая область - преобразование строки в ссылку. Реально через ЗначениеВСтрокуВнутр() можно передавать очень много всего, а не только отдельные ссылки.

Приведение строки вида 135:bc8b001ec9dd45d011dda3f1f556bd7a в строку вида {"#",a86305d7-b8a1-4312-901f-2ade3efdb351,135:bc8b001ec9dd45d011dda3f1f556bd7a} я реализовывал в обработке Анализ и редактирование файлов журнала регистрации 1С 8.1/8.2 - ELF/LOG/LGF/LGP.

Алгоритм там достаточно прост. Для получения идентификаторов типа (a86305d7-b8a1-4312-901f-2ade3efdb351) и номера (135) нужно пробежаться по всем метаданным и преобразовать через ЗначениеВСтрокуВнутр() пустые ссылки.
fuser; Meson; yku; lana_veta; vitalya24; +5 Ответить
2. vitalya24 233 05.08.13 15:45 Сейчас в теме
(1) Антон Ширяев, ну за рамками прикладной задачи тема не рассматривалась, спасибо за дополнение:)
3. serpent 67 06.08.13 09:01 Сейчас в теме
Сори Загадка возвращаЕмого
vitalya24; +1 Ответить
4. DrAku1a 1679 07.08.13 03:19 Сейчас в теме
Да... Тема не раскрыта... Это только верхушка айсберга!
Вот например, Про быстрые массивы

А преобразование в ссылку - это активно используется в обработках восстановления из разрушенного 1Cv8.1CD (тут таких полно).
5. mr.Kot 29.10.13 14:14 Сейчас в теме
Может быть тема раскрыта и не так глубоко, но, допустим, я хотел узнать только описанное в статье, целенаправленно стал искать и быстро нашёл, благодаря статье.
6. dyak84 19.01.14 17:49 Сейчас в теме
Автор как к человеку знающиму подскажи как правельней зделать в такой ситуации. Реквизит со значением неограничено преобразовываю при помощи функции ЗначениеВСтрокуВнутр() при обратном преобразовании при помощи функции ЗначениеИзСтрокиВнутр() приисходит ошибка формата потока. Подскажите как быть как можно решить етот вопрос. Зарание спасибо за ответ
7. nobuta 24.01.14 10:40 Сейчас в теме
(6) dyak84, у вас в клиент-серверном варианте такая ошибка возникает?
8. Diversus 2306 08.12.14 14:16 Сейчас в теме
(0) А вот скажите, что дает 135? Критично будет ли следующее:

Пусть значение ЗначениеВСтрокуВнутр дало нам строку вида: {"#",4dcc257a-be68-4de0-bad6-a7dc42232078,135:8269998f2df8084a11e421234b28682d}
Теперь мы возьмем и изменим строку на {"#",4dcc257a-be68-4de0-bad6-a7dc42232078,0:8269998f2df8084a11e421234b28682d}
и попытаемся сделать ЗначениеИзСтрокиВнутр с получившейся строкой.

Результат так же правильно возвращает ссылку. В связи с этим вопрос что дает 135 - номер таблицы во внутренней структуре?
9. Diversus 2306 08.12.14 14:23 Сейчас в теме
(0) И кстати да:
Ссылка1=ЗначениеИзСтрокиВнутр("{""#"",4dcc257a-be68-4de0-bad6-a7dc42232078,135:8269998f2df8084a11e421234b28682d}");
Ссылка2=ЗначениеИзСтрокиВнутр("{""#"",4dcc257a-be68-4de0-bad6-a7dc42232078,0:8269998f2df8084a11e421234b28682d}");
Ссылка3=ЗначениеИзСтрокиВнутр("{""#"",4dcc257a-be68-4de0-bad6-a7dc42232078,9999:8269998f2df8084a11e421234b28682d}");

Все три ссылки будут равны.
S_L_O_N_U_K; user785225; +2 Ответить
10. Xershi 1474 11.03.17 22:13 Сейчас в теме
UUID на мобильной платформе смог получить, а вот номер объекта в таблице БД уже метод не доступен на мобильной платформе.
Методов определения типов объекта 1с вообще не нашел!
Выкрутился другим моментом, что эта фича и не понадобилась.
AlexandrSmith; +1 Ответить
Оставьте свое сообщение