개정판 9b3491ae
issue #665: sort code
DTI_PID/DTI_PID/ItemDataExportDialog.py | ||
---|---|---|
29 | 29 |
self.sceneInstData = {} |
30 | 30 |
self.sceneNoteData = {} |
31 | 31 |
|
32 |
self.lineColumnList = []
|
|
33 |
self.equipColumnList = []
|
|
34 |
self.instColumnList = []
|
|
35 |
self.valveColumnList = []
|
|
36 |
self.noteColumnList = []
|
|
32 |
self.lineColumnListAll = ['UID', 'LINE_SIZE', 'LINE_SYMBOL', 'LINE_NO', 'LINE_CLASS', 'LINE_ROUTING_FROM', 'LINE_ROUTING_TO', 'SERVICE_FLUID', 'SERVICE_DENSITY', 'SERVICE_STATE', 'OPERATION_CONDITION_TEMP', 'OPERATION_CONDITION_PRESS', 'DESIGN_CONDITION_TEMP', 'DESIGN_CONDITION_PRESS', 'TEST_CONDITION_TEMP', 'TEST_CONDITION_PRESS', 'INSUL_CODE', 'PAINT_CODE', 'NDE_CODE', 'PWHT', 'PNID_NO']
|
|
33 |
self.equipColumnListAll = ['UID', 'ITEM_NO', 'SERVICE', 'NO_REQ', 'FLUID', 'DESC_OF_PART', 'OPERATION_CONDITION_TEMP', 'OPERATION_CONDITION_PRESS', 'DESIGN_CONDITION_TEMP', 'DESIGN_CONDITION_PRESS', 'MATERIAL', 'WEIGHT', 'POWER', 'INSULATION', 'PNID_NO', 'REV']
|
|
34 |
self.valveColumnListAll = ['UID', 'ITEM_NO', 'PNID_NO']
|
|
35 |
self.instColumnListAll = ['UID', 'ITEM_NO', 'SERVICE', 'FLOW_RATE', 'PRESSURE', 'TEMPERATURE', 'TPYE', 'RANGE', 'NOR_LEVEL_MM', 'NOR_LEVEL_PERCENT', 'DEL_PRESS', 'SHUT_OFF', 'LOCATION', 'PNID_NO', 'REV']
|
|
36 |
self.noteColumnListAll = ['UID', 'Note No', 'Description', 'P&ID No']
|
|
37 | 37 |
|
38 | 38 |
self.removeUID = [[], [], [], []] |
39 | 39 |
|
... | ... | |
244 | 244 |
@history Euisung 2018.10.23 added list export order in db |
245 | 245 |
''' |
246 | 246 |
def initTableWidget(self): |
247 |
self.lineColumnList = ['UID', 'LINE_SIZE', 'LINE_SYMBOL', 'LINE_NO', 'LINE_CLASS', 'LINE_ROUTING_FROM', 'LINE_ROUTING_TO', 'SERVICE_FLUID', 'SERVICE_DENSITY', 'SERVICE_STATE', 'OPERATION_CONDITION_TEMP', 'OPERATION_CONDITION_PRESS', 'DESIGN_CONDITION_TEMP', 'DESIGN_CONDITION_PRESS', 'TEST_CONDITION_TEMP', 'TEST_CONDITION_PRESS', 'INSUL_CODE', 'PAINT_CODE', 'NDE_CODE', 'PWHT', 'PNID_NO'] |
|
248 |
self.equipColumnList = ['UID', 'ITEM_NO', 'SERVICE', 'NO_REQ', 'FLUID', 'DESC_OF_PART', 'OPERATION_CONDITION_TEMP', 'OPERATION_CONDITION_PRESS', 'DESIGN_CONDITION_TEMP', 'DESIGN_CONDITION_PRESS', 'MATERIAL', 'WEIGHT', 'POWER', 'INSULATION', 'PNID_NO', 'REV'] |
|
249 |
self.valveColumnList = ['UID', 'ITEM_NO', 'PNID_NO'] |
|
250 |
self.instColumnList = ['UID', 'ITEM_NO', 'SERVICE', 'FLOW_RATE', 'PRESSURE', 'TEMPERATURE', 'TPYE', 'RANGE', 'NOR_LEVEL_MM', 'NOR_LEVEL_PERCENT', 'DEL_PRESS', 'SHUT_OFF', 'LOCATION', 'PNID_NO', 'REV'] |
|
251 |
self.noteColumnList = ['UID', 'Note No', 'Description', 'P&ID No'] |
|
252 |
|
|
253 | 247 |
try: |
254 | 248 |
# 엑셀 추출시 사용할 리스트 오더를 db에서 읽거나 추가 |
255 | 249 |
configs = [] |
256 | 250 |
docData = AppDocData.instance() |
257 |
lineOrder = docData.getConfigs('LINE_DATA_LIST_EXPORT_ORDER') |
|
258 |
equipOrder = docData.getConfigs('EQUIPMENT_DATA_LIST_EXPORT_ORDER') |
|
259 |
valveOrder = docData.getConfigs('VALVE_DATA_LIST_EXPORT_ORDER') |
|
260 |
instOrder = docData.getConfigs('INSTRUMENT_DATA_LIST_EXPORT_ORDER') |
|
261 |
noteOrder = docData.getConfigs('NOTE_DATA_LIST_EXPORT_ORDER') |
|
251 |
lineOrder = docData.getConfigs('LINE_DATA_LIST_EXPORT_ORDER', '1')
|
|
252 |
equipOrder = docData.getConfigs('EQUIPMENT_DATA_LIST_EXPORT_ORDER', '2')
|
|
253 |
valveOrder = docData.getConfigs('VALVE_DATA_LIST_EXPORT_ORDER', '3')
|
|
254 |
instOrder = docData.getConfigs('INSTRUMENT_DATA_LIST_EXPORT_ORDER', '4')
|
|
255 |
noteOrder = docData.getConfigs('NOTE_DATA_LIST_EXPORT_ORDER', '5')
|
|
262 | 256 |
|
263 | 257 |
if len(lineOrder) is 0: |
264 | 258 |
value = '' |
265 |
for header in self.lineColumnList: |
|
259 |
for header in self.lineColumnListAll:
|
|
266 | 260 |
value += (header + self.delimiter) |
261 |
value = value[:-len(self.delimiter)] |
|
267 | 262 |
configs.append(Config('LINE_DATA_LIST_EXPORT_ORDER', '1', value)) |
268 | 263 |
|
269 | 264 |
if len(equipOrder) is 0: |
270 | 265 |
value = '' |
271 |
for header in self.equipColumnList: |
|
266 |
for header in self.equipColumnListAll:
|
|
272 | 267 |
value += (header + self.delimiter) |
268 |
value = value[:-len(self.delimiter)] |
|
273 | 269 |
configs.append(Config('EQUIPMENT_DATA_LIST_EXPORT_ORDER', '2', value)) |
274 | 270 |
|
275 | 271 |
if len(valveOrder) is 0: |
276 | 272 |
value = '' |
277 |
for header in self.valveColumnList: |
|
273 |
for header in self.valveColumnListAll:
|
|
278 | 274 |
value += (header + self.delimiter) |
275 |
value = value[:-len(self.delimiter)] |
|
279 | 276 |
configs.append(Config('VALVE_DATA_LIST_EXPORT_ORDER', '3', value)) |
280 | 277 |
|
281 | 278 |
if len(instOrder) is 0: |
282 | 279 |
value = '' |
283 |
for header in self.instColumnList: |
|
280 |
for header in self.instColumnListAll:
|
|
284 | 281 |
value += (header + self.delimiter) |
282 |
value = value[:-len(self.delimiter)] |
|
285 | 283 |
configs.append(Config('INSTRUMENT_DATA_LIST_EXPORT_ORDER', '4', value)) |
286 | 284 |
|
287 | 285 |
if len(noteOrder) is 0: |
288 | 286 |
value = '' |
289 |
for header in self.noteColumnList: |
|
287 |
for header in self.noteColumnListAll:
|
|
290 | 288 |
value += (header + self.delimiter) |
289 |
value = value[:-len(self.delimiter)] |
|
291 | 290 |
configs.append(Config('NOTE_DATA_LIST_EXPORT_ORDER', '5', value)) |
292 | 291 |
|
293 | 292 |
docData.saveConfigs(configs) |
294 | 293 |
|
294 |
# 기존의 저장한 export order로 header 값을 정함 |
|
295 |
lineOrder = docData.getConfigs('LINE_DATA_LIST_EXPORT_ORDER', '1')[0].value.split(self.delimiter) |
|
296 |
equipOrder = docData.getConfigs('EQUIPMENT_DATA_LIST_EXPORT_ORDER', '2')[0].value.split(self.delimiter) |
|
297 |
valveOrder = docData.getConfigs('VALVE_DATA_LIST_EXPORT_ORDER', '3')[0].value.split(self.delimiter) |
|
298 |
instOrder = docData.getConfigs('INSTRUMENT_DATA_LIST_EXPORT_ORDER', '4')[0].value.split(self.delimiter) |
|
299 |
noteOrder = docData.getConfigs('NOTE_DATA_LIST_EXPORT_ORDER', '5')[0].value.split(self.delimiter) |
|
300 |
|
|
295 | 301 |
except Exception as ex: |
296 | 302 |
print('error occured({}) in {}:{}'.format(ex, sys.exc_info()[-1].tb_frame.f_code.co_filename, sys.exc_info()[-1].tb_lineno)) |
297 | 303 |
from App import App |
... | ... | |
309 | 315 |
|
310 | 316 |
# set table column count |
311 | 317 |
noteTable.setColumnCount(4) |
312 |
self.ui.tableWidgetValveDataList.setColumnCount(3)
|
|
318 |
valveTable.setColumnCount(3)
|
|
313 | 319 |
|
314 | 320 |
# Table Header Label 설정 |
315 |
lineTable.setHorizontalHeaderLabels(self.lineColumnList)
|
|
316 |
equipTable.setHorizontalHeaderLabels(self.equipColumnList)
|
|
317 |
valveTable.setHorizontalHeaderLabels(self.valveColumnList)
|
|
318 |
instTable.setHorizontalHeaderLabels(self.instColumnList)
|
|
319 |
noteTable.setHorizontalHeaderLabels(self.noteColumnList)
|
|
321 |
lineTable.setHorizontalHeaderLabels(lineOrder)
|
|
322 |
equipTable.setHorizontalHeaderLabels(equipOrder)
|
|
323 |
valveTable.setHorizontalHeaderLabels(valveOrder)
|
|
324 |
instTable.setHorizontalHeaderLabels(instOrder)
|
|
325 |
noteTable.setHorizontalHeaderLabels(noteOrder)
|
|
320 | 326 |
|
321 | 327 |
# Table Header 크기 설정 |
322 | 328 |
lineTable.horizontalHeaderItem(1).setSizeHint(QSize(25, 25)) |
323 | 329 |
equipTable.horizontalHeaderItem(1).setSizeHint(QSize(25, 25)) |
324 |
self.ui.tableWidgetValveDataList.horizontalHeaderItem(1).setSizeHint(QSize(25, 25))
|
|
330 |
valveTable.horizontalHeaderItem(1).setSizeHint(QSize(25, 25))
|
|
325 | 331 |
instTable.horizontalHeaderItem(1).setSizeHint(QSize(25, 25)) |
326 | 332 |
noteTable.horizontalHeaderItem(1).setSizeHint(QSize(25, 25)) |
327 | 333 |
|
328 | 334 |
# UID column hide |
329 | 335 |
lineTable.hideColumn(0) |
330 | 336 |
equipTable.hideColumn(0) |
337 |
valveTable.hideColumn(0) |
|
331 | 338 |
instTable.hideColumn(0) |
332 | 339 |
noteTable.hideColumn(0) |
333 | 340 |
|
... | ... | |
685 | 692 |
""" |
686 | 693 |
from ItemDataFormatDialog import QItemDataFormatDialog |
687 | 694 |
|
688 |
item_data_format_dialog = QItemDataFormatDialog(self, self.lineColumnList, self.equipColumnList, self.valveColumnList, self.instColumnList, self.noteColumnList)
|
|
695 |
item_data_format_dialog = QItemDataFormatDialog(self, self.lineColumnListAll, self.equipColumnListAll, self.valveColumnListAll, self.instColumnListAll, self.noteColumnListAll)
|
|
689 | 696 |
item_data_format_dialog.exec_() |
690 | 697 |
|
691 | 698 |
''' |
내보내기 Unified diff