Как измененить/получить заголовок окна в 1С 8.3
✍️@razrab_1C
&НаКлиенте
Процедура ПолучениеИзменениеЗаголовкаОкна(Команда)
ПерваяЧасть_короткая_Префикс=ПолучитьКраткийЗаголовокПриложения(); // Часто пустой
ВтораяЧасть_длинная=ПолучитьЗаголовокКлиентскогоПриложения(); // Название конфигурации, например ЗУП 3.1
// Переименуем в новый заголовок - ЗУП3.Акваферма
УстановитьКраткийЗаголовокПриложения("ЗУП3");
УстановитьЗаголовокКлиентскогоПриложения("Акваферма");
КонецПроцедуры
✍️@razrab_1C
🔥2👍1
Набор скриптов для знакомства с MS SQL Server
Как узнать список всех баз на сервере. Для этого есть несколько способов.
Вариант 1
Вариант 2
Вариант 3
Вариант 4
Все способы дают примерно ту же самую информацию, но с разной детализацией.
✍️@razrab_1C
Как узнать список всех баз на сервере. Для этого есть несколько способов.
Вариант 1
EXEC sp_helpdb; Вариант 2
EXEC sp_Databases; Вариант 3
SELECT @@SERVERNAME AS Server ,
name AS DBName ,
recovery_model_Desc AS RecoveryModel ,
Compatibility_level AS CompatiblityLevel ,
create_date ,
state_desc
FROM sys.databases
ORDER BY Name; Вариант 4
SELECT @@SERVERNAME AS Server ,
d.name AS DBName ,
create_date ,
compatibility_level ,
m.physical_name AS FileName
FROM sys.databases d
JOIN sys.master_files m ON d.database_id = m.database_id
WHERE m.[type] = 0 -- data files only
ORDER BY d.name; Все способы дают примерно ту же самую информацию, но с разной детализацией.
✍️@razrab_1C
🔥3👍2❤1
Media is too big
VIEW IN TELEGRAM
Варианты работы базой 1С: файловый и клиент-серверный
Возможные варианты работы с базой 1С: файловый и клиент-серверный. Плюсы и минусы каждого из вариантов.
источник
✍️@razrab_1C
Возможные варианты работы с базой 1С: файловый и клиент-серверный. Плюсы и минусы каждого из вариантов.
источник
✍️@razrab_1C
🔥3👍2
Тест Гилева. Нагрузочный тест TPC-1C
Из этого видео вы узнаете как быстро оценить скорость работы системы в целом, используя нагрузочный тест TPC-1C.
Замер производительности в 1С
Из этого видео вы узнаете как в 1С можно замерить производительность какой-либо операции: измерить частоту использования конкретных участков кода и скорость их выполнения.
источник
✍️@razrab_1C
Из этого видео вы узнаете как быстро оценить скорость работы системы в целом, используя нагрузочный тест TPC-1C.
Замер производительности в 1С
Из этого видео вы узнаете как в 1С можно замерить производительность какой-либо операции: измерить частоту использования конкретных участков кода и скорость их выполнения.
источник
✍️@razrab_1C
👍4🔥1
Настройка получения данных при использовании Планов Видов Характеристик
№ 1. Выборка запросом с явной связью
№ 2. Использование настроек характеристик в СКД
№ 3. Описание связи в настройках самого объекта
источник
✍️@razrab_1C
№ 1. Выборка запросом с явной связью
№ 2. Использование настроек характеристик в СКД
№ 3. Описание связи в настройках самого объекта
источник
✍️@razrab_1C
🔥4👍1
Как посчитать количество дней между датами в 1С
Рассмотрим различные ситуации, в которых нам может понадобиться это вычисление для работы программистом 1С.
1. В коде модулей
В частном случае в коде модулей требуется вычислить разность между датами, приведенными к началу дня. Результат будет вычислен в секундах, следовательно, его потребуется перевести в дни:
Пример использования в коде модуля
2. В тексте запросов 1С 8.3
Язык запросов 1С 8.3 также поддерживает ряд специализированных функций для операций с датами, среди которых имеется РАЗНОСТЬДАТ, предназначенная как раз для того, чтобы определить разность между датами, переданными ей, с указанием основной единицей измерения времени:
Синтаксис функции в языке запросов
Следует отметить, что при вычислении результата действия игнорируются параметры, единицы измерения которых меньше, чем переданная в третьем параметре, что позволяет предварительно не приводить в соответствие даты к началу дня.
Пример использования в языке запросов
3. В системе компоновки данных (СКД) 1С
Язык выражений 1С СКД также поддерживает специализированные функции для работы с датами и временем, как и язык запросов 1С 8.3, среди которых имеется функция РазностьДат, но ее синтаксис имеет некоторые отличия: третий параметр, определяющий тип разности, имеет значение типа Строка.
✍️@razrab_1C
Рассмотрим различные ситуации, в которых нам может понадобиться это вычисление для работы программистом 1С.
1. В коде модулей
В частном случае в коде модулей требуется вычислить разность между датами, приведенными к началу дня. Результат будет вычислен в секундах, следовательно, его потребуется перевести в дни:
РазницаВДнях = (НачалоДня (ДатаОкончания) - НачалоДня (Датаначала) ) / (60 * 60 * 24);Пример использования в коде модуля
2. В тексте запросов 1С 8.3
Язык запросов 1С 8.3 также поддерживает ряд специализированных функций для операций с датами, среди которых имеется РАЗНОСТЬДАТ, предназначенная как раз для того, чтобы определить разность между датами, переданными ей, с указанием основной единицей измерения времени:
РАЗНОСТЬДАТ (<Выражение>,«Выражение>, Секунда | Минута | Час | День | Месяц | Квартал | Год)Синтаксис функции в языке запросов
Следует отметить, что при вычислении результата действия игнорируются параметры, единицы измерения которых меньше, чем переданная в третьем параметре, что позволяет предварительно не приводить в соответствие даты к началу дня.
ВЫБРАТЬ
РАЗНОСТЬДАТ (ДАТАВРЕМЯ (2019, 4, 20, 15, 22, 5), ДАТАВРЕМЯ (2020,5), LAJABELMA (2020,4, 20, 15, 22,5), ДЕНЬ) КАК Вариант1, //366
РАЗНОСТЬДАТ (ДАТАВРЕМЯ (2020, 1,1,0,0, 0), ДАТАВРЕМЯ (2020, 12, 31, 23, 59, 59), ДЕНЬ) КАК Вариант2//365Пример использования в языке запросов
3. В системе компоновки данных (СКД) 1С
Язык выражений 1С СКД также поддерживает специализированные функции для работы с датами и временем, как и язык запросов 1С 8.3, среди которых имеется функция РазностьДат, но ее синтаксис имеет некоторые отличия: третий параметр, определяющий тип разности, имеет значение типа Строка.
ВЫБРАТЬ
ДАТАВРЕМЯ (2019, 4, 20, 15, 22, 5) Дата1,
ДАТАВРЕМЯ (2020,4, 20, 15, 22, 5) Дата2,
ДАТАВРЕМЯ (2020, 1, 1, 0, 0, 0) Дата3,
ДАТАВРЕМЯ (2020, 12, 31, 23, 59, 59) Дата4✍️@razrab_1C
👍4🔥2
Ошибка в 1С 8.3: Файл базы данных поврежден
Ошибка 1С «файл базы данных поврежден» встречается время от времени у многих пользователей 1С 8.3. Причин может быть множество: отключение света, некорректное выключение компьютера, с базой данных по локальной сети работает более одного пользователя, большой размер файловой базы данных и т.д. Как правило ошибка 1С 8.3 такого рода встречается в файловых базах данных. Первым делом нужно внимательно посмотреть, какой именно файл поврежден – тут возможны варианты.
1. Файл 1CD
Чаще всего бывает поврежден файл 1CD. Это файл базы данных непосредственно. Эта ошибка базы 1С говорит о том, что повреждена какая-то часть базы или таблицы, или сами данные. Поэтому любая попытка починить базу, скорее всего, будет сопровождаться частичной потерей данных. Самый лучший вариант – восстановить базу из резервной копии, если она есть. Если копии нет, тогда база чинится только утилитой chdbfl. Утилита эта входит в поставку программы и находится в папке bin вашей платформы 1С 8.3. Вот примерный путь:
Запускаете утилиту, указываете путь к базе данных. Путь к базе данных можно найти в окне запуска снизу или по кнопке Изменить в поле «Каталог информационной базы» 1С.
Обязательно ставите галку «Исправлять обнаруженные ошибки». Затем нажимаете кнопку «Выполнить».
При работе этой утилиты никто не должен работать в базе. Всех пользователей нужно попросить выйти.
Далее после проведения тестирования утилитой chdbfl имеет смысл провести Тестирование и исправление. Для этого нужно запустить базу в режиме конфигуратора и пройти Администрирование-Тестирование и исправление. Расставляем галки и точки как на картинке.
Чуть более подробно про тестирование и исправление. Много споров о том, как правильно заполнять 2 последних пункта – «При наличии ссылок на несуществующие объекты» и «При частичной потере данных объектов». Я ставлю «Очищать ссылки» и «Удалять объекты», потому что при выборе пункта «Создавать объекты» база попытается создать объект, данных для которого у нее нет. То есть это будет пустой объект с кодом вида F000000001, в котором не будут заполнены даже стандартные реквизиты.
В теории его можно потом заполнить. Но на практике часто вручную пользователь не может заполнить объект как раз из-за отсутствия стандартных реквизитов, и приходится писать программы, чтобы заполнить объекты, или пользоваться какими-то обработками. Создавать объект на мой взгляд имеет смысл только при наличии копии базы с целью найти все объекты с кодом F0, найти в копии их аналоги и перенести. В ином случае это может быть чревато сложностями в работе конфигурации, обменов и в прохождении тестирования, не говоря уже о работе пользователей.
2. Повреждение файлов кеша
Второй случай ошибки «Файл базы данных поврежден» встречается реже, но решается проще. Когда ошибка указывает на поврежденный файл 1С в папке AppData с непроизносимым цифро-буквенным названием, это говорит о повреждении файлов кеша. Как правило ошибка вылетает только у одного пользователя. Чтобы исправить ошибку нужно пройти по указанному пути и удалить папку с цифро-буквенным названием. Вот пример расположения файла.
✍️@razrab_1C
Ошибка 1С «файл базы данных поврежден» встречается время от времени у многих пользователей 1С 8.3. Причин может быть множество: отключение света, некорректное выключение компьютера, с базой данных по локальной сети работает более одного пользователя, большой размер файловой базы данных и т.д. Как правило ошибка 1С 8.3 такого рода встречается в файловых базах данных. Первым делом нужно внимательно посмотреть, какой именно файл поврежден – тут возможны варианты.
1. Файл 1CD
Чаще всего бывает поврежден файл 1CD. Это файл базы данных непосредственно. Эта ошибка базы 1С говорит о том, что повреждена какая-то часть базы или таблицы, или сами данные. Поэтому любая попытка починить базу, скорее всего, будет сопровождаться частичной потерей данных. Самый лучший вариант – восстановить базу из резервной копии, если она есть. Если копии нет, тогда база чинится только утилитой chdbfl. Утилита эта входит в поставку программы и находится в папке bin вашей платформы 1С 8.3. Вот примерный путь:
Запускаете утилиту, указываете путь к базе данных. Путь к базе данных можно найти в окне запуска снизу или по кнопке Изменить в поле «Каталог информационной базы» 1С.
Обязательно ставите галку «Исправлять обнаруженные ошибки». Затем нажимаете кнопку «Выполнить».
При работе этой утилиты никто не должен работать в базе. Всех пользователей нужно попросить выйти.
Далее после проведения тестирования утилитой chdbfl имеет смысл провести Тестирование и исправление. Для этого нужно запустить базу в режиме конфигуратора и пройти Администрирование-Тестирование и исправление. Расставляем галки и точки как на картинке.
Чуть более подробно про тестирование и исправление. Много споров о том, как правильно заполнять 2 последних пункта – «При наличии ссылок на несуществующие объекты» и «При частичной потере данных объектов». Я ставлю «Очищать ссылки» и «Удалять объекты», потому что при выборе пункта «Создавать объекты» база попытается создать объект, данных для которого у нее нет. То есть это будет пустой объект с кодом вида F000000001, в котором не будут заполнены даже стандартные реквизиты.
В теории его можно потом заполнить. Но на практике часто вручную пользователь не может заполнить объект как раз из-за отсутствия стандартных реквизитов, и приходится писать программы, чтобы заполнить объекты, или пользоваться какими-то обработками. Создавать объект на мой взгляд имеет смысл только при наличии копии базы с целью найти все объекты с кодом F0, найти в копии их аналоги и перенести. В ином случае это может быть чревато сложностями в работе конфигурации, обменов и в прохождении тестирования, не говоря уже о работе пользователей.
2. Повреждение файлов кеша
Второй случай ошибки «Файл базы данных поврежден» встречается реже, но решается проще. Когда ошибка указывает на поврежденный файл 1С в папке AppData с непроизносимым цифро-буквенным названием, это говорит о повреждении файлов кеша. Как правило ошибка вылетает только у одного пользователя. Чтобы исправить ошибку нужно пройти по указанному пути и удалить папку с цифро-буквенным названием. Вот пример расположения файла.
✍️@razrab_1C
👍5🔥2❤1
Media is too big
VIEW IN TELEGRAM
Рекомендации по улучшению хорошего кода на 1С
00:00 - Программный интерфейс
01:53 - Получить в именах Функций
03:00 - Использование глаголов в именах функций
04:03 - Где объявлять переменные
05:09 - Лишняя абстракция
06:23 - Функция-конструктор
06:52 - Внедрение зависимостей
07:43 - Адаптеры
08:27 - Побочный эффект метода
09:05 - Связность метода
10:00 - Выделение внешнего формата
10:50 - Хороший пример объявления выходного значения
11:45 - Метод должен либо обрабатывать данные, либо возвращать
13:05 - Дата провайдеры пишем в модуле менеджера
14:00 - Паттерн фасад
14:35 - Блокировки
16:35 - ОбменДанными.Загрузка = Истина
17:30 - Общий модуль не должен много знать об объектах
18:55 - Презентер
20:00 - ad-hoc полиморфизм
20:37 - Использование Знач
22:37 - Детали и бизнес-логика
23:37 - ВызватьИсключение — это хорошо
25:10 - Комментарии
26:14 - Метод делает два действия и это плохо
27:40 - Лучше использовать метод Заполнить
источник
✍️@razrab_1C
00:00 - Программный интерфейс
01:53 - Получить в именах Функций
03:00 - Использование глаголов в именах функций
04:03 - Где объявлять переменные
05:09 - Лишняя абстракция
06:23 - Функция-конструктор
06:52 - Внедрение зависимостей
07:43 - Адаптеры
08:27 - Побочный эффект метода
09:05 - Связность метода
10:00 - Выделение внешнего формата
10:50 - Хороший пример объявления выходного значения
11:45 - Метод должен либо обрабатывать данные, либо возвращать
13:05 - Дата провайдеры пишем в модуле менеджера
14:00 - Паттерн фасад
14:35 - Блокировки
16:35 - ОбменДанными.Загрузка = Истина
17:30 - Общий модуль не должен много знать об объектах
18:55 - Презентер
20:00 - ad-hoc полиморфизм
20:37 - Использование Знач
22:37 - Детали и бизнес-логика
23:37 - ВызватьИсключение — это хорошо
25:10 - Комментарии
26:14 - Метод делает два действия и это плохо
27:40 - Лучше использовать метод Заполнить
источник
✍️@razrab_1C
👍3🔥1
Зависшие сеансы 1С
1. Приложение «Диспетчер задач»
Чаще всего такая проблема встречается при клиент-серверном варианте работы, а причиной является некорректное завершение сеанса.
В файловом варианте работы для ОС Windows обычно достаточно через «Диспетчер задач» (Task Manager) завершить процесс Windows с рабочего места пользователя (ориентируясь, например, по заголовку окна):
В ОС семейства Linux привычного для пользователей ОС Windows приложения «Диспетчер задач» нет. Вместо этого используются консольные утилиты и команды, но в ряде дистрибутивов (например, Ubuntuи др.) имеется «Системный монитор» (SystemMonitor):
2. Администрирование серверов 1С
В случае использования клиент-серверного варианта работы управление сеансами осуществляется через оснастку «Администрирование серверов 1С:Предприятие». Для завершения сеанса необходимо обладать полномочиями администратора кластера серверов. Список сеансов может быть отображен двумя способами:
· для всего кластера в целом;
· отдельной информационной базы 1С.
Чтобы отобразить список соединений для отдельной информационной базы, следует в дереве центральных серверов выбрать нужный центральный сервер, выбрать нужный кластер, выбрать нужную информационную базу, а затем выбрать и раскрыть ветку Сеансы:
Для завершения сеанса следует выбрать требуемый сеанс в списке сеансов и выполнить команду контекстного меню Удалить или аналогичную команду главного меню утилиты. Если в момент завершения сеанса этот сеанс активен, то выполняется попытка разрыва соединения.
Перед удалением консоль кластера предлагает ввести текст сообщения об ошибке, который будет показан пользователю, который инициировал удаляемый сеанс:
К использованию данного средства следует подходить с осторожностью, так как завершение сеанса пользователя, активно работающего с информационной базой, может привести к потере данных.
Стоит также упомянуть о новом «явлении» для платформы 8.3 по сравнению с 8.2, введенном для повышения устойчивости работы клиентских приложений (для поддержания сеанса тонкий клиент и веб-клиент обеспечивают обращение к кластеру не реже 1 раза в 10 минут), при котором платформа выполняет удержание сеансов при продолжительном их бездействии (по умолчанию 20 минут). При этом у таких сеансов отсутствуют активные соединения и рабочий процесс:
Завершение «спящих» сеансов платформой выполняется автоматически по истечении заданного времени – по умолчанию 24 часа. При необходимости параметры засыпания и завершения спящих сеансов можно менять для конкретной информационной базы через конфигуратор (Администрирование → Параметры информационной базы):
Более подробно об этих и других параметрах информационной базы можно узнать в документации по платформе, доступной на портале ИТС.
✍️@razrab_1C
1. Приложение «Диспетчер задач»
Чаще всего такая проблема встречается при клиент-серверном варианте работы, а причиной является некорректное завершение сеанса.
В файловом варианте работы для ОС Windows обычно достаточно через «Диспетчер задач» (Task Manager) завершить процесс Windows с рабочего места пользователя (ориентируясь, например, по заголовку окна):
В ОС семейства Linux привычного для пользователей ОС Windows приложения «Диспетчер задач» нет. Вместо этого используются консольные утилиты и команды, но в ряде дистрибутивов (например, Ubuntuи др.) имеется «Системный монитор» (SystemMonitor):
2. Администрирование серверов 1С
В случае использования клиент-серверного варианта работы управление сеансами осуществляется через оснастку «Администрирование серверов 1С:Предприятие». Для завершения сеанса необходимо обладать полномочиями администратора кластера серверов. Список сеансов может быть отображен двумя способами:
· для всего кластера в целом;
· отдельной информационной базы 1С.
Чтобы отобразить список соединений для отдельной информационной базы, следует в дереве центральных серверов выбрать нужный центральный сервер, выбрать нужный кластер, выбрать нужную информационную базу, а затем выбрать и раскрыть ветку Сеансы:
Для завершения сеанса следует выбрать требуемый сеанс в списке сеансов и выполнить команду контекстного меню Удалить или аналогичную команду главного меню утилиты. Если в момент завершения сеанса этот сеанс активен, то выполняется попытка разрыва соединения.
Перед удалением консоль кластера предлагает ввести текст сообщения об ошибке, который будет показан пользователю, который инициировал удаляемый сеанс:
К использованию данного средства следует подходить с осторожностью, так как завершение сеанса пользователя, активно работающего с информационной базой, может привести к потере данных.
Стоит также упомянуть о новом «явлении» для платформы 8.3 по сравнению с 8.2, введенном для повышения устойчивости работы клиентских приложений (для поддержания сеанса тонкий клиент и веб-клиент обеспечивают обращение к кластеру не реже 1 раза в 10 минут), при котором платформа выполняет удержание сеансов при продолжительном их бездействии (по умолчанию 20 минут). При этом у таких сеансов отсутствуют активные соединения и рабочий процесс:
Завершение «спящих» сеансов платформой выполняется автоматически по истечении заданного времени – по умолчанию 24 часа. При необходимости параметры засыпания и завершения спящих сеансов можно менять для конкретной информационной базы через конфигуратор (Администрирование → Параметры информационной базы):
Более подробно об этих и других параметрах информационной базы можно узнать в документации по платформе, доступной на портале ИТС.
✍️@razrab_1C
👍3❤1🔥1
Media is too big
VIEW IN TELEGRAM
В видео рассмотрим 8 наиболее типовых ошибок при разработке запросов 1С
Евгений Гилев
• Запросы в цикле
• Необоснованное использование вложенных запросов
• Не корректное использование условий в запросах
• Использование таблиц значений
• «Бомба», заложенная в разыменовании полей
• Непопадание в индекс в условиях и соединениях
• Создание динамических запросов
• Получение ссылочных полей в запросе
источник
✍️@razrab_1C
Евгений Гилев
• Запросы в цикле
• Необоснованное использование вложенных запросов
• Не корректное использование условий в запросах
• Использование таблиц значений
• «Бомба», заложенная в разыменовании полей
• Непопадание в индекс в условиях и соединениях
• Создание динамических запросов
• Получение ссылочных полей в запросе
источник
✍️@razrab_1C
👍4🔥3
🔥5👍2👎1
Хранилище значений в 1С
Мало кто знает преимущества такого специального объекта в языке 1С, как хранилище значений.
Хранилище значений – это определенный объект языка в конфигурации, который может хранить информацию любого типа: файлы программ Word, Excel, PDF или объемы графической информации. То есть этот объект может хранить любую необходимую информацию.
Выбрать такой тип можно для реквизитов всех объектов, где их можно использовать. К примеру, реквизиты справочников, документов. Также можно его установить как тип константы и хранить информацию на более глобальном уровне.
Хочу обратить внимание, что вся работа справочников, имена которых носят частично имя владельца справочника, а частично «Присоединенные файлы», построена на реквизите с типом «ХранилищеЗначений».
1. Пример с изображением товара
Давайте разберем на примере. У нас есть изображение товара, и нам необходимо автоматически при загрузке номенклатуры загружать и изображение. Для этого необходимо, чтобы был справочник «НоменклатураПрисоединенныеФайлы» с одним реквизитом с нужным нам типом. После этого мы выбираем нужный нам файл с изображением и грузим его. Все легко и просто. Конечно, при загрузке множества файлов могут возникнуть проблемы, но только в моментах, которые Вы можете не знать или где-то ошиблись.
Выше приведен пример того, как можно работать с хранилищем и помещать туда данные. Существует один момент, на который я хотел бы обратить Ваше внимание. Это расчет степени сжатия. Максимальное сжатие, которое мы можем назначить – это 9. Этот режим программы сжимает файлы так, что они занимают мало места и не обременяют базу.
Чтоб очистить значение этого объекта, достаточно только установить ему значение «Неопределено».
2. Копии базы
Кстати, чуть не забыл про один немаловажный факт про этот объект.
Если у Вас настроено резервное копирование базы любыми средствами, и Вы поместили в базу какой-то нужный Вам файл, то он тоже будет сохранен в копии и в любой момент можно получить этот файл. Даже спустя годы, если, конечно, столько времени у Вас хранятся копии баз.
✍️@razrab_1C
Мало кто знает преимущества такого специального объекта в языке 1С, как хранилище значений.
Хранилище значений – это определенный объект языка в конфигурации, который может хранить информацию любого типа: файлы программ Word, Excel, PDF или объемы графической информации. То есть этот объект может хранить любую необходимую информацию.
Выбрать такой тип можно для реквизитов всех объектов, где их можно использовать. К примеру, реквизиты справочников, документов. Также можно его установить как тип константы и хранить информацию на более глобальном уровне.
Хочу обратить внимание, что вся работа справочников, имена которых носят частично имя владельца справочника, а частично «Присоединенные файлы», построена на реквизите с типом «ХранилищеЗначений».
1. Пример с изображением товара
Давайте разберем на примере. У нас есть изображение товара, и нам необходимо автоматически при загрузке номенклатуры загружать и изображение. Для этого необходимо, чтобы был справочник «НоменклатураПрисоединенныеФайлы» с одним реквизитом с нужным нам типом. После этого мы выбираем нужный нам файл с изображением и грузим его. Все легко и просто. Конечно, при загрузке множества файлов могут возникнуть проблемы, но только в моментах, которые Вы можете не знать или где-то ошиблись.
Настройки = Новый Структура () ;
Настройки.Вставить ("ПоУмолчанию", Истина);
Настройки. Вставить ("Наименование", "Наименование1") ;
Хранилище = Новый ХранилищеЗначения(Настроики, Новый СжатиеДанных(9);Выше приведен пример того, как можно работать с хранилищем и помещать туда данные. Существует один момент, на который я хотел бы обратить Ваше внимание. Это расчет степени сжатия. Максимальное сжатие, которое мы можем назначить – это 9. Этот режим программы сжимает файлы так, что они занимают мало места и не обременяют базу.
Чтоб очистить значение этого объекта, достаточно только установить ему значение «Неопределено».
2. Копии базы
Кстати, чуть не забыл про один немаловажный факт про этот объект.
Если у Вас настроено резервное копирование базы любыми средствами, и Вы поместили в базу какой-то нужный Вам файл, то он тоже будет сохранен в копии и в любой момент можно получить этот файл. Даже спустя годы, если, конечно, столько времени у Вас хранятся копии баз.
✍️@razrab_1C
🔥4👍2
Вставить объект в буфер обмена средствами 1С
Платформа 1С 8.3 позволяет работать с буфером обмена с помощью внешней компоненты COMОбъект("HtmlFile").
Внимание! Структура базы приёмника и структура база источника должно быть 100% идентичной!
Вставить объект в буфер обмена с помощью внешней компоненты в 1С 8.3:
✍️@razrab_1C
Платформа 1С 8.3 позволяет работать с буфером обмена с помощью внешней компоненты COMОбъект("HtmlFile").
Внимание! Структура базы приёмника и структура база источника должно быть 100% идентичной!
Вставить объект в буфер обмена с помощью внешней компоненты в 1С 8.3:
&НаКлиенте
Процедура Вставить_объект_В_буфер_обмена(Команда)
COM_Объект = Новый COMОбъект("htmlfile");
Вставить_объект_НаСервере(COM_Объект.ParentWindow.ClipboardData.Getdata("Text"));
КонецПроцедуры
&НаСервере
Процедура Вставить_объект_Сервере(ТекСтрока)
Новая_запись=Новый ЧтениеXML;
Новая_запись.УстановитьСтроку(ТекСтрока);
Новая_запись.Прочитать(); // элемент Root
Новая_запись.Прочитать(); // элемент с документом
Если ВозможностьЧтенияXML(Новая_запись) Тогда // получаем тип данных XML из Новая_запись
СсылкаНаОбъект=ПрочитатьXML(Новая_запись);
СсылкаНаОбъект.Ссылка.УникальныйИдентификатор();
Пользователю = Новый СообщениеПользователю;
Если СсылкаНаОбъект.Ссылка.Пустая() Тогда
СсылкаНаОбъект.Записать();
Пользователю.Текст = "Загружен "+СсылкаНаОбъект.Ссылка;
Иначе
СсылкаНаОбъект = СсылкаНаОбъект.Ссылка.ПолучитьОбъект();
ЗаполнитьЗначенияСвойств(СсылкаНаОбъект, Новая_запись);
Пользователю.Текст = "Изменен "+СсылкаНаОбъект.Ссылка;
КонецЕсли;
Пользователю.Сообщить();
КонецЕсли;
Новая_запись.Закрыть();
КонецПроцедуры
✍️@razrab_1C
👍2🔥1