Инструменты пользователя

Инструменты сайта


administrirovanie_1s

Это старая версия документа!


Администрирование 1С

COM объект

к 1С можно обращаться через COM объект, для этого нужно зарегистрировать библиотеку:

set SrvVersion=8.3.18.1334
regsvr32 /s -n -i:user "C:\Program Files\1cv8\%SrvVersion%\bin\comcntr.dll"

в powershell

$ComCntr=(Get-WmiObject win32_service | ?{$_.Name -eq '1C:Enterprise 8.3 Server Agent (x86-64)'}).PathName.split('"')[1].Replace("ragent.exe","comcntr.dll")
$ComCntr="/s -n -i:user ""$ComCntr"""
Start-Process regsvr32.exe -ArgumentList "$ComCntr"

если этого не сделать 1Серы будут ругаться такими ошибками:

При попытке подключения к информационной базе произошла ошибка:
Ошибка при вызове конструктора (COMОбъект): Недопустимая строка с указанием класса

или

Не удалось подключится к другой программе: -2147221005(0x800401F3): Недопустимая строка с указанием класса

RAS и CRS

Если вдруг понадобиться удалить предыдущие:

set SrvVersion=8.3.14.1565
"C:\Program Files\1cv8\%SrvVersion%\bin\crserver.exe" -rmsrvc
sc delete "1C:Enterprise 8.3 Remote Administration Server"

Добавляем службы RAS и CRS

set SrvUserName="USR1C82@mi.local"
set SrvUserPwd="***"
set SrvVersion=8.3.14.1565

"C:\Program Files\1cv8\%SrvVersion%\bin\crserver.exe" -instsrvc -port 1542 -d F:\RootRepository\ -usr %SrvUserName% -pwd %SrvUserPwd%
sc create "1C:Enterprise 8.3 Remote Administration Server" binPath= "\"C:\Program Files\1cv8\%SrvVersion%\bin\ras.exe\" cluster -- 
service --port 1545 localhost:1540" start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= "1C:Enterprise 8.3 Remote 
Administration Server"
sc description "1C:Enterprise 8.3 Remote Administration Server" "1C:Enterprise 8.3 Remote Administration Server"

(Добавление/Удаление службы RAS в powershell)

New-Service `
	-Name        "1C:Enterprise 8.3 Remote Administration Server" `
	-DisplayName "1C:Enterprise 8.3 Remote Administration Server" `
	-Description "1C:Enterprise 8.3 Remote Administration Server" `
	-BinaryPathName "`"C:\Program Files\1cv8\8.3.24.1467\bin\ras.exe`" cluster --service --port 1545 localhost:1540" `
	-StartupType Automatic `
	-Credential .\usr1cv8 `
	-DependsOn "1C:Enterprise 8.3 Server Agent (x86-64)" `
| Start-Service

Get-Service -Name "1C:Enterprise 8.3 Remote Administration Server" `
| Stop-Service -PassThru `
| Remove-Service

Порты

частая проблема какие порты открывать на сервере 1С

если на сервере расположена база SQL, а 1С сервера расположены на других машинах, то нужно открыть порт SQL сервера tcp 1433, но ограничить удаленные ip - адресами 1С серверов.

если SQL сервер и 1С сервер на одном хосте, то tcp 1433 открывать не нужно, это серьезная брешь в безопасности

Порт tcp 1540 должен быть открыт для других 1С серверов и Компьютеров с которых будет запускаться оснастка управления кластерами 1С

для того чтобы к 1С серверу могли подключаться толстые и тонкие клиенты нужно пробросить порты tcp 1541, 1560-1591 - это порты по умолчанию их всегда нужно проверять в настройках 1С сервера:

для этого нужно запустить оснастку Администрирование серверов 1С Предприятия x86-64

Console Root -> Central 1C:Enterprise 8.3 servers -> имя нашего сервера -> ПКМ -> Свойства -> IP Порт (по-умолчанию: 1540)
Console Root -> Central 1C:Enterprise 8.3 servers -> имя нашего сервера -> Кластеры -> Локальный Кластер -> ПКМ -> Свойства -> IP Порт (по-умолчанию: 1541)
Console Root -> Central 1C:Enterprise 8.3 servers -> имя нашего сервера -> Кластеры -> Локальный Кластер -> Рабочие серверы -> имя нашего сервера -> ПКМ -> Свойства -> Диапазоны IP Портов (по-умолчанию: 1560:1591)

для того чтобы к 1С серверу могли подключаться web клиенты - нужно открыть порт web сервера (по-умолчанию 443 в локальной сети возможно 80), какой именно нужно смотреть в настройках веб сервера.

Если развернут 1C Configuration Repository Server то по-умолчанию он работает на порту tcp 1542 Это можно проверить в свойствах службы 1C:Enterprise 8.3 Configuration Repository Server, в поле исполняемый файл параметр -port

Если запущен 1C:Enterprise 8.3 Remote Administration Server то по-умолчанию порт 1545, проверка в свойствах службы

публикация веб-клиента: веб-серверы не обнаружены!

1С сервер откажется создавать файл публикации если не обнаружит веб сервера на localhost 1С сервер можно обмануть таким способом:

mkdir C:\apache\conf
sc create Apache2.4 DisplayName= Apache2.4 binPath= "\"C:\apache\bin\httpd.exe\" -k runservice" start= disabled
echo "1C" > C:\apache\conf\httpd.conf

очистка истории лицензий в окне "о программе"

пример для базы данных trade_dev

USE [trade_dev]
GO
UPDATE Files SET BinaryData = CAST ('' as varbinary(max)), datasize = 0 WHERE FileName = 'c01b78f6-1525-41b1-9cc1-69e3da58d2ac.pfl'
GO
administrirovanie_1s.1765279598.txt.gz · Последнее изменение: Валерий