Completed+Balance due report filter is working

This commit is contained in:
Dan Dembinski
2019-06-20 14:23:46 -04:00
parent cc1b6e8626
commit 7d41521576

16
main.py
View File

@@ -40,12 +40,8 @@ def Release_Ticket(ticket, URL, HOST):
def Run_Report(ticket, URL, HOST, REPORT_FIELDS, ws, wb):
report_filter = """<?xml version="1.0"?>
<PFWebFilter:UserFilter xmlns:PFWebFilter="http://www.pageflex.com/schemas/2004/Storefront/UserFilters/20040817" filterClass="Orders">
<PFWebFilter:Step publicFieldName="Balance Due" query="ExactUnequals" minValue="0.00" maxValue=""/>
<PFWebFilter:Step publicFieldName="Order Status" query="ExactEquals" minValue="Completed" maxValue=""/>
</PFWebFilter:UserFilter>"""
report_filter = """ <filterNameOrXml>&lt;?xml version="1.0"?&gt; &lt;PFWebFilter:UserFilter xmlns:PFWebFilter="http://www.pageflex.com/schemas/2004/Storefront/UserFilters/20040817" filterClass="Orders"&gt; &lt;PFWebFilter:Step publicFieldName="Balance Due" query="ExactUnequals" minValue="0.00" maxValue="" /&gt; &lt;PFWebFilter:Step publicFieldName="Order Status" query="ExactEquals" minValue="Completed" maxValue="" /&gt; &lt;/PFWebFilter:UserFilter&gt;</filterNameOrXml>
"""
send = """<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
@@ -55,21 +51,21 @@ def Run_Report(ticket, URL, HOST, REPORT_FIELDS, ws, wb):
<token>"""+ticket+"""</token>
<reportName>Orders</reportName>
<archived>false</archived>
<filterNameOrXML>"Order Status 'Completed'"</filterNameOrXML>
"""+report_filter+""""
<columnNames>"""+REPORT_FIELDS+"""</columnNames>
</GetReport>
</soap12:Body>
</soap12:Envelope>"""
print(send)
# print(send)
headers = {'Host': HOST, 'Content-Type': 'application/soap+xml; charset=utf-8', 'Content-Length': 'length'}
headers = {'Host': HOST, 'Content-Type': 'application/soap+xml; charset=utf-8', 'Content-Length': 'length', 'SOAPAction': 'http://www.pageflex.com/XmlWebServices/2004/StorefrontAPI/20041111/GetReport'}
response = requests.post(url=URL, data=send, headers=headers).text
# print(response)
temp1 = response.split('</GetReportResult>')
temp2 = temp1[1].split('<error />')
report = (temp2[0])
# print(report)
print("working")
y = bs(report, "lxml")
results = []