Skip to main content

a tools for ami

Project description

basic knowledge

  • 这是什么?
这是一个sql 执行中间件, 它可以从配置文件中读取,并加载配置按需生成相应的sql 并执行.
  • 怎么配置
以 xmlFactory 举例.
xml 的文件格式如下
	<DV>
		<ID>1</ID> #dv_id
		<TableName>order_head</TableName>  # the table you will select from 
		<TopRecord>500</TopRecord> # euqal to select top 
		<Fields> # format will be {TrueField} as {DispField}, ${number} is a placeholder number will be replace by true table name
			<Field>
				<DispField>Order_date</DispField> 
				<TrueField>dbo.Fn_DispDateTime($0.Order_date)</TrueField>
				<WhereField>$0.Order_date</WhereField>
			</Field>
                </Fields>
		<Tables>
			<Table ID="88"> # $88
				<Name>V_Type</Name> # true table name
				<Alias>Tp_order</Alias> 
				<Relation> # relations that about with this alias
                                $0.Order_type=$88.Type_no    and  $88.Type_for='Order_type'  and   $88.Pj_id=$0.Pj_id and $88.Status&gt;=0

</Relation>
				<JoinType>left</JoinType>
                        </Table>
                </Tables>
        </Dv>

1 how to use

        engine = create_engine(self.G2CN_str)
        session = sessionmaker(bind=engine)

        factory = XMLFactory("D:\\chenchu\\Python\\DvManager\\test.xml")
        dvm = factory.Build()

        dvm.addQueryField(['Cust_no', 'Order_type_name', 'Order_date'])
        # dvm.filter= DvFilter('Order_date').Equal_to('2019-10-11') #'Order_date'
        dvm.filter.field_name = 'Order_date'
        dvm.filter.LESS_THAN('2019-10-11')

        # add field
        dvm.fields['Pj_id'] = DvField(id="",disp_name='Pj_id',true_name="$0.Pj_id",where_name="$0.Pj_id") 

        pj_id  = DvFilter('Pj_id').Equal_to('82187')

        dvm.filter.AND(pj_id)
        dvm.top_record = 1000
        dvm.temp_tablename = "#ls"

        dvm.sql_adapter = sql_server(session()) # 或许可以设为 default
        print(dvm.Build()) 
        rows = dvm.Query()
        for row in rows:
            print(row)

2.how to load from xml

        factory = XMLFactory("./test.xml")
        dvm = factory.Build()

3.how to generate a xml from a dvid

        # self.AmimanagerDB == connection string
        tools = dv2xml.dv2xml(self.AmimanagerDB,1)
        tools.run("./test.xml")

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

netsdldv-0.0.9.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

netsdldv-0.0.9-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

Details for the file netsdldv-0.0.9.tar.gz.

File metadata

  • Download URL: netsdldv-0.0.9.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.8.0

File hashes

Hashes for netsdldv-0.0.9.tar.gz
Algorithm Hash digest
SHA256 707cc38421197ceff506bca52ec4aec5dbd149fa4475a9e7f92570a4f0a70e8a
MD5 fbaacdb92b6311b05ec4012f5a7bcba3
BLAKE2b-256 5692a4c29885456ef89dba39e24c123cb3e15aca57da8cf2edce36627a40ecea

See more details on using hashes here.

File details

Details for the file netsdldv-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: netsdldv-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 12.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.8.0

File hashes

Hashes for netsdldv-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 02be356afb79ab8fe38c2aae772218421122c4e06fff163b143adc1a4d361e10
MD5 854035ebb9bc2cfeebc64ccbd360921d
BLAKE2b-256 3d672f6b0119240296a28bf09c084e315fb4700fdd5daf60b72221efc8b0280e

See more details on using hashes here.

Supported by

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