10.07.2023 Артем Слатин 16386
Установка сервера взаимодействия 1С на Window...

Содержание:

1.      Установка и настройка сервера взаимодействия 1С

2.      Настройка сервера системы взаимодействия на WSS подключение

3.      Установка и настройка облачного хранилища файлов MinIO

4.      Настройка сайта для подключения внешних пользователей системы

5.      Подключение системы взаимодействия к платформе 1С: Предприятие  

 

1.      Установка и настройка сервера взаимодействия 1С


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

1.      Postgresql версии 12 https://www.enterprisedb.com/downloads/postgres-postgresql-downloads;

2.      Liberica Full JDK 11-ой версии https://releases.1c.ru/version_files?nick=Liberica11FullJDK&ver=11.0.12%2b7;

3.      Утилита Openssl https://slproweb.com/download/Win64OpenSSL-3_0_9.msi;

4.      Сервер взаимодействия 1С и обработка CollaborationSystemRegister для регистрации сервера взаимодействия 1С https://releases.1c.ru/version_files?nick=CollaborationSystem&ver=23.0.23.


Стоит отметить, что для каждой версии платформы, должна устанавливаться совместимая версия сервера взаимодействия 1С. В моём случае, установлена версия платформы 1С: Предприятие 8.3.23, поэтому должен устанавливаться сервер взаимодействия версии 23.0.23.


Установка postgresql, liberica jdk и openssl проста и не требует подробного разъяснения. Отмечу лишь пару моментов, а именно:

    

1)     Выбор директории при openssl- установке



 

2)     Необходимость запомнить пароль, указываемый для postgres пользователя, во время установки posgtresql




Установка сервера взаимодействия

Чтобы установить сервер взаимодействия 1С, необходимо распаковать дистрибутив из архива и запустить установочный файл 1ce-installer. В открывшемся окне нужно указать директорию, где будет располагаться сервер взаимодействия 1С и все его компоненты, а затем нажать “Установить”




Далее установщик выведет сообщение об успешном завершении инсталляции, нажмём “Готово” для выхода из программы установки




После установки дистрибутивов, необходимо добавить пути к liberika jdk и openssl в переменную среды Path




Также в Windows переменную Path следует добавлять путь к утилите ring, но у меня она добавилась автоматически.

 

Проверим, что все компоненты сервера взаимодействия установились корректно, отправив в cmd команду:

ring



Должны отобразиться 3 компонента: Сервер взаимодействия, Elasticsearch и Hazelcast.


Создание и настройка базы cs_db в postgresql

Перед выполнением настройки сервера взаимодействия 1C, необходимо создать и настроить базу cs_db в postgresql.

Для создания базы, потребуется воспользоваться программой pgAdmin 4, она устанавливается вместе с postgresql и позволяет работать с СУБД в графическом интерфейсе.

При первом запуске, необходимо установить pgAdmin- пароль




Далее необходимо раскрыть ниспадающий список вкладки “Servers” и подключиться к серверу PostgreSQL 12, введя пароль пользователя postgres, указанный во время установки postgresql




Создадим пользователя cs_user для работы с базой cs_db, нажав ПКМ на вкладке “Login/Group Roles” и выбрав пункты “Create” – “Login/Group Role”



 

Во вкладке “General” введём имя пользователя



 

Перейдём во вкладку “Definition”, где укажем пароль для пользователя cs_user




Во вкладке “Privileges” укажем необходимые права, после чего сохраним настройки нажав на “Save”




Создадим базу cs_db для работы с сервером взаимодействия 1С, нажав ПКМ на вкладке “Databases” и выбрав пункты “Create” – “Database”


 


Введём имя базы во вкладке “General” и сохраним изменения нажав на “Save”



 

Подключим расширение uuid-ossp, нажав ПКМ на базе cs_db и выбрав пункт “Query Tool”. В открывшемся редакторе введём следующий запрос:

 

CREATE EXTENSION IF NOT EXISTS "uuid-ossp"




Отправим запрос, нажав на клавишу F5.


Настройка сервера взаимодействия 1С

Создадим директории и службы сервера взаимодействия, введя в командной строке следующие команды:


ring hazelcast instance create --dir C:\cs\hc_instance

ring hazelcast --instance hc_instance service create –stopped

ring elasticsearch instance create --dir C:\cs\es_instance

ring elasticsearch --instance es_instance service create --stopped

ring cs instance create --dir C:\cs\cs_instance

ring cs --instance cs_instance service create --stopped

 

Осуществим настройку JDBC драйверов postgresql с помощью следующих команд:

 

ring cs --instance cs_instance jdbc pools --name common set-params --url jdbc:postgresql://localhost:5432/cs_db?currentSchema=public

ring cs --instance cs_instance jdbc pools --name common set-params --username cs_user

ring cs --instance cs_instance jdbc pools --name common set-params --password <пароль_пользователя_cs_user>

ring cs --instance cs_instance jdbc pools --name privileged set-params --url jdbc:postgresql://localhost:5432/cs_db?currentSchema=public

ring cs --instance cs_instance jdbc pools --name privileged set-params --username cs_user

ring cs --instance cs_instance jdbc pools --name privileged set-params --password <пароль_пользователя_cs_user>

    

Настроим WebSocket протокол:

 

ring cs --instance cs_instance websocket set-params --hostname <доменное_имя>

ring cs --instance cs_instance websocket set-params --port <порт_сервера_взаимодействия>

 

“Не забывайте создавать правила для всех указываемых портов в брандмауэре Windows”

 

Настроим каталог для хранения бэкапов:

 

ring cs --instance cs_instance backup set-params --storage C:\cs\cs_instance\dumps 


Теперь необходимо запустить службы сервера взаимодействия с помощью команд:

 

ring hazelcast --instance hc_instance service start

ring elasticsearch --instance es_instance service start

ring cs --instance cs_instance service start

    

Либо можно сделать это через диспетчер задач, из подменю “Службы”



 

После настройки сервера взаимодействия 1С, необходимо инициализировать базу данных cs_db, сделать это можно с помощью следующей команды:

 

curl -Sf -X POST -H "Content-Type: application/json" -d "{ \"url\" : \"jdbc:postgresql://localhost:5432/cs_db\", \"username\" : \"cs_user\", \"password\" : \"<пароль пользователя cs_user>\", \"enabled\" : true }" -u admin:admin

 

Пример успешного ответа:

 

{"id":"4efdace4-6c60-414e-95cb-19b8dd39b6ff","url":"jdbc:postgresql://localhost:5432/cs_db","username":"cs_user","password":"********","lastUsedAt":null,"enabled":true,"deleted":false}

     

Проверим, что сервер взаимодействия 1С работает с помощью команды:

  

curl http://localhost:8087/rs/health


Если всё установлено и настроено корректно, получим следующий ответ:

 

{"status":"UP","mainDbOk":true,"allShardsOk":true,"hazelcast":{"available":true,"members":["127.0.0.1:5701"]},"elasticsearchOk":true,"mediaClusterOk":false,"mediaServers":{},"pushOk":false}

     

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


2.      Настройка сервера системы взаимодействия на WSS подключение


Если подключение к базе осуществляется через https, то и сервер взаимодействия должен работать по защищённому WSS протоколу.


Для настройки WSS подключения, требуется создать хранилище ключей Java KeyStore (JKS) и поместить туда сертификат, оформленный на доменное имя сервера, на котором располагается сервер взаимодействия 1С.


Сертификат можно приобрести или воспользоваться утилитой win-acme, чтобы получить бесплатный SSL сертификат letsencrypt. Для реализации этого метода, требуется создать виртуальный хост, прослушивающий стандартный порт http 80, я создал его с помощью стандартного веб-сервера IIS от Microsoft.

 

Создание виртуального хоста в веб-сервере IIS

Первым делом, необходимо создать директорию сайта в каталоге веб-сервера IIS C:\inetpub\wwwroot\доменное_имя

Затем, в директории сайта создадим файл index.html и добавим в него следующее содержимое:

 

<html>

    <head>

        <title>доменное_имя</title>

    </head>

    <body>

        <h1>Welcome to the club buddy!</em> </h1>

    </body>

</html>    

 

Возвращая простую html страничку, можно будет убедиться в том, что сайт работает.

 

Для того, чтобы создать виртуальный хост, требуется открыть диспетчер служб IIS и добавить веб-сайт, нажав ПКМ на пункте “сайты”




Далее, необходимо заполнить окно создания веб-сайта следующим образом и нажать “ОК”

 



Теперь проверим работу сайта, введя имя домена в адресной строке, или нажав кнопку “обзор веб-сайта” на панели действий IIS




Если всё настроено корректно, сайт вернёт созданную нами html страницу.

 

Получение сертификата с помощью утилиты win-acme         

После завершения настройки виртуального хоста, можно приступать к получению сертификата. Скачаем утилиту win-acme по ссылке https://www.win-acme.com/.

 

После скачивания, необходимо распаковать архив с программой в удобное место. Лично я распаковал win-acme в корневой каталог IIS, создав там папку letsencrypt



 

Запустим файл wacs.exe от имени администратора и выберем пункт “Create certificate (full options)”, введя “M” в консоли приложения



 

Выберем пункт “Read bindings from IIS”, чтобы вывести список сайтов из IIS


 

    

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


 


Выберем пункт “Pick *all* bindings”, чтобы выбрать все привязки


 


Подтвердим выбор, нажав на клавишу “y”, а затем проигнорируем предложение ввести дополнительное имя, нажав на “Enter”


 


Далее выберем пункт “Single certificate”, чтобы создать единый сертификат



 

Выберем пункт “[http] Save verification files on (network) path”, после чего введём путь к сайту, чтобы создать там файлы для подтверждения владения доменом



 

Далее приложение предложит выбрать тип ключа, нам нужен “RSA key”



 

Выберем пункт “PEM encoded files”


 

 

Введём путь, где будут храниться файлы сертификата. Я указал путь C:\Certificates


 


Выберем пункт “Type /paste in console”, и введём в консоли приложения пароль для закрытого ключа.




Запомните или запишите пароль, т.к. он потребуется при дальнейшей настройке наших сервисов на SSL подключение.

 

Далее приложение спросит, нужно ли сохранить сертификат в другом формате, выберем пункт “ No (additional) store steps”, чтобы оставить только ранее выбранный формат сертификата


 


На следующем шаге также откажемся от дополнительных действий, выбрав пункт “No (additional) installation steps”




Наконец получим сообщение об успешном создании сертификата


 


Настройка WSS подключения

Файлы сертификата были сохранены по указанному при создании пути C:\Certificates

 



Для того, чтобы импортировать файлы chain.pem и key.pem в хранилище ключей JKS, необходимо объединить их в единый файл формата PKCS12. Сделаем это с помощью ранее установленной утилиты openssl.

 

Откроем командную строку и введём следующие команды:

 

openssl pkcs12 -export -in C:\Certificates\koderline-dev.ru-chain.pem -inkey C:\Certificates\koderline-dev.ru-key.pem -out C:\cs\cs_instance\data\security\pkcs.p12 -name letsencrypt

«При вводе первой команды, потребуется указать пароль от закрытого ключа, а затем задать пароль для файла pkcs.p12»

keytool -importkeystore -destkeystore C:\cs\cs_instance\data\security\websocket-keystore.jks -srckeystore C:\cs\cs_instance\data\security\pkcs.p12 -srcstoretype PKCS12 -alias letsencrypt

«При вводе второй, сначала указываем пароль от файла pkcs.p12, а затем задаём пароль от хранилища JKS»

    

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

Настроим сервер взаимодействия на WSS подключение с помощью команд:

    

ring cs --instance cs_instance websocket set-params --wss true

ring cs --instance cs_instance websocket set-params --keystore-path C:\cs\cs_instance\data\security\websocket-keystore.jks

ring cs --instance cs_instance websocket set-params --keystore-password <пароль_JKS>

ring cs --instance cs_instance websocket set-params --keystore-format JKS


Теперь подключение сервера взаимодействия 1С будет осуществляться через защищённый WSS протокол.


3.      Установка и настройка облачного хранилища файлов MinIO


Для добавления функционала обмена файлами, необходимо настроить облачное хранилище Amazon S3 MinIO, и подключить его к серверу взаимодействия 1С.

 

Установка хранилища файлов MinIO

Откроем PowerShell от имени администратора и по очереди введём следующие команды:

 

Invoke-WebRequest -Uri "https://dl.min.io/server/minio/release/windows-amd64/minio.exe" -OutFile "C:\Data\minio.exe"

setx MINIO_ROOT_USER <логин_minio>

setx MINIO_ROOT_PASSWORD <пароль_minio>

C:\Data\minio.exe server С:\Data --console-address ":9001"

    

Чтобы запуск MinIO осуществлялся автоматически, необходимо установить его как службу. Для этого скачаем архив minio-service-master.zip по следующей ссылке https://github.com/minio/minio-service, после чего распакуем его, и скопируем файл install-service.ps1 из папки windows в каталог C:\Data, где установлен сервер MinIO.

 

Откроем PowerShell и установим службу сервера MinIO с помощью команды:

  

С:\Data\install-service.ps1    


Откроем каталог с установленным сервером MinIO и отредактируем файл minio-service.xml:


<service>

  <id>MinIO</id>

  <name>MinIO</name>

  <description>MinIO is a high performance object storage server</description>

  <executable>minio.exe</executable>

  <env name="MINIO_ROOT_USER" value="логин_minio"/>

  <env name="MINIO_ROOT_PASSWORD" value="пароль_minio"/>

    <arguments>server C:\Data</arguments>

  <logmode>rotate</logmode>

</service>


Теперь можно запустить службу и пользоваться облачным хранилищем, но подключение будет осуществляться через незащищённый http протокол.

 

Настройка сервера MinIO на SSL подключение

Для того, чтобы включить режим SSL подключения для MinIO, необходимо скопировать файлы сертификата chain.pem и key.pem в каталог C:\Users\имя_пользователя\.minio\certs и переименовать их следующим образом:

chain.pem - public.crt

key.pem - private.key


    

 

Отредактируем файл minio-service.xml:

 

<service>

  <id>MinIO</id>

  <name>MinIO</name>

  <description>MinIO is a high performance object storage server</description>

  <executable>minio.exe</executable>

  <env name="MINIO_ROOT_USER" value="логин_minio"/>

  <env name="MINIO_ROOT_PASSWORD" value="пароль_minio"/>

<env name="MINIO_CERT_PASSWD" value="пароль_закрытого_ключа_сертификата"/>

  <arguments>server C:\Data --address ":порт_minio"</arguments>

  <logmode>rotate</logmode>

</service>    

 

В конфигурационный файл сервера была добавлена переменная MINIO_CERT_PASSWD, где задаётся пароль от закрытого ключа для созданного ранее сертификата, и параметр --address для аргумента server, чтобы явно указать порт подключения для сервера MinIO.


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


Чтобы назначить пользователя, от которого будет запускаться сервис, необходимо перейти в свойства службы MinIO и, во вкладке “Вход в систему”, выбрать нужную учётную запись




После назначения пользователя для запуска сервиса, можно запустить службу и использовать протокол https для подключения к хранилищу.


Подключение хранилища файлов MinIO к серверу взаимодействия

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

Введём в адресной строке браузера адрес подключения к хранилищу MinIO:

 

https://<доменное_имя>:<порт_minio>

 

Авторизуемся с помощью заданных при установке данных, которые также были указаны в переменных MINIO_ROOT_USER и MINIO_ROOT_PASSWORD конфигурационного файла minio-service.xml




Перейдём в раздел “Buckets” и выберем пункт “Create Bucket”. В поле “Bucket Name” укажем имя контейнера cs-bucket, после чего нажмём “Create Bucket” для завершения создания

 



После создания, необходимо зайти в параметры контейнера и изменить права доступа на “public”



 

Теперь можно подключить MinIO к серверу взаимодействия. На портале ИТС предлагается сделать это с помощью утилиты curl



 

Но у меня подключить хранилище таким образом не получилось, я сделал это по аналогии с добавлением расширения uuid-ossp, т.е. отправил следующий SQL запрос в базу cs_db:

    

INSERT INTO public.storage_server (id, type, base_url, container_url, container_name, region, access_key_id, secret_key, signature_version, is_deleted, upload_limit, download_limit, file_size_limit, created_at, updated_at, cdn_url, cdn_key_id, cdn_secret_key, state, cdn_enabled, path_style_access_enabled, bytes_to_keep, days_to_keep, pricing_url, api_type, storage_type, files_to_keep)

VALUES(

uuid_generate_v4(), 'AMAZON', 'https://<доменное_имя>:<порт_minio>','https:// <доменное_имя>:<порт_minio>/cs-bucket',

'cs-bucket',

'',

'логин_ minio',

'пароль_minio',

'V2', false, 1073741824, 1073741824, 1048576000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, NULL, NULL, NULL, 'ACTIVE', false, true, 0, 3200, NULL,'AMAZON','DEFAULT',1073741824);


Теперь в системе взаимодействия доступен функционал обмена файлами.  


4.      Настройка сайта для подключения внешних пользователей системы


Для добавления в обсуждения внешних пользователей, необходимо настроить специальный сайт, который устанавливается вместе с сервером взаимодействия и находится по следующему пути C:\Program Files\1C\1CE\components\1c-cs-site-0.2.11-x86_64. Настроим его с помощью веб-сервера IIS и импортируем созданный ранее сертификат, чтобы подключение осуществлялось по https.


Кроме файлов сертификата в pem-формате, утилита win-acme создаёт единый сертификат в pfx формате, и размещает его по следующему пути: C:\ProgramData\win-acme\acme-v02.api.letsencrypt.org\Certificates, я импортировал в IIS именно его.


Для импорта сертификата pfx в IIS, необходим пароль от сертификата. Чтобы узнать его, запустим утилиту win-acme и выберем пункт “Manage renewals”



 

Далее выберем пункт “Show details for the renewal”, чтобы отобразить детальную информацию об обновляемых сертификатах




Скопируем и сохраним пароль из поля “.pfx password”


 


На начальной странице сервера в IIS перейдём во вкладку “Сертификаты сервера”, а затем выберем пункт “Импортировать” на панели действий IIS



 

Заполним окно импорта, указав путь и пароль от сертификата, а также хранилище, в котором будет располагаться сертификат, после чего нажмём “OK”




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



 

Из отличий можно увидеть другое имя сайта. Его, как и порт 9999, можно задавать по желанию, физический путь указан до каталога сайтом 1c-cs-site-0.2.11-x86_64, выбран протокол подключения https и импортированный ранее сертификат.


Проверим работу сайта, введя имя домена с указанным портом в адресной строке, или нажав кнопку ”обзор веб-сайта” на панели действий в IIS




Должна вернуться html страница сайта 1c-cs-site-0.2.11-x86_64.

 

Отредактируем файл config.json, который находится в каталоге сайта 1c-cs-site-0.2.11-x86_64, указав адрес подключения сервера взаимодействия в поле “serverURL”

    

{

            "serverURL": "wss://<доменное_имя>:<порт_сервера_взаимодействия>",

            "VAPIDPublicKey": "****************************************************************"


Суть проделанных действий состоит в том, что веб-сервер, при запросе на адрес https://<доменное_имя>:<порт_сайта>, должен отдать index.html сайта 1c-cs-site-0.2.11-x86_64 просто как статику, после чего index.html запустится в браузере пользователя и на базе адреса сервера взаимодействия в config.json сам установит соединение с сервером взаимодействия 1С.

 

Подключим сайт к серверу взаимодействия:

  

ring cs --instance  cs_instance  site set-params --public-url https://<доменное_имя>:<порт_сайта>


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


5.      Подключение системы взаимодействия к платформе 1С: Предприятие


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


Откроем приложение 1С, перейдём во вкладку “Сервис и настройки”, затем выберем ”Файл” – “Открыть”




Откроем обработку CollaborationSystemRegister, а затем выполним подключение, заполнив поля следующим образом




В случае, если WSS подключение не настраивалось, указываем WS протокол для подключения.

 

Если всё установлено и настроено корректно, получим сообщение об успешной регистрации системы взаимодействия.


 


Специалист компании "Кодерлайн"

Артем Слатин


Наши проекты

ПАО «АрселорМиттал Кривой Рог»
ПАО «АрселорМиттал Кривой Рог»

Отрасль:
Металлургическая промышленность

Внедренное типовое решение:
1С:Управление производственным предприятием для Украины

- Кадровый учет
- Расчет зарплаты
- Регламентированная отчетность
- Учет рабочего времени ...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

МИР ХОББИ
МИР ХОББИ

Отрасль:
Торговля. Интернет магазин

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Оформление заказов поставщикам
Взаиморасчеты с покупателями
Оформление заказов покупателей
Логистика адресного склада
Управление...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление предприятием», «1С:Управление корпоративными финансами»...

ООО «ПЛЮСПЭЙ»
ООО «ПЛЮСПЭЙ»

Отрасль:
Организацией расчетов посредством электронных средств платежа

Внедренное типовое решение:
1С:Комплексная автоматизация

- Разработка подсистемы оперативного учета транзакций...

Госкорпорация «Ростех»
Госкорпорация «Ростех»

Отрасль:
Производство, ТЭК >> Машиностроение, приборостроение

Внедренное типовое решение:
1С:Управление холдингом 1.3.

Специалисты «Кодерлайн» помогли разработать и внедрить автоматизированную систему управления финансовой и закупочной деятельностью (АС ФЗД) ...

Автоматизация интеграции с информсистемами клиентов на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
«1С:Предприятие 8. WMS Логистика. Управление складом»

– Управление складскими запасами;
– Оформление заказов покупателей;
– Логистика адресного склада;
– Управление отношениями с пост...

ООО «Фипар»
ООО «Фипар»

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты «Кодерлайн» внедрили «1С:ERP. Управление предприятием 2» и автоматизировали блоки: продажи, закупки, производство, складская и т...

ООО "ОМЗ"
ООО "ОМЗ"

Отрасль:
Металлургическая промышленность, металлообработка

Внедренное типовое решение:
1С:Управление производственным предприятием

Автоматизация бизнес-процессов...

Доработка конфигурации Заказчика «1С:Управление строительной организацией»
ЗАО «Стройтрансгаз»

Отрасль:
Проектирование

Внедренное типовое решение:
1С:Управление строительной организацией

Взаиморасчеты с поставщиками;
- Оформление заказов поставщикам;
- Склад и логистика;
- Транспорт;
- Планирование расхода ГС...

ООО «ДАФ Тракс Рус» (DAF Trucks Rus)
ООО «ДАФ Тракс Рус» (DAF Trucks Rus)

Отрасль:
Машиностроение

Внедренное типовое решение:
«1С:Управление корпоративными финансами»

- Осуществлена разработка матрицы прав и ролей для финансового подразделения:
• распределение ролей стало более четким и структурированны...

АО «РЭП Холдинг»
АО «РЭП Холдинг»

Отрасль:
Энергомашиностроительный холдинг

Внедренное типовое решение:
«1С: Управление производственным предприятием» и «1С:Консолидация ПРОФ»

- Функциональный блок «Консолидированная отчетность РСБУ» - разработка частного технического задания - Функциональный блок «Консолидированн...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение