将NetSuite连接到数据库连接器以来回传输信息

netsuite-db-connector的Python项目详细描述


NetSuite数据库连接器

Warning:该项目正在积极开发中,尚未达到生产级别。如果你想了解更多,请发邮件给作者

将NetSuite连接到数据库以来回传输信息。在

安装

此项目需要Python 3+。在

  1. 下载并使用此项目(复制到您的项目中,等等)。在

  2. pip安装它。在

     $ pip install netsuite-db-connector
    

使用

要使用此连接器,您需要通过基于令牌的身份验证(TBA)连接到NetSuite帐户。在

首先,使用环境变量设置TBA凭据。在

^{pr2}$

下面是示例用法。在

importosimportsqlite3fromnetsuitesdkimportNetSuiteConnectionfromnetsuite_db_connectorimportNetSuiteExtractConnector,NetSuiteLoadConnectordefns_connect():NS_ACCOUNT=os.getenv('NS_ACCOUNT')NS_CONSUMER_KEY=os.getenv('NS_CONSUMER_KEY')NS_CONSUMER_SECRET=os.getenv('NS_CONSUMER_SECRET')NS_TOKEN_KEY=os.getenv('NS_TOKEN_KEY')NS_TOKEN_SECRET=os.getenv('NS_TOKEN_SECRET')nc=NetSuiteConnection(account=NS_ACCOUNT,consumer_key=NS_CONSUMER_KEY,consumer_secret=NS_CONSUMER_SECRET,token_key=NS_TOKEN_KEY,token_secret=NS_TOKEN_SECRET)returnncns=ns_connect()dbconn=sqlite3.connect('/tmp/ns.db',detect_types=sqlite3.PARSE_DECLTYPES|sqlite3.PARSE_COLNAMES)x=NetSuiteExtractConnector(ns=ns,dbconn=dbconn)x.create_tables()x.extract_currencies()x.extract_accounts()x.extract_departments()x.extract_locations()x.extract_vendors()x.extract_classifications()y=NetSuiteLoadConnector(ns=ns,dbconn=dbconn)y.create_tables()# do some transformations and populated vendor bills related load tablesforvendor_bill_external_idiny.get_vendor_bill_external_ids():internal_id=y.load_vendor_bill(vendor_bill_external_id=vendor_bill_external_id)print(f'posted vendor_bill_id {vendor_bill_external_id} for which NS returned {internal_id}')

贡献

要对这个项目做出贡献,请遵循以下步骤

  • 派生并克隆存储库。在
  • 运行pip install -r requirements.txt
  • 安装pylint预提交挂钩
    • 创建文件.git/hooks/pre-commit
    • 复制并粘贴文件中的以下行-
      #!/usr/bin/env bash 
      git-pylint-commit-hook
      
  • 进行必要的更改
  • 运行单元测试以确保一切正常

单元测试

要运行单元测试,请按以下方式运行pytest:

python -m pytest test/unit

你应该看到这样的画面:

...

集成测试

要运行单元测试,您需要连接到一个真正的NetSuite帐户。在运行集成测试之前,请设置以下环境变量:

^{pr2}$

代码覆盖率

要获取代码覆盖率报告,请运行以下命令:

python-mpytest--cov=netsuite_db_connector<snippedoutput>

要获取html报告,请运行以下命令:

python-mpytest--cov=netsuite_db_connector--cov-reporthtml:cov_html

我们想保持95%以上的代码覆盖率这个项目在任何时候。在

许可证

这个项目是在MIT许可下授权的-请参阅LICENSE文件了解详细信息

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带有服务类安卓的java altbeacon   java在OpenXava免费版本中可以创建多个用户吗?   java如何决定定义变量“private”?   java为什么GetMethodID()对不存在的方法不返回NULL?   java Get JComboBox项字符串表示法   java如何在ifs之间设置限制?   java Android错误:IllegalStateException   JavaSpring4MVC语言环境已更改,但JSP对此没有响应   java Netbeans:如何构建。jar文件随附外部文件。jar库?   Spring Petclinic项目Maven编译时出现java错误   声明Java数组增量元素的快速方法   java无法使用相对xpath找到元素   javascript无法更改标题,也无法在操作栏上显示图标   java标签不是一个接一个地动态创建的   java如何使用ThymeLeaf将对象的属性绑定到隐藏字段?   java从EJB无状态会话bean调用CDI会话范围的生产者方法   java为什么num+=array[i]与for循环中的num=num+array[i]的工作方式不同   使用jsonsimple实现jQuery UI自动完成的java JSON格式   JavaFaceletsUI:重复标记中断JSF表单验证