프로젝트

일반

사용자정보

개정판 5fa2697c

ID5fa2697c5a81229a4ec57e6fdeff2620d833ca53
상위 b5265ebb
하위 578a3308

송근호이(가) 약 3년 전에 추가함

issue #000 on_generate_report 함수에서 Excel에 표시된 Loop_Deviation 수정.

차이점 보기:

HYTOS/HYTOS/MainWindow.py
1654 1654
                        """up to here"""
1655 1655

  
1656 1656
                        # Output [Pump, Compressor, Control Valve]
1657
                        ws['X1'].value = 'Loop_Deviation'
1657
                        #ws['X1'].value = 'Loop_Deviation'
1658 1658
                        ws['X1'].font = Font(bold=True, underline='single', size=11)
1659 1659

  
1660
                        loops = app_doc_data.activeDrawing.loops
1661
                        strmsg = None
1662
                        row_no = 2
1663
                        for loop in loops:
1664
                            deviation = loop.deviation
1665
                            if round(deviation, 9) == 0:
1666
                                continue
1667

  
1668
                            for i in range(1, len(loop.items) - 1, 3):
1669
                                if i == 1:
1670
                                    loop_no = loop.name.replace('Loop', '')
1671
                                    if len(loop_no) > 1:
1672
                                        strmsg = '({}) {}'.format(loop_no, loop.items[i].stream_no)
1673
                                    else:
1674
                                        strmsg = '(0{}) {}'.format(loop_no, loop.items[i].stream_no)
1675
                                else:
1676
                                    if len(str(loop.items[i - 1])) > 13 and str(loop.items[i - 1])[:13] == \
1677
                                            'Line_Splitter':
1678
                                        pre_stream_num = loop.items[i - 3].stream_no
1679
                                        cur_stream_num = loop.items[i].stream_no
1680

  
1681
                                        if '-' in strmsg:
1682
                                            last_stream_num = str(strmsg).rsplit('-', 1)[1]
1683
                                        else:
1684
                                            last_stream_num = str(strmsg).rsplit(' ', 1)[1]
1685

  
1686
                                        if pre_stream_num != int(last_stream_num):
1687
                                            strmsg = f'{strmsg}-{pre_stream_num}-{cur_stream_num}'
1688

  
1689
                            last_stream_num = loop.items[len(loop.items) - 2].stream_no
1690
                            strmsg = f'{strmsg}-{last_stream_num}'
1691

  
1692
                            value = f"{strmsg} = {round(deviation, 3)} {units['Pressure']}"
1693
                            tokens = value.split('-')
1694
                            for at in range(0, len(tokens), 20):
1695
                                cell_value = '-'.join(tokens[at: at + 20 if at + 20 < len(tokens) else len(tokens)])
1696
                                if round(deviation, 3) < 0:
1697
                                    ws.cell(row_no, 24, cell_value).font = Font(underline='single', size=10,
1698
                                                                                color='FF0000')
1699
                                elif round(deviation, 3) > 0:
1700
                                    ws.cell(row_no, 24, cell_value).font = Font(size=10)
1701
                                else:
1702
                                    ws.cell(row_no, 24, cell_value).font = Font(underline='single', size=10)
1703
                                row_no += 1
1704

  
1705
                        start_row_no = row_no + 1
1706
                        start_col_no = 24
1707
                        # Pump
1708
                        pumps = []
1709
                        row_no = start_row_no
1710
                        col_no = start_col_no
1711
                        for loop in loops:
1712
                            for item in loop.items:
1713
                                parent = item.parent
1714
                                if parent:
1715
                                    name = str(item).replace(
1716
                                        '_{}'.format(str(item).split('_')[len(str(item).split('_')) - 1]), '')
1717
                                    if name in pumps:
1718
                                        continue
1719
                                    if name[:3] == 'R_P' or name[:3] == 'L_P' or name[:3] == 'V_P':
1720
                                        pumps.append(name)
1721

  
1722
                                        attr = item.parent.attribute
1723
                                        ws.cell(row_no, col_no, attr['Tag_No']).font = Font(bold=True,
1724
                                                                                            underline='single',
1725
                                                                                            size=11)
1726

  
1727
                                        row_no += 1
1728
                                        ws.cell(row_no, col_no, 'Suct.P :')
1729
                                        col_no += 2
1730
                                        ws.cell(row_no, col_no, round(attr['Suct.P'], 3))
1731
                                        col_no += 1
1732
                                        ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1733

  
1734
                                        row_no += 1
1735
                                        col_no = 24 if col_no == 27 else 28
1736
                                        ws.cell(row_no, col_no, 'Disc.P :')
1737
                                        col_no += 2
1738
                                        ws.cell(row_no, col_no, round(attr['Disc.P'], 3))
1739
                                        col_no += 1
1740
                                        ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1741

  
1742
                                        row_no += 1
1743
                                        col_no = 24 if col_no == 27 else 28
1744
                                        ws.cell(row_no, col_no, 'Diff.P :')
1745
                                        col_no += 2
1746
                                        ws.cell(row_no, col_no, round(attr['Diff.P'], 3))
1747
                                        col_no += 1
1748
                                        ws.cell(row_no, col_no, units['Pressure'])
1749

  
1750
                                        row_no += 1
1751
                                        col_no = 24 if col_no == 27 else 28
1752
                                        ws.cell(row_no, col_no, 'Head :')
1753
                                        col_no += 2
1754
                                        ws.cell(row_no, col_no, round(attr['Head'], 3))
1755
                                        col_no += 1
1756
                                        ws.cell(row_no, col_no, units['Length'])
1757

  
1758
                                        row_no += 1
1759
                                        col_no = 24 if col_no == 27 else 28
1760
                                        ws.cell(row_no, col_no, 'NPSHa :')
1761
                                        col_no += 2
1762
                                        ws.cell(row_no, col_no, round(attr['NPSHa'], 3))
1763
                                        col_no += 1
1764
                                        ws.cell(row_no, col_no, units['Length'])
1765

  
1766
                                        row_no += 1
1767
                                        col_no = 24 if col_no == 27 else 28
1768
                                        ws.cell(row_no, col_no, 'Vap. P :')
1769
                                        col_no += 2
1770
                                        ws.cell(row_no, col_no, attr['Vap. P'])
1771
                                        col_no += 1
1772
                                        ws.cell(row_no, col_no, '{}.a'.format(units['Pressure']))
1773

  
1774
                                        row_no += 1
1775
                                        col_no = 24 if col_no == 27 else 28
1776
                                        ws.cell(row_no, col_no, 'HHP :')
1777
                                        col_no += 2
1778
                                        ws.cell(row_no, col_no, round(attr['HHP'], 3))
1779
                                        col_no += 1
1780
                                        ws.cell(row_no, col_no, units['Power'])
1781

  
1782
                                        col_no = 28 if col_no == 27 else 24
1783
                                        row_no = row_no - 7 if col_no == 28 else row_no + 2
1784

  
1785
                        start_row_no += math.ceil(len(pumps)) * 9
1786

  
1787
                        # Compressor
1788
                        compressors = []
1789
                        row_no = start_row_no
1790
                        col_no = start_col_no
1791
                        for loop in loops:
1792
                            for item in loop.items:
1793
                                parent = item.parent
1794
                                if parent:
1795
                                    name = str(item).replace(
1796
                                        '_{}'.format(str(item).split('_')[len(str(item).split('_')) - 1]), '')
1797
                                    if name in compressors:
1798
                                        continue
1799
                                    if name[:3] == 'R_K' or name[:3] == 'L_K':
1800
                                        compressors.append(name)
1801

  
1802
                                        attr = item.parent.attribute
1803
                                        ws.cell(row_no, col_no, attr['Tag_No']).font = Font(bold=True,
1804
                                                                                            underline='single',
1805
                                                                                            size=11)
1806

  
1807
                                        row_no += 1
1808
                                        ws.cell(row_no, col_no, 'Suct.P :')
1809
                                        col_no += 2
1810
                                        ws.cell(row_no, col_no, round(attr['Suct.P'], 3))
1811
                                        col_no += 1
1812
                                        ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1813

  
1814
                                        row_no += 1
1815
                                        col_no = 24 if col_no == 27 else 28
1816
                                        ws.cell(row_no, col_no, 'Disc.P :')
1817
                                        col_no += 2
1818
                                        ws.cell(row_no, col_no, round(attr['Disc.P'], 3))
1819
                                        col_no += 1
1820
                                        ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1821

  
1822
                                        row_no += 1
1823
                                        col_no = 24 if col_no == 27 else 28
1824
                                        ws.cell(row_no, col_no, 'Diff.P :')
1825
                                        col_no += 2
1826
                                        ws.cell(row_no, col_no, round(attr['Diff.P'], 3))
1827
                                        col_no += 1
1828
                                        ws.cell(row_no, col_no, units['Pressure'])
1829

  
1830
                                        row_no += 1
1831
                                        col_no = 24 if col_no == 27 else 28
1832
                                        ws.cell(row_no, col_no, 'HHP :')
1833
                                        col_no += 2
1834
                                        ws.cell(row_no, col_no, round(attr['HHP'], 3))
1835
                                        col_no += 1
1836
                                        ws.cell(row_no, col_no, units['Power'])
1837

  
1838
                                        col_no = 28 if col_no == 27 else 24
1839
                                        row_no = row_no - 4 if col_no == 28 else row_no + 2
1840

  
1841
                        start_row_no += math.ceil(len(compressors)) * 9
1842

  
1843
                        # Control Valve
1844
                        control_valves = []
1845
                        row_no = start_row_no
1846
                        col_no = start_col_no
1847
                        for loop in loops:
1848
                            for item in loop.items:
1849
                                parent = item.parent
1850
                                if parent:
1851
                                    name = str(item).replace(
1852
                                        '_{}'.format(str(item).split('_')[len(str(item).split('_')) - 1]), '')
1853
                                    if name in control_valves:
1854
                                        continue
1855
                                    if name[:3] == 'CV_':
1856
                                        control_valves.append(name)
1857

  
1858
                                        attr = item.parent.attribute
1859
                                        if 'Tag_No' in attr:
1860
                                            ws.cell(row_no, col_no, attr['Tag_No']).font = Font(bold=True,
1861
                                                                                                underline='single',
1862
                                                                                                size=11)
1863

  
1864
                                        row_no += 1
1865
                                        ws.cell(row_no, col_no, 'Inlet P :')
1866
                                        col_no += 2
1867
                                        if 'Suct.P' in attr:
1868
                                            ws.cell(row_no, col_no, round(attr['Suct.P'], 3))
1869
                                        col_no += 1
1870
                                        ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1871

  
1872
                                        row_no += 1
1873
                                        col_no = 24 if col_no == 27 else 28
1874
                                        ws.cell(row_no, col_no, 'Outlet P :')
1875
                                        col_no += 2
1876
                                        if 'Disc.P' in attr:
1877
                                            ws.cell(row_no, col_no, round(attr['Disc.P'], 3))
1878
                                        col_no += 1
1879
                                        ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1880

  
1881
                                        row_no += 1
1882
                                        col_no = 24 if col_no == 27 else 28
1883
                                        ws.cell(row_no, col_no, 'Diff.P :')
1884
                                        col_no += 2
1885
                                        if 'Diff.P' in attr:
1886
                                            ws.cell(row_no, col_no, round(attr['Diff.P'], 3))
1887
                                        col_no += 1
1888
                                        ws.cell(row_no, col_no, units['Pressure'])
1889

  
1890
                                        row_no += 1
1891
                                        col_no = 24 if col_no == 27 else 28
1892
                                        ws.cell(row_no, col_no, 'dP Ratio :')
1893
                                        col_no += 2
1894
                                        if 'dP Ratio' in attr:
1895
                                            ws.cell(row_no, col_no, round(attr['dP Ratio'] * 100, 2))
1896
                                        col_no += 1
1897
                                        ws.cell(row_no, col_no, '%')
1898

  
1899
                                        col_no = 28 if col_no == 27 else 24
1900
                                        row_no = row_no - 4 if col_no == 28 else row_no + 2
1901

  
1902 1660
                        # write hmb unit
1903 1661
                        ws['B55'].value = '-'
1904 1662
                        ws['B56'].value = units['Pipe_Diameter']
......
1928 1686

  
1929 1687
                        page_no += 1
1930 1688

  
1689
                    loops = app_doc_data.activeDrawing.loops
1690
                    strmsg = None
1691
                    row_no = 2
1692
                    page_no = row_no
1693
                    START_COL_NO = 24
1694
                    MAX_ROW_NO = 51
1695
                    sheet_loop_deviations = []
1696
                    ws = self.get_work_sheet(work_book=wb, count=page_no, total_count=MAX_ROW_NO)
1697

  
1698
                    for loop in loops:
1699
                        deviation = loop.deviation
1700
                        if round(deviation, 9) == 0:
1701
                            continue
1702

  
1703
                        if ws not in sheet_loop_deviations:
1704
                            sheet_loop_deviations.append(ws)
1705

  
1706
                        next_ws = self.get_work_sheet(work_book=wb, count=page_no, total_count=MAX_ROW_NO)
1707
                        if ws != next_ws:
1708
                            row_no = 2
1709
                            ws = next_ws
1710
                            if ws not in sheet_loop_deviations:
1711
                                sheet_loop_deviations.append(ws)
1712

  
1713
                        for i in range(1, len(loop.items) - 1, 3):
1714
                            if i == 1:
1715
                                loop_no = loop.name.replace('Loop', '')
1716
                                if len(loop_no) > 1:
1717
                                    strmsg = '({}) {}'.format(loop_no, loop.items[i].stream_no)
1718
                                else:
1719
                                    strmsg = '(0{}) {}'.format(loop_no, loop.items[i].stream_no)
1720
                            else:
1721
                                if len(str(loop.items[i - 1])) > 13 and str(loop.items[i - 1])[:13] == 'Line_Splitter':
1722
                                    pre_stream_num = loop.items[i - 3].stream_no
1723
                                    cur_stream_num = loop.items[i].stream_no
1724
                                    if '-' in strmsg:
1725
                                        last_stream_num = str(strmsg).rsplit('-', 1)[1]
1726
                                    else:
1727
                                        last_stream_num = str(strmsg).rsplit(' ', 1)[1]
1728

  
1729
                                    if pre_stream_num != int(last_stream_num):
1730
                                        strmsg = f'{strmsg}-{pre_stream_num}-{cur_stream_num}'
1731

  
1732
                        last_stream_num = loop.items[len(loop.items) - 2].stream_no
1733
                        strmsg = f'{strmsg}-{last_stream_num}'
1734
                        value = f"{strmsg} = {round(deviation, 3)} {units['Pressure']}"
1735
                        tokens = value.split('-')
1736
                        for at in range(0, len(tokens), 20):
1737
                            cell_value = '-'.join(tokens[at: at + 20 if at + 20 < len(tokens) else len(tokens)])
1738
                            if round(deviation, 3) < 0:
1739
                                ws.cell(row_no, START_COL_NO, cell_value).font = Font(underline='single', size=10, color='FF0000')
1740
                            elif round(deviation, 3) > 0:
1741
                                ws.cell(row_no, START_COL_NO, cell_value).font = Font(size=10)
1742
                            else:
1743
                                ws.cell(row_no, START_COL_NO, cell_value).font = Font(underline='single', size=10)
1744
                            row_no += 1
1745
                            page_no += 1
1746

  
1747
                    start_row_no = row_no + 1
1748
                    start_col_no = START_COL_NO
1749

  
1750
                    # Pump
1751
                    pumps = []
1752
                    row_no = start_row_no
1753
                    col_no = start_col_no
1754
                    for loop in loops:
1755
                        for item in loop.items:
1756
                            parent = item.parent
1757
                            if parent:
1758
                                name = str(item).replace(
1759
                                    '_{}'.format(str(item).split('_')[len(str(item).split('_')) - 1]), '')
1760
                                if name in pumps:
1761
                                    continue
1762
                                if name[:3] == 'R_P' or name[:3] == 'L_P' or name[:3] == 'V_P':
1763

  
1764
                                    next_ws = self.get_work_sheet(work_book=wb, count=page_no, total_count=MAX_ROW_NO)
1765
                                    if ws != next_ws:
1766
                                        row_no = 2
1767
                                        col_no = START_COL_NO
1768
                                        ws = next_ws
1769
                                        if ws not in sheet_loop_deviations:
1770
                                            sheet_loop_deviations.append(ws)
1771
                                    pumps.append(name)
1772

  
1773
                                    attr = item.parent.attribute
1774
                                    ws.cell(row_no, col_no, attr['Tag_No']).font = Font(bold=True,
1775
                                                                                        underline='single',
1776
                                                                                        size=11)
1777

  
1778
                                    row_no += 1
1779
                                    page_no += 1
1780
                                    ws.cell(row_no, col_no, 'Suct.P :')
1781
                                    col_no += 2
1782
                                    ws.cell(row_no, col_no, round(attr['Suct.P'], 3))
1783
                                    col_no += 1
1784
                                    ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1785

  
1786
                                    row_no += 1
1787
                                    page_no += 1
1788
                                    col_no = 24 if col_no == 27 else 28
1789
                                    ws.cell(row_no, col_no, 'Disc.P :')
1790
                                    col_no += 2
1791
                                    ws.cell(row_no, col_no, round(attr['Disc.P'], 3))
1792
                                    col_no += 1
1793
                                    ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1794

  
1795
                                    row_no += 1
1796
                                    page_no += 1
1797
                                    col_no = 24 if col_no == 27 else 28
1798
                                    ws.cell(row_no, col_no, 'Diff.P :')
1799
                                    col_no += 2
1800
                                    ws.cell(row_no, col_no, round(attr['Diff.P'], 3))
1801
                                    col_no += 1
1802
                                    ws.cell(row_no, col_no, units['Pressure'])
1803

  
1804
                                    row_no += 1
1805
                                    page_no += 1
1806
                                    col_no = 24 if col_no == 27 else 28
1807
                                    ws.cell(row_no, col_no, 'Head :')
1808
                                    col_no += 2
1809
                                    ws.cell(row_no, col_no, round(attr['Head'], 3))
1810
                                    col_no += 1
1811
                                    ws.cell(row_no, col_no, units['Length'])
1812

  
1813
                                    row_no += 1
1814
                                    page_no += 1
1815
                                    col_no = 24 if col_no == 27 else 28
1816
                                    ws.cell(row_no, col_no, 'NPSHa :')
1817
                                    col_no += 2
1818
                                    ws.cell(row_no, col_no, round(attr['NPSHa'], 3))
1819
                                    col_no += 1
1820
                                    ws.cell(row_no, col_no, units['Length'])
1821

  
1822
                                    row_no += 1
1823
                                    page_no += 1
1824
                                    col_no = 24 if col_no == 27 else 28
1825
                                    ws.cell(row_no, col_no, 'Vap. P :')
1826
                                    col_no += 2
1827
                                    ws.cell(row_no, col_no, attr['Vap. P'])
1828
                                    col_no += 1
1829
                                    ws.cell(row_no, col_no, '{}.a'.format(units['Pressure']))
1830

  
1831
                                    row_no += 1
1832
                                    page_no += 1
1833
                                    col_no = 24 if col_no == 27 else 28
1834
                                    ws.cell(row_no, col_no, 'HHP :')
1835
                                    col_no += 2
1836
                                    ws.cell(row_no, col_no, round(attr['HHP'], 3))
1837
                                    col_no += 1
1838
                                    ws.cell(row_no, col_no, units['Power'])
1839

  
1840
                                    col_no = 28 if col_no == 27 else 24
1841
                                    row_no = row_no - 7 if col_no == 28 else row_no + 2
1842

  
1843
                    start_row_no += math.ceil(len(pumps)) * 9
1844

  
1845
                    # Compressor
1846
                    compressors = []
1847
                    row_no = start_row_no
1848
                    col_no = start_col_no
1849
                    for loop in loops:
1850
                        for item in loop.items:
1851
                            parent = item.parent
1852
                            if parent:
1853
                                name = str(item).replace(
1854
                                    '_{}'.format(str(item).split('_')[len(str(item).split('_')) - 1]), '')
1855
                                if name in compressors:
1856
                                    continue
1857
                                if name[:3] == 'R_K' or name[:3] == 'L_K':
1858

  
1859
                                    next_ws = self.get_work_sheet(work_book=wb, count=page_no, total_count=MAX_ROW_NO)
1860
                                    if ws != next_ws:
1861
                                        row_no = 2
1862
                                        col_no = START_COL_NO
1863
                                        ws = next_ws
1864
                                        if ws not in sheet_loop_deviations:
1865
                                            sheet_loop_deviations.append(ws)
1866
                                    compressors.append(name)
1867

  
1868
                                    attr = item.parent.attribute
1869
                                    ws.cell(row_no, col_no, attr['Tag_No']).font = Font(bold=True,
1870
                                                                                        underline='single',
1871
                                                                                        size=11)
1872

  
1873
                                    row_no += 1
1874
                                    page_no += 1
1875
                                    ws.cell(row_no, col_no, 'Suct.P :')
1876
                                    col_no += 2
1877
                                    ws.cell(row_no, col_no, round(attr['Suct.P'], 3))
1878
                                    col_no += 1
1879
                                    ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1880

  
1881
                                    row_no += 1
1882
                                    page_no += 1
1883
                                    col_no = 24 if col_no == 27 else 28
1884
                                    ws.cell(row_no, col_no, 'Disc.P :')
1885
                                    col_no += 2
1886
                                    ws.cell(row_no, col_no, round(attr['Disc.P'], 3))
1887
                                    col_no += 1
1888
                                    ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1889

  
1890
                                    row_no += 1
1891
                                    page_no += 1
1892
                                    col_no = 24 if col_no == 27 else 28
1893
                                    ws.cell(row_no, col_no, 'Diff.P :')
1894
                                    col_no += 2
1895
                                    ws.cell(row_no, col_no, round(attr['Diff.P'], 3))
1896
                                    col_no += 1
1897
                                    ws.cell(row_no, col_no, units['Pressure'])
1898

  
1899
                                    row_no += 1
1900
                                    page_no += 1
1901
                                    col_no = 24 if col_no == 27 else 28
1902
                                    ws.cell(row_no, col_no, 'HHP :')
1903
                                    col_no += 2
1904
                                    ws.cell(row_no, col_no, round(attr['HHP'], 3))
1905
                                    col_no += 1
1906
                                    ws.cell(row_no, col_no, units['Power'])
1907

  
1908
                                    col_no = 28 if col_no == 27 else 24
1909
                                    row_no = row_no - 4 if col_no == 28 else row_no + 2
1910

  
1911
                    start_row_no += math.ceil(len(compressors)) * 9
1912

  
1913
                    # Control Valve
1914
                    control_valves = []
1915
                    row_no = start_row_no
1916
                    col_no = start_col_no
1917
                    for loop in loops:
1918
                        for item in loop.items:
1919
                            parent = item.parent
1920
                            if parent:
1921
                                name = str(item).replace(
1922
                                    '_{}'.format(str(item).split('_')[len(str(item).split('_')) - 1]), '')
1923
                                if name in control_valves:
1924
                                    continue
1925
                                if name[:3] == 'CV_':
1926
                                    next_ws = self.get_work_sheet(work_book=wb, count=page_no, total_count=MAX_ROW_NO)
1927
                                    if ws != next_ws:
1928
                                        row_no = 2
1929
                                        col_no = START_COL_NO
1930
                                        ws = next_ws
1931
                                        if ws not in sheet_loop_deviations:
1932
                                            sheet_loop_deviations.append(ws)
1933
                                    control_valves.append(name)
1934

  
1935
                                    attr = item.parent.attribute
1936
                                    if 'Tag_No' in attr:
1937
                                        ws.cell(row_no, col_no, attr['Tag_No']).font = Font(bold=True,
1938
                                                                                            underline='single',
1939
                                                                                            size=11)
1940

  
1941
                                    row_no += 1
1942
                                    page_no += 1
1943
                                    ws.cell(row_no, col_no, 'Inlet P :')
1944
                                    col_no += 2
1945
                                    if 'Suct.P' in attr:
1946
                                        ws.cell(row_no, col_no, round(attr['Suct.P'], 3))
1947
                                    col_no += 1
1948
                                    ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1949

  
1950
                                    row_no += 1
1951
                                    page_no += 1
1952
                                    col_no = 24 if col_no == 27 else 28
1953
                                    ws.cell(row_no, col_no, 'Outlet P :')
1954
                                    col_no += 2
1955
                                    if 'Disc.P' in attr:
1956
                                        ws.cell(row_no, col_no, round(attr['Disc.P'], 3))
1957
                                    col_no += 1
1958
                                    ws.cell(row_no, col_no, '{}.g'.format(units['Pressure']))
1959

  
1960
                                    row_no += 1
1961
                                    page_no += 1
1962
                                    col_no = 24 if col_no == 27 else 28
1963
                                    ws.cell(row_no, col_no, 'Diff.P :')
1964
                                    col_no += 2
1965
                                    if 'Diff.P' in attr:
1966
                                        ws.cell(row_no, col_no, round(attr['Diff.P'], 3))
1967
                                    col_no += 1
1968
                                    ws.cell(row_no, col_no, units['Pressure'])
1969

  
1970
                                    row_no += 1
1971
                                    page_no += 1
1972
                                    col_no = 24 if col_no == 27 else 28
1973
                                    ws.cell(row_no, col_no, 'dP Ratio :')
1974
                                    col_no += 2
1975
                                    if 'dP Ratio' in attr:
1976
                                        ws.cell(row_no, col_no, round(attr['dP Ratio'] * 100, 2))
1977
                                    col_no += 1
1978
                                    ws.cell(row_no, col_no, '%')
1979

  
1980
                                    col_no = 28 if col_no == 27 else 24
1981
                                    row_no = row_no - 4 if col_no == 28 else row_no + 2
1982

  
1983
                    for sheet_loop_deviation in sheet_loop_deviations:
1984
                        sheet_loop_deviation['X1'].value = 'Loop_Deviation'
1985

  
1931 1986
                    current_ws = wb.get_sheet_by_name('Page (1)')
1932 1987
                    # write hmb data
1933 1988
                    drawing = app_doc_data.activeDrawing
......
1939 1994
                        for hmb in _hmbs:
1940 1995
                            if hmb.isDeleted == True:
1941 1996
                                continue
1942

  
1943
                            ws = self.get_work_sheet(wb, stream_count)
1997
                            ws = self.get_work_sheet(work_book =wb,  count= stream_count, total_count = 20)
1944 1998
                            if ws != current_ws:
1945 1999
                                current_ws = ws
1946 2000
                                col_no = 3
......
2275 2329
        ws.cell(35, 30, f"Pressure Drop ({units['Pressure']}/{units['Length']})")  # Pressure Drop
2276 2330
        ws.cell(row_no, 33, units['Pressure'])  # Total
2277 2331

  
2278
    def get_work_sheet(self, work_book, count):
2279
        page_no = math.ceil(count / 20)
2332
    def get_work_sheet(self, work_book, count, total_count):
2333
        page_no = math.ceil(count / total_count)
2280 2334
        return work_book.get_sheet_by_name('Page ({})'.format(page_no))
2281 2335

  
2282 2336
    def display_output(self):

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)