Esempio n. 1
0
def writeErrorRec(record):
    """
  Exception report spreadsheet output format same as input format and
  assumes first column is of type Date - adds an extra, last column
  for error message.
  """
    dateFmt = XFStyle()
    dateFmt.num_format_str = 'MM-DD-YYYY'
    defaultFmt = XFStyle()
    global erroutRow

    for colnum in range(0, len(headers)):
        erroutSheet.write(
            erroutRow, colnum, record[headers[colnum][0]],
            tern(headers[colnum][0] == xlrd.XL_CELL_DATE, dateFmt, defaultFmt))

    # add extra column for error message
    erroutSheet.row(erroutRow).write(len(headers), record['Error'])

    erroutRow += 1

    # flush every 200 rows...
    #if ((erroutRow % 200) + 1 == 200):
    # since, xlwt uses aggressive caching, we must
    # write each row manually, or the data may be lost upon exception
    erroutSheet.flush_row_data()
    errorsWorkbook.save('errors.xls')
Esempio n. 2
0
 def write_row(self, array):
     """
     write a row into the file
     """
     for i in range(0, len(array)):
         value = array[i]
         style = None
         tmp_array = []
         if isinstance(value, datetime.datetime):
             tmp_array = [
                 value.year, value.month, value.day, value.hour,
                 value.minute, value.second
             ]
             value = xlrd.xldate.xldate_from_datetime_tuple(tmp_array, 0)
             style = XFStyle()
             style.num_format_str = DEFAULT_DATETIME_FORMAT
         elif isinstance(value, datetime.date):
             tmp_array = [value.year, value.month, value.day]
             value = xlrd.xldate.xldate_from_date_tuple(tmp_array, 0)
             style = XFStyle()
             style.num_format_str = DEFAULT_DATE_FORMAT
         elif isinstance(value, datetime.time):
             tmp_array = [value.hour, value.minute, value.second]
             value = xlrd.xldate.xldate_from_time_tuple(tmp_array)
             style = XFStyle()
             style.num_format_str = DEFAULT_TIME_FORMAT
         if style:
             self.native_sheet.write(self.current_row, i, value, style)
         else:
             self.native_sheet.write(self.current_row, i, value)
     self.current_row += 1
Esempio n. 3
0
    def export_to_excel(self, **kwargs):
        work_book = Workbook(encoding="ascii")
        center_alignment = Alignment()
        center_alignment.horz = Alignment.HORZ_RIGHT
        center_alignment.vert = Alignment.VERT_CENTER

        border = Borders()
        border.top = Borders.THIN
        border.left = Borders.THIN
        border.bottom = Borders.THIN
        border.right = Borders.THIN

        head_style = XFStyle()

        head_pattern = Pattern()
        head_pattern.pattern = Pattern.SOLID_PATTERN
        head_pattern.pattern_fore_colour = Style.colour_map['gray25']

        head_style.pattern = head_pattern

        head_font = Font()
        head_font.bold = True
        head_style.font = head_font

        head_style.alignment = center_alignment
        head_style.borders = border

        data_style = XFStyle()
        data_style.alignment = center_alignment
        data_style.borders = border
        work_sheet = work_book.add_sheet("Sheet")
        limit = 10000
        count = self.get_data_scale(**kwargs)['count']
        times = (count + limit - 1) // limit
        add_header = False
        for i in range(1):
            kwargs["startIndex"] = i * limit + 1
            kwargs['endIndex'] = (i + 1) * limit + 1

            records = self.get_data(**kwargs)

            column_names = []
            y = 0
            for data in records:
                if not add_header:
                    x = 0
                    for column_name in data.keys():
                        work_sheet.write(y, x, column_name, head_style)
                        column_names.append(column_name)
                        x += 1
                    add_header = True
                    y += 1
                x = 0
                for column_name in column_names:
                    work_sheet.write(y, x, data[column_name], data_style)
                    x += 1
                y += 1
                x = 0

        work_book.save(BASE_WIN_OUTPUT_PATH + "result.xls")
Esempio n. 4
0
    def __init__(self, *args, **kwargs):

        super(ExcelEmitter, self).__init__(*args, **kwargs)

        self.mdy_style = XFStyle()
        self.mdy_style.num_format_str = 'MM/DD/YYYY'

        self.mdyhm_style = XFStyle()
        self.mdyhm_style.num_format_str = 'MM/DD/YYYY h:mm'
Esempio n. 5
0
    def writeXls(self, file_name):  #写入Excel表格
        movie_list = [
            '上映年份', '片名', '导演', '编剧', '主演', '类型', '制片国家地区', '语言', '又名', '上映日期',
            '片长', 'IMDB链接/影片地址', '评分', '评价人数', '页面网址', '短评', '话题'
        ]
        xls = ExcelWrite.Workbook()
        sheet = xls.add_sheet("Sheet1")  #写入表1
        style = XFStyle()
        pattern = Pattern()  # 创建一个模式
        pattern.pattern = Pattern.SOLID_PATTERN  # 设置其模式为实型
        pattern.pattern_fore_colour = 0x16  #设置其模式单元格背景色
        # 设置单元格背景颜色 0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue, 5 = Yellow, 6 = Magenta,  the list goes on...
        style.pattern = pattern
        for i in range(len(movie_list)):  #写入首行信息,为表头,表示列名
            sheet.write(0, i, movie_list[i], style)
            sheet.col(i).width = 5240

        actors_list = ['姓名', '性别', '星座', '年龄', '出生地', '职业', '简介']
        sheet2 = xls.add_sheet("Sheet2")
        style2 = XFStyle()
        style2.pattern = pattern
        for i in range(len(actors_list)):  # 写入首行信息,为表头,表示列名
            sheet2.write(0, i, actors_list[i], style2)
            sheet2.col(i).width = 5140
        try:
            #连接数据库读取数据
            conn = pymysql.connect(host='localhost',
                                   user='******',
                                   password='******',
                                   db='mytest',
                                   port=3306,
                                   charset='utf8')
            cur = conn.cursor()
            sql = 'select * from movies'
            cur.execute(sql)
            row = 0
            for movie_info in cur.fetchall():  #遍历数据库中每行信息,一行表示一部电影的所有信息
                row = row + 1  #第0行为表头,不添加数据,因此从第一列开始写入
                for i in range(len(movie_info) - 1):  #对于一行信息进行遍历,分别存入每列
                    sheet.write(row, i, movie_info[i + 1])

            sql = "select id,name,sex,star,date_format(from_days(to_days(now())-to_days(birthday)),'%Y')+0,place,job,message from actors"
            cur.execute(sql)
            row = 0
            for actor_info in cur.fetchall():  # 遍历数据库中每行信息,一行表示一部电影的所有信息
                row = row + 1  # 第0行为表头,不添加数据,因此从第一列开始写入
                for i in range(len(actor_info) - 1):  # 对于一行信息进行遍历,分别存入每列
                    sheet2.write(row, i, actor_info[i + 1])

            xls.save(file_name)  #写入完成,存储
            cur.close()
            conn.close()

            wx.MessageBox('数据已导出到桌面!!!', caption="导出成功")
        except:
            wx.MessageBox('数据导出失败!!!', caption="导出失败")
Esempio n. 6
0
def excel_writer(filenames):
    style2 = XFStyle()
    style2.num_format_str = '####.##0'
    al = Alignment()
    al.horz = Alignment.HORZ_CENTER
    al.vert = Alignment.VERT_BOTTOM
    style2.alignment = al
    style3 = XFStyle()
    style3.num_format_str = '0.00%'
    style3.alignment = al
    wb = Workbook()
    sheet1 = wb.add_sheet("Sheet 1")
    index = 0
    columns_list = ['c', 'e', 'f', 'g', 'h', 'i', 'k', 'l', 'm']
    if True:
        print(f"{bcolors.WARNING}PLEASE INPUT THE 9 COLUMN LETTERS YOU NEED SEPARATED WITH A COMMA{bcolors.ENDC}")
        print(f"{bcolors.WARNING}Example: D,A,B,C,F,G,E,K,W{bcolors.ENDC}")
        columns = input()
        while invalid(columns):
            print(f"{bcolors.FAIL}INVALID INPUT{bcolors.ENDC}")
            print(f"{bcolors.WARNING}Example: D,A,B,C{bcolors.ENDC}")
            columns = input()
        columns_list = re.split(',', columns)

    sheet1.write(index, letters_to_indexes(columns_list[0]), "Concurrent Users")
    sheet1.write(index, letters_to_indexes(columns_list[1]), "Average Total Execution Time (sec)")
    sheet1.write(index, letters_to_indexes(columns_list[2]), "90% Total Execution Time  (sec)")
    sheet1.write(index, letters_to_indexes(columns_list[3]), "Min Total Execution Time (sec)")
    sheet1.write(index, letters_to_indexes(columns_list[4]), "Max Total Execution Time (sec)")
    sheet1.write(index, letters_to_indexes(columns_list[5]), "Number of Calls")
    sheet1.write(index, letters_to_indexes(columns_list[6]), "Error Rate (%)")
    sheet1.write(index, letters_to_indexes(columns_list[7]), "Date")
    sheet1.write(index, letters_to_indexes(columns_list[8]), "Start Time")

    index = 1
    for file in filenames:
        print(file)
        numtuple = getnumbers(file)
        print(numtuple)
        sheet1.write(index, letters_to_indexes(columns_list[0]), numtuple[6])
        sheet1.write(index, letters_to_indexes(columns_list[1]), numtuple[0], style2)
        sheet1.write(index, letters_to_indexes(columns_list[2]), numtuple[1], style2)
        sheet1.write(index, letters_to_indexes(columns_list[3]), numtuple[2], style2)
        sheet1.write(index, letters_to_indexes(columns_list[4]), numtuple[3], style2)
        sheet1.write(index, letters_to_indexes(columns_list[5]), numtuple[4])
        sheet1.write(index, letters_to_indexes(columns_list[6]), numtuple[5], style3)
        sheet1.write(index, letters_to_indexes(columns_list[7]), str(date.today()))
        sheet1.write(index, letters_to_indexes(columns_list[8]), "4:42:00")

        index += 1

    wb.save("example.xls")
Esempio n. 7
0
 def __init__(self):
     """Initialize class"""
     APIView.__init__(self)
     self._file_title = ''
     self._topic = ''
     self._times = []
     self.__workbook = Workbook(encoding='utf-8')
     self._response = HttpResponse(content_type='application/ms-excel')
     self._head_row_style = XFStyle()
     self._data_row_style = XFStyle()
     self.__start_row = 5
     self.__start_column = 5
     self.__message_row = 2
     self.__message_col = 2
Esempio n. 8
0
def setStyle(n):
    pattern = Pattern()
    pattern.pattern = Pattern.SOLID_PATTERN 
    pattern.pattern_fore_colour = n 
    style = XFStyle()
    style.pattern = pattern 
    return style
Esempio n. 9
0
 def write_result(self, row, actualresult, result,
                  casefile):  # 文件不用写全路径,只写文件名只可
     self.lock.acquire()
     case_path = os.path.join(CASEPATH, casefile)
     print(case_path)
     book = xlrd.open_workbook(case_path)  # 创建一个excel操作对象
     book2 = copy(
         book
     )  #复制book对象  #管道作用:利用xlutils.copy函数,将xlrd.Book转为xlwt.Workbook,再用xlwt模块进行存储
     sheet = book2.get_sheet(0)
     # 创建一个sheet操作实例,读取的是第一个excel ,#通过get_sheet()获取的sheet有write()方法
     # 红色
     # styleBlueBkg = xlwt.easyxf('pattern: pattern solid, fore_colour red;')
     style = XFStyle()  # 格式信息
     font = xlwt.Font()  # 字体基本设置
     # 红色
     font.colour_index = 0xff
     style.font = font
     sheet.write(row, 11, actualresult)
     # 回写时,如果是失败,则颜色标成红色
     # if result=='0':
     #     # sheet.write(row, 12, result,styleBlueBkg)
     #     sheet.write(row, 12, result,style)
     # else:
     #     sheet.write(row, 12, result)
     sheet.write(row, 12, result)
     # sheet.write(row, 13, user)
     book2.save(case_path)
     print('结果写入保存成功!')
     self.lock.release()
Esempio n. 10
0
 def RUNN():
     # ghi file excel
     fnt = Font()
     fnt.name = "Times New Roman"
     fnt.height = 280
     borders = Borders()
     borders.left = Borders.THIN
     borders.right = Borders.THIN
     borders.top = Borders.THIN
     borders.bottom = Borders.THIN
     style = XFStyle()
     style.font = fnt
     style.borders = borders
     wb = Workbook()
     sheet1 = wb.add_sheet("Điểm")
     col = 0
     row = 0
     sheet1.write(row, col, "STT", style)
     sheet1.write(row, col + 1, "TÊN BÀI LÀM", style)
     sheet1.write(row, col + 2, "ĐIỂM", style)
     row += 1
     diem = []
     st = 1
     for i in t:
         if i == name_form: continue
         else:
             try:
                 t1 = docx.Document(i)
                 sheet1.write(row, col, st, style)
                 sheet1.write(row, col + 1, i[:-5], style)
                 sheet1.write(row, col + 2, round(10 * so_sanh(t1), 2), style)
                 row += 1
                 st += 1
             except Exception: pass
     wb.save("KetQua.xls")
Esempio n. 11
0
 def set_style(self, isblod):
     style = XFStyle()
     fnt = Font()  # 创建一个文本格式,包括字体、字号和颜色样式特性
     fnt.name = u'微软雅黑'  # 设置其字体为微软雅黑
     fnt.bold = isblod
     style.font = fnt
     return style
Esempio n. 12
0
def getDefualtStyle():
	fnt = Font()
	fnt.name = 'Arial'
	
	borders = Borders()
	borders.left = Borders.THIN
	borders.right = Borders.THIN
	borders.top = Borders.THIN
	borders.bottom = Borders.THIN
	
	#pattern = Pattern()
	#pattern.pattern = Style.pattern_map['solid']
	###pattern.pattern_back_colour = 0xBFBFBF
	#pattern.pattern_fore_colour = 0x37
	
	
	alignment = Alignment()
	#alignment.horizontal = Alignment.HORZ_LEFT 
	alignment.horizontal = Alignment.HORZ_RIGHT
	
	
	style = XFStyle()
	#~ style.num_format_str='0.000%'
	#~ style.num_format_str='0+'
	#~ style.font = fnt
	style.align = alignment
	style.borders = borders
	#~ style.pattern = pattern
	
	return style
Esempio n. 13
0
 def __init__(self, encoding='utf-8'):
     self.nline = 0
     self.wb = wb = Workbook(encoding=encoding)
     self.ws = wb.add_sheet('sheet 1')
     self.date_format = XFStyle()
     self.date_format.num_format_str = 'dd/mm/yyyy'  # TODO: convert from settings.DATE_FORMAT
     self.truncate_prefix = _('(truncated cell)')  # TODO: cached_gettext
Esempio n. 14
0
def css2excel(css):
    #custom_css = 'font: name "%s", %s on'%(current_value['font-family'].split(",")[0], current_value['font-weight'].split(",")[0])
    #export_sheet.write(row_idx, col_idx, current_value['data'], xlwt.easyxf('font: italic on; pattern: pattern solid, fore-colour grey25'))
    xf_list = []
    fnt = Font()
    borders = Borders()
    pattern = Pattern()
    align = Alignment()

    process_css = {
        'font-family' : [fnt, "name" , lambda x : x.split(",")[0]],
        'color' : [fnt, "colour_index", lambda x : excel_color_map.get(x,0)+8],
        'font-weight' : [fnt, "bold", lambda x : x.upper() == 'BOLD'],
        #'font-weight' : [fnt, "bold", lambda x : x == '700'],
        'text-align' : [align, "horz", lambda x : {'left':align.HORZ_LEFT, 'right':align.HORZ_RIGHT, 'center':align.HORZ_CENTER, 'justified': align.HORZ_JUSTIFIED}[x]],
        'background-color' : [pattern,"pattern_fore_colour", lambda x: excel_color_map.get(x,16)+8],
    }
    #TODO process_css -> css
    for i in process_css.keys():
        #print process_css[i][0] ,".",process_css[i][1], " => " , css[i] ,"  |  ", process_css[i][2](css[i]) 
        setattr(process_css[i][0], process_css[i][1], process_css[i][2](css[i]))

    style = XFStyle()
    style.font = fnt
    borders.left = Borders.THIN
    borders.right = Borders.THIN
    borders.top = Borders.THIN
    borders.bottom = Borders.THIN
    style.borders = borders
    style.pattern = pattern
    style.pattern.pattern = 1
    style.alignment = align

    return style
Esempio n. 15
0
def dictToXls(data):
    from xlwt import Workbook,XFStyle
    from cStringIO import StringIO
    date_format = XFStyle()
    date_format.num_format_str = 'dd/mm/YYYY'
    stream = StringIO()
    wb = Workbook(encoding='utf8')
    from datetime import datetime,date
    for sheetname in data['sheets']:
        sheet = data['data'][sheetname]
        ws = wb.add_sheet(sheetname)
        for j,field in enumerate(sheet['fields']):
            fieldtxt = field[1] if isinstance(field,tuple) else field
            ws.row(0).write(j,fieldtxt)
        for i,row in enumerate(sheet['data']):
            for j,field in enumerate(sheet['fields']):
                fieldtxt = field[0] if isinstance(field,tuple) else field
                f = row.get(fieldtxt,None)
                if isinstance(f,date) or isinstance(f,datetime):
                    ws.row(i+1).write(j,f,date_format)
                else:
                    ws.row(i+1).write(j,f)

    wb.save(stream)
    return stream.getvalue()
Esempio n. 16
0
        def get_style(
                font_specs=dict(),
                border_specs=dict(),
                pattern=None,
                num_format_str=None,
        ):

            style_key = (freeze(font_specs), freeze(border_specs), pattern,
                         num_format_str)

            try:
                return styles[style_key]
            except KeyError:
                style = XFStyle()
                style.font = Font()
                for key, value in font_specs.items():
                    setattr(style.font, key, value)
                style.borders = Borders()
                for key, value in border_specs.items():
                    setattr(style.borders, key, value)
                if pattern:
                    style.pattern = pattern
                if num_format_str:
                    style.num_format_str = num_format_str
                styles[style_key] = style
                return style
Esempio n. 17
0
    def render(self, request, context, **response_kwargs):
        from xlwt import Workbook, XFStyle, easyxf

        w = Workbook(encoding='utf-8')

        ws = w.add_sheet('Report')
        style = XFStyle()

        row = 0
        heading_xf = easyxf('font:height 200; font: bold on; align: wrap on, vert centre, horiz center')
        ws.write(row, 0, '#', style)

        for col, fieldname in enumerate(context['report'].headers, start=1):
            ws.write(row, col, str(fieldname), heading_xf)
            ws.col(col).width = 5000
        ws.row(row).height = 500

        # we have to prepare all the styles before going into the loop
        # to avoid the "More than 4094 XFs (styles)" Error
        styles = self._get_styles(context)
        for rownum, data in enumerate(context['report']):
            ws.write(rownum + 1, 0, rownum + 1)
            for idx, (fieldname, rowvalue) in enumerate(data.items()):
                style = styles[rowvalue.column.name]
                try:
                    ws.write(rownum + 1, idx + 1, with_widget(rowvalue, format='xls'), style)
                except Exception:
                    #logger.warning("TODO refine this exception: %s" % e)
                    ws.write(rownum + 1, idx + 1, smart_str(with_widget(rowvalue)), style)

        f = StringIO.StringIO()
        w.save(f)
        f.seek(0)

        return f.read()
Esempio n. 18
0
def Style2():
    style1 = XFStyle()
    alignment = xlwt.Alignment()
    alignment.horz = xlwt.Alignment.HORZ_CENTER
    alignment.vert = xlwt.Alignment.VERT_CENTER
    style1.alignment = alignment  # 给样式添加文字居中属性
    style1.font.height = 330  # 设置字体大小
    return style1
Esempio n. 19
0
    def setupFormat(self):
        headFont = Font()
        headFont.bold = True
        alignmentSetup = Alignment()
        alignmentSetup.wrap = True
        borders = Borders()
        borders.left = 1
        borders.right = 1
        borders.top = 1
        borders.bottom = 1

        self.header_style = XFStyle()
        self.header_style.font = headFont

        self.table_style = XFStyle()
        self.table_style.borders = borders
        self.table_style.alignment = alignmentSetup
Esempio n. 20
0
    def get_report_info_perid(
        self,
        cmd,
        diff_time,
        thre_time,
        max_number,
    ):
        # 发送要执行的命令
        pre_time_stamp = [0] * 4
        self._channel.send(cmd + '\r')
        # 回显很长的命令可能执行较久,通过循环分批次取回回显
        index = [0] * 4
        line_counter = 0
        line_feed_byte = '\n'.encode(self.encoding)
        while True:
            buffer = self._channel.recv(65535)
            if len(buffer) == 0:
                logger.info('end______________')
                break
            lines = buffer.split(line_feed_byte)
            for current_line in lines:
                style = None
                line = current_line.decode(self.encoding)
                # logger.debug('shell显示:%s' % line)
                col = self.check_type(line)
                if not line.startswith(self.rq) or col == 10:
                    line_counter += 1
                    continue
                time_stamp = int(
                    time.mktime(
                        time.strptime(' '.join([line[:8], line[9:17]]),
                                      "%Y%m%d %H:%M:%S")))
                time_stamp_dec = line[18:21]  # 精确到毫秒
                time_stamp = time_stamp * 1000 + int(time_stamp_dec)
                logger.info('%s:%s' % (senior_name[col], time_stamp))

                if pre_time_stamp[col] == 0:
                    pre_time_stamp[col] = time_stamp
                else:
                    if abs((time_stamp - pre_time_stamp[col]) -
                           diff_time[col]) > thre_time[col]:
                        logger.error('两帧数据间隔为{}ms,时间戳分别为:({},{}),行号:{}'.format(
                            time_stamp - pre_time_stamp[col], time_stamp,
                            pre_time_stamp[col], index[col]))
                        style = XFStyle()
                        fnt = Font()
                        fnt.name = u'微软雅黑'  # 设置其字体为微软雅黑
                        fnt.colour_index = 2  # 设置其字体颜色
                        fnt.bold = True
                        style.font = fnt
                self.write_xl(index[col] + 1, col * 2, time_stamp)
                self.write_xl(index[col] + 1,
                              col * 2 + 1,
                              time_stamp - pre_time_stamp[col],
                              style=style)
                index[col] += 1
                pre_time_stamp[col] = time_stamp
                line_counter += 1
Esempio n. 21
0
 def style(fontsize=10, bold=False, italic=False, align=None):
     """ XFStyle builder helper """
     style = XFStyle()
     style.font.height = twips(fontsize)
     style.font.bold = bold
     style.font.italic = italic
     if align is not None:
         style.alignment = align
     return style
Esempio n. 22
0
def build_certificate_excel(queryset):
    workbook = xlwt.Workbook()
    sheet = workbook.add_sheet("Сертификаты")

    title_style = XFStyle()
    borders = Borders()
    borders.bottom = Borders.MEDIUM
    borders.right = Borders.MEDIUM
    borders.left = Borders.MEDIUM
    title_style.borders = borders
    title_style.font = easyfont(f"bold on, height {12*20};")

    font_style = XFStyle()
    font_style.font = easyfont(f"height {12*20};")

    sheet.write(0, 1, "ФИО", title_style)
    sheet.write(0, 2, "№ Договора", title_style)
    sheet.write(0, 3, "ИНН", title_style)
    sheet.write(0, 4, "День", title_style)
    sheet.write(0, 5, "Месяц", title_style)
    sheet.write(0, 6, "Год", title_style)
    sheet.write(0, 7, "Сертификат №", title_style)

    for r, obj in enumerate(queryset):
        n = r + 1
        sheet.write(n, 0, str(n), font_style)
        sheet.write(n, 1, str(obj.full_name), font_style)
        sheet.write(n, 2, str(obj.contract_n), font_style)
        sheet.write(n, 3, str(obj.inn), font_style)
        sheet.write(n, 4, str(obj.date_received.year), font_style)
        sheet.write(n, 5, str(obj.date_received.month), font_style)
        sheet.write(n, 6, str(obj.date_received.day), font_style)
        sheet.write(n, 7, str(obj.certificate_n), font_style)

    sheet.col(0).width = 1400
    sheet.col(1).width = 14000
    sheet.col(2).width = 4500
    sheet.col(3).width = 4000
    sheet.col(7).width = 5500

    file = BytesIO()
    workbook.save(file)
    return file
Esempio n. 23
0
    def export_vehicles(request,lenguage,vehicle_list):

        email_template = '/email/0/'
        error_list = 'Empty List'

        if int(lenguage) == 1:
            email_template = '/email/1/'
            error_list = 'Lista vacía'

        if not Validator.validate_view(request):
            return redirect(email_template)

        if len(vehicle_list) > 0:
            user_id = request.session['id']
            response = HttpResponse(content_type='application/ms-excel')
            response['Content-Disposition'] = 'attachment; filename="vehicles.xls"'

            if int(lenguage) == 1:
                response['Content-Disposition'] = 'attachment; filename="vehiculos.xls"'

            wb = xlwt.Workbook(encoding='utf-8')
            ws = wb.add_sheet('Trailers')

            row_num = 0

            rows_vehicle = Vehicle.objects.filter(economic_no__in = vehicle_list).filter(user_id=user_id).values_list('economic_no','vin','plate_no',
                                                                                               'country','state','year',
                                                                                               'model','brand','type','status',
                                                                                               )

            date_format = XFStyle()
            date_format.num_format_str =  'M/D/YY'

            for row_vehicle in rows_vehicle:
                row_num += 1
                columns = [
                'Economic No', 'Vin','Plate No',
                'Country', 'State', 'Year',
                'Model', 'Brand','type','status'
                ]

                if int(lenguage) == 1:
                    columns = [
                        'No. Económico', 'Vin', 'No. de Placas',
                        'País', 'Estado', 'Año',
                        'Modelo', 'Marca', 'Tipo','Condición'
                    ]

                row_num = XlsGenerator.create_headers(columns, ws, row_num)

                row_num = XlsGenerator.create_content(ws,row_num,row_vehicle,xlwt.XFStyle())

            wb.save(response)
            return response
        return render(request,'hound-eng/error.html',{'error':error_list})
Esempio n. 24
0
def write_to_book(sheet: Worksheet, row: int, cur_inf: dict):
    """
    Запись обработанной информации в Worksheet.
    """
    row = sheet.row(row)
    style = XFStyle()
    for index, value in enumerate(cur_inf.values()):
        if (row != 0) and (index != 0 or 3):
            style.num_format_str = '"₽"#,##0.0000;"₽"#,##0.0000'
        sheet.col(index).width = 4000
        row.write(index, value, style=style)
Esempio n. 25
0
 def style_base():
     style = XFStyle()
     style.alignment.vert = Alignment.VERT_TOP
     style.alignment.wrap = True
     style.font.height = 180  # 9pt
     borders = style.borders
     borders.left = Borders.THIN
     borders.right = Borders.THIN
     borders.top = Borders.THIN
     borders.bottom = Borders.THIN
     return style
Esempio n. 26
0
def Style1():
    style = XFStyle()
    fnt = Font()
    fnt.name = u'微软雅黑'
    fnt.bold = True
    style.font = fnt
    alignment = xlwt.Alignment()
    alignment.horz = xlwt.Alignment.HORZ_CENTER
    alignment.vert = xlwt.Alignment.VERT_CENTER
    style.alignment = alignment  # 给样式添加文字居中属性
    style.font.height = 430  # 设置字体大小
    return style
Esempio n. 27
0
 def excelWriter(self, filename):
     workbook1 = xlwt.Workbook()
     sheet1 = workbook1.add_sheet('表01')
     sheet1.write(0, 0, 'Unformated value')
     sheet1.write(0, 1, '大家好')
     # 设置字体样式
     font1 = Font()
     font1.name = '华文琥珀'
     style = XFStyle()
     style.font = font1
     sheet1.write(1, 0, 'Formated value', style)
     workbook1.save(filename)
Esempio n. 28
0
    def exportToExcel(self, objectBooks):

        book = Workbook()
        sheet1 = book.add_sheet('Sheet 1')
        if (objectBooks):
            i = 0

            row1 = sheet1.row(i)
            row1.write(0, ('เลขทะเบียน').decode('UTF8'))
            row1.write(1, ('ที่').decode('UTF8'))

            row1.write(2, ('ลงวันที่').decode('UTF8'))
            row1.write(3, ('จาก').decode('UTF8'))
            row1.write(4, ('ถึง').decode('UTF8'))
            row1.write(5, ('เรื่อง').decode('UTF8'))
            row1.write(6, ('การปฏิบัติ').decode('UTF8'))
            row1.write(7, ('หมายเหตุ').decode('UTF8'))

            i = i + 1
            style = XFStyle()
            style.num_format_str = 'D-MMM-YY'

            for value in objectBooks:

                row1 = sheet1.row(i)

                row1.write(0,
                           value.get('book_number').decode('UTF8'))
                row1.write(1,
                           value.get('book_at').decode('UTF8'))

                row1.write(2, value.get('book_recive'), style)
                row1.write(3,
                           value.get('book_from').decode('UTF8'))
                row1.write(4,
                           value.get('book_to').decode('UTF8'))
                row1.write(5,
                           value.get('book_detail').decode('UTF8'))
                row1.write(6,
                           value.get('book_operations').decode('UTF8'))
                row1.write(7,
                           value.get('book_remark').decode('UTF8'))
                #row1.write(7, value.get('book_type_name').decode('UTF8') );

                i = i + 1

        dirTempFile = gettempdir() + _os.sep + str('books.xls')

        book.save(dirTempFile)
        #book.save(TemporaryFile());

        return dirTempFile
Esempio n. 29
0
def write_file(headers, data):
    wb = Workbook()
    font = Font()
    style = XFStyle()
    page = wb.add_sheet('All Data')
    for i in range(len(data)):
        font.bold = True
        style.font = font
        page.write(0, i, headers[i], style=style)
        for j in range(len(data[i])):
            page.write(j + 1, i, data[i][j])

    wb.save('info/misc/rating_plot.xls')
Esempio n. 30
0
    def writerow(self, row):
        for cell, data in enumerate(row):
            if data is None:
                data = ''

            elif not isinstance(data, (int, float, Decimal)):
                data = unicode(data)

            style = XFStyle()
            style.alignment.wrap = 1
            self.sheet.write(self._row, cell, data, style)

        self._row += 1