Beispiel #1
0
 def __init__(self, parent, report=False):
     CReportBase.__init__(self, parent)
     if report:
         self.setTitle(u'Сводный реестр услуг')
     else:
         self.setTitle(u'Реестр счёта')
     self.report = report
Beispiel #2
0
    def on_btnPrintSelected_clicked(self):
        tbl = self.tblItems

        model = tbl.model()

        report = CReportBase()
        doc = QtGui.QTextDocument()
        cursor = QtGui.QTextCursor(doc)

        cursor.setCharFormat(CReportBase.ReportTitle)
        cursor.insertText(u'Коды МКБ X\n')
        cursor.insertBlock()
        cursor.setCharFormat(CReportBase.ReportBody)
        cursor.insertText(tbl.reportDescription())
        cursor.insertBlock()

        cols = model.cols()
        colWidths = [tbl.columnWidth(i) for i in xrange(len(cols))]
        colWidths.insert(0, 10)
        totalWidth = sum(colWidths)
        tableColumns = []
        for iCol, colWidth in enumerate(colWidths):
            widthInPercents = str(max(1, colWidth * 90 / totalWidth)) + '%'
            if iCol == 0:
                tableColumns.append(
                    (widthInPercents, [u'№'], CReportBase.AlignRight))
            else:
                col = cols[iCol - 1]
                colAlingment = QtCore.Qt.AlignHorizontal_Mask & forceInt(
                    col.alignment())
                format = QtGui.QTextBlockFormat()
                format.setAlignment(QtCore.Qt.AlignmentFlag(colAlingment))
                tableColumns.append(
                    (widthInPercents, [forceString(col.title())], format))

        table = createTable(cursor, tableColumns)
        for index in tbl.selectedIndexes():
            iModelRow = index.row()
            if index.column():
                continue
            iTableRow = table.addRow()
            table.setText(iTableRow, 0, iModelRow + 1)
            for iModelCol in xrange(len(cols)):
                index = model.createIndex(iModelRow, iModelCol)
                text = forceString(model.data(index))
                table.setText(iTableRow, iModelCol + 1, text)

        html = doc.toHtml(QtCore.QByteArray('utf-8'))

        view = CReportViewDialog(self)
        view.setText(html)
        view.exec_()
Beispiel #3
0
 def __init__(self, parent):
     CReportBase.__init__(self, parent)
     self.setTitle(u'Реестр счёта')
Beispiel #4
0
 def __init__(self, parent):
     CReportBase.__init__(self, parent)
     self.setTitle(u'Список пациентов по реестру')
Beispiel #5
0
 def __init__(self, parent=None):
     CReportBase.__init__(self, parent)
     self.payPeriodVisible = False
     self.workTypeVisible = False
     self.ownershipVisible = False
     self.additionalDescription = u''
Beispiel #6
0
 def __init__(self, parent):
     CReportBase.__init__(self, parent)
     self.setTitle(u'Сводный счёт')
Beispiel #7
0
 def __init__(self, parent):
     CReportBase.__init__(self, parent)
     self.setTitle(u'Отчет по шаблону')
     self._reportEngine = CReportsGeneratorEngine()
     self._reportEngine.setQueryExecuter(QtGui.qApp.db.query)