Фоновые задания в OneScript и эксперименты с многопоточной выкачкой версий хранилища

Публикация № 1580212 09.01.22

Приемы и методы разработки - Групповая разработка (Git, хранилище)

oscript многопоточность v8storage хранилище

Описываю использование фоновых заданий в OneScript.

Однажды передо мной встала задача выгрузить в гит многолетнюю историю версий хранилища - больше 3 тысяч версий. Решение в лоб - расчехляем старый добрый gitsync и натравливаем его на хранилище. Конфигурации уровня ERP скачиваются долго - и это большая проблема. Частично выгрузку можно ускорить, разделив выгрузку версий хранилища и обработку их для выгрузки в гит (как описано в моей статье Devops на коленке). Но все равно это очень долго.

Одно из возможных решений - распараллелить обработку версий хранилища, запустить выгрузку в разные ветки гита разных версий (например 1-1000, 1001-2000, 2001-3000 и тд), а потом сделать rebase силами git. Это тоже не очень быстрая операция. Параллельность обработки версий хранилища можно обеспечить вручную - запустив нужные команды в разных окошках консоли, а потом следить за их выполнением, не очень-то удобно.

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

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

 

Скрипт многопоточной загрузки версий хранилища

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

Функция ТаблицаВерсийДляЗагрузки(НачальныйНомер, КонечныйНомер)

    ТаблицаВерсий = Новый ТаблицаЗначений;
    ТаблицаВерсий.Колонки.Добавить("НомерВерсии");
    ТаблицаВерсий.Колонки.Добавить("Статус");
    ТаблицаВерсий.Колонки.Добавить("ДатаНачалаЗагрузки");
    ТаблицаВерсий.Колонки.Добавить("ДатаЗавершенияЗагрузки");

    Счетчик = НачальныйНомер;
    Пока Счетчик <= КонечныйНомер Цикл
        НоваяСтрока = ТаблицаВерсий.Добавить();
        НоваяСтрока.НомерВерсии = Счетчик;
        НоваяСтрока.Статус = "Не обработана";
        Счетчик = Счетчик + 1;
    КонецЦикла;

    Возврат ТаблицаВерсий;

КонецФункции

Чуть не забыл, хранилище 1С под одним и тем же пользователем не может работать одновременно с несколькими базами - значит нам надо создать несколько пользователей в хранилище и передать в скрипт описание этих пользователей.

 

 

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

Функция МассивПользователейХранилища(КоличествоПользователейХранилища)

    Результат = Новый Массив;

    СчетчикПользователей = 0;
    
    Пока СчетчикПользователей <= КоличествоПользователейХранилища Цикл
        Результат.Добавить(СтрШаблон("%1%2", ИмяПользователяХранилища, СчетчикПользователей));
        СчетчикПользователей = СчетчикПользователей + 1;
    КонецЦикла;

    Возврат Результат;

Конецфункции

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

ТаблицаВерсий = ТаблицаВерсийДляЗагрузки(1, 15);

МассивТекущихЗаданий = Новый Массив;

КоличествоПользователейХранилища = 8;
СвободныеПользователи = МассивПользователейХранилища(КоличествоПользователейХранилища);

Для Каждого СтрокаВерсии Из ТаблицаВерсий Цикл
    
    Если МассивТекущихЗаданий.Количество() = КоличествоПользователейХранилища Тогда
        ОжидатьВыполненияЛюбогоЗаданияЗагрузки(МассивТекущихЗаданий, ТаблицаВерсий, СвободныеПользователи);    
    КонецЕсли;

    СтрокаВерсии.Статус = "Отправлена на загрузку";
    СтрокаВерсии.ДатаНачалаЗагрузки = ТекущаяДата();
    ДобавитьЗаданиеЗагрузки(СтрокаВерсии.НомерВерсии, МассивТекущихЗаданий, СвободныеПользователи);
   
КонецЦикла;

Добавление задания загрузки для лаконичности вынес в отдельную процедуру:

Процедура ДобавитьЗаданиеЗагрузки(НомерВерсии, МассивЗаданий, СвободныеПользователи)

    МассивПараметров = Новый Массив;
    МассивПараметров.Добавить(СвободныеПользователи[0]);
    МассивПараметров.Добавить(НомерВерсии);

    МассивЗаданий.Добавить(ФоновыеЗадания.Выполнить(ЭтотОбъект, "СохранитьВерсию", МассивПараметров));
    
    СвободныеПользователи.Удалить(0);
    
КонецПроцедуры

Ну и приведу листинг процедуры СохранитьВерсию, это простое использование библиотеки v8storage.

Процедура СохранитьВерсию(Пользователь, НомерВерсии) Экспорт

    ИмяФайлаКофигурации = СтрШаблон("%1\%2.cf", КаталогСохранения, НомерВерсии);
	ВременноеИмяФайлаКофигурации = СтрШаблон("%1\%2.tmp", КаталогСохранения, НомерВерсии);

    ХранилищеКонфигурации = Новый МенеджерХранилищаКонфигурации();
    ХранилищеКонфигурации.УстановитьПутьКХранилищу(ПутьКХранилищу);
    ХранилищеКонфигурации.УстановитьПараметрыАвторизации(Пользователь, "");
    
	ХранилищеКонфигурации.СохранитьВерсиюКонфигурацииВФайл(НомерВерсии, ВременноеИмяФайлаКофигурации);
	ПереместитьФайл(ВременноеИмяФайлаКофигурации, ИмяФайлаКофигурации);
	
КонецПроцедуры

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

Процедура ОжидатьВыполненияЛюбогоЗаданияЗагрузки(МассивТекущихЗаданий, ТаблицаВерсий, СвободныеПользователи)

        ИндексЗавершившегося = ФоновыеЗадания.ОжидатьЛюбое(МассивТекущихЗаданий);
        Задание = МассивТекущихЗаданий[ИндексЗавершившегося];
        ПараметрыЗадания = Задание.Параметры;
        Пользователь = ПараметрыЗадания[0];
        СвободныеПользователи.Добавить(Пользователь);
        НомерВерсии = ПараметрыЗадания[1];

        Если ЗначениеЗаполнено(Задание.ИнформацияОбОшибке) Тогда
            Загружена = "Ошибка";
            Сообщить(Задание.ИнформацияОбОшибке.ПодробноеОписаниеОшибки());
        Иначе
            Загружена = "Загружена";
        КонецЕсли;

        НайденныеСтроки = ТаблицаВерсий.НайтиСтроки(Новый Структура("НомерВерсии", НомерВерсии));
        Для Каждого СтрокаТаблицы Из НайденныеСтроки Цикл
            СтрокаТаблицы.Статус = Загружена;
            СтрокаТаблицы.ДатаЗавершенияЗагрузки = ТекущаяДата();
        КонецЦикла;
        МассивТекущихЗаданий.Удалить(ИндексЗавершившегося);

КонецПроцедуры

Полный текст скрипта вы можете найти на гитхабе RepoToCFBackgroundTask.

Запускаю его:

oscript .\toCF\RepoToCFBackgroundTask.os

Работает! Процесс oscript породил кучу процессов 1С. Вот скрин из ProcessExplorer от Sysinternals

 

 

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

 

Эксперименты с многопоточной загрузкой версий хранилища

Ну и теперь самое интересное - эксперименты!

Эксперименты проводил на отдельной виртуальной машине, не загруженной больше ничем. Хранилище находится рядом в локальной сети, подключение по TCP. Я скачивал первые 50 версий нашей основной рабочей конфигурации - ERP. На тот момент это была версия 2.4.5.83, размер CF - в районе 1.3 Гб.

Выгрузка одной версии занимает в среднем 5 минут. Я очищал каталог загрузки и запускал загрузку в n потоков, от 1 до 14, так три раза. Усредненное время загрузки вывел в таблицу. Прошу ознакомиться с моими результатами.

 

Потоков Общее время, минут На 1 версию абсолютное, сек На 1 версию в потоке, мин
1 225,3 270,4 4,5
2 175,1 210,1 7,0
3 122,5 147,0 7,4
4 104,8 125,8 8,4
5 88,6 106,3 8,9
6 80,7 96,8 9,7
7 75,5 90,6 10,6
8 70,9 85,1 11,3
9 67,9 81,5 12,2
10 65,9 79,1 13,2
11 64,6 77,5 14,2
12 63,9 76,7 15,3
13 62,3 74,8 16,2
14 61,6 73,9

17,2

 

 

Если не хочется смотреть в таблицу и график, опишу результат словами - чуда не случилось. Если 50 версий в один поток загружаются чуть меньше 4 часов, то в 10 потоков они загружаются за чуть больше часа, а хотелось бы за 20 минут. Да, ускорение загрузки есть, но оно нелинейное. После 6-7 потоков уменьшение общего времени загрузки незначительно.

При повышении количества потоков начинается конкуренция за ресурсы компьютера, в первую очередь - жесткий диск. Посмотрите, какая жесткая просадка по диску (очередь диска огромная):

 

 

Что тут можно сделать? Поставить более быстрый диск, подсыпать еще ресурсов компьютеру, перенести хранилище еще ближе (да хоть на этот же компьютер). Возможности для улучшений еще есть.

Еще, приглашаю вас, мои читатели, воспользоваться этим скриптом и выложить в комментарии свои результаты.

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

Итоги

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

В итоге с перерывами в течение недели сделал выгрузку всей истории хранилища. Команда git rev-list --count HEAD в репо покажет сколько версий было выгружено:

 

 

3578 версий.

Неплохо, да?

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Brawler 512 10.01.22 00:41 Сейчас в теме
Зачем вам такие большие хранилища? Какая цель у всего этого?
2. pavlov_dv 10.01.22 07:20 Сейчас в теме
Идея интересная, надо попробовать.

У меня похожая задача - залить в git-репозиторий всю историю продуктивного хранилища.
Конфигурация на треть меньше, чем у Вас, но все равно долго. Несколько тысяч коммитов выгружались около месяца :-)
В однопоточном режиме, конечно.
3. artbear 1402 10.01.22 10:48 Сейчас в теме
(0) Интересный набор статей, спасибо.

Насколько я понимаю, остались два вопроса
1 - как же слить все эти выгрузки в одну ветку средствами гита?
2 - есть планы в гитсинк добавить функционал из статей?
4. ardn 363 10.01.22 12:22 Сейчас в теме
(3)
1 - последовательная выгрузка версий в скриптом, ничего выдающегося
2 - сложно, подумаю
5. JohnyDeath 300 11.01.22 08:57 Сейчас в теме
Еще можно попробовать:
1. Использовать tool1CD. Тогда не нужно будет создавать пользователя под каждый поток. Но нужно обеспечить файловый доступ к каталогу хранилища.
2. Создать RAM-диск и выгружать CF на него. Скорее всего просадка в скорости обусловлена именно очередью записи на жесткий диск.

Короткое видео про многопоточную выгрузку в гит от 2016 года
http://xdd.silverbulleters.org/t/mnogopotochnyj-variant-sinhronizaczii-hranilishha-1s/685
6. infina15 16.01.22 10:21 Сейчас в теме
Рекомендую подключиться к хранилищу по HTTP и попробовать сделать то же самое. Должно быть ещё быстрее, как ни странно :)
Оставьте свое сообщение

См. также

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

Групповая разработка (Git, хранилище) Обмен между базами 1C v8 КД Бесплатно (free)

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

25.06.2018    30909    olegtymko    48    

Скрипт перепривязки базы к хранилищу конфигурации

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

Пример скрипта для перепривязки базы к хранилищу конфигурации, используя Python.

17.04.2022    602    malikov_pro    0    

Выгрузка версии хранилища в XML файлы

Файловые протоколы обмена (TXT, XML, DBF), FTP Групповая разработка (Git, хранилище) v8 Бесплатно (free)

Скрипт, выполняющий выгрузку произвольной версии из хранилища в XML.

17.03.2022    567    kraynev-navi    2    

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

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

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

02.06.2021    2603    Алексей Воробьев    2    

Как подключиться к хранилищу конфигурации на сервере за NAT, если есть доступ по RDP?

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

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

01.06.2021    3247    Dipod    13    

Мастер-класс: Реализация цикла CI/CD на практическом примере с использованием системы Тестер

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

На онлайн-митапе Инфостарта «DevOps в 1С» выступил Дмитрий Решитко – руководитель отдела разработки в компании C.T. Consultants Inc. Дмитрий провел мастер-класс, в котором продемонстрировал, как создавать новую функциональность в конфигурации с одновременным использованием инструмента тестирования и реализовать автоматизированное тестирование конфигурации при помещении кода в репозиторий на GitLab.

31.05.2021    1920    grumagargler    0    

Технология разветвленной разработки конфигураций 1С

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

Вся групповая разработка любой организации, где работает более 2-х программистов, в превосходящем большинстве случаев строится вокруг хранилища конфигурации. Те из нас, кто обращался к стандартам разработки 1С как минимум раз в жизни и читал их полностью (а может, и просто слышал от коллег), наверняка знают, что существует «Технология разветвленной разработки конфигураций» https://its.1c.ru/db/v8std#content:709:hdoc но не все поняли, как на самом деле эту замечательную вещь применять на практике, а кто-то понял и вероятнее всего думает, что «это к нам не относится, командная разработка по такой технологии в нашей организации не получится в силу определённых причин и потому применять её, к сожалению, я один не могу и не буду», до конца не разобравшись во всех аспектах, но это ошибочное мнение. В этой статье я постараюсь описать свой опыт, рассказать о преимуществах использования данной технологии, дать понять, что технология разветвленной разработки конфигураций на самом деле вещь индивидуальная и каждый для себя решает сам, применять её или нет, а также внести понимание, что у вас вообще нет никакой зависимости от своих коллег, работая в хранилище конфигурации при использовании этой технологии.

19.05.2021    8005    sinichenko_alex    45    

Хранилище значения. Заметки

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

Некоторые подробности про общеизвестный инструмент.

03.11.2020    17270    Yashazz    15    

Минимизация изменений в коде / Использование Хранилища общих настроек

Групповая разработка (Git, хранилище) v8 1cv8.cf Бесплатно (free)

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

14.11.2019    3106    biimmap    34    

История одного проекта обновления

Групповая разработка (Git, хранилище) v8 УТ11 Бесплатно (free)

История одного проекта обновления, хранилище, групповая разработка.

06.11.2019    5849    vasilev2015    20    

Git для 1С-ника и другие технологии групповой разработки

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

У многих специалистов в отношении Git сложились стереотипы, мешающие начать работу с этим прекрасным и удобным инструментом. Почему его не стоит бояться, и чем он может упростить жизнь 1С-никам, рассказал архитектор ГК «Невада» Станислав Ганиев.

28.10.2019    15348    stas_ganiev    17    

Переход на разработку с хранением в Git, часть 1, подготовка репозитория

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

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

29.09.2019    9532    malikov_pro    14    

Как начать работать с Git

Групповая разработка (Git, хранилище) v8 1С:Франчайзи, автоматизация бизнеса Россия Бесплатно (free)

Если Вы 1С программист, то обязательно наткнетесь на людей, рассказывающих о OScript, DevOps, EDT, SilverBulleters и так далее. Сейчас уже нельзя скрыться от этой информации. Так же было и со мной. В корне всего этого зоопарка лежит понимание и умение работать с Git (Распределённая система управления версиями). Укрупненной информации о ней много, Вы легко её нагуглите сами. В этой статье я старался собрать основные команды, определить их последовательность выполнения и привести краткий пример. Попробуйте выполнить все команды, и Вам станет проще разобраться с остальными программами. Удачи!

29.06.2019    9092    johnnyshut23    34    

Исправляем медленное выполнение операций с хранилищем конфигурации

Групповая разработка (Git, хранилище) v8 1cv8.cf Бесплатно (free)

В статье описан способ решения проблемы долгого захвата/помещения объектов в хранилище конфигурации

26.05.2019    15998    tormozit    21    

Git-репозитории для 1С-кода (опыт использования при небольших проектах)

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

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

28.03.2019    33704    ellavs    90    

Ошибки при работе с хранилищем конфигурации и способы их решения

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

В статье собраны наиболее распространенные ошибки при работе с хранилищем конфигурации и способы их обхода и решения.

01.03.2019    76807    Смешной 1С    35    

Git + 1С. Часть 2. Реализация Git workflow в 1С-разработке по шагам

Групповая разработка (Git, хранилище) v8 1cv8.cf Бесплатно (free)

В этой части мы рассмотрим наиболее распространённую схему workflow при групповой разработке с использованием Git. Как приступить к доработке по поставленной задаче; исправить ошибку, обнаруженную на этапе тестирования; отправить свой код на слияние в предстоящий релиз; и т.д. Постараемся охватить большинство задач, составляющих основной цикл разработки

28.01.2019    31131    stas_ganiev    31    

Еще раз про хранилище, или проблемы, с которыми мы столкнулись на практике

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

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

25.01.2019    3333    Lucifer93    2    

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

Групповая разработка (Git, хранилище) v8 1cv8.cf Бесплатно (free)

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

18.10.2018    106559    stas_ganiev    86    

Одновременное использование хранилища и расширений

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

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

23.08.2018    13736    shaa2    3    

Групповая разработка конфигураций в крупном холдинге

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

О чем мы сегодня поговорим? • О становлении и развитии групповой разработки конфигураций 1С в крупном холдинге с использованием хранилища конфигураций. • Обсудим практически все аспекты использования хранилища в командной разработке. • Я расскажу про те методы и идеи, которые мы пробовали использовать, какие используем до сих пор, от каких отказались и почему.

15.08.2017    24771    stas_ganiev    16    

Поиск несериализуемых значений при помещении в хранилище

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

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

02.03.2016    26253    balanton    2    

Работа с хранилищем конфигураций из командной строки

Групповая разработка (Git, хранилище) v8 Бесплатно (free)

Данное изложение на примерах демонстрирует работу с хранилищем конфигураций из пакетного режима

22.04.2014    19101    Franco    12    

Хранилище конфигурации: не очевидные особенности групповой разработки

Групповая разработка (Git, хранилище) v8 1cv8.cf Бесплатно (free)

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

03.06.2013    44952    _also    33    

Настройка удаленного хранилища 1С 8.2 IIS6 (server 2003)

Групповая разработка (Git, хранилище) v8 1cv8.cf ИТ-компания Бесплатно (free)

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

26.11.2012    14562    alex.msk    3    

1с v8.2.13 ХранилищеЗначений в Табличной части объекта

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

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

21.12.2011    23469    kostia.ck    7    

Механизм хранения реквизитов в хранилище значений информационной базы

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

Хранение реквизитов внешних печатных форм в информационной базе

21.11.2011    31613    alnovin    14    

Сравнение значений типа Хранилище

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

Сравнение значений типа Хранилище (простое решение для тех, кто не нашел ничего подобного на просторах интернета и не имеет навыков быстрого формирования контрольных сумм CRC, md5 средствами 1С, но имеет желание или необходимость выполнения такого сравнения). * было актуально для платформы 8.2, платформа 8.3 уже позволяет получить хеш MD5 или CRC32

18.10.2011    16920    yandextesting    6    

Хранилище конфигурации

Групповая разработка (Git, хранилище) v8 Россия Бесплатно (free)

Теперь можно забыть про типовое хранилище от 1С с которым на больших конфигурациях работать просто невозможно. Все изменения конфигурации будут сохраняться в автоматическом режиме на СУБД и вы всегда за доли секунды можете вернуться к старой версии или посмотреть изменения.

28.12.2010    22608    German    24    

Настройка удаленного хранилища конфигурации 1С 8.1 ( HTTP)

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

Удаленное хранилище в 1С предприятии 8.1 позволяет группе программистов из различных мест(городов, стран, ...) совместно трудится над одним и тем же проектом или конфигурацией. Совсем не обязательно располагаться в одном здании, достаточно лишь, чтобы у заказчика и , желательно, у программистов был бы широкий доступ в интернет и компьютер с установленной операционной системой, например, Windows Server 2003 на сервере хранилища заказчика.

08.06.2010    33136    Veratis1c    12    

Хранилище конфигурации: создание и использование

Групповая разработка (Git, хранилище) v8 1cv8.cf Россия Бесплатно (free)

Заметка про Хранилище конфигурации 1С:8.х Зачем, кому и для чего оно может быть полезно? Как создать, как использовать, как организовать работу программистов с ней? "Неочевидные" и "невероятные" методики для чайников :)

12.01.2010    154387    kote    57