THIS IS MY ERROR Traceback (most recent call last): File "\08srv\acad\PO Summaries\TimeForce\TF2POS.py", line 120, in PyApp() File "\08srv\acad\PO Summaries\TimeForce\TF2POS.py", line 24, in init store = self.create_model() File "\08srv\acad\PO Summaries\TimeForce\TF2POS.py", line 112, in create_model workbook.close() File "C:\Python27\lib\site-packages\xlsxwriter\workbook.py", line 297, in close self._store_workbook() File "C:\Python27\lib\site-packages\xlsxwriter\workbook.py", line 605, in _store_workbook xml_files = packager._create_package() File "C:\Python27\lib\site-packages\xlsxwriter\packager.py", line 139, in _create_package self._write_shared_strings_file() File "C:\Python27\lib\site-packages\xlsxwriter\packager.py", line 286, in _write_shared_strings_file sst._assemble_xml_file() File "C:\Python27\lib\site-packages\xlsxwriter\sharedstrings.py", line 53, in _assemble_xml_file self._write_sst_strings() File "C:\Python27\lib\site-packages\xlsxwriter\sharedstrings.py", line 83, in _write_sst_strings self._write_si(string) File "C:\Python27\lib\site-packages\xlsxwriter\sharedstrings.py", line 110, in _write_si self._xml_si_element(string, attributes) File "C:\Python27\lib\site-packages\xlsxwriter\xmlwriter.py", line 122, in _xml_si_element self.fh.write("""%s""" % (attr, string)) File "C:\Python27\lib\codecs.py", line 706, in write return self.writer.write(data) File "C:\Python27\lib\codecs.py", line 369, in write data, consumed = self.encode(object, self.errors) UnicodeDecodeError: 'ascii' codec can't decode byte 0x96 in position 11: ordinal not in range(128)
*1.从SQL SERVER的数据创建工作簿
2.创建EXCEL工作簿
三。将这些工作簿链接到主EXCEL工作表*
#!/usr/bin/python
# TimeForce
# username: sa
# password: Dr8gedog
import os.path
import sys
import shutil
import pyodbc
import datetime
import xlsxwriter
global store
global column_sort
column_sort = 0
global adj
global value
value = 0
class PyApp():
def __init__(self):
global store
store = self.create_model()
return
#gtk.timeout_add( 60*1000, self.my_timer ) # Every 30 seconds
def create_model(self):
cursor.execute("SELECT JobNumber, JobName, JobDescription, User1, complete_yn, JobCode, User2, User3 FROM Job ORDER BY JobName")
rows = cursor.fetchall()
cy = datetime.datetime.year
cm = datetime.datetime.month
cd = datetime.datetime.day
#CREATING WORKBOOK
workbook = xlsxwriter.Workbook('\\\\08SRV\\acad\\PO Summaries\\TEST.xlsx')
#workbook = xlsxwriter.Workbook('\\\\08SRV\\acad\\PO Summaries\\PO Summary Home Page.xlsx')
worksheet = workbook.add_worksheet()
cy = datetime.datetime.year
cm = datetime.datetime.month
cd = datetime.datetime.day
center = workbook.add_format({'align': 'center'})
header = workbook.add_format({'font_size': 14, 'bold': 1, 'align': 'center'})
url_format = workbook.add_format({'font_color': 'blue', 'underline': 1, 'align': 'center'})
col_job = 0 #A
col_customer = 1 #B
col_description = 2 #C
col_leadforeman = 3 #D
col_pm = 4 #E
col_drafter = 5 #F
col_customerpo = 6 #G
col_jobstatus = 7 #H
worksheet.write_string(0, col_job, "Job #", header)
worksheet.write_string(0, col_customer, "Customer", header)
worksheet.write_string(0, col_leadforeman, "Lead Foreman", header)
worksheet.write_string(0, col_description, "Description", header)
worksheet.write_string(0, col_customerpo, "Customer PO #", header)
worksheet.write_string(0, col_jobstatus, "Job Status", header)
worksheet.write_string(0, col_pm, "P.M.", header)
worksheet.write_string(0, col_drafter, "Drafter", header)
worksheet.set_column('A:A', 15)
worksheet.set_column('B:B', 30)
worksheet.set_column('C:C', 60)
worksheet.set_column('D:D', 21)
worksheet.set_column('E:E', 10)
worksheet.set_column('F:F', 15)
worksheet.set_column('G:G', 25)
worksheet.set_column('H:H', 20)
row = 1
for i in rows:
s = i[1].split(" - ")
job_number = str(i[0])
po_link = "file:///\\\\08SRV\\acad\\PO Summaries\\Purchase Order Summaries\\" + job_number + ".xlsx"
worksheet.write_url(row, col_job, po_link, url_format, job_number)
worksheet.write_string(row, col_customer, s[0].strip())
worksheet.write_string(row, col_description, i[2])
worksheet.write_string(row, col_leadforeman, i[5])
worksheet.write_string(row, col_pm, i[6])
worksheet.write_string(row, col_drafter, i[7])
worksheet.write_string(row, col_customerpo, i[3])
if (i[4] == False):
worksheet.write_string(row, col_jobstatus, "Active", center)
if (os.path.exists("\\\\08srv\\acad\\PO Summaries\\Purchase Order Summaries")):
try:
os.makedirs("\\\\08srv\\acad\\PO Summaries\\Shop Drawings\\" + job_number)
except:
pass
if (os.path.exists("\\\\08srv\\acad\\PO Summaries\\Purchase Order Summaries\\" + job_number + ".xlsx")):
#print("File exists")
pass
else:
shutil.copy("\\\\08srv\\acad\\PO Summaries\\Purchase Order Summaries\\PO Template.xlsx", "\\\\08srv\\acad\\PO Summaries\\Purchase Order Summaries\\" + job_number + ".xlsx")
else :
worksheet.write_string(row, col_jobstatus, "Dead", center)
worksheet.set_row(row, options={'hidden': True})
row = row + 1
worksheet.freeze_panes(1, 0)
worksheet.autofilter(0, 0, row, col_jobstatus)
worksheet.filter_column_list('H', ['Active'])
#FILE.close()
workbook.close()
print("DONE.")
return True
#print("File exists")
# Check: Administrative Tools > Data Sources (ODBC) > User DNS.
cnxn = pyodbc.connect('DSN=joblist')
cursor = cnxn.cursor()
PyApp()
cnxn.close()
#sys.exit()
目前没有回答
相关问题 更多 >
编程相关推荐