Пример #1
0
 class band_page_header(ReportBand):
     height = 2.0 * cm
     elements = [
         SystemField(expression='%(report_title)s',
                     top=0.5 * cm,
                     left=0,
                     width=BAND_WIDTH,
                     style={
                         'fontName': 'Helvetica-Bold',
                         'fontSize': 14,
                         'alignment': TA_CENTER
                     }),
         Label(text=_('User ID'), top=1.5 * cm, left=0.5 * cm),
         Label(text=_('Real Name'), top=1.5 * cm, left=6 * cm),
         Label(text=_('Last access'), top=1.5 * cm, left=15 * cm),
         SystemField(expression=_('Page %(page_number)d of %(page_count)d'),
                     top=0.1 * cm,
                     width=BAND_WIDTH,
                     style={'alignment': TA_RIGHT}),
         Image(filename=stock.getStockImagePath(stock.LOGO),
               left=0.1 * cm,
               top=0.0 * cm,
               width=2 * cm,
               height=2 * cm),
     ]
     borders = {'bottom': True}
Пример #2
0
 class band_page_header(ReportBand):
     height = 1.3 * cm
     elements = [
         Image(
             top=0.1 * cm,
             left=0,
             width=2.0 * cm,
             height=2.0 * cm,
             filename=os.path.join(
                 RUTA,
                 '../PTACOCOMET/static/SysWeb/ACOCOMET-rpthumbnail.PNG'),
         ),
         SystemField(expression='%(report_title)s',
                     top=0.1 * cm,
                     left=0,
                     width=BAND_WIDTH,
                     style={
                         'fontName': 'Helvetica-Bold',
                         'fontSize': 14,
                         'alignment': TA_CENTER
                     }),
         Label(text='Cooperatíva Financiera Única',
               top=0.8 * cm,
               left=0,
               width=BAND_WIDTH,
               style={
                   'fontName': 'Helvetica-Bold',
                   'fontSize': 10,
                   'alignment': TA_CENTER
               }),
     ]
     borders = {'bottom': True}
Пример #3
0
 class band_page_header(ReportBand):
     height = 1.5 * cm
     elements = [
         Image(left=0.4 * cm,
               top=0,
               width=4 * cm,
               height=5.12 * cm,
               filename=os.path.join(RUTA_PROYECTO,
                                     '../control/escom.gif')),
         SystemField(expression='%(report_title)s',
                     top=0.1 * cm,
                     left=0,
                     width=BAND_WIDTH,
                     style={
                         'fontName': 'Helvetica-Bold',
                         'fontSize': 21,
                         'alignment': TA_CENTER
                     }),
         Label(text="Escuela Superior de Cómputo",
               top=0.8 * cm,
               left=0,
               width=BAND_WIDTH,
               style={
                   'fontName': 'Helvetica-Bold',
                   'fontSize': 16,
                   'alignment': TA_CENTER
               }),
         SystemField(expression=u'Pagina %(page_number)d de %(page_count)d',
                     top=0.1 * cm,
                     width=BAND_WIDTH,
                     style={'alignment': TA_RIGHT}),
     ]
     borders = {'bottom': Line(stroke_width=5)}
Пример #4
0
    class band_page_header(ReportBand):

        height = 1.3 * cm
        elements = [
            Image(left=1 * cm,
                  top=0.1 * cm,
                  right=10 * cm,
                  bottom=0.5 * cm,
                  filename=os.path.join(
                      cur_dir, '../main/static/images/intouchlogo.png')),
            SystemField(expression='%(report_title)s',
                        top=0.1 * cm,
                        left=0,
                        width=BAND_WIDTH,
                        style={
                            'fontName': 'Calibri',
                            'fontSize': 14,
                            'alignment': TA_CENTER
                        }),
            # SystemField(expression=u'Page %(page_number)d of %(page_count)d', top=0.1*cm,
            #     width=BAND_WIDTH, style={'alignment': TA_RIGHT}),
            # Label(text="Name", top=0.8*cm, left=0.5*cm),
            # Label(text="Age", top=0.8*cm, left=5*cm),
            # Label(text="Weight", top=0.8*cm, left=6.5*cm),
        ]
Пример #5
0
    class Header(ReportBand):
        height = 3.4 * cm
        borders = {'bottom': False}
        elements = [
            SystemField(expression='%(report_title)s',
                        top=1.9 * cm,
                        left=0,
                        width=BAND_WIDTH,
                        style={
                            'fontName': 'Helvetica',
                            'fontSize': 12,
                            'alignment': TA_CENTER
                        }),
            SystemField(expression='Page %(page_number)d of %(page_count)d',
                        top=0.7 * cm,
                        width=BAND_WIDTH,
                        style={
                            'fontName': 'Helvetica',
                            'fontSize': 8,
                            'alignment': TA_RIGHT
                        }),
            SystemField(expression='Printed in %(now:%d/%m/%Y %H:%M)s ',
                        top=0.2 * cm,
                        width=BAND_WIDTH,
                        style={
                            'fontName': 'Helvetica',
                            'fontSize': 8,
                            'alignment': TA_RIGHT
                        }),
        ]

        if clinic_info:
            elements.append(
                Label(text="%s" % organization,
                      top=0.9 * cm,
                      left=0,
                      width=BAND_WIDTH,
                      style={
                          'fontName': 'Helvetica-Bold',
                          'fontSize': 14,
                          'alignment': TA_CENTER
                      }))
            if len(organization.photo):
                elements.append(
                    Image(left=0.1 * cm, top=0.1 * cm, filename=imagefile))

        if header_line:
            elements.append(
                Line(left=0.0 * cm,
                     right=19 * cm,
                     top=3.3 * cm,
                     bottom=3.3 * cm))
Пример #6
0
 class band_summary(ReportBand):
     height = 0.5 * cm
     elements = [
         Label(text=u"每日访问量、各服务器访问状况 、客户端分布状况:",
               top=2.5 * cm,
               left=0,
               width=BAND_WIDTH),
         Image(left=0 * cm,
               top=0.3 * cm,
               width=25 * cm,
               filename=os.path.join(cur_dir,
                                     '../charts/output/DateNum_wave.jpg')),
         #Image(left=0*cm, top=6.6*cm, width=19*cm,  filename=os.path.join(cur_dir, '../charts/output/DateNum_hist.jpg')),
         Label(text=u"用户访问时序流图: Not Implemented! ",
               top=14 * cm,
               left=0 * cm,
               width=BAND_WIDTH),
         Image(left=0 * cm,
               top=11.6 * cm,
               width=25 * cm,
               filename=os.path.join(cur_dir,
                                     '../charts/output/DateNum_hist.jpg')),
     ]
Пример #7
0
	class band_page_header(ReportBand):
            height = 1.5*cm
            elements = [ Image(left=0.4*cm, top=0, width=4*cm, height=5.12*cm,
						filename= os.path.join(RUTA_PROYECTO,'../Alumno/escom.gif')),
                        SystemField(expression='%(report_title)s', top=0.1*cm, left=0, width=BAND_WIDTH,
                        style={'fontName': 'Helvetica-Bold', 'fontSize': 21, 'alignment': TA_CENTER}),
						Label(text="Escuela Superior de Cómputo", top=0.8*cm, left=0,width=BAND_WIDTH,
                        style={'fontName': 'Helvetica-Bold', 'fontSize': 16, 'alignment': TA_CENTER}),
                        
						Label(text="Clave", top=6.6*cm, left=0.2*cm, width=1.5*cm, style={'fontName': 'Helvetica-Bold', 'fontSize':8}),
                        Label(text="Materia", top=6.6*cm, left=2*cm, width=1.5*cm, style={'fontName': 'Helvetica-Bold', 'fontSize':8}),
                        Label(text="Periodo", top=6.6*cm, left=6.0*cm, width=1.5*cm, style={'fontName': 'Helvetica-Bold', 'fontSize':8}),
                        Label(text="Evaluación", top=6.6*cm, left=8.0*cm, width=1.5*cm, style={'fontName': 'Helvetica-Bold', 'fontSize':8}),
                        Label(text="Calificación", top=6.6*cm, left=10*cm, width=1.5*cm, style={'fontName': 'Helvetica-Bold', 'fontSize':8}),
                        ]
Пример #8
0
    class band_page_header(ReportBand):
        height = 1.5*cm
        elements = [ Image(left=0.4*cm, top=0, width=4*cm, height=5.12*cm,
                    filename= os.path.join(RUTA_PROYECTO,'../media/img/escom.gif')),


                    SystemField(expression='%(report_title)s', top=0.1*cm, left=0, width=BAND_WIDTH,
                        style={'fontName': 'Helvetica-Bold', 'fontSize': 21, 'alignment': TA_CENTER}),
                    Label(text="Escuela Superior de Cómputo", top=0.8*cm, left=0,width=BAND_WIDTH,
                        style={'fontName': 'Helvetica-Bold', 'fontSize': 16, 'alignment': TA_CENTER}),

                    Label(text="Nombre", top=7*cm, left=3*cm, width=1.5*cm, style={'fontName': 'Helvetica-Bold', 'fontSize':8 ,'borderWidth': 1, 'borderColor': navy,
                    'borderPadding': 1, 'borderRadius': 2}),
                    Label(text="Boleta", top=7*cm, left=0.5*cm,width=1.5*cm,style={'fontName': 'Helvetica-Bold', 'fontSize':8,'borderWidth': 1, 'borderColor': navy,
                    'borderPadding': 1, 'borderRadius': 2}),
                    Label(text="Calificación", top=7*cm, left=8*cm,width=1.5*cm,style={'fontName': 'Helvetica-Bold', 'fontSize':8,'borderWidth': 1, 'borderColor': navy,
                    'borderPadding': 1, 'borderRadius': 2}),

                    SystemField(expression=u'Pagina %(page_number)d de %(page_count)d', top=0.1*cm,
                        width=BAND_WIDTH, style={'alignment': TA_RIGHT}),
                    ]
        borders = {'bottom': Line(stroke_width=5)}
Пример #9
0
 class band_page_header(ReportBand):
     height = 1.5 * cm
     elements = [
         Image(left=0.4 * cm,
               top=0,
               width=4 * cm,
               height=5.12 * cm,
               filename=os.path.join(RUTA_PROYECTO, '../Alumno/escom.gif')),
         SystemField(expression='%(report_title)s',
                     top=0.1 * cm,
                     left=0,
                     width=BAND_WIDTH,
                     style={
                         'fontName': 'Helvetica-Bold',
                         'fontSize': 21,
                         'alignment': TA_CENTER
                     }),
         Label(text="Escuela Superior de Cómputo",
               top=0.8 * cm,
               left=0,
               width=BAND_WIDTH,
               style={
                   'fontName': 'Helvetica-Bold',
                   'fontSize': 16,
                   'alignment': TA_CENTER
               }),
         Label(
             text=
             "SUBDIRECCIÓN DE SERVICIOS EDUCATIVOS E INTEGRACIÓN SOCIAL DEPARTAMENTO DE GESTIÓN ESCOLAR",
             top=2.5 * cm,
             left=0,
             width=BAND_WIDTH,
             style={
                 'fontName': 'Helvetica-Bold',
                 'fontSize': 8,
                 'alignment': TA_CENTER
             }),
     ]
Пример #10
0
    def dados_emitente_logo_vertical(self, arquivo_imagem):
        elements = []

        #
        # Dados do remetente
        #
        img = Image()
        img.top = 0.1*cm
        img.left = 0.1*cm
        #
        # Tamanhos equilaventes, em centímetros, a 2,5 x 3,8, em 128 dpi
        # estranhamente, colocar os tamanhos em centímetros encolhe a imagem
        #
        img.width = 116
        img.height = 191
        img.filename = arquivo_imagem
        elements.append(img)

        fld = Campo()
        fld.nome  = 'fld_rem_nome'
        fld.attribute_name = u'NFe.infNFe.emit.xNome.valor'
        fld.top   = 0.2*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 1.5*cm
        fld.style = EMIT_NOME
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_1'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_1'
        fld.top   = 1.4*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_2'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_2'
        fld.top   = 2.2*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_3'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_3'
        fld.top   = 3*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_4'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_4'
        fld.top   = 3.4*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        return elements
Пример #11
0
    def dados_emitente_logo_horizontal(self, arquivo_imagem):
        elements = []

        #
        # Dados do remetente
        #
        img = Image()

        img.top = 0.1*cm
        img.left = 0.1*cm
        #
        # Tamanhos equilaventes, em centímetros, a 3,8 x 2,5, em 128 dpi
        # estranhamente, colocar os tamanhos em centímetros encolhe a imagem
        #
        img.width = 191
        img.height = 116
        img.filename = arquivo_imagem

        elements.append(img)

        fld = Campo()
        fld.nome  = 'fld_rem_nome'
        fld.attribute_name = u'NFe.infNFe.emit.xNome.valor'
        fld.top   = 0.2*cm
        fld.left  = 4*cm
        fld.width = 4*cm
        fld.height = 1.4*cm
        fld.style = EMIT_NOME
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_3'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_3'
        fld.top   = 3.5*cm
        fld.left  = 2*cm
        fld.width = 4*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_4'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_4'
        fld.top   = 2.05*cm
        fld.left  = 4*cm
        fld.width = 4*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_1'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_1'
        fld.top   = 2.5*cm
        fld.left  = 0*cm
        fld.width = 8*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_2'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_2'
        fld.top   = 3.2*cm
        fld.left  = 0*cm
        fld.width = 8*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)


        return elements
Пример #12
0
    class band_detail(ReportBand):

        elements = [
            # LOGO
            Image(left=0 * cm,
                  top=0 * cm,
                  width=12 * cm,
                  height=6 * cm,
                  style={'alignment': TA_LEFT},
                  filename=os.path.join(cur_dir, 'static/kasa/img/logo6.jpg')),

            # TVRTKA
            ObjectValue(attribute_name='operater',
                        get_value=lambda x: '{x.operater.tvrtka}'.format(x=x),
                        width=17 * cm,
                        top=0.3 * cm,
                        style={'alignment': TA_RIGHT}),
            ObjectValue(
                attribute_name='operater',
                get_value=lambda x: '{x.operater.tvrtka.adresa}'.format(x=x),
                width=17 * cm,
                top=0.8 * cm,
                style={'alignment': TA_RIGHT}),
            ObjectValue(
                attribute_name='operater',
                get_value=lambda x: 'OIB:{x.operater.tvrtka.oib}'.format(x=x),
                width=17 * cm,
                top=1.3 * cm,
                style={'alignment': TA_RIGHT}),
            ObjectValue(attribute_name='operater',
                        get_value=lambda x: 'IBAN: {x.operater.tvrtka.iban}'.
                        format(x=x) if x.operater.tvrtka.iban else "",
                        width=17 * cm,
                        top=1.8 * cm,
                        style={'alignment': TA_RIGHT}),

            # KUPAC
            ObjectValue(attribute_name='kupac', top=3.2 * cm),
            ObjectValue(attribute_name='kupac',
                        get_value=lambda x: '{x.kupac.adresa}'.format(x=x),
                        top=3.7 * cm),
            ObjectValue(attribute_name='kupac',
                        get_value=lambda x: 'OIB: {x.kupac.oib}'.format(x=x),
                        top=4.2 * cm),
            # Label(text='OIB: 48531576841', top=5.1*cm),
            ObjectValue(attribute_name='vrijeme_izdavanja',
                        get_value=lambda x: x.vrijeme_izdavanja.strftime(
                            'Datum: %d/%m/%Y'),
                        top=4.8 * cm,
                        width=5 * cm,
                        left=12.5 * cm,
                        style={'alignment': TA_LEFT}),
            ObjectValue(attribute_name='vrijeme_izdavanja',
                        get_value=lambda x: x.vrijeme_izdavanja.strftime(
                            'Vrijeme: %H:%M'),
                        top=5.3 * cm,
                        width=5 * cm,
                        left=12.5 * cm,
                        style={'alignment': TA_LEFT}),
            ObjectValue(get_value=lambda x:
                        'Vrsta plaćanja: {x.opis_nacina_placanja}'.format(x=x),
                        top=5.8 * cm,
                        width=5 * cm,
                        left=12.5 * cm,
                        style={'alignment': TA_LEFT}),
            ObjectValue(get_value=lambda x: 'Račun {x.oznaka}'.format(x=x),
                        top=5.8 * cm,
                        width=17 * cm,
                        style={
                            'alignment': TA_LEFT,
                            'fontSize': 12
                        }),
            Label(text='R.br.',
                  top=7 * cm,
                  style={
                      'fontName': 'Helvetica-Bold',
                      'fontSize': 10
                  }),
            Label(text='Naziv',
                  top=7 * cm,
                  left=1.5 * cm,
                  style={
                      'fontName': 'Helvetica-Bold',
                      'fontSize': 10
                  }),
            Label(text='Jed.cijena',
                  top=7 * cm,
                  left=7 * cm,
                  style={
                      'fontName': 'Helvetica-Bold',
                      'fontSize': 10
                  }),
            Label(text='Količina',
                  top=7 * cm,
                  left=10 * cm,
                  style={
                      'fontName': 'Segoe UI Bold',
                      'fontSize': 10
                  }),
            Label(text='Ukupna cijena',
                  top=7 * cm,
                  width=17 * cm,
                  style={
                      'alignment': TA_RIGHT,
                      'fontName': 'Helvetica-Bold',
                      'fontSize': 10
                  }),
            Line(
                top=25 * cm,
                left=0.0 * cm,
                right=17 * cm,
                bottom=25 * cm,
                stroke_width=0.8,
            ),
            Label(text='Fiskali d.o.o.',
                  top=25.2 * cm,
                  width=17 * cm,
                  style={
                      'alignment': TA_CENTER,
                      'fontSize': 10
                  }),
            Label(text='Telefon: 023 300 201 E-mail: [email protected]',
                  top=25.6 * cm,
                  width=17 * cm,
                  style={
                      'alignment': TA_CENTER,
                      'fontSize': 10
                  }),
        ]
Пример #13
0
    class band_begin(ReportBand):
        height = 20.1 * cm
        elements = [

            # Write the outline for this whole document.
            Label(text=u"目录",
                  top=0.2 * cm,
                  left=0 * cm,
                  width=BAND_WIDTH,
                  style={
                      "alignment": TA_CENTER,
                      "fontSize": 14
                  }),
            Label(
                text=
                u"I: 全局基本概况.............................................................................................................................................................1",
                top=1.0 * cm,
                left=0.5 * cm,
                width=BAND_WIDTH,
                style={"fontName": 'wqy'}),
            Label(
                text=
                u"II: 服务器访问状况........................................................................................................................................................2",
                top=1.6 * cm,
                left=0.5 * cm,
                width=BAND_WIDTH),
            Label(
                text=
                u"III: 用户分布状况..........................................................................................................................................................3",
                top=2.2 * cm,
                left=0.5 * cm,
                width=BAND_WIDTH),
            Label(
                text=
                u"VI: 客户端分布状况.......................................................................................................................................................4",
                top=2.8 * cm,
                left=0.5 * cm,
                width=BAND_WIDTH),
            Label(
                text=
                u"V: 用户-服务器访问流分析............................................................................................................................................5",
                top=3.4 * cm,
                left=0.5 * cm,
                width=BAND_WIDTH),

            # Draw the User Dist in Japan.
            Image(left=0 * cm,
                  top=4.0 * cm,
                  filename=os.path.join(
                      cur_dir,
                      '../charts/output/distribution_of_users_in_japan.jpg')),

            # Line Separator.
            Line(left=0 * cm, top=4.1 * cm, bottom=4.1 * cm, right=19 * cm),

            # Data structure
            Label(text="Total visit", top=4.2 * cm, left=0),
            Label(text="Test visit", top=4.2 * cm, left=3 * cm),
            Label(text="Real visit", top=4.2 * cm, left=6 * cm),

            # Write the Global Data.
            Label(text=global_stat[0], top=4.7 * cm, left=0),
            Label(text=global_stat[1], top=4.7 * cm, left=3 * cm),
            Label(text=global_stat[2], top=4.7 * cm, left=6 * cm),
        ]
        borders = {'bottom': True}
Пример #14
0
 class band_page_header(ReportBand):
     height = 0.5 * cm
     elements = [
         Image(left=0.5 * cm,
               top=0.1 * cm,
               width=4 * cm,
               height=5.12 * cm,
               filename=os.path.join(
                   cur_dir, '../main/static/images/intouchlogo.png')),
         Label(text='<b>intouch</b>',
               top=0.8 * cm,
               left=2.8 * cm,
               width=BAND_WIDTH,
               style={
                   'alignment': TA_LEFT,
                   'fontName': 'Candara-Bold',
                   'fontSize': 18
               }),
         Label(text='<b>COMMUNICATIONS</b>',
               top=1.5 * cm,
               left=2.8 * cm,
               width=BAND_WIDTH,
               style={
                   'alignment': TA_LEFT,
                   'fontName': 'Candara-Bold',
                   'fontSize': 10
               }),
         Label(text='<b>Intouch Communications Ltd</b>',
               top=2.2 * cm,
               width=BAND_WIDTH,
               left=22.6 * cm,
               style={
                   'fontName': 'Candara-Bold',
                   'fontSize': 9
               }),
         Label(text='<b>3rd Floor, Prince House, Remera</b>',
               top=2.6 * cm,
               width=BAND_WIDTH,
               left=22.2 * cm,
               style={
                   'fontName': 'Candara-Bold',
                   'fontSize': 9
               }),
         Label(text='<b>Tel 1: +(250)-788-304-441,</b>',
               top=3 * cm,
               width=BAND_WIDTH,
               left=23.3 * cm,
               style={
                   'fontName': 'Candara-Bold',
                   'fontSize': 9
               }),
         Label(text='<b>Tel 1: +(250)-785-971-082</b>',
               top=3.4 * cm,
               width=BAND_WIDTH,
               left=23.4 * cm,
               style={
                   'fontName': 'Candara-Bold',
                   'fontSize': 9
               }),
         Label(text='<b>TIN: 102830733</b>',
               top=3.8 * cm,
               width=BAND_WIDTH,
               left=24.6 * cm,
               style={
                   'fontName': 'Candara-Bold',
                   'fontSize': 9
               }),
         # Label(text='<b>Intouch Communications Ltd</b>', top=0.2*cm, width=BAND_WIDTH,style={'alignment':TA_RIGHT,'fontName': 'Candara-Bold','fontSize':9}),
         # Label(text='<b>3rd Floor, Prince House, Remera</b>', top=0.6*cm, width=BAND_WIDTH, style={'alignment':TA_RIGHT, 'fontName': 'Candara-Bold', 'fontSize':9}),
         # Label(text='<b>Tel 1: +(250)-788-304-441,</b>', top=1*cm, width=BAND_WIDTH, style={'alignment':TA_RIGHT, 'fontName': 'Candara-Bold', 'fontSize':9}),
         # Label(text='<b>Tel 1: +(250)-785-971-082</b>', top=1.4*cm, width=BAND_WIDTH, style={'alignment':TA_RIGHT, 'fontName': 'Candara-Bold', 'fontSize':9}),
         # Label(text='<b>TIN: 102830733</b>', top=1.8*cm, width=BAND_WIDTH, style={'alignment':TA_RIGHT, 'fontName': 'Candara-Bold', 'fontSize':9}),
         # SystemField(expression= '%(report_title)s', top=0.1*cm, left=0, width=BAND_WIDTH,
         #   style={'fontName' : 'Helvetica', 'fontSize' : 10, 'alignment' : TA_CENTER}
         #   )
     ]
Пример #15
0
    def __init__(self):
        super(CabecalhoRetrato, self).__init__()
        self.elements = []

        # Quadro do emitente
        self.inclui_texto(nome='quadro_emitente', titulo='', texto='', top=0*cm, left=0*cm, width=15.4*cm, height=2.3*cm)

        #
        # Área central - Dados do DANFE
        #
        txt = self.inclui_texto_sem_borda(nome='prefeitura', texto='Prefeitura de Sorocaba', top=0*cm, left=3*cm, width=12.4*cm, height=0.5*cm)
        txt.style = DESCRITIVO_DANFE

        txt = self.inclui_texto_sem_borda(nome='secretaria', texto='Secretaria de Finanças', top=0.75*cm, left=3*cm, width=12.4*cm, height=0.5*cm)
        txt.style = DESCRITIVO_DANFE

        txt = self.inclui_texto_sem_borda(nome='rps', texto='RECIBO PROVISÓRIO DE SERVIÇOS - RPS', top=1.5*cm, left=3*cm, width=12.4*cm, height=0.5*cm)
        txt.style = DESCRITIVO_DANFE

        lbl, fld = self.inclui_campo_numerico(nome='numero_rps', titulo='Número do RPS', conteudo='RPS.numero_formatado', top=0*cm, left=15.4*cm, width=4*cm, height=(2.3/2)*cm, margem_direita=True)

        lbl, fld = self.inclui_campo(nome='data_rps', titulo='Data de Emissão do RPS', conteudo='RPS.DataEmissaoRPS.valor', top=(2.3/2)*cm, left=15.4*cm, width=4*cm, height=(2.3/2)*cm, margem_direita=True)

        #
        # Dados do remetente
        #
        img = Image()
        img.top = 5
        img.left = 9
        #
        # Tamanhos equilaventes, em centímetros, a 3,0 x 2,2, em 128 dpi
        # estranhamente, colocar os tamanhos em centímetros encolhe a imagem
        #
        img.width = 133
        img.height = 98
        img.filename = 'logotipo_prefeitura/sp-sorocaba.jpeg'
        self.elements.append(img)


        #txt = self.inclui_texto_sem_borda(nome='danfe_ext', texto=u'DOCUMENTO AUXILIAR DA NOTA FISCAL ELETRÔNICA', top=0.6*cm, left=8*cm, width=3.4*cm, *cm)height=4*cm)
        #txt.style = DESCRITIVO_DANFE_GERAL

        #txt = self.inclui_texto_sem_borda(nome='danfe_entrada', texto=u'0 - ENTRADA', top=1.45*cm, left=8.3*cm, width=3.4*cm, height=4*cm)
        #txt.style = DESCRITIVO_DANFE_ES

        #txt = self.inclui_texto_sem_borda(nome='danfe_saida', texto=u'1 - SAÍDA', top=1.85*cm, left=8.3*cm, width=3.4*cm, height=4*cm)
        #txt.style = DESCRITIVO_DANFE_ES

        #fld = self.inclui_campo_sem_borda(nome='danfe_entrada_saida', conteudo=u'NFe.infNFe.ide.tpNF.valor', top=1.6*cm, left=10.4*cm, width=0.6*cm, height=0.6*cm)
        #fld.style = DESCRITIVO_NUMERO
        #fld.borders = {'top': 0.1, 'right': 0.1, 'bottom': 0.1, 'left': 0.1}
        #fld.padding_bottom = 0.2*cm

        #fld = self.inclui_campo_sem_borda(nome='danfe_numero', conteudo=u'NFe.numero_formatado', top=2.4*cm, left=8*cm, width=3.4*cm, height=0.5*cm)
        #fld.style = DESCRITIVO_NUMERO

        #fld = self.inclui_campo_sem_borda(nome='danfe_serie', conteudo=u'NFe.serie_formatada', top=2.85*cm, left=8*cm, width=3.4*cm, height=0.5*cm)
        #fld.style = DESCRITIVO_NUMERO

        #fld = SystemField(name='fld_danfe_folha', expression=u'FOLHA %(page_number)02d/%(page_count)02d', top=3.3*cm, left=8*cm, width=3.4*cm, height=0.5*cm)
        #fld.padding_top = 0.1*cm
        #fld.style = DESCRITIVO_NUMERO
        #self.elements.append(fld)

        ##
        ## No caso dos códigos de barra, altura (height) e largura (width) se referem às barras, não à imagem
        ##
        #self.elements.append(Line(top=0*cm, bottom=0*cm, left=11.4*cm, right=19.4*cm, stroke_width=0.1))
        #self.elements.append(BarCode(type=u'Code128', attribute_name=u'NFe.chave_para_codigo_barras', top=((1.625-0.8)/2.0)*cm, left=11.3*cm, width=0.025*cm, height=0.8*cm))

        #lbl, fld = self.inclui_campo(nome='remetente_chave', titulo=u'CHAVE DE ACESSO', conteudo=u'NFe.chave_formatada', top=1.625*cm, left=11.4*cm, width=8*cm, margem_direita=True)
        #fld.style = DADO_CHAVE

        #self.inclui_campo(nome='remetente_natureza', titulo=u'NATUREZA DA OPERAÇÃO', conteudo=u'NFe.infNFe.ide.natOp.valor', top=4*cm, left=0*cm, width=11.4*cm)

        #self.inclui_campo(nome='remetente_ie', titulo=u'INSCRIÇÃO ESTADUAL', conteudo=u'NFe.infNFe.emit.IE.valor', top=4.70*cm, left=0*cm, width=6.4*cm)
        #self.inclui_campo(nome='remetente_iest', titulo=u'INSCRIÇÃO ESTADUAL DO SUBSTITUTO TRIBUTÁRIO', conteudo=u'NFe.infNFe.emit.IEST.valor', top=4.70*cm, left=6.4*cm, width=6.6*cm)
        #self.inclui_campo(nome='remetente_cnpj', titulo=u'CNPJ', conteudo=u'NFe.cnpj_emitente_formatado', top=4.70*cm, left=13*cm, width=6.4*cm, margem_direita=True)

        self.height = 2.3*cm
Пример #16
0
    def __init__(self):
        super(CabecalhoRetrato, self).__init__()
        self.elements = []

        # Quadro do emitente
        self.inclui_texto(nome='quadro_emitente',
                          titulo='',
                          texto='',
                          top=0 * cm,
                          left=0 * cm,
                          width=15.4 * cm,
                          height=2.3 * cm)

        #
        # Área central - Dados do DANFE
        #
        txt = self.inclui_texto_sem_borda(nome='prefeitura',
                                          texto='Prefeitura de Sorocaba',
                                          top=0 * cm,
                                          left=3 * cm,
                                          width=12.4 * cm,
                                          height=0.5 * cm)
        txt.style = DESCRITIVO_DANFE

        txt = self.inclui_texto_sem_borda(nome='secretaria',
                                          texto='Secretaria de Finanças',
                                          top=0.75 * cm,
                                          left=3 * cm,
                                          width=12.4 * cm,
                                          height=0.5 * cm)
        txt.style = DESCRITIVO_DANFE

        txt = self.inclui_texto_sem_borda(
            nome='rps',
            texto='RECIBO PROVISÓRIO DE SERVIÇOS - RPS',
            top=1.5 * cm,
            left=3 * cm,
            width=12.4 * cm,
            height=0.5 * cm)
        txt.style = DESCRITIVO_DANFE

        lbl, fld = self.inclui_campo_numerico(nome='numero_rps',
                                              titulo='Número do RPS',
                                              conteudo='RPS.numero_formatado',
                                              top=0 * cm,
                                              left=15.4 * cm,
                                              width=4 * cm,
                                              height=(2.3 / 2) * cm,
                                              margem_direita=True)

        lbl, fld = self.inclui_campo(nome='data_rps',
                                     titulo='Data de Emissão do RPS',
                                     conteudo='RPS.DataEmissaoRPS.valor',
                                     top=(2.3 / 2) * cm,
                                     left=15.4 * cm,
                                     width=4 * cm,
                                     height=(2.3 / 2) * cm,
                                     margem_direita=True)

        #
        # Dados do remetente
        #
        img = Image()
        img.top = 5
        img.left = 9
        #
        # Tamanhos equilaventes, em centímetros, a 3,0 x 2,2, em 128 dpi
        # estranhamente, colocar os tamanhos em centímetros encolhe a imagem
        #
        img.width = 133
        img.height = 98
        img.filename = 'logotipo_prefeitura/sp-sorocaba.jpeg'
        self.elements.append(img)

        #txt = self.inclui_texto_sem_borda(nome='danfe_ext', texto=u'DOCUMENTO AUXILIAR DA NOTA FISCAL ELETRÔNICA', top=0.6*cm, left=8*cm, width=3.4*cm, *cm)height=4*cm)
        #txt.style = DESCRITIVO_DANFE_GERAL

        #txt = self.inclui_texto_sem_borda(nome='danfe_entrada', texto=u'0 - ENTRADA', top=1.45*cm, left=8.3*cm, width=3.4*cm, height=4*cm)
        #txt.style = DESCRITIVO_DANFE_ES

        #txt = self.inclui_texto_sem_borda(nome='danfe_saida', texto=u'1 - SAÍDA', top=1.85*cm, left=8.3*cm, width=3.4*cm, height=4*cm)
        #txt.style = DESCRITIVO_DANFE_ES

        #fld = self.inclui_campo_sem_borda(nome='danfe_entrada_saida', conteudo=u'NFe.infNFe.ide.tpNF.valor', top=1.6*cm, left=10.4*cm, width=0.6*cm, height=0.6*cm)
        #fld.style = DESCRITIVO_NUMERO
        #fld.borders = {'top': 0.1, 'right': 0.1, 'bottom': 0.1, 'left': 0.1}
        #fld.padding_bottom = 0.2*cm

        #fld = self.inclui_campo_sem_borda(nome='danfe_numero', conteudo=u'NFe.numero_formatado', top=2.4*cm, left=8*cm, width=3.4*cm, height=0.5*cm)
        #fld.style = DESCRITIVO_NUMERO

        #fld = self.inclui_campo_sem_borda(nome='danfe_serie', conteudo=u'NFe.serie_formatada', top=2.85*cm, left=8*cm, width=3.4*cm, height=0.5*cm)
        #fld.style = DESCRITIVO_NUMERO

        #fld = SystemField(name='fld_danfe_folha', expression=u'FOLHA %(page_number)02d/%(page_count)02d', top=3.3*cm, left=8*cm, width=3.4*cm, height=0.5*cm)
        #fld.padding_top = 0.1*cm
        #fld.style = DESCRITIVO_NUMERO
        #self.elements.append(fld)

        ##
        ## No caso dos códigos de barra, altura (height) e largura (width) se referem às barras, não à imagem
        ##
        #self.elements.append(Line(top=0*cm, bottom=0*cm, left=11.4*cm, right=19.4*cm, stroke_width=0.1))
        #self.elements.append(BarCode(type=u'Code128', attribute_name=u'NFe.chave_para_codigo_barras', top=((1.625-0.8)/2.0)*cm, left=11.3*cm, width=0.025*cm, height=0.8*cm))

        #lbl, fld = self.inclui_campo(nome='remetente_chave', titulo=u'CHAVE DE ACESSO', conteudo=u'NFe.chave_formatada', top=1.625*cm, left=11.4*cm, width=8*cm, margem_direita=True)
        #fld.style = DADO_CHAVE

        #self.inclui_campo(nome='remetente_natureza', titulo=u'NATUREZA DA OPERAÇÃO', conteudo=u'NFe.infNFe.ide.natOp.valor', top=4*cm, left=0*cm, width=11.4*cm)

        #self.inclui_campo(nome='remetente_ie', titulo=u'INSCRIÇÃO ESTADUAL', conteudo=u'NFe.infNFe.emit.IE.valor', top=4.70*cm, left=0*cm, width=6.4*cm)
        #self.inclui_campo(nome='remetente_iest', titulo=u'INSCRIÇÃO ESTADUAL DO SUBSTITUTO TRIBUTÁRIO', conteudo=u'NFe.infNFe.emit.IEST.valor', top=4.70*cm, left=6.4*cm, width=6.6*cm)
        #self.inclui_campo(nome='remetente_cnpj', titulo=u'CNPJ', conteudo=u'NFe.cnpj_emitente_formatado', top=4.70*cm, left=13*cm, width=6.4*cm, margem_direita=True)

        self.height = 2.3 * cm
Пример #17
0
    def dados_emitente_logo_horizontal(self, arquivo_imagem):
        elements = []

        #
        # Dados do remetente
        #
        img = Image()
        img.top = 0.1*cm
        img.left = 0.1*cm
        #
        # Tamanhos equilaventes, em centímetros, a 3,8 x 2,5, em 128 dpi
        # estranhamente, colocar os tamanhos em centímetros encolhe a imagem
        #
        img.width = 191
        img.height = 116
        img.filename = arquivo_imagem
        elements.append(img)

        fld = Campo()
        fld.nome  = 'fld_rem_nome'
        fld.attribute_name = u'NFe.infNFe.emit.xNome.valor'
        fld.top   = 0.2*cm
        fld.left  = 4*cm
        fld.width = 4*cm
        fld.height = 1.4*cm
        fld.style = EMIT_NOME
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_3'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_3'
        fld.top   = 2.05*cm
        fld.left  = 4*cm
        fld.width = 4*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

#        fld = Campo()
#        fld.nome  = 'fld_rem_endereco_4'
#        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_4'
#        fld.top   = 2.05*cm
#        fld.left  = 4*cm
#        fld.width = 4*cm
#        fld.height = 0.45*cm
#        fld.style = EMIT_DADOS
#        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_1'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_1'
        fld.top   = 2.5*cm
        fld.left  = 0*cm
        fld.width = 8*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_2'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_2'
        fld.top   = 3.2*cm
        fld.left  = 0*cm
        fld.width = 8*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_regime_tributario'
        fld.attribute_name = 'NFe.crt_descricao'
        fld.top   = 3.6*cm
        fld.left  = 0*cm
        fld.width = 8*cm
        fld.height = 0.4*cm
        fld.style = DADO_PRODUTO_CENTRALIZADO
        elements.append(fld)

        return elements
Пример #18
0
    def dados_emitente_logo_vertical(self, arquivo_imagem):
        elements = []

        #
        # Dados do remetente
        #
        img = Image()
        img.top = 0.1*cm
        img.left = 0.1*cm
        #
        # Tamanhos equilaventes, em centímetros, a 2,5 x 3,8, em 128 dpi
        # estranhamente, colocar os tamanhos em centímetros encolhe a imagem
        #
        img.width = 116
        img.height = 191
        img.filename = arquivo_imagem
        elements.append(img)

        fld = Campo()
        fld.nome  = 'fld_rem_nome'
        fld.attribute_name = u'NFe.infNFe.emit.xNome.valor'
        fld.top   = 0.2*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 1.5*cm
        fld.style = EMIT_NOME
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_1'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_1'
        fld.top   = 1.4*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_2'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_2'
        fld.top   = 2.2*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.7*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_3'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_3'
        fld.top   = 3*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_rem_endereco_4'
        fld.attribute_name = u'NFe.endereco_emitente_formatado_linha_4'
        fld.top   = 3.4*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.45*cm
        fld.style = EMIT_DADOS
        elements.append(fld)

        fld = Campo()
        fld.nome  = 'fld_regime_tributario'
        fld.attribute_name = 'NFe.crt_descricao'
        fld.top   = 3.6*cm
        fld.left  = 2.5*cm
        fld.width = 5.5*cm
        fld.height = 0.4*cm
        fld.style = DADO_PRODUTO_CENTRALIZADO
        elements.append(fld)

        return elements