POLine class
- class almapiwrapper.acquisitions.POLine(pol_number: str | None = None, zone: str | None = None, env: Literal['P', 'S'] | None = 'P', data: dict | JsonData | None = None)
Bases:
RecordClass representing a POLine
- static api_call(method: Literal['get', 'put', 'post', 'delete'], *args, **kwargs) Response | None
Static method to handle http errors. Quit the program after 3 failed tries
- Parameters:
method – ‘get’, ‘put’, ‘post’ or ‘delete’ according to the api method call
- static build_headers(data_format: Literal['json', 'xml'], zone: str, area: str, rights: Literal['R', 'RW'] = 'RW', env: Literal['P', 'S'] | None = 'P') Dict
Build the headers for the API calls.
- Parameters:
data_format – “json” or “xml”
zone – optional, if indicated allow to make the query in an other IZ
area – area of the record, bibs, users for example
rights – “R” for read only or “RW” for write and read rights
env – environment of the api call: ‘P’ for production, ‘S’ for sandbox
- Returns:
dict with the headers
- property data: Dict | Element | DataFrame | None
Property that get xml data with API call. If not available, make an api call
- Returns:
xml data, dictionary or pandas dataframe
- get_items() List[Item]
Get the items of the POLine
- Returns:
list of
almapiwrapper.inventory.Item
- get_vendor() Vendor | None
Get the vendor of the POLine
- Returns:
almapiwrapper.acquisitions.Vendoror None if not available
- static parse_data(data: JsonData | XmlData | Dict | str) JsonData | XmlData | None
Parse the data and return a parsed data object or None if an error occurs
- Parameters:
data – data to be parsed
- Returns:
parsed data object or None if an error occurs
- receive_item(item: Item, library: str | None = None, department: str | None = None, receive_date: str | None = None) POLine
Receive an item of the POLine
- Parameters:
item –
almapiwrapper.inventory.Itemlibrary – str : library of the reception
department – str : department of the reception
receive_date – str : date of the reception in format YYYY-MM-DDZ
- Returns:
POLine object
- save(self) acquisitionslib.POLine
Save a PO Line record in the ‘records’ folder
When saved, a suffix is added to the file path with the version. Example: records/polines/pol_<IZ>_<set_id>_<version>.xml
- Returns:
object
almapiwrapper.acquisitions.POLine
Note
If the record encountered an error, this method will be skipped.
- update(update_inventory=True) POLine
Update the POLine
- Returns:
POLine object