コード例 #1
0
    def make_xls_validation(self, wb, ws_info, pg_info):
        from openpyxl.utils import quote_sheetname
        status_ws = wb.get_sheet_by_name('状态表'.decode('utf8'))

        for ii, _ik in enumerate(sorted(self.dev_status_dict.keys()), 1):
            status_ws['z%d' % ii] = self.dev_status_dict[_ik]

        dv_dev_status = DataValidation(
            type="list",
            formula1='{0}!$z$1:$z${last_row}'.format(
                quote_sheetname('状态表'.decode('utf8')),
                last_row=len(self.dev_status_dict.keys())),
            allow_blank=True)
        dv_dev_status.sqref = 'CL6:CL30000'
        ws_info.add_data_validation(dv_dev_status)

        dv_apl_process = DataValidation(type="decimal",
                                        operator="between",
                                        formula1=0,
                                        formula2=100)
        dv_apl_process.sqref = 'CC6:CC30000'
        ws_info.add_data_validation(dv_apl_process)

        dv_it_result = DataValidation(type="list",
                                      formula1='"完成, 未完成"',
                                      allow_blank=True)
        dv_it_result.sqref = 'CD6:CD30000'
        ws_info.add_data_validation(dv_it_result)

        dv_is_dalian = DataValidation(type="list",
                                      formula1='"是, 否"',
                                      allow_blank=True)
        dv_is_dalian.sqref = 'BX6:BX30000'
        ws_info.add_data_validation(dv_is_dalian)
コード例 #2
0
 def make_xls_validation(self, ws, row_count, pg):
     # 迁入开发分类
     it_status_list = self.get_it_status_list(pg)
     status_str = '"%s"' % ', '.join(it_status_list)
     dv_it_result = DataValidation(type="list",
                                   formula1=status_str,
                                   allow_blank=True)
     dv_it_result.sqref = 'J%s:J%s' % (HMI_START_ROW_NUM,
                                       row_count + HMI_START_ROW_NUM)
     ws.add_data_validation(dv_it_result)
     # 后续画面开发分类
     it_followup_status_list = self.get_it_followup_status_list(pg)
     followup_status_str = '"%s"' % ', '.join(it_followup_status_list)
     dv_is_dalian = DataValidation(type="list",
                                   formula1=followup_status_str,
                                   allow_blank=True)
     dv_is_dalian.sqref = 'L%s:L%s' % (HMI_START_ROW_NUM,
                                       row_count + HMI_START_ROW_NUM)
     ws.add_data_validation(dv_is_dalian)
コード例 #3
0
 def make_xls_validation(self, ws, row_count, pg):
     # 开发流程分类
     for colm in ('AL%s:AL%s', 'AN%s:AN%s', 'AP%s:AP%s', 'AR%s:AR%s',
                  'AT%s:AT%s'):
         it_status_list = self.get_it_status_list(pg)
         status_str = '"%s"' % ', '.join(it_status_list)
         dv_it_result = DataValidation(type="list",
                                       formula1=status_str,
                                       allow_blank=True)
         dv_it_result.sqref = colm % (HMI_START_ROW_NUM,
                                      row_count + HMI_START_ROW_NUM)
         ws.add_data_validation(dv_it_result)
     # 开发状态分类
     for colm2 in ('BB%s:BB%s', 'BK%s:BK%s', 'BP%s:BP%s', 'BU%s:BU%s',
                   'BZ%s:BZ%s', 'CE%s:CE%s', 'CJ%s:CJ%s', 'CO%s:CO%s',
                   'CT%s:CT%s', 'CY%s:CY%s', 'DD%s:DD%s'):
         it_followup_status_list = self.get_it_followup_status_list(pg)
         followup_status_str = '"%s"' % ', '.join(it_followup_status_list)
         dv_is_dalian = DataValidation(type="list",
                                       formula1=followup_status_str,
                                       allow_blank=True)
         dv_is_dalian.sqref = colm2 % (HMI_START_ROW_NUM,
                                       row_count + HMI_START_ROW_NUM)
         ws.add_data_validation(dv_is_dalian)