ECMind blue client
A client wrapper for blue.
Deprecation warning
- From Mai 2024,
ecmind_blue_client.com_clientis no longer supported nor tested. - From Mai 2024,
ecmind_blue_client.soap_clientis no longer supported nor tested.
Installation
pip install ecmind_blue_client
Usage
The workflow consists roughly of the following:
- Create a new Client() connection using a client implementation. There are four implementations:
SoapClient()in the moduleecmind_blue_client.soap_client: Connect with a SOAP connection stringComClient()in the moduleecmind_blue_client.com_client: Connect by using the COM class on WindowsTcpClient()in the moduleecmind_blue_client.tcp_client: Directly talk to a server via protlib.- Use
TcpClient.Connection()in a with block/context.
- Use
TcpPoolClient()in the moduleecmind_blue_client.tcp_pool_client
- Create a new Job() with a job name and provide/add job input parameters and optional job input file parameters
- Execute the Job() with the Client() instance and consume the result
result.result_codereturns the blue result coderesult.valuesis a dict of output parametersresult.filesis a list of output file parametersresult.error_messagesis a string of the servers error response or None ifresult_code== 0
>>> from ecmind_blue_client.soap_client import SoapClient
>>> client = SoapClient(self.endpoint, 'TestApp', 'root', 'optimal')
>>> test_job = Job('krn.GetServerInfo', Flags=0, Info=6)
>>> result = client.execute(test_job)
>>> print(result.values['Value'])
oxtrodbc.dll
Example
from ecmind_blue_client import SystemFields
from ecmind_blue_client.tcp_pool_client import TcpPoolClient as Client
# Connect with DMS
client = Client(
connection_string="localhost:4000:100", # Balancing setup for the used Client class `TcpPoolClient`
appname="Test-Script", # Instance name, visible in the enterprise manager
username="root",
password="optimal"
)
# Query a folder
query = client.lol_query(
object_name="Dossier",
result_fields=[
SystemFields.OBJECT_CRDATE,
"LastName",
"FirstName"
]
)
# Iterate over folder results
for dossier in query:
print( # Output some infos
dossier["OBJECT_ID"], # OBJECT_ID is added per defaults
dossier['OBJECT_CRDATE'].strftime("%Y-%m-%d"), # Manually added system field from line 16
(f"{dossier['FirstName']} {dossier['LastName']}"), # Manually added objdef fields from line 17 & 18
)
# Check that we have found a least one folder
assert dossier and "OBJECT_ID" in dossier
# Import a test document into the last found folder
import_result = client.xml_import(
object_name="Dokument",
folder_id=dossier["OBJECT_ID"],
search_fields={
"Type": "Invoice"
},
import_fields={
"Type": "Invoice"
},
files = ["invoice.pdf"]
)
# Check if the import was successful and output OSID
assert import_result, import_result.error_message
print(import_result.import_action, import_result.object_id)
Metadata
Release files for ecmind-blue-client 0.9.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ecmind_blue_client-0.9.0.tar.gz | 48.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ecmind_blue_client-0.9.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 95.6 kB
Release files / ecmind_blue_client-0.9.0.tar.gz
| Download URL | ecmind_blue_client-0.9.0.tar.gz |
|---|---|
| Size | 48.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
87917297acac2fa4c8b84eb54d3af5cae4887035e03d0a432fa1a69391e1fd9b
|
|
BLAKE2b-256 checksum How to use checksums |
bd5f22bddc52f411b0e0f415730be99427d007a1a99461483913f1466fb422b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|
Release files / ecmind_blue_client-0.9.0-py3-none-any.whl
| Download URL | ecmind_blue_client-0.9.0-py3-none-any.whl |
|---|---|
| Size | 46.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3ca390355dec1913c6e297713e6f913b8578b3e2029c0dc367f71d9a31b9e6dc
|
|
BLAKE2b-256 checksum How to use checksums |
3f76ffae79ed441ccb814647f9ccdc3dacd40ef8142e31bfdc00867a293faa59
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|