Skip to content

Library for producing data entry file formats to capture data according to specify OCA Bundle

License

Notifications You must be signed in to change notification settings

THCLab/oca-data-entry

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

oca-data-entry

Generate data-entry templates (XLSX/ODS/CSV) from OCA bundles.

This crate focuses on data capture templates only. It does not generate bundles.

Features

  • writers-csv (default: off)
  • writers-xlsx (default: off)
  • writers-ods (default: off)

Example (CSV)

use oca_data_entry::{entry_schema_from_bundle, write_csv};
use oca_data_entry::format::csv::CsvOptions;
use oca_sdk_rs::overlay_registry::OverlayLocalRegistry;

# // load bundle ...
# let bundle = todo!();
let registry = OverlayLocalRegistry::from_dir("./core_overlays").unwrap();
let schema = entry_schema_from_bundle(&bundle, &registry).unwrap();

let mut out = Vec::new();
write_csv(&schema, &mut out, &CsvOptions { include_metadata_row: true, use_labels: true }).unwrap();

Roadmap

  • XLSX/ODS writers
  • Overlay enrichment (labels, conformance, formats, units)
  • Reading filled templates for validation pipelines

CLI

Use oca data-entry in oca-bin:

oca data-entry --bundle bundle.json --format csv --out entry.csv --labels en --metadata en
oca data-entry --bundle bundle.json --format xlsx --out entry.xlsx --labels en --metadata en

About

Library for producing data entry file formats to capture data according to specify OCA Bundle

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages