diff --git a/XMLTesting.py b/XMLTesting.py
index ff7d769..a3fb254 100644
--- a/XMLTesting.py
+++ b/XMLTesting.py
@@ -1,5 +1,44 @@
from bs4 import BeautifulSoup as bs
-import csv
+# import csv
+from openpyxl import workbook
+
+
+
+report_filter = """
+
+
+"""
+
+print(report_filter)
+
+# ####XML OUTPUT TESTS#####
+#
+# r = 'G-SOPREMA-063AF3D7$ 47.46G-SOPREMA-93A6C270$ 37.06G-SOPREMA-93A6C26C$ 66.24G-SOPREMA-EE315084$ 61.38G-SOPREMA-EE31507A$ 59.74G-SOPREMA-4B89DBE6$ 83.13G-SOPREMA-338039BA$ 46.38G-SOPREMA-90D8C520$ 47.46G-SOPREMA-90D8C519$ 134.80G-SOPREMA-90D8C516$ 77.54G-SOPREMA-C0EC0977$ 61.05G-SOPREMA-C0EC0975$ 145.31G-SOPREMA-A8E26745$ 93.64G-063AF2AB$ 77.32G-F0FF4DBC$ 59.72G-EE315064$ 43.52G-EE31505B$ 36.54G-4B89DBC2$ 72.35G-90D8C4FF$ 59.01G-90D8C4FB$ 87.88G-63937DF3$ 109.39G-C0EC095E$ 41.42G-A8E26728$ 64.25G-A8E26726$ 40.35G-063AF294$ 0.00G-063AF28E$ 416.77G-C0EC093B$ 26.50G-C0EC093A$ 71.67G-E4909E2D$ 40.67G-9F41B4F7$ 155.14G-41DA2992$ 40.04G-FC8B405C$ 110.41G-44A926E9$ 40.38G-872A12C8$ 44.44G-9F33B4F7$ 181.27G-59E4CBC1$ 147.05G-A202B24E$ 40.63G-59E5CBC1$ 40.64G-44AB26E9$ 40.64G-29D38763$ 40.64G-FC8E405C$ 39.57G-B73F5726$ 39.98G-A204B24E$ 39.57G-E4859E2D$ 129.38G-9F36B4F7$ 61.40G-B7405726$ 40.60G-29D58763$ 40.60G-41DF2992$ 40.60G-FC90405C$ 44.07G-44AE26E9$ 40.60G-29D68763$ 40.60G-E4879E2D$ 40.60G-9F38B4F7$ 49.08G-59E9CBC1$ 86.02G-44AF26E9$ 129.01G-873012C8$ 159.52G-FC92405C$ 39.33G-44B626EA$ 40.60G-29DE8764$ 43.74G-E48F9E2E$ 40.60G-9F40B4F8$ 44.75G-59F1CBC2$ 100.90G-44B726EA$ 129.01G-29DF8764$ 133.81G-E4909E2E$ 129.01G-9F41B4F8$ 127.24G-59F2CBC2$ 40.31G-44A826EA$ 40.60G-E4819E2E$ 54.03G-9F32B4F8$ 69.62G-29D18764$ 61.64G-E4829E2E$ 41.59G-9F33B4F8$ 61.01G-59E4CBC2$ 64.27G-44AA26EA$ 61.64G-E4839E2E$ 41.59G-9F34B4F8$ 40.01G-B73E5727$ 39.60G-872C12C9$ 43.04G-41DD2993$ 41.53G-FC8E405D$ 43.04G-44AC26EA$ 39.54G-29D48764$ 39.54G-E4859E2E$ 41.53G-FC8F405D$ 40.28G-B7405727$ 41.53G-E4869E2E$ 40.57G-9F37B4F8$ 89.13G-59E8CBC2$ 89.13G-44AE26EA$ 40.25G-872F12C9$ 54.16G-41E02993$ 39.92G-FC91405D$ 39.51G-44AF26EA$ 120.84G-29D78764$ 39.27G-E4889E2E$ 39.92G-FC92405D$ 61.24G-B7435727$ 41.49G-A20EB250$ 41.49G-59F1CBC3$ 39.92G-44B726EB$ 40.54G-29DF8765$ 41.49G-E4909E2F$ 42.96G-9F41B4F9$ 107.82G-B74B5728$ 50.23G-A200B250$ 81.50G-872912CA$ 0.00G-FC8B405E$ 151.17G-44A926EB$ 42.93G-29D18765$ 41.44G-E4829E2F$ 41.44G-44AA26EB$ 53.74G-B73F5728$ 42.04G-A204B250$ 39.04G-872D12CA$ 42.04G-41DE2994$ 39.04G-FC8F405E$ 42.04G-B7405728$ 39.04G-A205B250$ 39.04G-FC90405E$ 42.04G-B7415728$ 43.26G-872F12CA$ 39.04G-41E02994$ 39.04G-FC91405E$ 42.04G-44AF26EB$ 40.15G-29D78765$ 40.15G-41E12994$ 45.13G-FC92405E$ 51.28G-29DE8766$ 67.94G-FC99405F$ 48.71G-B74A5729$ 67.94G-29DF8766$ 43.54G-9F41B4FA$ 39.04G-44A826EC$ 43.80G-29D08766$ 42.08G-41DA2995$ 41.76G-59E3CBC4$ 42.08G-29D18766$ 39.06G-872A12CB$ 41.79G-9F33B4FA$ 41.79G-A202B251$ 37.96G-E4839E30$ 37.96G-59E5CBC4$ 39.06G-44AB26EC$ 39.06G-29D38766$ 97.74G-41DD2995$ 75.47G-FC8E405F$ 75.47G-B73F5729$ 75.47G-A204B251$ 39.04G-872D12CB$ 43.26G-41DE2995$ 36.13G-B7405729$ 43.26G-A205B251$ 39.04G-872E12CB$ 39.04G-29D68766$ 32.50G-E4879E30$ 32.50G-9F38B4FA$ 47.50G-44AF26EC$ 47.50G-29D78766$ 0.00G-E4889E30$ 0.00G-9F39B4FA$ 0.00G-59EACBC4$ 0.00G-CDC1B798$ 0.00G-CDB4B798$ 0.00G-CDB6B798$ 0.00G-CDBAB798$ 0.00G-CDC2B789$ 0.00G-CDB7B789$ 0.00G-CDBAB789$ 0.00G-CDC2B78A$ 0.00G-CDB4B78A$ 0.00G-CDB6B78A$ 0.00G-CDB8B78A$ 0.00G-CDBAB78A$ 0.00G-CDC2B78B$ 0.00G-CDB4B78B$ 0.00G-CDB6B78B$ 0.00G-CDB8B78B$ 0.00G-CDBAB78B$ 0.00G-CDC2B78C$ 0.00G-CDB4B78C$ 0.00G-CDBAB78C$ 0.00G-CDC2B78D$ 0.00G-CDB5B78D$ 0.00G-CDB9B78D$ 0.00G-CDC2B78E$ 0.00G-CDB4B78E$ 0.00G-CDCAB78C$ 0.00G-CDCAB78E$ 0.00'
+# y = bs(r, "lxml")
+# results = []
+# # print(y.report.arrayofstring)
+#
+# wb = workbook.Workbook()
+# ws = wb.active
+# ws.title = "Order Summary"
+#
+#
+# for child in y.report:
+# for childs in child:
+# results.append(childs.text)
+# ws.append(results)
+# results = []
+# wb.save('report.xlsx')
+#
+# # for child in y.report:
+# # for childs in child:
+# # results.append(childs.text)
+# # print(results)
+# # results = []
+
+
+
+
####REPORT SELECTION TESTING#####
diff --git a/main.py b/main.py
index 6e12470..3ef4407 100644
--- a/main.py
+++ b/main.py
@@ -1,7 +1,8 @@
import requests
from bs4 import BeautifulSoup as bs
-import csv
-
+# import csv
+from openpyxl import workbook
+from openpyxl.styles import Font
def Obtain_Ticket(URL, HOST):
GetTicket = """
@@ -37,18 +38,30 @@ def Release_Ticket(ticket, URL, HOST):
response = requests.post(url=URL, data=ReleaseTicket, headers=headers).text
# print("released ticket "+ticket)
-def Run_Report(ticket, URL, HOST, REPORT_FIELDS):
+def Run_Report(ticket, URL, HOST, REPORT_FIELDS, ws, wb):
+
+ report_filter = """
+
+
+
+ """
+
send = """
-
+
"""+ticket+"""
Orders
+ false
+ "Order Status 'Completed'"
"""+REPORT_FIELDS+"""
"""
+ print(send)
+
headers = {'Host': HOST, 'Content-Type': 'application/soap+xml; charset=utf-8', 'Content-Length': 'length'}
response = requests.post(url=URL, data=send, headers=headers).text
@@ -62,13 +75,12 @@ def Run_Report(ticket, URL, HOST, REPORT_FIELDS):
results = []
# Opens report file and writes each row
- with open('report.csv', mode='a') as out:
- out_writer = csv.writer(out, delimiter=',', quotechar='"', quoting=csv.QUOTE_ALL)
- for child in y.report:
- for childs in child:
- results.append(childs.text)
- out_writer.writerow(results)
- results = []
+ for child in y.report:
+ for childs in child:
+ results.append(childs.text)
+ ws.append(results)
+ results = []
+ wb.save('report.xlsx')
def loadMenu():
@@ -126,13 +138,18 @@ def loadMenu():
option = int(input())
# create new report file and adds headers based on config file
- with open('report.csv', mode='w') as out:
- out_writer = csv.writer(out, delimiter=',', quotechar='"', quoting=csv.QUOTE_ALL)
- out_writer.writerow(headers[option])
+ wb = workbook.Workbook()
+ ws = wb.active
+ ws.title = "Order Summary"
+ ws.append(headers[option])
+ bold = Font(bold=True)
+ for cell in ws["1:1"]:
+ cell.font = bold
+ # cell.row_dimensions.width = 25
# converts summary_tab values to a string, adds everything to the URL_HOST array and returns it
REPORT_FIELDS = '\n'.join(map(str, SUMMARY_TAB[option]))
- URL_HOST = [SF_URL[option], SF_HOST[option], REPORT_FIELDS]
+ URL_HOST = [SF_URL[option], SF_HOST[option], REPORT_FIELDS, wb, ws]
return URL_HOST
def main():
@@ -140,8 +157,10 @@ def main():
URL = URL_HOST[0]
HOST = URL_HOST[1]
REPORT_FIELDS = URL_HOST[2]
+ wb = URL_HOST[3]
+ ws = URL_HOST[4]
ticket = Obtain_Ticket(URL, HOST)
- Run_Report(ticket, URL, HOST, REPORT_FIELDS)
+ Run_Report(ticket, URL, HOST, REPORT_FIELDS, ws, wb)
Release_Ticket(ticket, URL, HOST)
main()