DMS Tools
A connected family of tools for SAP Document Management — HTTP API, async sync engine, and migration framework. All built on YaNco and RFC.
How the pieces fit together
Three tools, one RFC foundation. dms-connector exposes SAP DMS as an HTTP API. DMSHub orchestrates document flows between SAP and external systems. dms-migration handles bulk transfer between SAP systems. All three share the same RFC core built on YaNco.
dms-connector
HTTP API layer
DMSHub
Async orchestration
dms-migration
System-to-system migration
RFC underneath, HTTP on top.
dms-connector
SAP Engineering Control Center talks to Content Servers via RFC — fast, direct, no bottleneck. But modern applications can't use RFC. dms-connector wraps the same RFC access pattern in a standard HTTP API: OData for metadata, TUS protocol for chunked file upload and download.
OData 4.0 API
Documents, files, characteristics, structure, folders — full CRUD through standard OData endpoints.
TUS chunked transfers
Large files uploaded and downloaded in chunks via tus.io protocol — resumable, no size limits from SAP HTTP routing.
Direct Content Server access
Files are read from and written to Content Servers directly via RFC — no detour through the SAP application server.
.NET client library
Typed client with fluent API for document operations, monadic error handling, and file helpers.
OData + TUS in action
dms-connector exposes SAP DMS through standard protocols — any HTTP client can work with documents.
// List documents via OData
GET /odata/Documents?$filter=DocumentType eq 'DRW'
&$expand=Files,Characteristics
&$top=50
// Create a document
POST /odata/Documents
{
"DocumentType": "DRW",
"DocumentNumber": "10000012345",
"DocumentVersion": "00",
"Description": "Assembly Drawing Rev.B"
}
Async document sync between SAP and engineering systems.
DMSHub
When external systems need to exchange documents with SAP DMS — metadata, files, versions, status changes — you need something that handles both reliably and at volume. DMSHub is a modular monolith built on Rebus and Hosuto that processes document operations asynchronously with full state tracking.
Message-driven pipeline
Rebus message bus with configurable routing — document operations are queued, processed, and tracked independently.
Plugin architecture
Transformation plugins for XML processing, format conversion, and custom business logic per integration partner.
State tracking
Entity Framework-backed operation database — every document import/export is tracked with full history and status.
Built on dbosoft OSS
Uses Hosuto for modular hosting, Dbosoft.Functional for error handling, rebus-extensions for message bus configuration.
A framework, not a one-shot script.
dms-migration
Every DMS migration has different rules — which document types to move, how to transform metadata, which files to include. dms-migration provides the engine: a monadic pipeline, registration server automation, batch processing, and error tracking. The project-specific logic plugs in on top.
Monadic migration pipeline
Each document flows through a chain of read → transform → import steps composed with EitherAsync. Any step can fail safely — errors are captured, not thrown.
Registration server automation
Automatically launches and monitors SAPHTTP and SAPFTP registration servers for Content Server file transfer. Lifecycle managed, cleaned up on exit.
Batch processing with delta sync
Process documents from CSV input files or run incremental timestamp-based sync. Configurable batch size, wait intervals, and minimal (metadata-only) mode.
Error tracking and recovery
Failed documents are logged with full context to timestamped files. Re-feed failures as input for the next run — no manual tracking needed.
Related
See how these tools solve real document management challenges.
Building on SAP DMS?
Whether you need API access, system integration, or a migration — we've built the tooling and done the projects.