Хранение файлов - как уменьшить размер базы данных

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

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

ХешФункция MD5 ХранилищеЗначения Файлы

18
Хранение файлов в базе 1С можно оптимизировать для уменьшения размера хранимых данных.

Очень часто, в базах 1С организуют хранилище файлов, что удобно. Например, удобно хранить переписку по электронной почте. И вот, представьте, вы берете к-нить картинку и отправляете 8 своим коллегам, с точки зрения обычного хранения данных, в вашей БД, сохранится 9 копий данной картинки, а если ваши коллеги начнут отвечать на письмо, то и больше.

Вот так это выглядит;одинаковые файлы, записываются несколько раз:

 

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

1С поддерживает следующие алгоритмы, но можно использовать и внешние вызовы, для получения ХЕШа:

  • CRC32 (CRC32)
  • MD5 (MD5)
  • SHA1 (SHA1)
  • SHA256 (SHA256)

Основная идея в том, что прежде чем записать в БД файл, проверить - существует ли точно такой же файл или нет? Если существует, то записывать его нет необходимости, и можно сохранить только необходимые реквизиты - имя файла, ссылка на объект и т.д.

Для ускорения перебора файлов, мы сначала ищем их по размеру (число) потом уже по ХЕШу. Для чего у нас есть регистр:

 

Если файл не найден, мы его записываем в хранилище значений, если найден, то записываем ссылку на него, уже в другом регистре:

 

 

Я провел эксперимент, взял БД с обычным хранением файлов и БД с переделанным под описанный выше алгоритм хранением. После чего, в 2 БД были загружены письма за 1 год. Результат - база данных стала более чем в 3 раза меньше:

 

 

Для "усиления" надежности, можно использовать несколько ХЕШ-функций. Падения быстродействия при загрузке почты, я не заметил.

Немного кода:

&НаСервере
Функция ПолучитьРазмерФайлаИХешМД5(_ХранилищеЗначения) Экспорт
	Структура = новый Структура;
	
	ДД = _ХранилищеЗначения.Получить();
	РазмерФайла = ДД.Размер();
	
	Хэш = Новый ХешированиеДанных(ХешФункция.MD5);
	Хэш.Добавить(ДД);
	МД5Двоичный = Хэш.ХешСумма;
	Результат = ПолучитьHexСтрокуИзДвоичныхДанных(МД5Двоичный); 
	ХешМД5 = Результат; 	

	Структура.Вставить("РазмерФайла",	РазмерФайла);
	Структура.Вставить("ХешМД5", 		ХешМД5);

	Возврат Структура;
КонецФункции

&НаСервере
Процедура ЗаполнитьВложения(_Файлы, ИмяВложения, ИнтернетПочтовоеСообщение, _Владелец) Экспорт
	
	Для Каждого ИнтернетПочтовоеВложение Из ИнтернетПочтовоеСообщение.Вложения Цикл
		
		ИмяВложения = ИнтернетПочтовоеВложение.Имя;
		
		Если ТипЗнч(ИнтернетПочтовоеВложение.Данные) = Тип("ДвоичныеДанные") Тогда
			
			СтруктураФайла = Новый Структура;
			 
			СтруктураФайла.Вставить("ИмяФайла",				ИмяВложения);
			СтруктураФайла.Вставить("Идентификатор",		ИнтернетПочтовоеВложение.Идентификатор);
			СтруктураФайла.Вставить("ПутьКФайлу",			"");
			СтруктураФайла.Вставить("ХранилищеЗначения"	,	Новый ХранилищеЗначения(ИнтернетПочтовоеВложение.Данные, Новый СжатиеДанных()));
			СтруктураФайла.Вставить("СпособКодирования",	Строка(ИнтернетПочтовоеВложение.СпособКодирования));
			СтруктураФайла.Вставить("ТипСодержимого",		ИнтернетПочтовоеВложение.ТипСодержимого);

			Файл = СоздатьФайл(_Владелец, СтруктураФайла);
			
			НовоеФайлы 			= _Файлы.Добавить();
			НовоеФайлы.Файл 	= Файл.Ссылка;
		Иначе
			ЗаполнитьВложения(_Файлы, ИмяВложения, ИнтернетПочтовоеВложение.Данные, _Владелец);
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры

&НаСервере
Функция СоздатьФайл(_Владелец, _СтруктураФайла) Экспорт

	ИмяФайла			= _СтруктураФайла.ИмяФайла;	
	Идентификатор		= _СтруктураФайла.Идентификатор;
	ПутьКФайлу			= _СтруктураФайла.ПутьКФайлу;
	ХранилищеЗначения	= _СтруктураФайла.ХранилищеЗначения;
	СпособКодирования	= _СтруктураФайла.СпособКодирования;
	ТипСодержимого		= _СтруктураФайла.ТипСодержимого;

	СтруктураФайла		= ПолучитьРазмерФайлаИХешМД5(ХранилищеЗначения);	
	ФайлСсылка			= НайтиФайлПоРазмеруФайлаИХешуМД5(СтруктураФайла.РазмерФайла, СтруктураФайла.ХешМД5);	
	
	Если ФайлСсылка = неопределено Тогда 
		
		Файл = Справочники.Файлы.СоздатьЭлемент();	
		Файл.Наименование			= ИмяФайла;
		Файл.ДанныеФайла 			= ХранилищеЗначения;
		
		Файл.Записать();
		
		ФайлСсылка = Файл.Ссылка;
	КонецЕсли;
	
	Регистр = РегистрыСведений.Регистр_ВладельцыФайлов.СоздатьНаборЗаписей();	
	Регистр.Отбор.Источник.Установить(ФайлСсылка);		
	Регистр.Отбор.ВладелецФайла.Установить(_Владелец);
	
	Регистр.Прочитать();
	
	Если Регистр.Количество() = 0 Тогда
		ЗаписьРегистра	= Регистр.Добавить();
		
		ЗаписьРегистра.Источник			= ФайлСсылка;
		ЗаписьРегистра.ВладелецФайла	= _Владелец;    

	ИначеЕсли Регистр.Количество() > 1 Тогда
		ВызватьИсключение "В регистре Регистр_ВладельцыФайлов для (" + Строка(ФайлСсылка) + ") найдено несколько одинаковых значений. Сообщите разработчику. Сделайте скриншот вводимых данных.";
	Иначе
		ЗаписьРегистра = Регистр[0];
	КонецЕсли;
	
	ЗаписьРегистра.ИмяФайла				= ИмяФайла;
	ЗаписьРегистра.Идентификатор		= Идентификатор;
	ЗаписьРегистра.ПутьКФайлу			= ПутьКФайлу;
	ЗаписьРегистра.СпособКодирования	= СпособКодирования;
	ЗаписьРегистра.ТипСодержимого		= ТипСодержимого;	
	
	Регистр.Записать();			
	
	Возврат ФайлСсылка; 
	
КонецФункции


 

18

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

Комментарии
Избранное Подписка Сортировка: Древо
1. stepan_s 11.09.19 03:48 Сейчас в теме
Такой подход допустим в случае хранения файлов в едином месте хранения (справочник, регистр сведений), но существуют реализации когда хранилище с файлом в документах, или прочих уникальных метаданных. Как быть в таком случае? Есть ли варианты?
И мягко сказать не мало работы для перевода логики хранения...
Ошибаюсь?
2. 2tvad 60 11.09.19 09:27 Сейчас в теме
(1) Думаю, не принципиально где вы храните файлы. Потому что, придется переделывать их отображение и получение на основании регистра (в моем случае Регистр_ВладельцыФайлов). Измерение Источник получит "Составной тип данных" на все возможные хранилища файлов (если нельзя сослаться прямо, то будут некие ключи для ссылок).

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

Я планирую переделывать такой механизм у одного своего Заказчика, по факту отпишусь что вышло по объему базы и сколько это заняло в чел.часах.
Fox-trot; stepan_s; +2 Ответить
3. МимохожийОднако 129 15.09.19 08:05 Сейчас в теме
В порядке бредовой идеи.
Добавить в типовой регистр с картинками реквизит ХэшМд5. Добавить регистр с измерением ХэшМд5 и хранилищем файла. При записи сначала сохранять в добавленный регистр ХэшМд5 и картинку (Хранилище значений), а после этого записывать ХэшМд5 в добавленный реквизит в типовом регистре.

Для тех записей типового регистра, в которых еще не заполнен добавленный реквизит запустить фоновое задание, которое перезаписывает типовой регистр с очисткой ранее записанных картинок из ресурса хранилища значений
Дмитрий74Чел; +1 Ответить
4. Diversus 2037 16.09.19 09:20 Сейчас в теме
(0) Что будет когда есть файл, который используется, например, в двух документах (файлы одинаковые) тех же электронные письма входящие и мы пометим на удаление одно из входящих писем и удалим?
Ваша доработка на это никак не отреагирует и будет удалено вложение, которое используется в другом документе.
Нужен дополнительный анализ удалять или не удалять файл-вложение иначе это может быть проблемой.
wowik; user1274438; +2 Ответить
5. 2tvad 60 16.09.19 09:31 Сейчас в теме
(4) Будет удалена запись в регистре "Регистр_ВладельцыФайлов".

Да вы правы, нужен дополнительный анализ при удалении. В случае если удалены все владельцы, то на файл отсутствуют ссылки и такие файлы нужно удалять, например регламентным заданием раз в сутки или когда удаляется последняя ссылка на файл.
6. Diversus 2037 16.09.19 09:38 Сейчас в теме
(5) Если мы говорим о стандартном функционале, то из справочника "ЭлектронноеПисьмоВходящееПрисоединенныеФайлы" файл будет удален при удалении объекта владельца подпиской на событие "ВыполнитьДействияПередУдалениемПрисоединенногоФайла". Так удалится сам файл.
Если я все правильно понял, вы создаете новый файл только тогда, когда нет уникальной записи с такой MD5, а если нашли,то просто указываете, что файл находится "вот здесь" остальные механизмы вы не трогали. Соответственно при удалении любого владельца файла стандартная БСП удалит исходный файл, а все остальные владельцы, которые ссылаются на этот же файл останутся без этого файла.
user1274438; +1 Ответить
7. 2tvad 60 16.09.19 09:52 Сейчас в теме
(6) Про стандартный функционал - вы абсолютно правы. Что БСП, что функционал 1С в прочих конфах заточен на работу со справочниками, где хранятся файлы. Все эти вызовы придется переделать на работу с регистром.
8. user1274438 16.09.19 10:49 Сейчас в теме
Все не читал. Штатную возможность хранения в томах уже предлагали?
9. 2tvad 60 16.09.19 11:21 Сейчас в теме
В описанной ситуации, если у вас в томах - 6,5 Гб файлов, будет 1,8 Гбайт.
10. user1274438 16.09.19 17:05 Сейчас в теме
(9) Дык, елы палы - даже 6.5 Гб, хранящихся в томах, уменьшают размер базы данных на 6.5 Гб

Что же касается нестыковок, типа (4) и (6) - то наложите на это еще, например, РИБ
Дальше даже думать не хочется, как можно потом разобраться - "куда потерялся мой файлик!!!!111". Особенно - если это не электропочта, а например, документооборот, а сами документы еще и электроподписями подписываются.
11. 2tvad 60 16.09.19 18:43 Сейчас в теме
(10) согласен. Но можно уменьшить 6,5 Гбайт в томах до 1,8 Гбайт. Что тоже хорошо с точки зрения скорости резервирования.
12. triviumfan 12 16.09.19 20:08 Сейчас в теме
Интересное решение, но нужно ли?!
13. Светлый ум 235 17.09.19 07:47 Сейчас в теме
14. azubar 38 30.09.19 13:29 Сейчас в теме
Как по мне, почту тянуть в 1С это зло, особенно учитывая реализацию почтового клиента 1С.
По поводу оптимизации хранения вложений также реализовал подобный механизм: отдельный справочник для хранения вложений, стандартный функционал работы был переписан так чтобы при изменении файлов система проверяла есть ли в хранилище файл с таким хешем, если нет то создавала, а в стандартном справочнике хранилась только ссылка на дополнительный справочник, при этом обновление / удаление файла не затрагивало сам файл и остальные элементы ссылающиеся на него. Регламентное задание периодически проверяло и очищало (архивировало) файлы на которые не ссылается ни один элемент из стандартного справочника. Такой подход очень сильно экономит пространство (независимо от варианта хранения в базе или в томах) и непонятно почему он до сих пор не реализован в типовых.
15. EVKash 3 30.09.19 14:25 Сейчас в теме
(14) в типовых и без этого косяков предостаточно...
в 1С руководствуются идеей, что компьютеры становятся все мощнее и надо всю эту мощь использовать. оптимизация? не... не слышали.
Дмитрий74Чел; +1 Ответить
16. 2tvad 60 30.09.19 17:01 Сейчас в теме
(15) Согласен. Стоит допилить, например, механизм регистров и не записывать физически данные, если нет в них изменений. Это сколько ресурсов сэкономит.
17. 2tvad 60 30.09.19 17:09 Сейчас в теме
(14) почту тянут для разных целей. Например, что бы переписка с заказчиком по контрактам была видна. Плюс это дисциплинирует продажников. Одно дело обсуждать в своей почте, другое, когда это видно сразу же нач.отдела. И не "Петров, а что у тебя там с контрактом", а "Петров, у тебя контракт подвис на согласовании сроков поставки, ты когда график вышлешь".

Есть у меня еще интересный механизм - архивирование файлов. Это когда старые файлы - более одного года давности, раз в год, переносятся из базы на диск. Фитча в том, что их можно не бекапить постоянно. Т.к. год этот архив не меняется.

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

См. также

Перенос данных БП 3.0 => УТ 11 / КА 2 / ERP 2 (ЕРП) (перенос остатков, документов и справочной информации из "1С:Бухгалтерия предприятия 8", ред.3.0). Обновлено до БП 3.0.73.х, УТ 11.4.10.х, КА 2.4.10.х., ERP 2.4.10.х! Промо

Переносятся документы за выбранный период, справочная информация и остатки по счетам бух. учета в программу УТ 11 / КА 2 / ЕРП 2 (ERP). Переносятся все возможные виды операций ввода остатков на нужную дату. Есть отбор по периоду переноса документов и фильтр по организации, доступен выбор даты ввода остатков. Если нужно переносить что-то дополнительно, то обычно бесплатно добавляем это в перенос . Смотрите видеодемонстрацию со звуком - советами по переносу и рекомендациями настройки программ.

29700 руб.

Агрегатные функции СКД, о которых мало кто знает 356

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Пользуетесь ли Вы всеми возможными агрегатными функциями, которые предоставляет система компоновки данных? Если Вы используете только: СУММА, КОЛИЧЕСТВО, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, то эта статья для Вас.

05.09.2019    16316    ids79    44       

Обмен данными. Консистентность vs Многопоточность 27

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Интеграция

Рассмотрим теоретические основы обмена данными. Какие бывают обмены, какие гарантии при этом даются, зачем идти на компромиссы и что при этом может пойти не так. Есть ли идеальная схема?

03.09.2019    5191    m-rv    1       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив 264

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Подробное описание и использование внутренних функций системы компоновки данных: Вычислить, ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений.

08.08.2019    19183    ids79    31       

С 2020 года сервис «Продление поддержки конфигурации 1С:УПП» подорожает вдвое Промо

Успейте продлить поддержку УПП до повышения цен! Фирма «1С» предупредила об изменении цен на сервис «Продление поддержки конфигурации "1С:Управление производственным предприятием"». С 1 января 2020 года сервис подорожает в два раза.

Выгрузка документа по условию 5

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Разработка

Что делать, если документы нужно выгружать не все подряд, а по какому-то фильтру: статусу, дате, набору условий... А что если он соответствовал этим условиям, а потом перестал? А если потом опять начал? Такие ситуации заставили попотеть не одного программиста.

25.04.2019    7921    m-rv    2       

Как настроить правильную техподдержку (helpdesk, service desk на коленке) 39

Статья Программист Бизнес-аналитик Руководитель проекта Нет файла v8 УУ Управление взаимоотношениями с клиентами (СRM) Документооборот и делопроизводство Монитор заказов Учет рабочего времени Бесплатно (free) Управление услугами и сервисом

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

24.04.2019    9264    siddy    0       

Перенос данных УПП 1.3 => ERP 2 (ЕРП) / УТ 11 / КА 2.х (обработка переноса документов, остатков и справочников из "1С:Управление производственным предприятием, ред. 1.3" в ERP / УТ 11 / КА 2). Обновлен до УПП 1.3.127.х, КА 2.4.10.х и ERP 2.4.10.х! Промо

Обработка позволяет переносить из УПП 1.3 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления при выходе новых релизов конфигураций 1С.

29700 руб.

Как прикрутить ГУИД к регистру сведений 23

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8 Разработка

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

16.04.2019    10464    m-rv    16       

Базовый курс по разработке мобильных 1C-приложений для Android-устройств. Третий поток. Онлайн-интенсив с 11 февраля по 05 марта 2020 г. Промо

Данный онлайн-курс предусматривает изучение базовых принципов создания приложений для операционной системы Android, работающих на мобильной платформе “1С:Предприятие”. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие” при разработке прикладных решений для “обычных” компьютеров, но пока ещё не занимался разработкой 1С-приложений, предназначенных для работы на мобильных устройствах.

7500 рублей

Копирование числовых ячеек из 1С в Excel 26

Статья Системный администратор Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Загрузка и выгрузка в Excel Администрирование данных 1С

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

15.01.2019    13141    itriot11    21       

Универсальные функции ЗУП 3.1 / ЗКГУ 3.1, которые помогут в разработке 509

Статья Программист Нет файла v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Зарплата Управление персоналом (HRM) Бесплатно (free) Универсальные функции

В статье размещен список стандартных процедур и функций с примерами, которые могут помочь при разработке (доработке) конфигураций Зарплата и управление персоналом ред. 3.1 и Зарплата и кадры государственного учреждения 3.1. Иногда бывает довольно сложно правильно получить данные или долго, поэтому лучшим вариантом будет использование стандартных процедур. Буду очень признателен, если Вы поделитесь своим опытом и предложите свои варианты стандартных процедур которые помогают в работе. Или предложите, как дополнить имеющиеся процедуры.

14.11.2018    39504    GeterX    94       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Автоматические и управляемые блокировки применительно к типовым конфигурациям 1С 129

Статья Программист Нет файла v8 v8::blocking 1cv8.cf Бесплатно (free) Математика и алгоритмы Практика программирования

Основные принципы работы с режимами автоматических и управляемых блокировок в 1С Предприятие 8. Теория и применение в типовых конфигурациях: БП, УТ, ЕРП

10.11.2018    23937    ids79    40       

Git + 1С. Часть 1. Как подключиться к команде разработки и начать использовать Git 282

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика Управление проектом

Первая статья из цикла инструкций по работе с Git в 1С-разработке. Рассмотрим, как настроить рабочее место, как получить свою "копию" проекта для разработки и приступить к полезным действиям. Все примеры будут изложены в рамках трёх практических кейсов: 1. Моя команда дорабатывает типовую конфигурацию, использует приватный репозиторий на BitBucket, в котором версионируются внешние отчеты/обработки, расширения конфигураций и правила обмена; 2. Я участвую в стартап-команде, которая разрабатывает свою конфигурацию с использованием Git и GitLab; 3. Я принимаю участие в развитии OpenSource-продукта на GitHub как заинтересованный разработчик (контрибьютор).

18.10.2018    39888    stas_ganiev    72       

Перенос данных БП 2.0 => УТ 11 / КА 2 / ERP 2 (перенос остатков, документов и справочников из "1С:Бухгалтерия предприятия 8", ред. 2.0 в "1С:Управление торговлей 8", ред.11 / КА 2 / ERP 2). Обновлено до УТ 11.4.10.х, КА 2.4.10.х, ERP 2.4.10.х! Промо

Перенос позволяет загрузить в УТ 11 / КА 2 / ERP 2 документы за выбранный период, справочную информацию и остатки по счетам бух. учета. Переносятся остатки денежных средств, взаиморасчетов, остатки товаров и материалов на складах. Переносятся девятнадцать основных видов документов за выбранный период и вся нормативно-справочная информация. Есть фильтр по организации. Если нужно переносить что-то дополнительно, то обычно бесплатно дорабатываю правила (перед покупкой согласуйте необходимые доработки).

29700 руб.

Вспомогательные инструкции в коде 1С 107

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования

Помогаем редактору кода 1С помогать нам писать и анализировать код.

15.10.2018    22246    tormozit    100       

Из Excel в 1С запросом 33

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

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

14.08.2018    15411    m-rv    5       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Повышаем эффективность разработки правил обмена 125

Статья Программист Нет файла v8 КД ОС Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8

Как повысить скорость и качество разработки правил обмена? Как вести групповую разработку правил обмена? Как облегчить сопровождение правил обмена после передачи в эксплуатацию? Об этом и многом другом вы можете узнать из этой статьи.

25.06.2018    21666    olegtymko    47       

Очный семинар по регулярному менеджменту Александра Фридмана "Вы или Хаос", 12 декабря 2019 г. , Санкт-Петербург Промо

Семинар по регулярному менеджменту от Александра Фридмана для собственников, первых лиц и топов. Технология управленческого планирования, комплексного управления временем и другими ресурсами, выполнением поручений, делами, информацией, контактами (встречи-звонки-почта).

от 11000 до 29000 рублей

Как сделать запрос на изменение данных 75

Статья Программист Нет файла v8 v8::Запросы 1cv8.cf Бесплатно (free) Практика программирования

В статье приведены особенности внутренней архитектуры и примеры работы с расширением языка запросов 1С.

01.06.2018    23341    m-rv    21       

Строим графы средствами 1С (без GraphViz) 44

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования

Множество статей на Инфостарте описывают, как работать с компонентой GraphViz, чтобы построить ориентированный граф. Но практически нет материалов, как работать с такими графами средствами 1С. Сегодня я расскажу, как красиво строить графы с минимальным пересечением. Нам этот метод пригодился для отрисовки алгоритмов в БИТ.Финансе, т.к. типовой механизм не устраивал. Еще это может быть полезно для визуализации различных зависимостей: расчета себестоимости, графы аффилированности компаний и т.д. Надеюсь, эта статья поможет сделать мир 1С красивее и гармоничней:) Итак, поехали...

23.05.2018    19106    slozhenikin_com    20       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Распределение расходов пропорционально продажам 9

Статья Программист Пользователь Нет файла v8 v8::ОУ УТ10 УУ Финансовый учет и бюджетирование (FRP) Учет доходов и расходов Бесплатно (free) Практика программирования

Финансовая модель. Распределение административных расходов по подразделениям пропорционально продажам за месяц. Дополнительные реквизиты против бизнес-процессов!

13.05.2018    13318    Rustig    9       

Универсальный обмен между идентичными конфигурациями через REST интерфейс OData. Часть І: Справочники 96

Статья Программист Нет файла v8 Бесплатно (free) Перенос данных из 1C8 в 1C8

Сейчас все чаще интеграции различных конфигураций проектируются через HTTP-сервисы - они и работают быстрее, и "войти" в режим отладки гораздо проще, тем самым обойдя "черный ящик" универсального обмена через xml, например. Более года назад я начал работать в компании, в которой разработчики работали с конфигурациями 1С в режиме совместимости еще 8.2.16 (менять режим совместимости в типичных базах мы не хотели) - а как Вы наверное знаете, если интересовались HTTP-сервисами в 1С, их использование в режиме совместимости 8.3.4 и ниже недопустимо - и здесь я уже не надеялся на разработку и использование HTTP-сервисов. Но позже меня заинтересовал такой "сервис" как REST интерфейс OData, так как его можно использовать не меняя режим совместимости конфигурации - именно он и стал для меня идеальным вариантом решения "нетривиальных" задач.

11.05.2018    17715    V.Stavinsky    11       

Онлайн-интенсив "Бизнес-процессы для подготовки к экзамену 1С:Специалист по платформе" 12 декабря 2019 г. Промо

На интенсиве будут рассмотрены все теоретические вопросы, связанные с устройством механизма бизнес-процессов – это необходимо для успешной сдачи экзамена 1С:Специалист по платформе. Также, в качестве практического примера, будет решена задача, аналогичная экзаменационной.

777 рублей

Минимализмы 3 359

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Универсальные функции

Очередная серия "минимализмов" [http://infostart.ru/public/306536/, https://infostart.ru/public/460935/]. Также, как и в предыдущих статьях, здесь приведена подборка коротких оригинальных авторских решений некоторых задач. Ранее эти решения были разбросаны по моим комментариям к чужим публикациям.

19.02.2018    38789    ildarovich    44       

Этюды по программированию. Взаимодействие с Microsoft Word 109

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования

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

11.12.2017    27615    milkers    23       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Метод формирования движений в типовых регистрах нетиповыми регистраторами 31

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Практика программирования

Вариант решения задач с проведением по типовым регистрам нетиповыми регистраторами. Зачем - чтобы при сравнении конфигурации не обращать внимание на свойства регистров и исключить вероятность допущения горькой оплошности при обновлении информационных баз, заменив типы регистраторов основной конфигурации типами конфигурации поставщика. Для программных продуктов, имеющих в своем составе метаданных документ "Корректировка регистров"("Корректировка записей регистров").

05.12.2017    22908    itriot11    34       

1С: Конвертация данных 3. Инструкции и примеры. EnterpriseData (универсальный формат обмена) 749

Статья Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1C8 в 1C8 Практика программирования Обмен через XML

Что такое КД3? Как начать использовать? Полезные дополнения к документации. Что нужно исправить в типовых обработках и конфигурации. Как изменить правила обмена не снимая конфигурацию с поддержки. Как отлаживать правила обмена?

19.11.2017    147375    MaxS    251