ds_provider_sdworx_py_lib.serde¶
File: __init__.py
Region: ds_provider_sdworx_py_lib/serde
Description¶
This module implements serialization for SD Worx API formats.
Submodules¶
Classes¶
Serialize DataFrame to SD Worx EmploymentUpdateRequest XML format. |
Package Contents¶
- class ds_provider_sdworx_py_lib.serde.EmploymentUpdateSerializer(*, request_level_columns: set[str] | None = None, metadata_columns: set[str] | None = None)[source]¶
Bases:
ds_resource_plugin_py_lib.common.serde.serialize.base.DataSerializerSerialize DataFrame to SD Worx EmploymentUpdateRequest XML format.
Expected columns after renaming:
CompanyNo,SSN,PersonCompanyEmploymentNo: request-level columnsValidFrom,ValidUntil: date metadata columnsAll other columns: become
FieldValueelements
Example
import pandas as pd from ds_provider_sdworx_py_lib.serde import EmploymentUpdateSerializer serializer = EmploymentUpdateSerializer() df = pd.DataFrame([{ "CompanyNo": "001", "SSN": "12345678901", "PersonCompanyEmploymentNo": "E001", "ValidFrom": "2024-01-01", "ValidUntil": "2024-12-31", "Salary": "50000", }]) xml_bytes = serializer(df)
- request_level_columns¶
- metadata_columns¶
- _build_xml_element(row: pandas.Series[Any]) list[str][source]¶
Build EmploymentUpdateRequest XML element for a single row.
- __call__(obj: pandas.DataFrame, **_kwargs: Any) bytes[source]¶
Serialize DataFrame to EmploymentUpdateRequest XML bytes.
Each row becomes an
EmploymentUpdateRequestelement within a singleEmploymentUpdateRequestsroot document.- Parameters:
obj – DataFrame with columns to serialize.
**kwargs – Additional keyword arguments (ignored).
- Returns:
XML content as bytes (UTF-8 encoded).