Skip to main content

Access FileMaker(tm) Server Databases

Project description

Fmkr is a Python library to access FileMaker(tm) Server 8 Advanced databases via the XML publishing interface.

“FileMaker” is a registered trademark of Claris International Inc.

Author:

Christoph Gohlke

License:

BSD 3-Clause

Version:

2022.9.28

Requirements

This release has been tested with the following requirements and dependencies (other versions may work):

Revisions

2022.9.28

  • Convert docstrings to Google style with Sphinx directives.

2022.3.24

  • Add type hints.

  • Improve string representations of objects.

  • Add immutable sequence interface to FMPXMLResult.

  • Remove support for Python 3.6 and 3.7 (NEP 29).

2021.3.6

  • Update copyright and formatting.

2020.1.1

  • Remove support for Python 3.5.

  • Update copyright.

2018.8.15

  • Move fmkr.py into fmkr package.

2018.5.25

  • Use lxml instead of minidom to parse FMPXMLResult.

  • Improve string representations of FMPXMLResult and FMField.

  • Update error codes.

  • Remove support for Python 2.

2006.10.30

  • Initial release.

References

  1. http://www.filemaker.com/downloads/documentation/fmsa8_custom_web_guide.pdf

Examples

>>> from fmkr import FM, FMError
>>> fmi = FM('filemaker.domain.com', 80, 'http')
>>> fmi.set_db_data('database', 'layout', maxret=5)
>>> fmi.set_db_password('fmuser', 'password')
>>> # create a new record
>>> fmi.add_db_param('FIRST', 'John')
>>> fmi.add_db_param('LAST', 'Doe')
>>> fmi.fm_new()
>>> # find and sort records
>>> fmi.add_db_param('LAST', 'Doe', 'bw')
>>> fmi.add_sort_param('LAST', 'ascend', 1)
>>> fmi.add_sort_param('FIRST', 'ascend', 2)
>>> result = fmi.fm_find()
>>> for record in result:
...     print(record['FIRST'], record['LAST'])
John Doe
>>> # delete record
>>> recid = result[0]['RECORDID']
>>> fmi.set_record_id(recid)
>>> fmi.fm_delete()
>>> # catch an exception
>>> try:
...    fmi.add_db_param('LAST', 'Doe', 'cn')
...    fmi.fm_find()
... except FMError as exc:
...    print(exc)
FileMaker Error 401: No records match the request

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fmkr-2022.9.28.tar.gz (13.9 kB view hashes)

Uploaded Source

Built Distribution

fmkr-2022.9.28-py3-none-any.whl (14.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page