Автообновление нескольких распределенных удаленных баз, личный опыт

Публикация № 609568 12.04.17

Интеграция - Обмен между базами 1C

автоматизация обновление скрипт

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

Первым делом настроили РБД таким образом, что в регионах остались подчиненные узлы, а в едином центре - главные (делалось это конечно не только ради обновления  - иначе можно было бы попробовать и другие варианты, без УРБД). Главные узлы подключили к единому хранилищу. Однако обновлять десять баз, даже при наличии хранилища - занятие довольно "муторное". Поднимаем вопрос пакетного режима конфигуратора:

REM ------------- Обновление базы из хранилища (cmd) -----------------------
 
set bin = "C:\Program Files (x86)\1cv8\8.3.9.2170\bin\1cv8.exe"
set Srvr = srv
set Base = infobase
set Name = Admin
set Pass = pass
set Repo = tcp://srv/conf
set Code = GoD
set Log = D:\auto\logs\log_%date:~0,2%%date:~3,2%%date:~6,4%.txt
 
%bin% DESIGNER /S"%Srvr%/%Base%" /N%Name% /P%Pass% /ConfigurationRepositoryF%Repo% /ConfigurationRepositoryN%Base% /ConfigurationRepositoryUpdateCfg /UC%Code% /OUT%Log% -NoTruncate

REM ---------------- Обновление базы данных (cmd) --------------------------
 
set bin = "C:\Program Files (x86)\1cv8\8.3.9.2170\bin\1cv8.exe"
set Srvr = srv
set Base = infobase
set Name = Admin
set Pass = pass
set Code = GoD
set Log = D:\auto\logs\log_%date:~0,2%%date:~3,2%%date:~6,4%.txt
 
%bin% DESIGNER /S"%Srvr%/%Base%" /N%Name% /P%Pass% /UpdateDBCfg -Server /UC%Code% /OUT%Log% -NoTruncate
 

Уже неплохо! Написать bat/cmd файлик, который сделает это для десятка баз - не составляет труда... Если бы не одно "но" - все это нужно делать в "монопольном" режиме, т.е. когда в системе/системах нет пользователей. Как выгонять пользователей из клиент-серверной 1С? Скриптом! vbs, например:  

'----------------------- Закрыть все соединения с конкретной базой (vbs) ---------------------------
  Set ComConnector = CreateObject("v83.ComConnector")'это, по сути, консоль кластера
  Set ServerAgent = ComConnector.ConnectAgent("srv")' вернее вот это
  Clasters = ServerAgent.GetClusters()
  For Each Claster In Clasters
    ServerAgent.Authenticate Claster, ClasterAdminName, ClasterAdminPass 
    'Как не странно неинициализированные значения прокатывают, если на кластере нет авторизации
    Sessions = ServerAgent.GetSessions(Claster)
    For Each Session In Sessions
      If Session.InfoBase.Name = "infobase" Then
        Call ServerAgent.TerminateSession(Claster,Session)
      End If
    Next
    Exit For
  Next
 
'----------------------- Запретить соединения с конкретной базой (vbs) -----------------------------
  Set ComConnector = CreateObject("v83.ComConnector")
  Set ServerAgent = ComConnector.ConnectAgent("srv")
  Clasters = ServerAgent.GetClusters()
  For Each Claster In Clasters
    ServerAgent.Authenticate Claster, ClasterAdminName, ClasterAdminPass
    WorkingProcesses = ServerAgent.GetWorkingProcesses(Claster)
    For Each WorkingProcess In WorkingProcesses 'чуток сложнее, нужно подключение к рабочему процессу...
      If WorkingProcess.Running = 1 Then
        Set connecttoworkprocess = ComConnector.ConnectWorkingProcess("tcp://" + WorkingProcess.HostName + ":" + CStr(WorkingProcess.MainPort))
        connecttoworkprocess.AddAuthentication "Admin", "pass"
        'а здесь уже нужны реальные логин/пароль к конкретной базе
        InfoBases = connecttoworkprocess.GetInfoBases()
        For Each InfoBase In InfoBases
          If InfoBase.Name = "infobase" Then
            InfoBase.ConnectDenied = True
            InfoBase.DeniedFrom = CStr(Now())
            InfoBase.DeniedTo = CStr(Now() + 1 / 24 * 3)
            InfoBase.DeniedMessage = "База заблокированна администратором!"
            InfoBase.PermissionCode = "GoD"
            connecttoworkprocess.UpdateInfoBase (InfoBase)
            Exit For
          End If
        Next
        Exit For
      End If
    Next
    Exit For
  Next

Ну, т.е. мы сначала запрещаем соединения с базой (не забыв при этом установить код разрешения), потом обрываем существующие сессии пользователей, потом обновляем конфигурацию из хранилища и конфигурацию базы данных (указывая установленный ранее код разрешения)... Разрешить работу с базами после этого не сложнее, чем запретить, просто в строке InfoBase.ConnectDenied = True меняем на False (и при желании очищаем остальные поля).  

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

  1.  Настроить автоматический обмен по событию - при входе определенного пользователя в систему. Тогда нам просто достаточно запустить 1С под этим пользователем.
  2. Можем использовать параметр командной строки /Execute для запуска обработки в которой может быть прописано что угодно, включая вызов экспортной процедуры общего модуля для запуска обмена. 
  3. Или можем использовать vbs скрипт в тех же целях:

'------------------- Выполнить экспортную процедуру общего модуля (vbs) ------------------------------
  Set Base = CreateObject("V83.Application")
  Base.Connect("Srvr='srv';Ref='infobase';Usr=Admin;Pwd=pass;UC=GoD")'Стандартная строка соединения 1С 
  Base.[МодульРегламентныхЗаданий].[ВыполнитьОбменДаннымиДляНастройкиАвтоматическогоОбменаДанными]("000001")
  'Для того, что бы свободно использовать кириллицу, нужны квадратные скобки
 

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

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

Зато имеются и положительные моменты (я же рассказываю о собственном конкретном опыте, а не об универсальном решении):

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

 Первое позволяет использовать программку psexec для удаленного запуска команды на нужном сервере, а второе радикально решить проблему завершения сеансов с помощью taskkill. Первую нужно скачать, вторая доступна из командной строки по умолчанию. 

Вообще типовые конфигурации 1С предоставляют условно "штатный" механизм завершения работы пользователей, который по задумке должен одинаково отрабатывать и в файловом и в клиент-серверном варианте работы (для установки нужно зайти в базу с параметром /CЗавершитьРаботуПользователей, для снятия /CРазрешитьРаботуПользователей). однако на деле мне показался этот метод не очень стабильным, а главное "тяжеловесным" (запускать целое приложение ради сравнительно элементарных действий не хочется)  и долгим (по факту 1С запускает обработчик ожидания, который пытается завершить сенсы, пока это у него в конце концов не получится). Вариант с vbs, описанный выше, неплохо зарекомендовал себя на клиент-серверных базах, но он не применим в файловом режиме ( нету объекта v83.ComConnector). Для файлового же режима пара "лайфхаков":

  • Заблокированна база или нет по факту определяется наличием либо отсутствием файлика 1Cv8.cdn в каталоге базы данных. Да, вот так все просто. :)  Содержимое файлика:
{1,00010101000000,00010101000000,"База заблокирована администратором","GoD",""}

 Где второй и третий "параметр" - дата начала блокировки и дата конца блокировки соответственно в формате ГГГГММДДччммсс. (вы всегда можете запустить вашу файловую базу с параметром /CЗавершитьРаботуПользователей, что бы получить этот файл и проанализировать его)

  • Команда taskkill прекрасно, хотя возможно излишне "сурово" завершает работу пользователей! :) в числе прочих ее параметров, есть /FI, который позволяет достаточно гибко настроить ,какие именно процессы надо завершать. Сейчас я остановился на варианте taskkill /f /FI "IMAGENAME eq 1cv8.exe", хотя в таком случае "безвинно пострадают" сеансы, не имеющие отношения к целевой базе (если таковые имеются). Я пробовал более "элегантный" вариант: taskkill /f /FI "WINDOWTITLE eq 1С:Предприятие - Рабочая база" (Где <Рабочая база> - заголовок окна программы заданный в настройках), но он работает только в идеальных условиях (например - не "убиваются" сеансы, когда пользователь запустил 1С, система дошла до ввода пароля и на этом - все).

Кроме того, несколько стандартных "граблей" на которые я наступал в процессе:

  • Пара слов о psexec. Формат вызова: psexec \\reg_srv -u username -p pass -c -f "reg_todo_t.bat". Вроде бы все понятно, но как обычно есть пара нюансов. Ключ -c копирует файл reg_todo_t.bat из каталога запуска psexec на удаленную машину перед исполнением. И копирует он его в системный каталог (system32, кажется). Поэтому ,если есть необходимость в каких-то дополнительных исполняемых файлах (например vbs), их нужно или предвариательно положить туда же, или первой строкой в reg_todo_t.bat устанавливать нужный рабочий каталог. 
  • Еще один важный момент. Особенностью cmd/bat файла является то, что вызвав запуск сторонней программы, он считает данную инструкцию выполненной и переходит к следующей. Нам же нужно обеспечить запуск всех наших действий СТРОГО последовательно (нет смысла запускать обновление, если еще не закончилась процедура завершения сеансов). Для этих целей нужно использовать конструкцию start /wait.
  • cmd/bat файлы имеют OEM кодировку. Кирилические шрифты (в сообщения логирования, например) при открытии файла в блокноте по умолчанию будут отображаться "кракозябрами". Переключаем шрифт на terminal.  

Ну, вроде бы все необходимое у нас есть.  План такой: 

  1. Блокируем доступ к центральной базе (база серверная, поэтому vbs)
  2. Завершаем сеансы пользователя (тоже самое - vbs)
  3. Обновляем конфигурацию из хранилища (cmd/bat пакетный режим конфигуратора)
  4. Обновляем конфигурацию базы данных (то же самое)
  5. Запускаем обмен (vbs)
  6. Снимаем блокировку базы (серверная база, поэтому vbs)
  7. Удаленно на региональном сервере запускаем bat/cmd/wsf (psexec) , в котором:
    1. блокируем доступ к базе (для файловых баз: файлик 1Cv8.cdn, для серверных см п.1, vbs)
    2. Завершаем сеансы (для файловых баз: taskkill, для серверных - vbs)
    3. Запускаем обмен (CreateObject("V83.Application") работает как для серверных, так и для файловых баз)
    4. Обновляем конфигурацию базы данных (см п.4, пакетный режим)
    5. Снимаем блокировку базы (файлик 1Cv8.cdn или vbs)

Пример всего этого (для гипотетической инфраструктуры) во вложении.

Описание вложения: 

  1. DoIt!.bat - запускает обновление центральной и переферийной баз из хранилища  tcp://srv/conf, в котором имя пользователя равно имени базы (infobase), без пароля. Так или иначе вызывает остальные файлы.
  2. users.vbs - скрипт, который выгоняет пользователей и устанавливает блокировку базы, либо снимает блокировку базы в зависимости от параметра (off|on).
  3. update.bat обновляет базу из хранилища и обновляет конфигурацию БД. 
  4. obmen.vbs - запускает экспортную процедуру общего модуля, инициализирующую обмен по существующей настройке УРБД.

Нюансы предполагаемой инфраструктуры:

  1. Предполагаем наличие в сети сервера srv, с базой ibfobase.
  2. Предполагается так же, что на стороне удаленной площадки есть сервер reg_srv, доступный по сети, на котором:
    •     - в папке C:\auto есть папка Logs и файл obmen.vbs
    •     - установлена 1с и база лежит в каталоге D:\1C_Bases\infobase
    •     - авторизация в базе настроена по авторизации операционной системы.
  3. Программа psexec.exe в поставку не входит, ее следует скачать отдельно.

Upd 18.04.2017

  1. В типовых 1С есть "прекрасная" процедура при начале работы системы: КонтрольВерсииКонфигурации.ПроверитьВерсиюКонфигурации();

Эта процедура, проверяет константу ДатаТекущейВерсии, и, если она на два или более месяца меньше текущей даты, выводит модальное окно о необходимости одновить конфигурацию... Это окно выходит внезависимости от того - запускается ли сеанс с параметрами /DisableStartupMessage и /AU- оно просто появляется и все. И ломает всю схему. Вариантов есть несколько... С точки зрения 1С, видимо, необходимо поддерживать актуальную конфигурацию. Для тех, у кого разрешены изменения конфигурации стоит закомментировать приведенную выше строчку кода в модуле обычного приложения. У кого не разрешены: Константы.ДатаТекущейВерсии.Установить(Дата('21000101')); т.е. ставим дату конфигурации на 2100 год... Но это нужно будет делать после каждого обновления.  

  1. При вызове экспортной процедуры с помощью vbs скрипта - в строке соединения не было параметра UC, что не давало ему запустится (т.к. на момент его запуска соединения с БД запрещены). Добавил по тексту и исправил пример во вложении. 

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

Наименование Файл Версия Размер
auto_update.zip

.zip 3,14Kb
7
.zip 3,14Kb 7 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Stepa86 1501 12.04.17 14:46 Сейчас в теме
(0) Деплойку не смотрел? http://infostart.ru/webinars/564260/ Она в том числе умеет отрубать соединения через RAS
2. Nehc 21 12.04.17 16:42 Сейчас в теме
(1) Посмотрел - любопытная штука. Но... Не смотря на открытый код - все равно "вещь в себе". Не полезешь ведь, без острой необходимости, в код - будешь использовать как "черный ящик": работает - не трогай. А я больше на примере хотел показать ,что можно фактически "из командной строки" сделать с минимальным скриптингом...
3. Stepa86 1501 12.04.17 17:08 Сейчас в теме
(2) С помощью деплойки можно в принципе код упростить сильно, не влезая во внутрянку https://gist.github.com/pumbaEO/9a52710dfa519c060dc45e9b81b9af5e
4. Nehc 21 12.04.17 17:43 Сейчас в теме
(3) О! Onescript... Не сразу заметил... os - это хорошо! ;) Но все же это все в моем понимании из другой области... Хороших инструментов много всяких разных, но хотелось бы уметь/иметь возможность сделать все без них.
5. Nehc 21 12.04.17 18:02 Сейчас в теме
(1) О! Нашел про RAS - вот этого не знал, спасибо!
6. пользователь 12.04.17 18:08
Сообщение было скрыто модератором.
...
7. vlkvlkvlk 9 13.04.17 14:42 Сейчас в теме
такая же задача стояла. решением получилось создание клиент-серверного варианта приложения для запуска скриптов обновления баз риб. см статья
плюсом прикрутили мониторинг бекапов, онлайн просмотр версии конфигурации\платформы. ну и запуск обновления в гетерогенной сетевой среде через psexec может не сработать (у нас филиальная сеть в разных городах, не объединенная в рамках одной локальной сети)
8. Nehc 21 13.04.17 17:58 Сейчас в теме
(7) да, у меня все тоже к тому шло... Рассматривал варианты и небольших сервисных баз на стороне регионов с доступом по веб-сервису (благо для этого клиент-сервер не нужен, достаточно апача) и интеграцию с инстаграм, но... Все это пока в виде разрозненных набросков. До реализации полноценной не дошло. А то, что тут изложил - работает, как не странно: изменения, которые сегодня вернули в хранилище - завтра с утра во всех базах появляются... Не долго правда: пару недель всего. Плюс в начале неделю косяки отлавливал! ;)
9. yxo 28.08.19 18:00 Сейчас в теме
Оставьте свое сообщение

См. также

Универсальный обмен XML (КД 2) + RabbitMQ – простая и комфортная работа вместе

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

В некоторых проектах перехода на новые конфигурациями 1С типовых возможностей обменов, разработанных на правилах конвертации КД 2, становится недостаточно. О том, какие преимущества можно получить, добавив в типовую обработку «Универсальный обмен в формате XML» интеграцию с брокером сообщений RabbitMQ, на конференции Infostart Event 2021 Post-Apocalypse рассказал генеральный директор компании MoscowSoft Сергей Сорокин.

1 стартмани

12.05.2023    1051    primat    1    

19

РИБ и расширения конфигурации, меняющие метаданные

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

02.12.2019    6001    sergek1972    3    

4

Отладка правил обмена КД2 для подсистемы БСП Обмен данными

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Уже давно нельзя отлаживать правила обмена при помощи внешних файлов. Попробуем исправить это.

1 стартмани

27.05.2019    15650    fenixnow    13    

64

[EnterpriseData] Антисвертка характеристик номенклатуры при выгрузке в Бухгалтерию

Обмен между базами 1C Платформа 1С v8.3 План видов характеристик 1С:Конвертация данных 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m)

Рассмотрена выгрузка каждой пары значений Номенклатура - Характерстика из УНФ 1.6 в отдельную номенклатуру в Бухгалтерию 3.0 путём доработки правил обмена в формате EnterpriseData.

1 стартмани

27.03.2019    7172    nforce    6    

14

Обмен без правил. От простого к сложному

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Пишем обмен с нуля, разбираемя с разными способами сериализации, учимся редактировать XML документы, создаем XDTO и Web service, осваиваем Script variant - English.

1 стартмани

16.01.2019    40753    nbeliaev    26    

147

Как переходили с 7-ки на 8-ку. Пример небольшого розничного магазина

Розничная торговля Ценообразование, анализ цен Обмен между базами 1C Платформа 1С v8.3 Оперативный учет 7.7 1С:Торговля и склад 7.7 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Управленческий учет Абонемент ($m)

Пример проекта из нашей практики - перевод учета в небольшом розничном магазине с 1С v7 Торговля и Склад на 1С v8 Управление Торговлей. Какими инструментами пользовались, какие вопросы возникали на проекте.

1 стартмани

15.05.2018    18025    Kutuzov    15    

7

Скрипт подключения списка информационных баз 1С в зависимости от контролера домена авторизации

Обмен между базами 1C Платформа 1С v8.3 Абонемент ($m)

Многие давно и успешно используют файл "1CEStart.cfg" для подключения списка информационных баз "1С Предприятия" на терминальных серверах и рабочих станциях. На сайте ИТС 1С (также как и в "желтой библии" "Руководство администратора") в "Приложение 3. Описание и расположение служебных файлов" достаточно подробно описаны настройки этого файла. Но ни на ИТС, ни в других статьях в интернете не описано каким образом изменять этот файл, чтобы подключался список баз (РИБов) того территориального офиса, в котором находится компьютер. В этой статье я опишу способ подключения списка ИБ в зависимости от контролера домена авторизации пользователя при помощи скрипта cmd и групповой политики.

1 стартмани

29.03.2018    14141    Glebis    5    

4

Обмен: Бухгалтерия предприятия. Загрузка документов приходов из расходов

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Бухгалтерский учет Абонемент ($m)

Простой вариант обмена между одинаковыми базами с типовыми конфигурациями документов. Задача выгрузить документы покупок из базы "Источника" и сформировать документы продаж в "Приемнике". Аналогично возможно наоборот.

1 стартмани

16.03.2018    8890    alex_bitti    0    

8

Организация обмена с базой филиала (розничного магазина) в торговой сети через XML (универсальный обмен)

Обмен между базами 1C Розничная торговля Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Конвертация данных 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Абонемент ($m)

В статье по шагам рассматривается создание обмена между центральной базой и базами филиалов на базе конфигурации УТ 11. Для решения поставленной задачи было решено не использовать РИБ, т.к. требуется односторонний обмен ограниченным набором данных, к тому же по определенным условиям. Обмен реализован на основе типовой синхронизации на основе универсального обмена в формате EnterpriseData. Данная публикация может быть полезна внедренцам, которые работают с торговыми сетями, в том числе по модели франчайзинга.

1 стартмани

26.02.2018    41079    Kutuzov    18    

77

Пример создания в КД 2.1 правил выгрузки данных регистра «Лицевые счета работников» из ЗУП 2.5 в справочник «Банковские счета» БП 3.0. Подробно, ясно и просто.

Обмен между базами 1C Платформа 1С v8.3 1С:Конвертация данных Абонемент ($m)

Эту статью я написал для тех, кто хочет максимально быстро и эффективно научиться создавать правила выгрузки данных в конфигурации 1С Конвертация данных редакции 2.1. Разберем практическую несложную задачу создания правил выгрузки данных регистра «Лицевые счета работников организаций» ЗУП 2.5 в справочник «Банковские счета» БП КОРП 3.0. Поделюсь некоторыми эффективными приемами: ВыгрузкаПоПравилу(…), работа с глобальными параметрами конвертации и передача их с Источника в Приемник методом ПередатьОдинПараметрВПриемник(…), приемы ускорения и оптимизации конвертации данных. Кому эта статья покажется простой и/или захочется продолжения: рекомендую другую мою публикацию, в которой разобран более сложный пример : https://infostart.ru/public/695916/

1 стартмани

17.11.2017    41583    RailMen    1    

27

Механизмы и транспорт обмена данными. Пример создания в КД 2.1 правил обмена данными ЗУП 2.5 -> БП 3.0. Выгрузка ведомостей и банковских счетов. Передача параметров обмена из Источника в Приемник. ВыгрузитьПоПравилу(). ПередатьОдинПараметрВПриемник().

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Зарплата и Управление Персоналом 2.5 1С:Конвертация данных 1С:Бухгалтерия 3.0 Абонемент ($m)

В статье рассказываю: 1) о механизмах и транспорте обмена данными, где одной из сторон обмена выступает конфигурация на базе 1С, и о том, какой транспорт и в каких случаях лучше использовать 2) о решении задачи выгрузки данных документа «Зарплата к выплате организаций» (с выгрузкой банковский счетов физ лиц документа) из ЗУП 2.5.123.1 (далее Источник) в БП КОРП 3.0.52.39 (далее Приемник) путем создания правил обмена данными с использованием конфигурации «Конвертация данных» (далее просто КД) ред. 2.1.8.2. для (далее ЗкВО) 3) о тестирование полученных правил обмена данными.

1 стартмани

03.11.2017    36681    RailMen    5    

45

Исправление среднего заработка для отпусков после переноса данных в конфигурацию ЗКГУ 3.0

Обмен между базами 1C Зарплата Учет рабочего времени Платформа 1С v8.3 1С:Зарплата и кадры 7.7 1С:Зарплата и кадры государственного учреждения 3 Бухгалтерский учет Абонемент ($m)

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

6 стартмани

08.08.2017    37938    RadistkaAn    6    

12

Прозрачная интеграция 1С8.2 с 1С7.7 (Внешние источники, OLE)

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Внешние источники данных Платформа 1С v8.3 Абонемент ($m)

Прозрачная интеграция 1С8.2 с 1С7.7 через внешние источники и OLE. Данные из 1С7.7 читаем посредством внешних источников, изменения данных передаем в 1С7.7 по OLE путем отправки xml.

1 стартмани

09.01.2014    24623    sdf1979    16    

15

Интеграция типовой конфигурации с мобильным приложением

Обмен между базами 1C Платформа 1С v8.3 Абонемент ($m)

В данной статье речь пойдет о том, как быстро наладить взаимодействие конфигурации УТ 11 из мобильной конфигурацией, написанной на 1С 8.3. В качестве примера мы вместе разработаем отчет «Валовая прибыль по месяцам», который сможем запускать из смартфона или планшета под управлением операционной системы Android 4.2. Взаимодействие между информационной базой и мобильным приложением будет осуществляется с помощью web-сервиса.

1 стартмани

16.09.2013    21275    akomar    9    

38

Актуализация правил обмена в КД 2.1

Обмен между базами 1C Платформа 1С v8.3 1С:Конвертация данных Абонемент ($m)

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

1 стартмани

15.07.2013    63756    Rudakov_D    13    

48

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

Обмен между базами 1C Внешние источники данных Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Универсальная функция поиска документа по маске GUID и создание нового документа при неудаче

1 стартмани

11.07.2013    6983    inv7    4    

8

Автоматизация обменов в распределённой базе данных средствами VisualBatch

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Стандартный механизм распределённых баз данных на основе планов обменов не даёт гибкости в доставке XML пакетов. Что делать, если нет связи или FTP недоступен? Как узнать текущее состояние репликации? Как передать XML пакет в IP сеть за NAT маршрутизатор? Попробуем дать ответы на эти вопросы.

1 стартмани

11.06.2013    14384    dzuyba    5    

11

Секреты профессионалов: поддержка и сопровождение правил обмена — сложное становится простым!

Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 1С:Конвертация данных Абонемент ($m)

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

1 стартмани

12.03.2013    78136    tomvlad    113    

481

Переход на 1С ЗУП 8.2 с произвольного ПО. Конвертация данных в 1С ЗУП 8.2.

Обмен между базами 1C Платформа 1С v8.3 1С:Зарплата и Управление Персоналом 2.5 Россия Абонемент ($m)

Так случилось, что чуть более трех месяцев назад я поступила на новую работу в компанию, основным бизнесом которой является оказание услуг по аутсорсингу расчета заработной платы. Не так давно руководство компании выбрало приоритетным ПО (программным обеспечением) для оказания услуг именно 1С 8.2 ЗУП. Очевидно, в основу решения было положено приемлемое соотношение цены и качества ПО, а так же тот факт. что многие компании-клиенты приходят с уже своей программой, которую они использовали для расчета заработной платы и чаще всего это 1С 8.2 ЗУП, в таком случае трудозатраты на перевод расчета ЗП с одной программы на другую равны нулю. До этого момента мое знакомство с 1С ограничивалось недолгой работой в одном из франчайзи чуть меньше десяти лет назад, тогда это была версия 7.7. Сейчас первой задачей, которая встала передо мной был перевод расчета ЗП с ПО Scala 5.1 на 1с8.2 ЗУП. 1С - хорошо документированная программа, очень распространенная на территории России, много форумов, различных публикаций на тему 1С: программирование, решение проблем вопросов. Но мое удивление было велико - среди моря информации я не смогла найти методологии по переходу на 1с8.2 ЗУП. Да, ничего толкового, все во круг, да около. Подробно рассказывается про переход с седьмой версии на восьмую. Но не более того. Пришлось основываясь на той информации, что была написать свою методу по такому переходу. Конечно,эта статья в таком виде, какая она сейчас не может претендовать на полную методологию по переходу на 1с8.2 ЗУП с произвольного ПО. Но я работаю в данном направлении. Сейчас это была первая ласточка, кстати, успешно завершился переход, заказов аналогичных много, поэтому методология будет совершенствоваться. А пока - это пример технического задания на первоначальную конвертацию данных из ПО Scala 5.1 в 1с8.2 ЗУП. ТЗ легло в основу обработки по переносу данных из файлов .dbf в 1С. Надеюсь, кому нибудь данная публикация будет полезна в его работе. Конечно, много нюансов не описаны в статье, поэтому если будут вопросы по переходу, пишите мне лично, возможно я смогу ответить.

1 стартмани

16.10.2012    13866    kalik2012    17    

63

Фильтрация узлов при обмене РИБ в типовой конфигурации 8.1

Обмен между базами 1C Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

При создании в предприятии системы обмена со множеством узлов может возникнуть проблема , которая может привести к искажению данных при обмене: «Проблема загрузки файла обмена с неправильного узла». Бывает, что пользователи (обычно администраторы или программисты) любят делать копии базы для различных целей. При этом даже специалисты часто забывают отключать автообмен. Тогда и возникает данная проблема: с копии базы может выгрузиться файл обмена в рабочий ресурс обмена (например, на ftp ресурс).

1 стартмани

15.10.2012    16954    alfir70    6    

5

Настройка интеграции «1С:Управление торговлей 8 Редакция 11» и «1С:Документооборот». Бизнес-процессы, внешние роли исполнителей.

Документооборот и делопроизводство (СЭД) Обмен между базами 1C Управление бизнес-процессами (BPMS) Платформа 1С v8.3 1С:Документооборот 1С:Управление торговлей 11 Россия Абонемент ($m)

Моя первая статья про настройку интеграции 1С:Управление торговлей 8 Редакция 11 и 1С:Документооборот оказалась достаточно востребованной. Благодарю за отзывы. В продолжение темы хочу представить вашему вниманию продолжение - настройку бизнес-процессов и внешних ролей исполнителей.

1 стартмани

11.07.2012    52101    ReSY    11    

29

Автоматизация обмена между базами, используя обработку "Универсальный обмен данными в формате XML". Подумаем о регистрации объектов обмена

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Данный материал является продолжением начатой мною темы относительно использования обработки «Универсальный обмен данными в формате XML» при организации регламентного обмена между различными базами (http://infostart.ru/public/86109/ ).

1 стартмани

07.07.2011    29282    wiranata    6    

40

Автоматизация обмена между базами используя обработку "Универсальный обмен данными в формате XML"

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

В основу данной публикации положены найденные мною материалы по созданию обмена между двумя базами с использованием обработки "Универсальный обмен данными в формате XML". Но предлагается вариант автоматизации решения задачи, которая позволяет выполнять обмен неквалифицированным пользователям, либо по регламенту. Скажем, такой обмен применим, если вы не можете по ряду причин использовать РБД, либо у вас совсем разные конфигурации баз (случаи бывают разные, а хочется максимально настраиваемой гибкости).

1 стартмани

10.06.2011    61591    wiranata    44    

165

Автоматическая выгрузка через СОМ. STEP by STEP

Обмен между базами 1C Платформа 1С v8.3 1С:Конвертация данных Россия Абонемент ($m)

Как автоматически выгружать физическое лицо через СОМ при записи не вмешиваясь в типовую конфигурацию. STEP by STEP.

1 стартмани

18.01.2010    11757    Boris-Leleko    7    

12