Несколько одноходовок

13.10.15

Разработка - Инструментарий разработчика

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Одноходовки
.rar 15,59Kb
4
4 Скачать (1 SM) Купить за 1 850 руб.

Перечень одноходовок

1. Внутр (ЗначениеВСтрокуВнутр и обратно)

2. СсылкаУИД (Получение текстовой ссылки на объект и обратно).

3. Сторно (Сторнируем любой документ программно корректировкой записей регистров)

4. Очистить значение (Очищаем значение переменной, сохраненное через СохранитьЗначение)


Детальное описание

1. Внутр

Внутр

Вставляем в верхнее поле строковое значение, полученное из преобразования объекта ссылочного типа оператором "ЗначениеИзСтрокиВнутр", нажимаем кнопку вниз, получаем во втором поле сам объект.

Или, вставляем в нижнее поле объект ссылочного типа, нажимаем кнопку вверх, получаем его представление после преобразования оператором "ЗначениеВСтрокуВнутр".

В обработке не содержится абсолютно никаких фишек, просто два оператора и красивая форма со стрелками.

Область применения:

Например, обмен данными. В регистре сведений "СоответствиеОбъектовДляОбмена" содержатся те самые строковые значения "Внутр". То есть, при обмене УТ и БП, в соответствующем регистре сведений БП хранятся строковые соответствия объектов УТ. Копируем строковое значение, идем в УТ, открываем обработку, вставляем строковое значение, получаем объект. Таким образом можно решить вопрос, какое соответствие оставить при сведении дублей, какой объект в БП должен соответствовать объекту из УТ и т.д.

 

2. "СсылкаУИД".

СсылкаУИД

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

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

А здесь кроме красивой формы со стрелками одна фишка таки есть, работа с метаданными и конструктором уникального идентификатора по строке:

Если Метаданные.Справочники.Содержит(ЗначениеПоСтроке.Метаданные()) И НЕ Отказ Тогда
   ЗначениеПоСтроке = Справочники[ЗначениеПоСтроке.Метаданные().Имя].ПолучитьСсылку(Новый УникальныйИдентификатор(СтроковоеЗначение));
КонецЕсли;

Область применения: те же обмены данными, надо найти объект по УИД, содержащийся в xml-файле выгрузки. Тип объекта известен, но больше нет никаких других опознавательных признаков, вроде наименования и т.д.

 

3. Сторно

Сторно

На самом деле строк тут несколько:

    КЗР = Документы.КорректировкаЗаписейРегистров.СоздатьДокумент();
    КЗР.Дата = ДокументДляСторно.Дата;
    КЗР.ИспользоватьЗаполнениеДвижений = Истина;
    КЗР_ЗД = КЗР.ЗаполнениеДвижений.Добавить();
    КЗР_ЗД.Действие = "Сторно движений документа";
    КЗР_ЗД.Документ = ДокументДляСторно;
    ФормаКЗР = КЗР.ПолучитьФорму();
    ФормаКЗР.ВыполнитьДействияДокумента();
    КЗР.Записать();
    Сообщить("Записан документ сторно " + Строка(КЗР));

Но фишка одна. Экспортная процедура формы документа при правильном заполнении формы заполняет объект документа.

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

 

4. ОчиститьЗначение

ОчиститьЗначение

Здесь всё совсем просто. Имеется сохраненная переменная под определенным пользователем, в ней - битое значение (например, "Объект не найден", получившийся после свертки дублей).

Чистка кэша в случае sql-ной базы не помогает. Чистим программно:

    СохранитьЗначение(ИмяПеременной, Неопределено);

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

P.S. Можно скачать, можно написать, как душе угодно.

P.P.S. Еще пара простых утилит:

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

Анализ изменений документа по журналу регистрации

уникальный идентификатор значениевстрокувнутр значениеизстрокивнутр обмены данными

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    178498    987    403    

947

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    19961    132    70    

134

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

22200 руб.

06.10.2023    18946    51    19    

83

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

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

15000 руб.

10.11.2023    12941    53    33    

72

Инструментарий разработчика Программист Платформа 1С v8.3 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    29115    100    48    

146

Инструментарий разработчика Программист 8.3.14 Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    18685    7    32    

43

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

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    1791    2    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. varovinm 25.09.15 14:34 Сейчас в теме
Сенсэй, приветствую! А еще с помощью этих функций можно организовать Хранение в константе таблицы значений.
2. cargobird 308 25.09.15 15:09 Сейчас в теме
(1) varovinm, приветствую, Миша!
Да, я тоже часто использую эти функции "внутр" для хранения и передачи в строковых значениях структур и таблиц значений. Только просмотр содержимого таких строковых значений уже не совсем простая задача. Но есть над чем подумать, спасибо)
3. WKBAPKA 215 01.10.15 09:16 Сейчас в теме
4. cargobird 308 22.10.15 11:52 Сейчас в теме
[update 2015-10-13]: добавлено две новых одноходовки.
Оставьте свое сообщение