Автообновление конфигурации после обмена

02.09.21

База данных - Архивирование (backup)

Рабочий механизм автоматического обновления конфигурации "периферийной" базы после получения пакета обмена. Перед обновлением выполняется резервное копирование базы данных.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Автообновление конфигурации после обмена:
.epf 9,61Kb ver:1.0
2
2 Скачать (1 SM) Купить за 1 850 руб.

Тестировалось на релизах 8.3.10 (32 бита) и 8.3.16 (64 бита). Файловый и клиент-серверный варианты. Толстый клиент, регламентное задание.

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

Некоторые специфические данные возможно придется указать непосредственно в самой обработке (например имя кластера или время срабатывания). 

Обработку, точнее ее процедуру "ВыполнитьОбработку" можно вызывать, например после обмена. Либо как процедуру в регламентном задании. А можно выдернуть нужное и оформить в виде "батника", скрипта или любом другом. 

ДЛЯ ИСПОЛЬЗОВАНИЯ ТРЕБУЕТСЯ ПЕРЕОПРЕДЕЛИТЬ НАЗНАЧЕНИЕ ПЕРЕМЕННЫХ, ОПИСАННЫХ В БЛОКЕ "ЗДЕСЬ ЗАДАЮТСЯ ПАРАМЕТРЫ".

 

Процедура ВыполнитьОбработку() Экспорт
//---------------ЗДЕСЬ ЗАДАЮТСЯ ПАРАМЕТРЫ-----------------------------------------------
	//ТУТ МЕНЯЕМ ПАРАМЕТРЫ ДЛЯ РАБОТЫ В КЛИЕНТ-СЕРВЕРНОМ ВАРИАНТЕ, если необходимо
	ИмяКластера = "Локальный кластер";
	АдминистраторКластера = "";
	ПарольАдминистратораКластера = "";
	
	//каталог для записи выгрузки БД и логов
	КаталогДляБекапа = "C:\TEMP\";
	
	Роль = Метаданные.Роли.Администратор;   //тут заменить на свою роль
	
	//время для запуска
	ТекущийЧас = Час(ТекущаяДата());
	
	//Если ТекущийЧас >= 8 И ТекущийЧас <= 21 Тогда
	//	возврат;
	//КонецЕсли;
	
//---------------ЗДЕСЬ	НИЧЕГО НЕ   МЕНЯТЬ-----------------------------------------------
	Если НЕ КонфигурацияИзменена() Тогда
		Возврат;
	КонецЕсли;
	
	//определим тип платформы 1с
	СистемнаяИнформация = Новый СистемнаяИнформация;
	лпТипПлатформы = СокрЛП(СистемнаяИнформация.ТипПлатформы);
	
	//определим разрядность ОС
	WshShell = Новый COMОбъект("WScript.Shell");
	Разрядность = ?(Найти(WshShell.Environment("SYSTEM").item("PROCESSOR_ARCHITECTURE"), "64") > 0, 64, 32);			
	
	//определение пути запуска powershell
	Если Разрядность = 64 И лпТипПлатформы = "Windows x86" Тогда
		PS = "C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe";
	Иначе
		PS = "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe";
	Конецесли;
	
	//файл выгрузки
	ФайлВыгрузки = КаталогДляБекапа + "Base.dt";
	
	//файл логов
	ФайлЛогов = КаталогДляБекапа + "Log_Execute_ANR_"+Формат(ТекущаяДата(),"ДФ=ддММгггг")+".txt";
	
	//файл скрипта
	ФайлСкрипта = КаталогВременныхФайлов()+"Автообновление.ps1";
	
	//ПРОВЕРКА НА ПОВТОРНЫЙ ЗАПУСК
	Файл = Новый Файл(ФайлЛогов);
	Если Файл.Существует() Тогда
		возврат;
	Иначе
		Текст = Новый ТекстовыйДокумент;
		Текст.ДобавитьСтроку("Команда запуска скрипта: "+PS+" -ExecutionPolicy RemoteSigned -File " + ФайлСкрипта);
		Текст.Записать(ФайлЛогов,"windows-1251");
	КонецЕсли;
	
	
	//определение файла запуска 1с
	ИсполняемыйФайл = КаталогПрограммы()+"1cv8s.exe";
	
	//создание пользователя для выполнения операций
	Если ПользователиИнформационнойБазы.НайтиПоИмени("СервисныйПользователь_АвтообновлениеКонфигурации") = Неопределено Тогда
		НовыйПользователь = ПользователиИнформационнойБазы.СоздатьПользователя();
		НовыйПользователь.Имя = "СервисныйПользователь_АвтообновлениеКонфигурации";
		НовыйПользователь.ПолноеИмя = "СервисныйПользователь_АвтообновлениеКонфигурации";
		НовыйПользователь.АутентификацияСтандартная = Истина;
		НовыйПользователь.Пароль = "iddqd";
		НовыйПользователь.Роли.Добавить(Роль);
		НовыйПользователь.ПоказыватьВСпискеВыбора = Ложь;
		НовыйПользователь.Записать();
	КонецЕсли;
	
	
	//объект для записи скрипта
	Текст = Новый ТекстовыйДокумент;

	//определение типа БД
	СтрокаСоединения = СтрокаСоединенияИнформационнойБазы();
	
	
	//создание файла-скрипта
	Если Найти(СтрокаСоединения,"Srvr=") = 0 Тогда	//это файловая база
		
		//переменные
		КаталогИБ = УНФ.ОпциональныйБэкСлеш_(НСтр(СтрокаСоединения, "File"));
		
		ПараметрыБекап = " DESIGNER /F""" + КаталогИБ + """ /NСервисныйПользователь_АвтообновлениеКонфигурации /Piddqd /DumpIB """ + ФайлВыгрузки + """ /Out """ + КаталогДляБекапа + "Log_Dump_ANR.txt""";
		
		ПараметрыАпдейт = " DESIGNER /F""" + КаталогИБ + """ /NСервисныйПользователь_АвтообновлениеКонфигурации /Piddqd /UpdateDBCfg /Out """ + КаталогДляБекапа + "Log_Update_ANR.txt""";
		
		
		//запись в файл
		Текст.ДобавитьСтроку("$ИсполняемыйФайл = """ + ИсполняемыйФайл + """");
		Текст.ДобавитьСтроку("$КаталогИБ = """ + КаталогИБ + """");
		Текст.ДобавитьСтроку("$ПараметрыБекап = '" + ПараметрыБекап + "'");
		Текст.ДобавитьСтроку("$ПараметрыАпдейт = '" + ПараметрыАпдейт + "'");
		Текст.ДобавитьСтроку("$ФайлВыгрузки = '" + ФайлВыгрузки + "'");
		Текст.ДобавитьСтроку("$ФайлЛогов = '" + ФайлЛогов + "'");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Скрипт запущен""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Отключаем сетевые соединения""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("net files | where {$_.Contains($КаталогИБ)} | foreach {$_.Split( ' ' )[0]} | foreach {net file $_ /close}");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Отключили сетевые соединения""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Завершаем процессы 1cv8""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("Get-WmiObject -Class Win32_Process -Filter ""Name like '1cv8%'"" | Foreach-Object {$_.Terminate()}");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Завершили процессы 1cv8""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполняем бекап базы""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("$procid = (Start-Process $ИсполняемыйФайл -ArgumentList $ПараметрыБекап -Passthru).id");
		Текст.ДобавитьСтроку("$countchild = 1");
		Текст.ДобавитьСтроку("while ($countchild -ne 0)");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	$pr = Get-WmiObject Win32_Process -Filter ""ParentProcessId='$procid' or ProcessId='$procid'"" | measure");
		Текст.ДобавитьСтроку("	$countchild = $pr.Count");
		Текст.ДобавитьСтроку("	Start-Sleep 10");
		Текст.ДобавитьСтроку("	}");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполнили бекап базы""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("Start-Sleep 10");
		Текст.ДобавитьСтроку("$isfile = Test-Path $ФайлВыгрузки");
		Текст.ДобавитьСтроку("if ($isfile -eq ""True"")");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполняем обновление конфигурации""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	Start-Process $ИсполняемыйФайл -ArgumentList $ПараметрыАпдейт");
		Текст.ДобавитьСтроку("	(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполнили обновление конфигурации""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	}");
		Текст.ДобавитьСтроку("else");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Файл бекапа не найден. Обновление не выполнено""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	}");
		
		Текст.Записать(ФайлСкрипта);
		
	Иначе         //клиент-серверный вариант
		
		//регистрация COM из "правильной" папки
		Если Разрядность = 64 И лпТипПлатформы = "Windows x86" Тогда
			ПутьРегистратора = "C:\Windows\SysWOW64\regsvr32.exe";
		Иначе
			ПутьРегистратора = "C:\Windows\System32\regsvr32.exe";
		Конецесли;
		
		WshShell.Run(ПутьРегистратора + " /s """+КаталогПрограммы()+"comcntr.dll""");
		
		Попытка
			Коннектор = Новый COMОбъект("v83.COMConnector");
		Исключение
			//нет объекта - нет пруфа
			возврат;
		КонецПопытки;
		
		Коннектор = Неопределено;
		
		//переменные
		ИмяСервера = Сред(СтрокаСоединения, 7, Найти(СтрокаСоединения, ";")-8);
		
		ИмяБазы = Сред(СтрокаСоединения, Найти(СтрокаСоединения, "Ref=")+5, СтрДлина(СтрокаСоединения)-СтрДлина(ИмяСервера)-15);
		
		ПараметрыБекап = " DESIGNER /S""" + ИмяСервера + "\" + ИмяБазы + """ /NСервисныйПользователь_АвтообновлениеКонфигурации /Piddqd /DumpIB """ + ФайлВыгрузки + """ /UC iddqd /Out """ + КаталогДляБекапа + "Log_Dump_ANR.txt""";
		
		ПараметрыАпдейт = " DESIGNER /S""" + ИмяСервера + "\" + ИмяБазы + """ /NСервисныйПользователь_АвтообновлениеКонфигурации /Piddqd /UpdateDBCfg /UC iddqd /Out """ + КаталогДляБекапа + "Log_Update_ANR.txt""";
		
		
		//запись в файл
		Текст.ДобавитьСтроку("$ИсполняемыйФайл = """ + ИсполняемыйФайл + """");
		Текст.ДобавитьСтроку("$ИмяСервера = """+ИмяСервера+"""");
		Текст.ДобавитьСтроку("$ИмяКластера = """+ИмяКластера+"""");
		Текст.ДобавитьСтроку("$АдминистраторКластера = """+АдминистраторКластера+"""");
		Текст.ДобавитьСтроку("$ПарольАдминистратораКластера = """+ПарольАдминистратораКластера+"""");
		Текст.ДобавитьСтроку("$ИмяБазы = """+ИмяБазы+"""");
		Текст.ДобавитьСтроку("$АдминистраторИБ = 'СервисныйПользователь_АвтообновлениеКонфигурации'");
		Текст.ДобавитьСтроку("$ПарольАдминистратораИБ = 'iddqd'");
		Текст.ДобавитьСтроку("$ПараметрыБекап = '" + ПараметрыБекап + "'");
		Текст.ДобавитьСтроку("$ПараметрыАпдейт = '" + ПараметрыАпдейт + "'");
		Текст.ДобавитьСтроку("$ФайлВыгрузки = '" + ФайлВыгрузки + "'");
		Текст.ДобавитьСтроку("$ФайлЛогов = '" + ФайлЛогов + "'");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Скрипт запущен""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("$Коннектор = New-Object -COMObject ""V83.COMConnector""");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Создание СОМ-соединения с сервером""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("$Агент = $Коннектор.ConnectAgent($ИмяСервера)");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Подключение к серверу""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("$Кластеры = $Агент.GetClusters()");
		Текст.ДобавитьСтроку("foreach ($Кластер in $Кластеры) {if ($ИмяКластера.ToUpper() -eq $Кластер.ClusterName.ToUpper()) {break}}");
		Текст.ДобавитьСтроку("$Агент.Authenticate($Кластер, $АдминистраторКластера, $ПарольАдминистратораКластера)");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Аутентификация в кластере""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("$Процессы = $Агент.GetWorkingProcesses($Кластер)");
		Текст.ДобавитьСтроку("Foreach ($Процесс in $Процессы)");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	$Порт = $Процесс.MainPort");
		Текст.ДобавитьСтроку("	$РабПроц = $Коннектор.ConnectWorkingProcess($ИмяСервера + "":"" + $Порт)");
		Текст.ДобавитьСтроку("	$РабПроц.AddAuthentication($АдминистраторИБ, $ПарольАдминистратораИБ)");
		Текст.ДобавитьСтроку("	$Базы = $РабПроц.GetInfoBases()");
		Текст.ДобавитьСтроку("	$БазаНайдена = $false");
		Текст.ДобавитьСтроку("	Foreach ($База in $Базы) {if ($База.Name.ToUpper() -eq $ИмяБазы.ToUpper()) {$БазаНайдена = $true; break}}");
		Текст.ДобавитьСтроку("	if ($БазаНайдена -eq $false) {continue}");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Нашли базу""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("	$База.SessionsDenied = $True");
		Текст.ДобавитьСтроку("	$ЗапускРегЗаданий = $База.ScheduledJobsDenied");
		Текст.ДобавитьСтроку("	$База.ScheduledJobsDenied = $True");
		Текст.ДобавитьСтроку("	$База.PermissionCode = ""iddqd""");
		Текст.ДобавитьСтроку("	$РабПроц.UpdateInfoBase($База)");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Установили блокировки на базу""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Отключаем соединения с базой""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	$СоединенияБазы = $РабПроц.GetInfoBaseConnections($База) | Foreach {if ($_.AppID -ne ""COMConsole"") {$РабПроц.Disconnect($_)}}");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Отключили соединения с базой""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("	}");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполняем бекап базы""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("$procid = (Start-Process $ИсполняемыйФайл -ArgumentList $ПараметрыБекап -Passthru).id");
		Текст.ДобавитьСтроку("$countchild = 1");
		Текст.ДобавитьСтроку("while ($countchild -ne 0)");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	$pr = Get-WmiObject Win32_Process -Filter ""ParentProcessId='$procid' or ProcessId='$procid'"" | measure");
		Текст.ДобавитьСтроку("	$countchild = $pr.Count");
		Текст.ДобавитьСтроку("	Start-Sleep 10");
		Текст.ДобавитьСтроку("	}");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполнили бекап базы""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("Start-Sleep 10");
		Текст.ДобавитьСтроку("$isfile = Test-Path $ФайлВыгрузки");
		Текст.ДобавитьСтроку("if ($isfile -eq ""True"")");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполняем обновление конфигурации""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	Start-Process $ИсполняемыйФайл -ArgumentList $ПараметрыАпдейт");
		Текст.ДобавитьСтроку("	(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Выполнили обновление конфигурации""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	}");
		Текст.ДобавитьСтроку("else");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Файл бекапа не найден. Обновление не выполнено""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	}");
		Текст.ДобавитьСтроку("$Процессы = $Агент.GetWorkingProcesses($Кластер)");
		Текст.ДобавитьСтроку("Foreach ($Процесс in $Процессы)");
		Текст.ДобавитьСтроку("	{");
		Текст.ДобавитьСтроку("	$Порт = $Процесс.MainPort");
		Текст.ДобавитьСтроку("	$РабПроц = $Коннектор.ConnectWorkingProcess($ИмяСервера + "":"" + $Порт)");
		Текст.ДобавитьСтроку("	$РабПроц.AddAuthentication($АдминистраторИБ, $ПарольАдминистратораИБ)");
		Текст.ДобавитьСтроку("	$Базы = $РабПроц.GetInfoBases()");
		Текст.ДобавитьСтроку("	$БазаНайдена = $false");
		Текст.ДобавитьСтроку("	Foreach ($База in $Базы) {if ($База.Name.ToUpper() -eq $ИмяБазы.ToUpper()) {$БазаНайдена = $true; break}}");
		Текст.ДобавитьСтроку("	if ($БазаНайдена -eq $false) {continue}");
		Текст.ДобавитьСтроку("");
		Текст.ДобавитьСтроку("	$База.SessionsDenied = $False");
		Текст.ДобавитьСтроку("	$База.ScheduledJobsDenied = $ЗапускРегЗаданий");
		Текст.ДобавитьСтроку("	$База.PermissionCode = """"");
		Текст.ДобавитьСтроку("	$РабПроц.UpdateInfoBase($База)");
		Текст.ДобавитьСтроку("(Get-Date -UFormat ""%d.%m.%Y %T"").ToString() + ""   Сняли блокировки с базы""| Add-Content $ФайлЛогов");
		Текст.ДобавитьСтроку("	}");
		
		Текст.Записать(ФайлСкрипта);
		
	КонецЕсли;
	
	Текст = Неопределено;
	
	WshShell.Run(PS+" -ExecutionPolicy RemoteSigned -File " + ФайлСкрипта,0,Ложь);
	
КонецПроцедуры

 

Обмен РБД конфигурация обновление powershell

См. также

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27660 руб.

12.06.2017    143321    821    297    

428

SALE! 10%

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

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

55778 50200 руб.

04.08.2015    168354    344    279    

380

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.20.x), также подходят для релиза 11.5 (11.5.19.x).

35000 31500 руб.

23.07.2020    53413    236    73    

192

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.237.x) и БП 3.0 (3.0.166.x). Правила подходят для версии ПРОФ и КОРП.

35000 31500 руб.

15.12.2021    24823    174    51    

132

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

53111 47800 руб.

03.12.2020    37239    99    66    

95

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ ФОМС, ЕФС Платные (руб)

Обработки для быстрого перехода с конфигураций «КАМИН:Расчет заработной платы 3.0», «КАМИН:Зарплата для бизнеса 4.0» и «КАМИН:Зарплата 5.0» на конфигурацию «Зарплата и управление персоналом» версии 3.1.

12000 руб.

25.09.2016    81564    324    253    

276

SALE! 10%

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

48278 43450 руб.

25.02.2015    172011    307    258    

384

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    25691    25    1    

27
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Volvo32 29 02.09.21 13:51 Сейчас в теме
Да, совсем забыл.
УНФ.ОпциональныйБэкСлеш_ - функция просто проверяет наличие обратного слеша в конце строки, и добавляет при его отсутствии
Оставьте свое сообщение