pycobol2csv


Namepycobol2csv JSON
Version 1.0.4 PyPI version JSON
download
home_pagehttps://github.com/jasonli-lijie/pycobol2csv
SummaryA Python library to convert COBOL ebcdic file to CSV format based on copybook
upload_time2024-01-16 21:32:54
maintainer
docs_urlNone
authorJason Li
requires_python
licenseMIT
keywords cobol ebcdic csv
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pycobol2csv
pycobol2csv is a Python library to convert COBOL ebcdic file to CSV format. The package is built to cater for advanced features in COBOL copybooks such as *OCCURES x TIMES*, *BINARY*, *COMP*. 

The CSV file is RDBMS friendly and all headers are ready to be used as database column names.
CSV conversion is controlled by config file in *csv_config.json*

Added more enhancements for the outdated REDEFINE and PIC syntax for a new client

Install the python module:

`pip install pycobol2csv`

To use the module:

```
from pycobol2csv import convert_cobol_file, decode_copybook_file

row_length, cobol_struc = decode_copybook_file(copybook_file)

convert_cobol_file(copybook_file, data_file, output_file, config_file, codepage, debug=False)

```

- copybook_file: copybook filename
- data_file: data filename 
- output_file: output csv filename
- config_file: csv configuration filename, refer to csv_config.json
- codepage: codepage for edibic, refer to https://docs.python.org/3.7/library/codecs.html#standard-encodings for details
- debug: enable for more debug information, default is OFF

## test 

2 sets of test data have been created from scratch. Each set includes a copybook and an EBCDIC data file.

To test:

```
python convert_cobol_test_main.py --copybook [COPYBOOK_FILE] --data [DATA_FILE] --output [CSV_FILE]

```

<!-- Repo: https://github.com/jasonli-lijie/pycobol2csv -->

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/jasonli-lijie/pycobol2csv",
    "name": "pycobol2csv",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "COBOL,EBCDIC,CSV",
    "author": "Jason Li",
    "author_email": "niomobileapp@gmail.com",
    "download_url": "https://github.com/user/reponame/archive/v_01.tar.gz",
    "platform": null,
    "description": "# pycobol2csv\r\npycobol2csv is a Python library to convert COBOL ebcdic file to CSV format. The package is built to cater for advanced features in COBOL copybooks such as *OCCURES x TIMES*, *BINARY*, *COMP*. \r\n\r\nThe CSV file is RDBMS friendly and all headers are ready to be used as database column names.\r\nCSV conversion is controlled by config file in *csv_config.json*\r\n\r\nAdded more enhancements for the outdated REDEFINE and PIC syntax for a new client\r\n\r\nInstall the python module:\r\n\r\n`pip install pycobol2csv`\r\n\r\nTo use the module:\r\n\r\n```\r\nfrom pycobol2csv import convert_cobol_file, decode_copybook_file\r\n\r\nrow_length, cobol_struc = decode_copybook_file(copybook_file)\r\n\r\nconvert_cobol_file(copybook_file, data_file, output_file, config_file, codepage, debug=False)\r\n\r\n```\r\n\r\n- copybook_file: copybook filename\r\n- data_file: data filename \r\n- output_file: output csv filename\r\n- config_file: csv configuration filename, refer to csv_config.json\r\n- codepage: codepage for edibic, refer to https://docs.python.org/3.7/library/codecs.html#standard-encodings for details\r\n- debug: enable for more debug information, default is OFF\r\n\r\n## test \r\n\r\n2 sets of test data have been created from scratch. Each set includes a copybook and an EBCDIC data file.\r\n\r\nTo test:\r\n\r\n```\r\npython convert_cobol_test_main.py --copybook [COPYBOOK_FILE] --data [DATA_FILE] --output [CSV_FILE]\r\n\r\n```\r\n\r\n<!-- Repo: https://github.com/jasonli-lijie/pycobol2csv -->\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python library to convert COBOL ebcdic file to CSV format based on copybook",
    "version": "1.0.4",
    "project_urls": {
        "Bug Tracker": "https://github.com/jasonli-lijie/pycobol2csv/issues",
        "Download": "https://github.com/user/reponame/archive/v_01.tar.gz",
        "Homepage": "https://github.com/jasonli-lijie/pycobol2csv"
    },
    "split_keywords": [
        "cobol",
        "ebcdic",
        "csv"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "00ffa06a573f8a3214a0000ed996b574c4b4b6b8f28ba91fcbe79cd3b40f1b7a",
                "md5": "782ee6de6cd686ea58255fde4f22767b",
                "sha256": "a815cd7e9357843060f45983076d9766a8950a18d6325a969a8c071549f9ef83"
            },
            "downloads": -1,
            "filename": "pycobol2csv-1.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "782ee6de6cd686ea58255fde4f22767b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 8799,
            "upload_time": "2024-01-16T21:32:54",
            "upload_time_iso_8601": "2024-01-16T21:32:54.011834Z",
            "url": "https://files.pythonhosted.org/packages/00/ff/a06a573f8a3214a0000ed996b574c4b4b6b8f28ba91fcbe79cd3b40f1b7a/pycobol2csv-1.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-16 21:32:54",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jasonli-lijie",
    "github_project": "pycobol2csv",
    "github_not_found": true,
    "lcname": "pycobol2csv"
}
        
Elapsed time: 0.16271s