Skip to main content

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

Project description

raclib

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

Установка

pip install raclib

Примеры

Получение списка кластеров.

import raclib as rc

client = rc.Client("/opt/1cv8/x86_64/<version>/rac")
session = rc.Session(client)

print(rc.Cluster.list(session))

Получение списка информационных баз кластера.

import raclib as rc

client = rc.Client("/opt/1cv8/x86_64/<version>/rac")
session = rc.Session(client)
cluster = rc.Cluster.list(session)[0]["cluster"]

print(rc.Infobase.Summary.list(session, cluster))

Создание информационной базы.

import raclib as rc

client = rc.Client("/opt/1cv8/x86_64/<version>/rac")
session = rc.Session(client)
cluster = rc.Cluster.list(session)[0]["cluster"]

infobase = rc.Infobase.create(
    session, cluster, "Тестовая база", "PostgreSQL", "localhost", "TestIB", "ru_RU"
)

print(infobase)

Пример async реализации.

from raclib import AsyncClient, AsyncSession, AsyncCluster

import os
import asyncio

client = AsyncClient(os.environ.get("RAC_PATH"))

session1 = AsyncSession(client, "server1")
session2 = AsyncSession(client, "server2")
session3 = AsyncSession(client, "server3")
session4 = AsyncSession(client, "server4")
session5 = AsyncSession(client, "server5")


async def main():
    tasks = (
        AsyncCluster.list(session1),
        AsyncCluster.list(session2),
        AsyncCluster.list(session3),
        AsyncCluster.list(session4),
        AsyncCluster.list(session5),
    )

    results = await asyncio.gather(*tasks)

    for result in results:
        print(result)  # В 3 раза быстрее, чем синхронный


if __name__ == "__main__":
    asyncio.run(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

raclib-1.1.0.tar.gz (20.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

raclib-1.1.0-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file raclib-1.1.0.tar.gz.

File metadata

  • Download URL: raclib-1.1.0.tar.gz
  • Upload date:
  • Size: 20.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for raclib-1.1.0.tar.gz
Algorithm Hash digest
SHA256 ce9cbe827cf1fc851d34eba0fd166cd6bcfce64af3908a88ce79701309673fdd
MD5 c688d699c5295d559ee5ab091ca1ba1e
BLAKE2b-256 f6f7d428fe3afbeaa6292be853d36655428bd461e09e03d25b457834b4a7240e

See more details on using hashes here.

Provenance

The following attestation bundles were made for raclib-1.1.0.tar.gz:

Publisher: publish.yml on bqio/raclib

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file raclib-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: raclib-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for raclib-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f2d55cb7faa50c724068802a4b42f4c661c161bae1e67958fd85898e1fe0e0f2
MD5 e05d71900ce28c50b13aff4c577cc6b9
BLAKE2b-256 3233a508a55c88de85d2bdf094e252c89e2313920508227e1bef4c69cbb8f716

See more details on using hashes here.

Provenance

The following attestation bundles were made for raclib-1.1.0-py3-none-any.whl:

Publisher: publish.yml on bqio/raclib

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page