Option Strict Off
Option Explicit On
Imports fatd_faturamento.BLL.Repositorio
Imports fatd_faturamento.ENTIDADE
Imports VB = Microsoft.VisualBasic
Imports System.Collections.Generic
Imports CrystalDecisions
Imports BarcodeLib
Imports CrystalDecisions.CrystalReports.Engine
Imports System.IO
Imports System.Configuration
Imports System.Net.Mail


Public Class frmFaturaporEmail

    Private dt, dt1, dt2, dt3, dt4 As DataTable
    Private objABD As New entidadeAtualizaBancoDados
    Private repABD As New repositorioAtualizaBancoDados
    Private objExecABD As New entidadeAtualizaBancoDados
    Private repExecABD As New repositorioAtualizaBancoDados
    Private bListaCarregada As Boolean
    Private istrTabela As String
    Private istrGrupo As String
    Private sCaminhoAnexo As String
    Private sTratamentoErro(30) As String
    Private sErroEnvio As Boolean
    Private ifrmimpFaturas As frmImpFaturas

    Private Sub frmFaturaporEmail_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Try

            dtpMesAno.Text = Mid(CStr(Date.Now), 4, 7)
            grbzlc.Enabled = False
            chkref.Checked = True
            CarregaRotas()
            '  sCarregaTempFatura()
            sCaminhoAnexo = GetConfig("email.anexo")

            If sCaminhoAnexo <> "" And VB.Right(sCaminhoAnexo, 1) <> "\" Then
                sCaminhoAnexo = sCaminhoAnexo & "\"
            ElseIf sCaminhoAnexo = "" Then
                sCaminhoAnexo = My.Application.Info.DirectoryPath & "\"
            End If

            If Not My.Computer.FileSystem.DirectoryExists(sCaminhoAnexo) Then
                MessageBox.Show("O caminho apontado na tabela Configurações não existe, verifique também se o caminho a ser apontado possui acesso.", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error)
            End If

            pnlinformacao.Visible = False

            If Dir(sCaminhoAnexo & "fatura.pdf") <> "" Then
                My.Computer.FileSystem.DeleteFile(sCaminhoAnexo & "fatura.pdf", FileIO.UIOption.AllDialogs,
                                                                     FileIO.RecycleOption.SendToRecycleBin,
                                                                     FileIO.UICancelOption.DoNothing)
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: frmFaturaporEmail_Load" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub
    Private Sub cmdFechar_Click(sender As Object, e As EventArgs) Handles cmdFechar.Click
        Close()
    End Sub
    Private Sub EnviarEmail(ByVal email1 As String, ByVal email_cc() As String, ByVal sNomeArquivo As String, Optional ByVal sNomeContribuinte As String = "", Optional ByVal sMesRef As String = "", Optional ByVal sIdentificacao As String = "", Optional ByVal iCount As Integer = 0)

        Dim end_smtp As String = GetConfig("email.ServidorSMTP")

        If Trim(end_smtp) = "" Then
            MsgBox("Endereço SMTP não configurado, deve-se criar a configuração com a propriedade email.endereco.smtp e tentar novamente.", MsgBoxStyle.Critical)
            Exit Sub
        End If

        Dim serv_smtp As New SmtpClient
        'Dim email_ As New MailMessage
        Dim end_email As String = GetConfig("email.Endereco")

        If Trim(end_email) = "" Then
            MsgBox("Endereço de Email da Empresa não configurado, deve-se criar a configuração com a propriedade email.endereco.email e tentar novamente.", MsgBoxStyle.Critical)
            Exit Sub
        End If

        Dim assunto As String
        Dim corpo_email As String
        Dim texto_corpo_email As String
        Dim texto_complementar_corpo_email As String

        corpo_email = GetConfig("email.corpo.email")
        assunto = GetConfig("email.assunto") & sMesRef
        texto_complementar_corpo_email = GetConfig("email.corpo.email.complementar")

        texto_corpo_email = "Olá " & sNomeContribuinte & Chr(13)

        texto_corpo_email = texto_corpo_email & "Segue a fatura de energia - Referente a " & sMesRef & Chr(13) & Chr(13)

        texto_corpo_email = texto_corpo_email & texto_complementar_corpo_email

        Dim msg As New System.Net.Mail.MailMessage

        '[ se o email necessita de autenticacao ]
        If GetConfig("email.autenticacao") = "S" Then
            Dim emailAutenticacao As String = GetConfig("email.Usuario")
            Dim SenhaAutenticacao As String = GetConfig("email.Senha")

            serv_smtp.Host = end_smtp
            serv_smtp.UseDefaultCredentials = False
            serv_smtp.Credentials = New System.Net.NetworkCredential(emailAutenticacao, SenhaAutenticacao)
            ' serv_smtp.Credentials = New System.Net.NetworkCredential("enviafatura@ddsystem.com.br", "#Abc123#")
            serv_smtp.Port = GetConfig("porta.smtp.email") 'porta.smtp.email
            serv_smtp.EnableSsl = True
        End If

        msg.From = New MailAddress(end_email)
        msg.IsBodyHtml = True
        msg.Subject = assunto
        msg.To.Add(New MailAddress(email1))
        msg.Body = texto_corpo_email

        'If email_cc(1) <> "" And InStr(1, email_cc(1), "@") > 0 Then
        If email_cc.Length > 1 Then
            msg.Bcc.Add(New MailAddress(email_cc(1)))
        End If

        msg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess

        '[ anexo ] 
        msg.Attachments.Add(New Attachment(sNomeArquivo))

        '[ envio ]
        Try
            lblInfo.Text = "Enviando... por gentileza aguarde o término da operação."
            serv_smtp.Send(msg)
            msg.Attachments.Dispose()
            lblInfo.Text = "Email enviado com sucesso."
        Catch ex As Exception
            msg.Attachments.Dispose()
            lblInfo.Text = "Falha ao enviar email."
            lblerro.Text = "Erro ao enviar"
            sTratamentoErro(iCount) = "Identificação: " & sIdentificacao & " - Email: " & email1 & " - Contribuinte: " & sNomeContribuinte
            Exit Sub
        End Try
    End Sub

    Private Sub chkZLC_CheckedChanged(sender As Object, e As EventArgs) Handles chkZLC.CheckedChanged
        Try
            If chkZLC.Checked = True Then
                grbzlc.Enabled = True
                grbGrupo.Enabled = False
                grbRota.Enabled = False
                grbRef.Enabled = False
            Else
                grbzlc.Enabled = False
                grbGrupo.Enabled = True
                grbRota.Enabled = True
                grbRef.Enabled = True
            End If
        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: chkZLC_CheckedChanged" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub cmdLocalizar_Click_1(sender As Object, e As EventArgs) Handles cmdLocalizar.Click
        sCarregaListView()
    End Sub

    Private Sub sCarregaListView()

        Dim lsiItens As System.Windows.Forms.ListViewItem
        Dim clhColunas As System.Windows.Forms.ColumnHeader
        Dim strNome As String
        Dim strZona As String
        Dim lngTamanho As Integer
        Dim lintLinha As Integer
        Dim lstraux As String
        Dim lstrSqlRota As String
        Dim lstrSqlZLC As String
        Dim lstrMesAnoRef As String
        Dim lstrsqlGrupo As String
        Dim lstrsql As String

        Dim sZona As String
        Dim sLivro As String
        Dim sConta As String
        Dim szlc As String
        Dim sNome As String
        Dim sDataVenc As String
        Dim sValorTotal As String
        Dim SMail As String
        Dim sGrupo As String
        Dim sMesRef As String
        Dim sNumNf As String
        Dim sMailSplit

        Try

            If chkZLC.Checked = True Then
                lstrSqlZLC = " AND `FATURAS`.`Zona` = '" & Trim(txtZona.Text) & "' AND `FATURAS`.`Livro` ='" & Trim(txtLivro.Text) & "' AND `FATURAS`.`Conta` ='" & Trim(txtConta.Text) & "' "
                lstrsqlGrupo = " AND `UC_FATURAMENTO`.`GRUPO` IN ('A','B')"
            Else

                lstrsqlGrupo = " AND left(`UC_FATURAMENTO`.`GRUPO`,1) = '" & IIf(opbGrupoA.Checked, "A", "B") & "'"

                'With Me.lsvRotas
                If lsvRotas.Items.Count > 0 Then
                    'If .Items.Item(1).Checked = False Then
                    For lintLinha = 0 To lsvRotas.Items.Count - 1
                        If lsvRotas.Items.Item(lintLinha).Checked = True Then
                            lstraux = lstraux & """" & lsvRotas.Items.Item(lintLinha).Text & ""","
                        End If
                    Next lintLinha
                    'End If
                End If
                'End With

                If Len(Trim(lstraux)) > 0 Then
                    'lstrSqlFiB = " And MID(`unidb`.`rota`,1,4) In ( " & VB.Left(lstrAux, Len(lstrAux) - 1) & ") "
                    lstrSqlRota = " And MID(`FATURAS`.`rota`,1,4) In ( " & VB.Left(lstraux, Len(lstraux) - 1) & ") "
                End If

                If dtpMesAno.Text <> "" And chkref.Checked Then
                    lstrMesAnoRef = " And `FATURAS`.`MESANO_REF` = '" & Mid(dtpMesAno.Text, 4, 4) & Mid(dtpMesAno.Text, 1, 2) & "'"
                End If

            End If

            lstrsql = " SELECT FATURAS.NUMNF             As FATURAS_NUMNF        , "
            lstrsql = lstrsql & "FATURAS.CFOP            AS FATURAS_CFOP         , "
            lstrsql = lstrsql & "FATURAS.ZONA            As FATURAS_ZONA         , "
            lstrsql = lstrsql & "FATURAS.LIVRO           AS FATURAS_LIVRO        ,"
            lstrsql = lstrsql & "FATURAS.CONTA           As FATURAS_CONTA        , "
            lstrsql = lstrsql & "FATURAS.AGRUPA_ROTA     AS FATURAS_ROTA         , "
            lstrsql = lstrsql & "FATURAS.GRUPO           AS FATURAS_GRUPO         , "
            lstrsql = lstrsql & "FATURAS.UNID_ID         As FATURAS_UNID_ID      , "
            lstrsql = lstrsql & "FATURAS.CONS_ID         AS FATURAS_CONS_ID      , "
            lstrsql = lstrsql & "FATURAS.VALORTOT        As FATURAS_VALORTOT     , "
            lstrsql = lstrsql & "FATURAS.VALORLIQ        AS FATURAS_VALORLIQ     , "
            lstrsql = lstrsql & "FATURAS.CODCLAS         As FATURAS_CODCLAS      , "
            lstrsql = lstrsql & "FATURAS.DATAVENC        AS FATURAS_DATAVENC     , "
            lstrsql = lstrsql & "FATURAS.BANIDENT        As FATURAS_BANIDENT     , "
            lstrsql = lstrsql & "FATURAS.BANCO_FATUR     AS FATURAS_BANCO_FATUR  , "
            lstrsql = lstrsql & "FATURAS.MESANO          As FATURAS_MESANO       , "
            lstrsql = lstrsql & "FATURAS.MESANO_REF      AS FATURAS_MESANO_REF   , "
            lstrsql = lstrsql & "FATURAS.DATAAPR         As FATURAS_DATAAPR      ,  "
            lstrsql = lstrsql & "FATURAS.DATAEM          AS FATURAS_DATAEM       , "
            lstrsql = lstrsql & "FATURAS.DATAPROXLEIT    As FATURAS_DATAPROXLEIT , "
            lstrsql = lstrsql & "FATURAS.DATALEIT        AS FATURAS_DATALEIT     , "
            lstrsql = lstrsql & "FATURAS.DATALEITANT     As FATURAS_DATALEITANT  , "
            lstrsql = lstrsql & "FATURAS.FASE            AS FATURAS_FASE         , "
            lstrsql = lstrsql & "FATURAS.TA              As FATURAS_TA           , "
            lstrsql = lstrsql & "FATURAS.TENSAO          AS FATURAS_TENSAO       , "
            lstrsql = lstrsql & "FATURAS.CODHASH         As FATURAS_CODHASH      , "
            lstrsql = lstrsql & "FATURAS.ITENSSERV       AS FATURAS_ITENSSERV    , "
            lstrsql = lstrsql & "FATURAS.NSU             As FATURAS_NSU          , "
            lstrsql = lstrsql & "FATURAS.CODBARRA        AS FATURAS_CODBARRA     , "
            lstrsql = lstrsql & "FATURAS.DVCODBARRA      As FATURAS_DVCODBARRA   , "
            lstrsql = lstrsql & "FATURAS.NUM_MED         AS FATURAS_NUM_MED      , "
            lstrsql = lstrsql & "FATURAS.CONST_MED       As FATURAS_CONST_MED    , "
            lstrsql = lstrsql & "FATURAS.ITENSIMP        AS FATURAS_ITENSIMP     , "
            lstrsql = lstrsql & "FATURAS.DIAS            As FATURAS_DIAS         , "
            lstrsql = lstrsql & "FATURAS.MENSAGEM_BANDEIRA AS FATURAS_MENSAGEM_BANDEIRA, "
            lstrsql = lstrsql & "FATURAS.IRRIGACAO_AQUICULTURA As FATURAS_IRRIGACAO_AQUICULTURA, "
            lstrsql = lstrsql & "FATURAS.MICRO_GERACAO AS FATURAS_MICRO_GERACAO, "
            lstrsql = lstrsql & "FATURAS.TARIFA_BRANCA As FATURAS_TARIFA_BRANCA, "
            lstrsql = lstrsql & "CLASSE.CODIGO           AS CLASSE_CODIGO        , "
            lstrsql = lstrsql & "CLASSE.DESCRICAO        As CLASSE_DESCRICAO     , "
            lstrsql = lstrsql & "UC_FATURAMENTO.CPF_CNPJ          AS UC_FATURAMENTO_CPF_CNPJ       , "
            lstrsql = lstrsql & "UC_FATURAMENTO.INSC              As UC_FATURAMENTO_INSC           , "
            lstrsql = lstrsql & "UC_FATURAMENTO.RG                AS UC_FATURAMENTO_RG             , "
            lstrsql = lstrsql & "UC_FATURAMENTO.AGENC             As UC_FATURAMENTO_AGENC          , "
            lstrsql = lstrsql & "UC_FATURAMENTO.CC                AS UC_FATURAMENTO_CC             , "
            lstrsql = lstrsql & "UC_FATURAMENTO.NOME              As UC_FATURAMENTO_NOME           , "
            lstrsql = lstrsql & "UC_FATURAMENTO.CIDADE            AS UC_FATURAMENTO_CIDADE         , "
            lstrsql = lstrsql & "UC_FATURAMENTO.DISTRITO          As UC_FATURAMENTO_DISTRITO       , "
            lstrsql = lstrsql & "UC_FATURAMENTO.BAIRRO            AS UC_FATURAMENTO_BAIRRO         , "
            lstrsql = lstrsql & "UC_FATURAMENTO.END               As UC_FATURAMENTO_END            , "
            lstrsql = lstrsql & "UC_FATURAMENTO.NUMERO            AS UC_FATURAMENTO_NUMERO         , "
            lstrsql = lstrsql & "UC_FATURAMENTO.COMPLEMENT        As UC_FATURAMENTO_COMPLEMENT     , "
            lstrsql = lstrsql & "UC_FATURAMENTO.CEP               AS UC_FATURAMENTO_CEP            , "
            lstrsql = lstrsql & "UC_FATURAMENTO.UF                As UC_FATURAMENTO_UF             , "
            lstrsql = lstrsql & "UC_FATURAMENTO.QUADRA            AS UC_FATURAMENTO_QUADRA         , "
            lstrsql = lstrsql & "UC_FATURAMENTO.LOTE              As UC_FATURAMENTO_LOTE           , "
            lstrsql = lstrsql & "UC_FATURAMENTO.ENTREGA           AS UC_FATURAMENTO_ENTREGA        , "
            lstrsql = lstrsql & "UC_FATURAMENTO.CID_ENTREGA       As UC_FATURAMENTO_CID_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.DIS_ENTREGA       AS UC_FATURAMENTO_DIS_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.BAI_ENTREGA       As UC_FATURAMENTO_BAI_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.END_ENTREGA       AS UC_FATURAMENTO_END_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.NUM_ENTREGA       As UC_FATURAMENTO_NUM_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.COMPL_ENTREGA     AS UC_FATURAMENTO_COMPL_ENTREGA  ,"
            lstrsql = lstrsql & "UC_FATURAMENTO.CEP_ENTREGA       As UC_FATURAMENTO_CEP_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.UF_ENTREGA        AS UC_FATURAMENTO_UF_ENTREGA     ,"
            lstrsql = lstrsql & "UC_FATURAMENTO.QUA_ENTREGA       As UC_FATURAMENTO_QUA_ENTREGA    , "
            lstrsql = lstrsql & "UC_FATURAMENTO.LOT_ENTREGA       AS UC_FATURAMENTO_LOT_ENTREGA    ,"
            lstrsql = lstrsql & "UC_FATURAMENTO.ULTLEIT           As UC_FATURAMENTO_ULTLEIT        , "
            lstrsql = lstrsql & "UC_FATURAMENTO.LEIT              AS UC_FATURAMENTO_LEIT           ,"
            lstrsql = lstrsql & "UC_FATURAMENTO.GRUPO             As UC_FATURAMENTO_GRUPO          , "
            lstrsql = lstrsql & "UC_FATURAMENTO.REGIAO            AS UC_FATURAMENTO_REGIAO         ,"
            lstrsql = lstrsql & "UC_FATURAMENTO.UNID_ID           As UC_FATURAMENTO_UNID_ID        , "
            lstrsql = lstrsql & "UC_FATURAMENTO.CONS_ID           AS UC_FATURAMENTO_CONS_ID        ,"
            lstrsql = lstrsql & "UC_FATURAMENTO.CONJUGE_FATURA    As UC_FATURAMENTO_CONJUGE_FATURA ,"
            lstrsql = lstrsql & "CONSUM.NOME             AS CONSUMIDOR_NOME      ,"
            lstrsql = lstrsql & "CONSUM.NOME_CONJUGE     As CONSUMIDOR_CONJUGE   , "
            lstrsql = lstrsql & "CONSUM.CEP              AS CONSUMIDOR_CEP       ,"
            lstrsql = lstrsql & "CONSUM.UF               As CONSUMIDOR_UF        , "
            lstrsql = lstrsql & "CONSUM.CGC              AS CONSUMIDOR_CGC       ,"
            lstrsql = lstrsql & "CONSUM.INSC             As CONSUMIDOR_INSC      ,     "
            lstrsql = lstrsql & "CONSUM.RG               AS CONSUMIDOR_RG        ,     "
            lstrsql = lstrsql & "CONSUM.EMAIL            AS CONSUM_EMAIL             "

            If chkemFaturamento.Checked = True Then
                lstrsql = lstrsql & "FROM NFTRANSICAO As FATURAS    LEFT Join UC_FATURAMENTO On (UC_FATURAMENTO.ID = FATURAS.UNID_ID)    "
            Else
                lstrsql = lstrsql & "FROM NF As FATURAS    LEFT Join UC_FATURAMENTO On (UC_FATURAMENTO.ID = FATURAS.UNID_ID)    "
            End If
            lstrsql = lstrsql & "Left Join CONSUM ON(CONSUM.CONSREG =  FATURAS.CONS_ID)"
            lstrsql = lstrsql & "Left Join CLASSE ON(CLASSE.CODIGO =  FATURAS.CODCLAS)"
            lstrsql = lstrsql & "WHERE 1 = 1  AND UC_FATURAMENTO.ENVIO_EMAIL_FATURA = 'S'"
            lstrsql = lstrsql & lstrSqlRota & lstrSqlZLC & lstrMesAnoRef & lstrsqlGrupo
            'And FATURAS.GRUPO = 'B'"
            'lstrsql = lstrsql = "And FATURAS.ZONA = '001' "
            'lstrsql = lstrsql = "And FATURAS.LIVRO = '15'     "
            'lstrsql = lstrsql = "And FATURAS.CONTA = '247900'     "
            'lstrsql = lstrsql = "And FATURAS.MESANO_REF BETWEEN 202110 And 202110"
            'lstrsql = lstrsql = "And FATURAS.FATURA_COMPLEMENTAR = 0"
            objABD.QUERY_NAME = lstrsql
            dt = repABD.Consultar(objABD)

            ' ----- Limpa a List que carrega as cidades
            lstMail.Items.Clear()
            lstMail.Columns.Clear()

            If lstMail.Columns.Count <= 1 Then
                clhColunas = lstMail.Columns.Add("", "ZLC", CInt(VB6.TwipsToPixelsX(1900)))
                clhColunas = lstMail.Columns.Add("", "Nome", CInt(VB6.TwipsToPixelsX(3200)))
                clhColunas = lstMail.Columns.Add("", "Vencimento", CInt(VB6.TwipsToPixelsX(1100)))
                clhColunas = lstMail.Columns.Add("", "Valor", CInt(VB6.TwipsToPixelsX(1200)))
                clhColunas = lstMail.Columns.Add("", "Email", CInt(VB6.TwipsToPixelsX(2500)))
                clhColunas = lstMail.Columns.Add("", "Mes.Ref", CInt(VB6.TwipsToPixelsX(1000)))
                clhColunas = lstMail.Columns.Add("", "Grupo", CInt(VB6.TwipsToPixelsX(1000)))
                clhColunas = lstMail.Columns.Add("", "NumNF", CInt(VB6.TwipsToPixelsX(1000)))
            End If


            If dt.Rows.Count > 0 Then
                BarraProgresso(Me.ProgressBar, Me.lblPerc, Me.lblInfo, 0, dt.Rows.Count, "...carregando as informações na lista")
                For Each row As DataRow In dt.Rows
                    sZona = IIf(IsDBNull(row("FATURAS_ZONA")), "0", row("FATURAS_ZONA"))
                    sLivro = IIf(IsDBNull(row("FATURAS_LIVRO")), "0", row("FATURAS_LIVRO"))
                    sConta = IIf(IsDBNull(row("FATURAS_CONTA")), "0", row("FATURAS_CONTA"))
                    sNome = IIf(IsDBNull(row("CONSUMIDOR_NOME")), "", row("CONSUMIDOR_NOME"))
                    sDataVenc = IIf(IsDBNull(row("FATURAS_DATAVENC")), "", row("FATURAS_DATAVENC"))
                    sValorTotal = IIf(IsDBNull(row("FATURAS_VALORTOT")), "", row("FATURAS_VALORTOT"))
                    SMail = IIf(IsDBNull(row("CONSUM_EMAIL")), "", row("CONSUM_EMAIL"))
                    szlc = sZona & "." & sLivro & "." & sConta
                    sGrupo = IIf(IsDBNull(row("FATURAS_GRUPO")), "", row("FATURAS_GRUPO"))
                    sMesRef = IIf(IsDBNull(row("FATURAS_MESANO_REF")), "", row("FATURAS_MESANO_REF"))
                    sNumNf = IIf(IsDBNull(row("FATURAS_NUMNF")), "", row("FATURAS_NUMNF"))
                    sMesRef = Mid(sMesRef, 5, 2) & "/" & Mid(sMesRef, 1, 4)

                    If Trim(SMail) <> "" Then
                        ' Tratamento para Email fora do formato
                        sMailSplit = Split(SMail, "@")
                        If InStr(1, SMail, "@") = 0 And SMail <> "" Then
                            SMail = ""
                        ElseIf sMailSplit(1) = "" Then
                            SMail = ""
                        ElseIf InStr(1, sMailSplit(1), ".") = 0 Then
                            SMail = ""
                        End If
                    End If

                    With Me.lstMail

                        .Items.Add(szlc)
                        .Items.Item(.Items.Count - 1).SubItems.Add(sNome)
                        .Items.Item(.Items.Count - 1).SubItems.Add(sDataVenc)
                        .Items.Item(.Items.Count - 1).SubItems.Add("R$ " & sValorTotal)
                        .Items.Item(.Items.Count - 1).SubItems.Add(LCase(SMail))
                        .Items.Item(.Items.Count - 1).SubItems.Add(sMesRef)
                        .Items.Item(.Items.Count - 1).SubItems.Add(sGrupo)
                        .Items.Item(.Items.Count - 1).SubItems.Add(sNumNf)

                        'Dim i As Integer
                        'For i = 1 To 6
                        '    If Trim(SMail) = "" Then
                        '        .Items.Item(.Items.Count - 1).SubItems(i).ForeColor = System.Drawing.Color.Red
                        '    Else
                        '        .Items.Item(.Items.Count - 1).SubItems(i).ForeColor = System.Drawing.Color.Black
                        '    End If
                        'Next

                    End With

                    BarraProgresso(Me.ProgressBar, Me.lblPerc, Me.lblInfo, 1,, "...carregando as informações na lista")

                Next
            Else
                MsgBox("Não existe registro para a seleção", vbInformation + vbOKOnly, "Aviso")
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: sCarregaListView" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub
    Private Sub cmdLocalizaReimpressao_Click(sender As Object, e As EventArgs) Handles cmdLocalizaReimpressao.Click
        Try
            frmLocalizaUnidade.Show()
            frmLocalizaUnidade.SetaLocalizaUnidade("U", Me)
        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: cmdLocalizaReimpressao_Click" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub lstMail_ItemCheck(sender As Object, e As ItemCheckEventArgs) Handles lstMail.ItemCheck
        Dim alistitem As System.Windows.Forms.ListViewItem = lstMail.Items(e.Index)

        Try
            With Me.lstMail
                If .Items.Item(e.Index).SubItems(4).Text = "" Then
                    e.NewValue = CheckState.Unchecked
                End If
            End With
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lsvrotas_itemcheck" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub chktodos_CheckedChanged(sender As Object, e As EventArgs) Handles chktodos.CheckedChanged
        Try
            'Dim Item As System.Windows.Forms.ListViewItem = LVRota.Items(EventArgs.Index)
            Dim intConta As Short
            'If Item.Text = "Todas as rotas" Then
            If chktodos.Checked = True Then
                For intConta = 0 To lstMail.Items.Count - 1
                    If lstMail.Items.Item(intConta).SubItems.Item(4).Text <> "" Then
                        lstMail.Items.Item(intConta).Checked = True
                    End If
                Next
            ElseIf chktodos.Checked = False Then
                For intConta = 0 To lstMail.Items.Count - 1
                    lstMail.Items.Item(intConta).Checked = False
                Next intConta
            End If
        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: chktodos_CheckedChanged" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub cmdGerar_Click(sender As Object, e As EventArgs) Handles cmdGerar.Click

        Dim i As Integer
        Dim sIdentificao As String
        Dim sMail As String
        Dim sMailcc(10) As String
        Dim vTotalMail
        Dim sCaminhoFaturaAnexo As String
        Dim sNomeRel As String
        Dim sGrupo As String
        Dim sNomeContribuinte As String
        Dim sNumNf As String
        Dim sMesRef As String
        Dim itotalLinhas As Long
        Dim ifrmimpFaturas As New frmImpFaturas
        Dim istrTabela As String

        Dim classAPIGerarFaturas As New classAPIGerarFaturas

        Dim lsiItens As System.Windows.Forms.ListViewItem
        Dim clhColunasInf As System.Windows.Forms.ColumnHeader

        Try
            ' sMailcc(0) = "ecarlos05@hotmail.com"
            lblerro.Text = ""
            BarraProgresso(Me.ProgressBar, Me.lblPerc, Me.lblInfo, 0, lstMail.Items.Count, "...carregando as informações na lista")


            Call LigDes(False)

            itotalLinhas = lstMail.Items.Count
            ReDim sTratamentoErro(itotalLinhas)

            If chkemFaturamento.Checked = True Then
                istrTabela = "nftransicao"
            Else
                istrTabela = "nf"
            End If
            'ReDim Preserve sTratamentoErro(itotalLinhas)

            For i = 0 To lstMail.Items.Count - 1
                If lstMail.Items.Item(i).Checked Then
                    sIdentificao = lstMail.Items.Item(i).Text
                    sNomeContribuinte = lstMail.Items.Item(i).SubItems.Item(1).Text
                    sMail = lstMail.Items.Item(i).SubItems.Item(4).Text
                    vTotalMail = Split(sMail, ";")
                    sMail = vTotalMail(0)
                    sGrupo = lstMail.Items.Item(i).SubItems.Item(6).Text
                    sNumNf = lstMail.Items.Item(i).SubItems.Item(7).Text
                    sMesRef = lstMail.Items.Item(i).SubItems.Item(5).Text

                    If Trim(sMail) <> "" Then
                        If UCase(sGrupo) = "A" Then
                            ifrmimpFaturas.chkFaturaEmail.Checked = True
                            classAPIGerarFaturas.frmImpFaturas = ifrmimpFaturas
                            classAPIGerarFaturas.GeraFaturaGrupoA("FORM", 0, VB6.Format(Me.dtpMesAno.Value, "mm/yyyy"), sNumNf,, istrTabela,, sIdentificao, sNumNf, sCaminhoAnexo)
                        ElseIf UCase(sGrupo) = "B" Then
                            ifrmimpFaturas.chkFaturaEmail.Checked = True
                            classAPIGerarFaturas.frmImpFaturas = ifrmimpFaturas
                            classAPIGerarFaturas.GeraFaturaGrupoB("FORM", 0, VB6.Format(Me.dtpMesAno.Value, "mm/yyyy"), sNumNf,, istrTabela, sIdentificao, sNumNf, sCaminhoAnexo)
                        End If

                        lblInfo.Text = "Iniciando o envio do email para a identificação: " & sIdentificao
                        EnviarEmail(sMail, vTotalMail, sCaminhoAnexo & "fatura.pdf", sNomeContribuinte, sMesRef, sIdentificao, i)

                        If Dir(sCaminhoAnexo & "fatura.pdf") <> "" Then
                            My.Computer.FileSystem.DeleteFile(sCaminhoAnexo & "fatura.pdf",
                                                          FileIO.UIOption.AllDialogs,
                                                          FileIO.RecycleOption.SendToRecycleBin,
                                                          FileIO.UICancelOption.DoNothing)
                        End If
                    End If

                End If
                BarraProgresso(Me.ProgressBar, Me.lblPerc, Me.lblInfo, 1,, "...gerando as faturas e preparando para envio do Email")
            Next

            ' Caso haja erro no envio, informa um painel com informações da falha do envio
            If lblerro.Text <> "" Then

                lstinfo.Items.Clear()
                lstinfo.Columns.Clear()
                pnlinformacao.Visible = True
                'pnlgeral.Enabled = False
                cmdLocalizar.Enabled = False
                cmdGerar.Enabled = False
                cmdLocalizaReimpressao.Enabled = False

                If lstinfo.Columns.Count <= 1 Then
                    clhColunasInf = lstinfo.Columns.Add("Informações de Falha no Envio de Email", CInt(VB6.TwipsToPixelsX(8000)))
                End If

                For i = 0 To itotalLinhas
                    With lstinfo
                        If Not IsNothing(sTratamentoErro(i)) Then
                            .Items.Add(sTratamentoErro(i))
                        End If
                    End With
                Next

            Else
                MessageBox.Show("Finalizado")
                Call LigDes(True)
            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: cmdGerar_Click" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Call LigDes(True)
            Exit Sub
        End Try

    End Sub

    Private Sub chktodasrotas_CheckedChanged(sender As Object, e As EventArgs) Handles chktodasrotas.CheckedChanged
        Try
            'Dim Item As System.Windows.Forms.ListViewItem = LVRota.Items(EventArgs.Index)
            Dim intConta As Short
            'If Item.Text = "Todas as rotas" Then
            If chktodasrotas.Checked = True Then
                For intConta = 0 To lsvRotas.Items.Count - 1
                    lsvRotas.Items.Item(intConta).Checked = True
                Next
            ElseIf chktodasrotas.Checked = False Then
                For intConta = 0 To lsvRotas.Items.Count - 1
                    lsvRotas.Items.Item(intConta).Checked = False
                Next intConta
            End If
        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: chktodos_CheckedChanged" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub CarregaRotas()
        Dim lstrRota As String
        Dim lstrGrupo As String
        Dim lstrSql As String
        Try

            ' ----- Monta as colunas na ListView de rotas
            With Me.lsvRotas
                .Items.Clear()
                .Columns.Clear()
                If .Columns.Count <= 1 Then
                    .Columns.Add("", "Rota", CInt(VB6.TwipsToPixelsX(1800)))
                    '.Columns.Add("Grupo", CInt(VB6.TwipsToPixelsX(650)), System.Windows.Forms.HorizontalAlignment.Center)
                End If
                ' .Items.Add("Todas as rotas")
                ' .Items.Item(.Items.Count - 1).SubItems.Add("T")
            End With

            ' ----- Busca as rotas
            lstrSql = ""

            'lstrSql = lstrSql & "SELECT DISTINCT MID(CAST(`u`.`rota` AS DECIMAL),1,4) AS `rotagrupo`, MID(`u`.`ta`,3,1) AS `grupo` "
            lstrSql = lstrSql & "Select DISTINCT CAST(MID(`u`.`rota`,1,4) As Decimal) As `rotagrupo`"
            lstrSql = lstrSql & "  FROM `uc_faturamento` AS `u` USE INDEX(idx_rota) "
            lstrSql = lstrSql & " WHERE `u`.situacao = ""L"" "
            ' lstrSql = lstrSql & " GROUP BY `rotagrupo`, `grupo` "
            lstrSql = lstrSql & " ORDER BY `rotagrupo` ASC" ', `grupo` ASC"
            objABD.QUERY_NAME = lstrSql
            dt = repABD.Consultar(objABD)


            If dt.Rows.Count <> 0 Then
                For Each row As DataRow In dt.Rows
                    lstrRota = IIf(IsDBNull(row("rotagrupo")), "0", row("rotagrupo"))
                    'lstrGrupo = IIf(IsDBNull(row("grupo")), "B", row("grupo"))
                    With Me.lsvRotas
                        .Items.Add(lstrRota)
                        '.Items.Item(.Items.Count - 1).SubItems.Add(lstrGrupo)
                    End With
                Next
            End If
            System.Windows.Forms.Application.DoEvents()

        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: CarregaRotas" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub
    Public Sub SetaCodigo(ByVal alngUnidId As Integer, ByVal astrZona As String, ByVal astrLivro As String, ByVal astrConta As String, ByVal astrGrupo As String, Optional ByVal alngConsId As Integer = 0)
        Try
            Me.txtZona.Text = astrZona
            Me.txtLivro.Text = astrLivro
            Me.txtConta.Text = astrConta
            ' ilngUnidId = alngUnidId
            'If astrGrupo = "A" Then
            '    Me.optGrupoA.Checked = True
            'ElseIf astrGrupo = "B" Then
            '    Me.optGrupoB.Checked = True
            'End If
            'Call cmdBuscar_Click(cmdBuscar, New System.EventArgs())
            'Me.cmdProc.Visible = False
            'Me.cmdBuscar.Visible = False
            'Me.fmeFiltro.Enabled = False
        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: SetaCodigo" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub lPrint(ByVal vNomeRPT As String)

        Dim dt As DataTable
        Dim dt_1 As DataTable
        Dim dt_2 As DataTable
        Dim dc As DataColumn
        Dim ds As DataSet

        Dim vlist

        Dim rpt As New ReportDocument()

        Dim objTempFatura As New entidadeTempFatura
        Dim repositorioTempFatura As New repositorioTempFatura

        Dim objTempFaturaA As New entidadeTempFaturaA
        Dim repositorioTempFaturaA As New repositorioTempFaturaA

        Dim objTempHistFaturaA As New entidadeTempHistFaturaA
        Dim repositorioTempHistFaturaA As New repositorioTempHistFaturaA

        Dim objTempItemFatura As New entidadeTempItemFatura
        Dim repositorioTempItemFatura As New repositorioTempItemFatura

        Dim objConsumos As New entidadeConsumos
        Dim repositorioConsumos As New repositorioConsumos

        Try

            ' Caso o check de imprimir fatura por boleto seja TRUE, o mesmo irá adicionar o nome do rpt mais _Boleto, pois assim irá para o novo rpt. 
            If chkImprimirFaturaBoleto.Checked = True Then
                If vNomeRPT <> "rptFaturaEflulGrupoBVerso" Or vNomeRPT <> "rptFaturaEflulGrupoAVerso" Then
                    vNomeRPT = vNomeRPT + "_Boleto"
                End If
            End If

            If vNomeRPT = "rptFaturaEflulGrupoAHNovo" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                dt_2 = New DataTable()
                dt_2.Columns.Add("COD", GetType(Integer))
                dt_2.Columns.Add("NUMNF", GetType(Integer))
                dt_2.Columns.Add("DESCR", GetType(String))
                dt_2.Columns.Add("VALOR_ITEM", GetType(Double))
                dt_2.Columns.Add("CODITEM", GetType(String))
                dt_2.Columns.Add("TA", GetType(String))
                dt_2.Columns.Add("REF", GetType(String))
                dt_2.Columns.Add("MESANO", GetType(String))
                dt_2.Columns.Add("CLASSE", GetType(String))


                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)


                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone


                        vNumNF = dr("NUMNF")

                        objTempItemFatura.NUMNF = vNumNF

                        dt_1 = repositorioTempItemFatura.Select(objTempItemFatura)

                        For Each dr_1 As DataRow In dt_1.Rows

                            dt_2.Rows.Add(dr_1("COD"), dr_1("NUMNF"), dr_1("DESCR"), dr_1("VALOR_ITEM"), dr_1("CODITEM"), dr_1("TA"), dr_1("REF"), dr_1("MESANO").ToString().Substring(4, 2) + "/" + dr_1("MESANO").ToString().Substring(0, 4), dr_1("CLASSE"))

                        Next dr_1

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                objTempHistFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempHistFaturaA.Select(objTempHistFaturaA)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_B"

                ds.Tables.Add(dt_2)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_C"


                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoAHNovo

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()


                End If


            ElseIf vNomeRPT = "rptFaturaEflulGrupoAC" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                dt_2 = New DataTable()
                dt_2.Columns.Add("COD", GetType(Integer))
                dt_2.Columns.Add("NUMNF", GetType(Integer))
                dt_2.Columns.Add("DESCR", GetType(String))
                dt_2.Columns.Add("VALOR_ITEM", GetType(Double))
                dt_2.Columns.Add("CODITEM", GetType(String))
                dt_2.Columns.Add("TA", GetType(String))
                dt_2.Columns.Add("REF", GetType(String))
                dt_2.Columns.Add("MESANO", GetType(String))
                dt_2.Columns.Add("CLASSE", GetType(String))


                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)

                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                        vNumNF = dr("NUMNF")

                        objTempItemFatura.NUMNF = vNumNF

                        dt_1 = repositorioTempItemFatura.Select(objTempItemFatura)

                        For Each dr_1 As DataRow In dt_1.Rows

                            dt_2.Rows.Add(dr_1("COD"), dr_1("NUMNF"), dr_1("DESCR"), dr_1("VALOR_ITEM"), dr_1("CODITEM"), dr_1("TA"), dr_1("REF"), dr_1("MESANO").ToString().Substring(4, 2) + "/" + dr_1("MESANO").ToString().Substring(0, 4), dr_1("CLASSE"))

                        Next dr_1

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                objTempHistFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempHistFaturaA.Select(objTempHistFaturaA)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_B"

                ds.Tables.Add(dt_2)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_C"


                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoAC

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If


            ElseIf vNomeRPT = "rptFaturaEflulGrupoAS" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                dt_2 = New DataTable()
                dt_2.Columns.Add("COD", GetType(Integer))
                dt_2.Columns.Add("NUMNF", GetType(Integer))
                dt_2.Columns.Add("DESCR", GetType(String))
                dt_2.Columns.Add("VALOR_ITEM", GetType(Double))
                dt_2.Columns.Add("CODITEM", GetType(String))
                dt_2.Columns.Add("TA", GetType(String))
                dt_2.Columns.Add("REF", GetType(String))
                dt_2.Columns.Add("MESANO", GetType(String))
                dt_2.Columns.Add("CLASSE", GetType(String))


                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)


                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                        vNumNF = dr("NUMNF")

                        objTempItemFatura.NUMNF = vNumNF

                        dt_1 = repositorioTempItemFatura.Select(objTempItemFatura)

                        For Each dr_1 As DataRow In dt_1.Rows

                            dt_2.Rows.Add(dr_1("COD"), dr_1("NUMNF"), dr_1("DESCR"), dr_1("VALOR_ITEM"), dr_1("CODITEM"), dr_1("TA"), dr_1("REF"), dr_1("MESANO").ToString().Substring(4, 2) + "/" + dr_1("MESANO").ToString().Substring(0, 4), dr_1("CLASSE"))

                        Next dr_1

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                objTempHistFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempHistFaturaA.Select(objTempHistFaturaA)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_B"

                ds.Tables.Add(dt_2)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_C"


                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoAS

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If


            ElseIf vNomeRPT = "rptFaturaEflulGrupoAH" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                dt_2 = New DataTable()
                dt_2.Columns.Add("COD", GetType(Integer))
                dt_2.Columns.Add("NUMNF", GetType(Integer))
                dt_2.Columns.Add("DESCR", GetType(String))
                dt_2.Columns.Add("VALOR_ITEM", GetType(Double))
                dt_2.Columns.Add("CODITEM", GetType(String))
                dt_2.Columns.Add("TA", GetType(String))
                dt_2.Columns.Add("REF", GetType(String))
                dt_2.Columns.Add("MESANO", GetType(String))
                dt_2.Columns.Add("CLASSE", GetType(String))


                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)

                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                        vNumNF = dr("NUMNF")

                        objTempItemFatura.NUMNF = vNumNF

                        dt_1 = repositorioTempItemFatura.Select(objTempItemFatura)

                        For Each dr_1 As DataRow In dt_1.Rows

                            If Not IsDBNull(dr_1("DESCR")) Then
                                dt_2.Rows.Add(dr_1("COD"), dr_1("NUMNF"), dr_1("DESCR"), dr_1("VALOR_ITEM"), dr_1("CODITEM"), dr_1("TA"), dr_1("REF"), dr_1("MESANO").ToString().Substring(4, 2) + "/" + dr_1("MESANO").ToString().Substring(0, 4), dr_1("CLASSE"))
                            Else
                                Exit For
                            End If

                        Next dr_1

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                objTempHistFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempHistFaturaA.Select(objTempHistFaturaA)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_B"

                ds.Tables.Add(dt_2)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_C"


                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoAH

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If

            ElseIf vNomeRPT = "rptFaturaEflulGrupoAPP" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                dt_2 = New DataTable()
                dt_2.Columns.Add("COD", GetType(Integer))
                dt_2.Columns.Add("NUMNF", GetType(Integer))
                dt_2.Columns.Add("DESCR", GetType(String))
                dt_2.Columns.Add("VALOR_ITEM", GetType(Double))
                dt_2.Columns.Add("CODITEM", GetType(String))
                dt_2.Columns.Add("TA", GetType(String))
                dt_2.Columns.Add("REF", GetType(String))
                dt_2.Columns.Add("MESANO", GetType(String))
                dt_2.Columns.Add("CLASSE", GetType(String))


                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)


                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================


                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                        vNumNF = dr("NUMNF")

                        objTempItemFatura.NUMNF = vNumNF

                        dt_1 = repositorioTempItemFatura.Select(objTempItemFatura)

                        For Each dr_1 As DataRow In dt_1.Rows

                            dt_2.Rows.Add(dr_1("COD"), dr_1("NUMNF"), dr_1("DESCR"), dr_1("VALOR_ITEM"), dr_1("CODITEM"), dr_1("TA"), dr_1("REF"), dr_1("MESANO").ToString().Substring(4, 2) + "/" + dr_1("MESANO").ToString().Substring(0, 4), dr_1("CLASSE"))

                        Next dr_1

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                objTempHistFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempHistFaturaA.Select(objTempHistFaturaA)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_B"

                ds.Tables.Add(dt_2)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_C"


                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoAPP

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If

            ElseIf vNomeRPT = "rptFaturaEflulGrupo_Complementar" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                dt_2 = New DataTable()
                dt_2.Columns.Add("COD", GetType(Integer))
                dt_2.Columns.Add("NUMNF", GetType(Integer))
                dt_2.Columns.Add("DESCR", GetType(String))
                dt_2.Columns.Add("VALOR_ITEM", GetType(Double))
                dt_2.Columns.Add("CODITEM", GetType(String))
                dt_2.Columns.Add("TA", GetType(String))
                dt_2.Columns.Add("REF", GetType(String))
                dt_2.Columns.Add("MESANO", GetType(String))
                dt_2.Columns.Add("CLASSE", GetType(String))


                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)


                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================


                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                        vNumNF = dr("NUMNF")

                        objTempItemFatura.NUMNF = vNumNF

                        dt_1 = repositorioTempItemFatura.Select(objTempItemFatura)

                        For Each dr_1 As DataRow In dt_1.Rows

                            dt_2.Rows.Add(dr_1("COD"), dr_1("NUMNF"), dr_1("DESCR"), dr_1("VALOR_ITEM"), dr_1("CODITEM"), dr_1("TA"), dr_1("REF"), dr_1("MESANO").ToString().Substring(4, 2) + "/" + dr_1("MESANO").ToString().Substring(0, 4), dr_1("CLASSE"))

                        Next dr_1

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                objTempHistFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempHistFaturaA.Select(objTempHistFaturaA)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_B"

                ds.Tables.Add(dt_2)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_C"


                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupo_Complementar

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If


            ElseIf vNomeRPT = "rptFaturaEflulGrupoAVerso" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode

                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFaturaA.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFaturaA.Select(objTempFaturaA)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)


                    For Each dr As DataRow In dt.Rows


                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone


                    Next dr

                End If

                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_A_H_NOVO_A"

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoAVerso

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If

            ElseIf vNomeRPT = "rptFaturaEflulGrupoB" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode

                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFatura.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFatura.Select(objTempFatura)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)

                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_B_A"

                dt = repositorioConsumos.Select(objConsumos)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_B_B"

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoB

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If

            ElseIf vNomeRPT = "rptFaturaEflulGrupoBBarras" Then

                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode

                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFatura.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFatura.Select(objTempFatura)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)

                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                    Next dr
                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_B_BARRAS"

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoBBarras

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If

            ElseIf vNomeRPT = "rptFaturaEflulGrupoBVerso" Then

                ds = New DataSet

                objTempFatura.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFatura.Select(objTempFatura)

                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_B_VERSO"

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoBVerso

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")
                    '_relatorio.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, "relatori2.pdf");

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas Verso"
                    'frmViewRelatorios.ShowDialog()


                End If

            ElseIf vNomeRPT = "rptFaturaEflulGrupoB_Boleto" Then


                Dim objBarcode As Barcode = New BarcodeLib.Barcode
                Dim vImgBarcode As Bitmap
                Dim msImgBarcode As New MemoryStream
                Dim vCodBarcode
                Dim vNumNF

                ds = New DataSet

                vImgBarcode = New Bitmap(1030, 400)
                Using G = Graphics.FromImage(vImgBarcode)
                    G.Clear(Color.White)
                End Using

                objTempFatura.NOMEMAQUINA = vUsuario.LOGIN

                dt = repositorioTempFatura.Select(objTempFatura)

                If dt.Rows.Count > 0 Then

                    dc = New DataColumn("IMAGE_BARCODE", GetType(Byte()))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESANOME", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASIGLA", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACNPJ", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAENDERECO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAMUNICIPIO", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAUF", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESACEP", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESA0800", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFAX", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAFONE", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESAEMAIL", GetType(String))
                    dt.Columns.Add(dc)
                    dc = New DataColumn("EMPRESASITE", GetType(String))
                    dt.Columns.Add(dc)

                    For Each dr As DataRow In dt.Rows

                        vCodBarcode = dr("CODBARRA")

                        '===== gera a imagem para o codigo de barras =====

                        If String.IsNullOrEmpty(dr("AGENC")) Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "0000" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("AGENC") = "009" Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        ElseIf dr("SEGVIA") = 1 Then
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        Else
                            vImgBarcode = objBarcode.Encode(TYPE.CODE128C, vCodBarcode, Color.Black, Color.White, 300, 150)
                        End If

                        vImgBarcode.Save(msImgBarcode, System.Drawing.Imaging.ImageFormat.Bmp)
                        dr("IMAGE_BARCODE") = msImgBarcode.GetBuffer()
                        msImgBarcode.Dispose()

                        '===================================

                        dr("EMPRESANOME") = gstrEmpresa_Nome
                        dr("EMPRESASIGLA") = gstrEmpresa_Sigla
                        dr("EMPRESACNPJ") = gstrEmpresa_CNPJ
                        dr("EMPRESAENDERECO") = gstrEmpresa_Endereco
                        dr("EMPRESAMUNICIPIO") = gstrEmpresa_Cidade
                        dr("EMPRESAUF") = gstrEmpresa_UF
                        dr("EMPRESACEP") = GetConfig("empresa.cep")
                        dr("EMPRESA0800") = gstrEmpresa_0800
                        dr("EMPRESAFAX") = GetConfig("empresa.fax")
                        dr("EMPRESAFONE") = GetConfig("empresa.fone")
                        dr("EMPRESAEMAIL") = GetConfig("empresa.email")
                        dr("EMPRESASITE") = gstrEmpresa_Fone

                        vNumNF = dr("NUMNF")

                        dt_1 = FaturaBanco(vNumNF, vCodBarcode)

                    Next dr

                End If


                ds.Tables.Add(dt)
                ds.Tables(0).TableName = "REL_FATURA_EFLUL_GRUPO_B_A"

                dt = repositorioConsumos.Select(objConsumos)

                ds.Tables.Add(dt)
                ds.Tables(1).TableName = "REL_FATURA_EFLUL_GRUPO_B_B"

                ds.Tables.Add(dt_1)
                ds.Tables(2).TableName = "REL_FATURA_EFLUL_BOLETO"

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("Não há registros para o relatório escolhido! ", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    Exit Sub
                Else

                    rpt = New rptFaturaEflulGrupoB_Boleto

                    'rpt.SetDataSource(ds)

                    rpt.SetDataSource(ds)
                    rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, sCaminhoAnexo & "fatura.pdf")

                    'frmViewRelatorios.rpt = rpt

                    'frmViewRelatorios.CRViewer.Zoom((100))
                    'frmViewRelatorios.Text = "Relatório de Impressão de Faturas"
                    'frmViewRelatorios.ShowDialog()

                End If

            End If

        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: lprint" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    'Public Function ExportarDocumento(ByVal tipoFormato As Integer) As Boolean
    '    Dim CrExportOptions As [Shared].ExportOptions
    '    Dim CrDiskFileDestinationOptions As New [Shared].DiskFileDestinationOptions()
    '    Dim CrFormatTypeOptions As New [Shared].PdfRtfWordFormatOptions()
    '    'Dim crystalReport1 As New CrystalReport1

    '    'CrExportOptions = crystalReport1.ExportOptions
    '    'crystalReport1.SetDatabaseLogon("sa", "ilheus10")
    '    With CrExportOptions
    '        .ExportDestinationType = [Shared].ExportDestinationType.DiskFile
    '        'rtf
    '        If tipoFormato = 1 Then
    '            CrDiskFileDestinationOptions.DiskFileName = "C:\documento.doc"
    '            .ExportFormatType = [Shared].ExportFormatType.RichText
    '            'pdf
    '        ElseIf tipoFormato = 2 Then
    '            CrDiskFileDestinationOptions.DiskFileName = "C:\documento.pdf"
    '            .ExportFormatType = [Shared].ExportFormatType.PortableDocFormat
    '        ElseIf tipoFormato = 3 Then
    '            CrDiskFileDestinationOptions.DiskFileName = "C:\documento.xls"
    '            .ExportFormatType = [Shared].ExportFormatType.Excel
    '        End If
    '        .FormatOptions = CrFormatTypeOptions
    '        .DestinationOptions = CrDiskFileDestinationOptions
    '    End With
    '    Try
    '        ' crystalReport1.Export()
    '        Return True
    '    Catch err As Exception
    '        Return False
    '    End Try
    'End Function

    'Private Sub sCarregaTempFatura()

    '    Dim lstrsql As String

    '    Try

    '        lstrsql = "CREATE Table if not exists `temp_fatura_Mail` ("
    '        lstrsql = lstrsql & "`numnf` DOUBLE Not NULL DEFAULT '0',"
    '        lstrsql = lstrsql & "`cfop` DOUBLE(4,3) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`zona` CHAR(3) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`livro` CHAR(2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`conta` VARCHAR(8) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cons_id` INT(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`unid_id` INT(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`rota` VARCHAR(9) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`agenc` VARCHAR(4) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cc` VARCHAR(12) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`valortot` DECIMAL(14,2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`vlrconsutrib` DECIMAL(10,2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`codclas` VARCHAR(4) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`datavenc` DATE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`banco_fatur` VARCHAR(40) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`mesano` VARCHAR(7) Not NULL DEFAULT '',"
    '        lstrsql = lstrsql & "`nomecons` VARCHAR(85) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`refcons` VARCHAR(85) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cgc` VARCHAR(18) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`insc` VARCHAR(50) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dataapr` DATE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dataemissao` DATE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dataproxleit` DATE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dataleit` DATE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dataleitant` DATE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`num_med` VARCHAR(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`const_med` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`fase` CHAR(1) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`codhash` VARCHAR(50) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leit` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`descclasse` VARCHAR(100) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consfaturado` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`conslido` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consresiduo` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`leituraant` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`fp` DOUBLE(3,2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`baseicms` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`aliqicms` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`vlricms` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`baseicms1` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`aliqicms1` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`vlricms1` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`baseicmstotal` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`vlricmstotal` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`basepis` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`aliqpis` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`vlrpis` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`basecofins` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`aliqcofins` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`vlrcofins` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`diasconsumo` INT(11) DEFAULT '0',"
    '        lstrsql = lstrsql & "`vlrdiario` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`mediaconsumodiario` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`maiorconsumo` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`mediaconsumo3meses` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`ocorrencia` VARCHAR(40) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`codbarra` VARCHAR(50) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dvcodbarra` VARCHAR(4) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`mensagem` LONGTEXT,"
    '        lstrsql = lstrsql & "`valorpend` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`totalpend` INT(11) DEFAULT '0',"
    '        lstrsql = lstrsql & "`dec_meta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dec_rea` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`fec_meta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`fec_rea` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dic_meta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dic_rea` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`fic_meta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`fic_rea` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dmic` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dmicM` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dmic_rea` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`refindicador` VARCHAR(7) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cidade` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`distrito` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`bairro` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`rua` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`numero` VARCHAR(10) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`complement` VARCHAR(100) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cep` VARCHAR(10) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`uf` CHAR(2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`quadra` VARCHAR(6) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`lote` VARCHAR(6) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`entrega` INT(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cid_entrega` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`dis_entrega` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`bai_entrega` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`end_entrega` VARCHAR(60) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`num_entrega` VARCHAR(10) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`compl_entrega` VARCHAR(100) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cep_entrega` VARCHAR(10) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`uf_entrega` VARCHAR(2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`qua_entrega` VARCHAR(6) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`lot_entrega` VARCHAR(6) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`cpf_cnpj` VARCHAR(15) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`rg_ie` VARCHAR(50) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`tensao` VARCHAR(7) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`grupo` CHAR(2) DEFAULT 'B',"
    '        lstrsql = lstrsql & "`ta` VARCHAR(6) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`mesmaiorconsumo` VARCHAR(7) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`menorconsumo` VARCHAR(7) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`mesmenorconsumo` VARCHAR(7) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`ordimp` INT(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`auximp` INT(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_kvarh_anterior` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_kvarh_atual` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consumo_kvarh` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`conjunto` VARCHAR(255) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`banident` VARCHAR(40) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`ret_irpj` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`ret_pis` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`ret_csll` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`ret_cofins` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`valorliq` DECIMAL(14,2) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`segvia` INT(1) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`nomemaquina` VARCHAR(255) NOT NULL DEFAULT '',"
    '        lstrsql = lstrsql & "`comp_energia` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`comp_transmissao` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`comp_distribuicao` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`comp_encargos_setoriais` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`comp_perdas` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`comp_tributos` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`comp_outros` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`valorconsumo` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`itensImp` LONGTEXT,"
    '        lstrsql = lstrsql & "`mesanoref` INT(11) DEFAULT '0',"
    '        lstrsql = lstrsql & "`bandeira` INT(11) NOT NULL DEFAULT '3',"
    '        lstrsql = lstrsql & "`leit_irrigante_atual` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`leit_reverso_atual` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`leit_reverso_anter` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`kwh_reverso_res` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`kwh_reverso_lid` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`kwh_reverso_fat` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`mensagem_bandeira` LONGTEXT,"
    '        lstrsql = lstrsql & "`leit_irrigante_anterior` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`kwh_irrigante_lido` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`kwh_irrigante_faturado` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`frenteverso` TINYINT(1) DEFAULT '0',"
    '        lstrsql = lstrsql & "`reaviso_vecto` DATE DEFAULT '0000-00-00',"
    '        lstrsql = lstrsql & "`reaviso_numnf` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`reaviso_valor` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`reaviso_mesano` VARCHAR(7) DEFAULT '',"
    '        lstrsql = lstrsql & "`reaviso_identificador` VARCHAR(13) NOT NULL DEFAULT '',"
    '        lstrsql = lstrsql & "`reaviso_mensagem` LONGTEXT,"
    '        lstrsql = lstrsql & "`irrigacao_aquicultura` TINYINT(1) DEFAULT '0',"
    '        lstrsql = lstrsql & "`livre_verde` TINYINT(1) DEFAULT '0',"
    '        lstrsql = lstrsql & "`micro_geracao` TINYINT(1) DEFAULT '0',"
    '        lstrsql = lstrsql & "`kwh_irrigante_res` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`nome_conjuge` VARCHAR(255) NOT NULL DEFAULT '',"
    '        lstrsql = lstrsql & "`leitura_anter_ponta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_atual_ponta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_anter_inter` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_atual_inter` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_anter_forap` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`leitura_atual_forap` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`residuo_ponta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`residuo_inter` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`residuo_forap` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`tarifa_branca` TINYINT(1) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consumo_ponta` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consumo_inter` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consumo_forap` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`consumoreservado` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`idtipo_bandeira` INT(11) NOT NULL DEFAULT '0',"
    '        lstrsql = lstrsql & "`LeitReservadoAnt` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`LeitReservadoAtu` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`pagto_governo` CHAR(1) NOT NULL DEFAULT 'N',"
    '        lstrsql = lstrsql & "`perdas` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`saldo_arred` DOUBLE DEFAULT '0',"
    '        lstrsql = lstrsql & "`vlrConsumoReservado` DOUBLE DEFAULT NULL,"
    '        lstrsql = lstrsql & "`anomes_fat` INT(11) DEFAULT NULL,"
    '        lstrsql = lstrsql & "`saldoacumulado` DOUBLE Default '0',"
    '        lstrsql = lstrsql & "PRIMARY KEY (`numnf`,`mesano`,`nomemaquina`),"
    '        lstrsql = lstrsql & "KEY `zona` (`zona`),"
    '        lstrsql = lstrsql & "KEY `livro` (`livro`),"
    '        lstrsql = lstrsql & "KEY `conta` (`conta`),"
    '        lstrsql = lstrsql & "KEY `keynumnf` (`numnf`),"
    '        lstrsql = lstrsql & "KEY `keymesano` (`mesano`),"
    '        lstrsql = lstrsql & "KEY `keynomemaquina` (`nomemaquina`),"
    '        lstrsql = lstrsql & "KEY `keyrota` (`rota`),"
    '        lstrsql = lstrsql & "KEY `idx_anomes_fat` (`anomes_fat`)"
    '        lstrsql = lstrsql & ") ENGINE=INNODB DEFAULT CHARSET=latin1"
    '        objExecABD.QUERY_NAME = lstrsql
    '        repExecABD.Execute(objExecABD)

    '    Catch ex As Exception
    '        MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: sCarregaTempFatura" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
    '        Exit Sub
    '    End Try

    'End Sub
    'Private Sub sGeraFaturaGrupoB(ByVal sZlc As String)

    '    Dim vSEGVIA
    '    Dim vNOMEMAQUINA
    '    Dim vNUMNF
    '    Dim vCFOP
    '    Dim vZONA
    '    Dim vLIVRO
    '    Dim vCONTA
    '    Dim vCONS_ID
    '    Dim vUNID_ID
    '    Dim vROTA
    '    Dim vVALORTOT
    '    Dim vVALORLIQ
    '    Dim vCODCLAS
    '    Dim vDATAVENC
    '    Dim vBANIDENT
    '    Dim vBANCO_FATUR
    '    Dim vMESANO
    '    Dim vMESANOREF
    '    Dim vDATAAPR
    '    Dim vDATAEMISSAO
    '    Dim vDATAPROXLEIT
    '    Dim vDATALEIT
    '    Dim vDATALEITANT
    '    Dim vFASE
    '    Dim vTA
    '    Dim vTENSAO
    '    Dim vCODHASH
    '    Dim vCODBARRA
    '    Dim vDVCODBARRA
    '    Dim vDESCCLASSE
    '    Dim vNUM_MED
    '    Dim vCONST_MED
    '    Dim vCPF_CNPJ
    '    Dim vRG_IE
    '    Dim vCGC
    '    Dim vINSC
    '    Dim vAGENC
    '    Dim vCC
    '    Dim vNOMECONS
    '    Dim vREFCONS
    '    Dim vNOME_CONJUGE
    '    Dim vCIDADE
    '    Dim vDISTRITO
    '    Dim vBAIRRO
    '    Dim vRUA
    '    Dim vNUMERO
    '    Dim vCOMPLEMENT
    '    Dim vCEP
    '    Dim vUF
    '    Dim vQUADRA
    '    Dim vLOTE
    '    Dim vENTREGA
    '    Dim vCID_ENTREGA
    '    Dim vDIS_ENTREGA
    '    Dim vBAI_ENTREGA
    '    Dim vEND_ENTREGA
    '    Dim vNUM_ENTREGA
    '    Dim vCOMPL_ENTREGA
    '    Dim vCEP_ENTREGA
    '    Dim vUF_ENTREGA
    '    Dim vQUA_ENTREGA
    '    Dim vLOT_ENTREGA
    '    Dim vGRUPO
    '    Dim vLEIT
    '    Dim vLEITURAANT
    '    Dim vCONSFATURADO
    '    Dim vCONSLIDO
    '    Dim vCONSRESIDUO
    '    Dim vVALORCONSUMO
    '    Dim vDIASCONSUMO
    '    Dim vVLRDIARIO
    '    Dim vMEDIACONSUMODIARIO
    '    Dim vMAIORCONSUMO
    '    Dim vMESMAIORCONSUMO
    '    Dim vMENORCONSUMO
    '    Dim vMESMENORCONSUMO
    '    Dim vMEDIACONSUMO3MESES
    '    Dim vLEIT_REVERSO_ATUAL
    '    Dim vLEIT_REVERSO_ANTER
    '    Dim vKWH_REVERSO_FAT
    '    Dim vKWH_REVERSO_RES
    '    Dim vKWH_REVERSO_LID
    '    Dim vMICRO_GERACAO
    '    Dim vLEIT_IRRIGANTE_ATUAL
    '    Dim vLEIT_IRRIGANTE_ANTERIOR
    '    Dim vKWH_IRRIGANTE_FATURADO
    '    Dim vKWH_IRRIGANTE_LIDO
    '    Dim vIRRIGACAO_AQUICULTURA
    '    Dim vTARIFA_BRANCA
    '    Dim vLEITURA_ANTER_PONTA
    '    Dim vLEITURA_ATUAL_PONTA
    '    Dim vLEITURA_ANTER_INTER
    '    Dim vLEITURA_ATUAL_INTER
    '    Dim vLEITURA_ANTER_FORAP
    '    Dim vLEITURA_ATUAL_FORAP
    '    Dim vRESIDUO_PONTA
    '    Dim vRESIDUO_INTER
    '    Dim vRESIDUO_FORAP
    '    Dim vCONSUMO_PONTA
    '    Dim vCONSUMO_INTER
    '    Dim vCONSUMO_FORAP
    '    Dim vBASEICMS
    '    Dim vALIQICMS
    '    Dim vVLRICMS
    '    Dim vBASEICMS1
    '    Dim vALIQICMS1
    '    Dim vVLRICMS1
    '    Dim vBASEPIS
    '    Dim vALIQPIS
    '    Dim vVLRPIS
    '    Dim vBASECOFINS
    '    Dim vALIQCOFINS
    '    Dim vVLRCOFINS
    '    Dim vVLRCONSUTRIB
    '    Dim vBASEICMSTOTAL
    '    Dim vVLRICMSTOTAL
    '    Dim vDEC_META
    '    Dim vFEC_META
    '    Dim vDIC_META
    '    Dim vFIC_META
    '    Dim vDMIC
    '    Dim vDEC_REA
    '    Dim vFEC_REA
    '    Dim vDIC_REA
    '    Dim vFIC_REA
    '    Dim vDMIC_REA
    '    Dim vREFINDICADOR
    '    Dim vRET_IRPJ
    '    Dim vRET_PIS
    '    Dim vRET_CSLL
    '    Dim vRET_COFINS
    '    Dim vCOMP_ENERGIA
    '    Dim vCOMP_TRANSMISSAO
    '    Dim vCOMP_DISTRIBUICAO
    '    Dim vCOMP_ENCARGOS_SETORIAIS
    '    Dim vREAVISO_MENSAGEM
    '    Dim vMENSAGEM
    '    Dim vITENSIMP
    '    Dim vMENSAGEM_BANDEIRA
    '    Dim vBANDEIRA
    '    Dim vFRENTEVERSO
    '    Dim vOCORRENCIA
    '    Dim vSALDOACUMULADO
    '    Dim lstrsql

    '    lstrsql = " SELECT FATURAS.NUMNF             As FATURAS_NUMNF        , "
    '    lstrsql = lstrsql & "FATURAS.CFOP            AS FATURAS_CFOP         , "
    '    lstrsql = lstrsql & "FATURAS.ZONA            As FATURAS_ZONA         , "
    '    lstrsql = lstrsql & "FATURAS.LIVRO           AS FATURAS_LIVRO        ,"
    '    lstrsql = lstrsql & "FATURAS.CONTA           As FATURAS_CONTA        , "
    '    lstrsql = lstrsql & "FATURAS.AGRUPA_ROTA     AS FATURAS_ROTA         , "
    '    lstrsql = lstrsql & "FATURAS.UNID_ID         As FATURAS_UNID_ID      , "
    '    lstrsql = lstrsql & "FATURAS.CONS_ID         AS FATURAS_CONS_ID      , "
    '    lstrsql = lstrsql & "FATURAS.VALORTOT        As FATURAS_VALORTOT     , "
    '    lstrsql = lstrsql & "FATURAS.VALORLIQ        AS FATURAS_VALORLIQ     , "
    '    lstrsql = lstrsql & "FATURAS.CODCLAS         As FATURAS_CODCLAS      , "
    '    lstrsql = lstrsql & "FATURAS.DATAVENC        AS FATURAS_DATAVENC     , "
    '    lstrsql = lstrsql & "FATURAS.BANIDENT        As FATURAS_BANIDENT     , "
    '    lstrsql = lstrsql & "FATURAS.BANCO_FATUR     AS FATURAS_BANCO_FATUR  , "
    '    lstrsql = lstrsql & "FATURAS.MESANO          As FATURAS_MESANO       , "
    '    lstrsql = lstrsql & "FATURAS.MESANO_REF      AS FATURAS_MESANO_REF   , "
    '    lstrsql = lstrsql & "FATURAS.DATAAPR         As FATURAS_DATAAPR      ,  "
    '    lstrsql = lstrsql & "FATURAS.DATAEM          AS FATURAS_DATAEM       , "
    '    lstrsql = lstrsql & "FATURAS.DATAPROXLEIT    As FATURAS_DATAPROXLEIT , "
    '    lstrsql = lstrsql & "FATURAS.DATALEIT        AS FATURAS_DATALEIT     , "
    '    lstrsql = lstrsql & "FATURAS.DATALEITANT     As FATURAS_DATALEITANT  , "
    '    lstrsql = lstrsql & "FATURAS.FASE            AS FATURAS_FASE         , "
    '    lstrsql = lstrsql & "FATURAS.TA              As FATURAS_TA           , "
    '    lstrsql = lstrsql & "FATURAS.TENSAO          AS FATURAS_TENSAO       , "
    '    lstrsql = lstrsql & "FATURAS.CODHASH         As FATURAS_CODHASH      , "
    '    lstrsql = lstrsql & "FATURAS.ITENSSERV       AS FATURAS_ITENSSERV    , "
    '    lstrsql = lstrsql & "FATURAS.NSU             As FATURAS_NSU          , "
    '    lstrsql = lstrsql & "FATURAS.CODBARRA        AS FATURAS_CODBARRA     , "
    '    lstrsql = lstrsql & "FATURAS.DVCODBARRA      As FATURAS_DVCODBARRA   , "
    '    lstrsql = lstrsql & "FATURAS.NUM_MED         AS FATURAS_NUM_MED      , "
    '    lstrsql = lstrsql & "FATURAS.CONST_MED       As FATURAS_CONST_MED    , "
    '    lstrsql = lstrsql & "FATURAS.ITENSIMP        AS FATURAS_ITENSIMP     , "
    '    lstrsql = lstrsql & "FATURAS.DIAS            As FATURAS_DIAS         , "
    '    lstrsql = lstrsql & "FATURAS.MENSAGEM_BANDEIRA AS FATURAS_MENSAGEM_BANDEIRA, "
    '    lstrsql = lstrsql & "FATURAS.IRRIGACAO_AQUICULTURA As FATURAS_IRRIGACAO_AQUICULTURA, "
    '    lstrsql = lstrsql & "FATURAS.MICRO_GERACAO AS FATURAS_MICRO_GERACAO, "
    '    lstrsql = lstrsql & "FATURAS.TARIFA_BRANCA As FATURAS_TARIFA_BRANCA, "
    '    lstrsql = lstrsql & "CLASSE.CODIGO           AS CLASSE_CODIGO        , "
    '    lstrsql = lstrsql & "CLASSE.DESCRICAO        As CLASSE_DESCRICAO     , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CPF_CNPJ          AS UC_FATURAMENTO_CPF_CNPJ       , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.INSC              As UC_FATURAMENTO_INSC           , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.RG                AS UC_FATURAMENTO_RG             , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.AGENC             As UC_FATURAMENTO_AGENC          , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CC                AS UC_FATURAMENTO_CC             , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.NOME              As UC_FATURAMENTO_NOME           , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CIDADE            AS UC_FATURAMENTO_CIDADE         , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.DISTRITO          As UC_FATURAMENTO_DISTRITO       , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.BAIRRO            AS UC_FATURAMENTO_BAIRRO         , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.END               As UC_FATURAMENTO_END            , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.NUMERO            AS UC_FATURAMENTO_NUMERO         , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.COMPLEMENT        As UC_FATURAMENTO_COMPLEMENT     , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CEP               AS UC_FATURAMENTO_CEP            , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.UF                As UC_FATURAMENTO_UF             , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.QUADRA            AS UC_FATURAMENTO_QUADRA         , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.LOTE              As UC_FATURAMENTO_LOTE           , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.ENTREGA           AS UC_FATURAMENTO_ENTREGA        , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CID_ENTREGA       As UC_FATURAMENTO_CID_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.DIS_ENTREGA       AS UC_FATURAMENTO_DIS_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.BAI_ENTREGA       As UC_FATURAMENTO_BAI_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.END_ENTREGA       AS UC_FATURAMENTO_END_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.NUM_ENTREGA       As UC_FATURAMENTO_NUM_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.COMPL_ENTREGA     AS UC_FATURAMENTO_COMPL_ENTREGA  ,"
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CEP_ENTREGA       As UC_FATURAMENTO_CEP_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.UF_ENTREGA        AS UC_FATURAMENTO_UF_ENTREGA     ,"
    '    lstrsql = lstrsql & "UC_FATURAMENTO.QUA_ENTREGA       As UC_FATURAMENTO_QUA_ENTREGA    , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.LOT_ENTREGA       AS UC_FATURAMENTO_LOT_ENTREGA    ,"
    '    lstrsql = lstrsql & "UC_FATURAMENTO.ULTLEIT           As UC_FATURAMENTO_ULTLEIT        , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.LEIT              AS UC_FATURAMENTO_LEIT           ,"
    '    lstrsql = lstrsql & "UC_FATURAMENTO.GRUPO             As UC_FATURAMENTO_GRUPO          , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.REGIAO            AS UC_FATURAMENTO_REGIAO         ,"
    '    lstrsql = lstrsql & "UC_FATURAMENTO.UNID_ID           As UC_FATURAMENTO_UNID_ID        , "
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CONS_ID           AS UC_FATURAMENTO_CONS_ID        ,"
    '    lstrsql = lstrsql & "UC_FATURAMENTO.CONJUGE_FATURA    As UC_FATURAMENTO_CONJUGE_FATURA ,"
    '    lstrsql = lstrsql & "CONSUM.NOME             AS CONSUMIDOR_NOME      ,"
    '    lstrsql = lstrsql & "CONSUM.NOME_CONJUGE     As CONSUMIDOR_CONJUGE   , "
    '    lstrsql = lstrsql & "CONSUM.CEP              AS CONSUMIDOR_CEP       ,"
    '    lstrsql = lstrsql & "CONSUM.UF               As CONSUMIDOR_UF        , "
    '    lstrsql = lstrsql & "CONSUM.CGC              AS CONSUMIDOR_CGC       ,"
    '    lstrsql = lstrsql & "CONSUM.INSC             As CONSUMIDOR_INSC      ,     "
    '    lstrsql = lstrsql & "CONSUM.RG               AS CONSUMIDOR_RG        ,     "
    '    lstrsql = lstrsql & "CONSUM.EMAIL            AS CONSUM_EMAIL             "
    '    lstrsql = lstrsql & "FROM NF As FATURAS    LEFT Join UC_FATURAMENTO On (UC_FATURAMENTO.ID = FATURAS.UNID_ID)    "
    '    lstrsql = lstrsql & "Left Join CONSUM ON(CONSUM.CONSREG =  FATURAS.CONS_ID)"
    '    lstrsql = lstrsql & "Left Join CLASSE ON(CLASSE.CODIGO =  FATURAS.CODCLAS)"
    '    lstrsql = lstrsql & "WHERE 1 = 1 "
    '    ' lstrsql = lstrsql & lstrSqlRota & lstrSqlZLC & lstrMesAnoRef & lstrsqlGrupo
    '    'And FATURAS.GRUPO = 'B'"
    '    'lstrsql = lstrsql = "And FATURAS.ZONA = '001' "
    '    'lstrsql = lstrsql = "And FATURAS.LIVRO = '15'     "
    '    'lstrsql = lstrsql =  "And FATURAS.CONTA = '247900'     "
    '    'lstrsql = lstrsql = "And FATURAS.MESANO_REF BETWEEN 202110 And 202110"
    '    'lstrsql = lstrsql = "And FATURAS.FATURA_COMPLEMENTAR = 0"
    '    objABD.QUERY_NAME = lstrsql
    '    dt = repABD.Consultar(objABD)

    '    If dt.Rows.Count > 0 Then
    '        For Each row As DataRow In dt.Rows

    '            vSEGVIA = 0
    '            vNOMEMAQUINA = vUsuario.LOGIN
    '            vNUMNF = CDbl(IIf(IsDBNull(row("nunnf")), 0, row("nunnf")))
    '            vCFOP = CDbl(IIf(IsDBNull(row("cfop")), 0, row("cfop")))
    '            vZONA = CDbl(IIf(IsDBNull(row("zona")), 0, row("zona")))
    '            vLIVRO = CDbl(IIf(IsDBNull(row("livro")), 0, row("livro")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("conta")), 0, row("conta")))
    '            vCONS_ID = CDbl(IIf(IsDBNull(row("cons_id")), 0, row("cons_id")))
    '            vUNID_ID = CDbl(IIf(IsDBNull(row("unid_id")), 0, row("unid_id")))
    '            vROTA = CDbl(IIf(IsDBNull(row("rota")), 0, row("rota")))
    '            vVALORTOT = CDbl(IIf(IsDBNull(row("valortot")), 0, row("valortot")))
    '            vVALORLIQ = CDbl(IIf(IsDBNull(row("valorliq")), 0, row("valorliq")))
    '            vCODCLAS = CDbl(IIf(IsDBNull(row("codclas")), 0, row("codclas")))
    '            vDATAVENC = CDbl(IIf(IsDBNull(row("datavenc")), 0, row("datavenc")))
    '            vBANIDENT = CDbl(IIf(IsDBNull(row("banident")), 0, row("banident")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("bancofatur")), 0, row("bancofatur")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("mesano")), 0, row("mesano")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("mesref")), 0, row("mesref")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("dataapr")), 0, row("dataapr")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("dataemissao")), 0, row("dataemissao")))
    '            vDATAPROXLEIT = CDbl(IIf(IsDBNull(row("dataproxLeit")), 0, row("dataproxLeit")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("dataleit")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("dataleitant")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("fase")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("ta")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("tensao")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("codhash")), 0, row("codhash")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("codbarra")), 0, row("codbarra")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("dvcodbarra")), 0, row("dvcodbarra")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("num_med")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("const_med")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("cpf_cnpj")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("rg_ie")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("cgc")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("insc")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("agencia")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("cc")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))
    '            vCONTA = CDbl(IIf(IsDBNull(row("CFOP")), 0, row("CFOP")))

    '        Next
    '    End If

    '    lstrsql = "INSERT INTO temp_fatura_mail  SEGVIA ="
    '    lstrsql = lstrsql & " NOMEMAQUINA ="
    '    lstrsql = lstrsql & " NUMNF ="
    '    lstrsql = lstrsql & " CFOP="
    '    lstrsql = lstrsql & " ZONA="
    '    lstrsql = lstrsql & " LIVRO="
    '    lstrsql = lstrsql & " CONTA="
    '    lstrsql = lstrsql & " CONS_ID="
    '    lstrsql = lstrsql & " UNID_ID="
    '    lstrsql = lstrsql & " ROTA="
    '    lstrsql = lstrsql & " VALORTOT="
    '    lstrsql = lstrsql & " VALORLIQ="
    '    lstrsql = lstrsql & " CODCLAS="
    '    lstrsql = lstrsql & " DATAVENC="
    '    lstrsql = lstrsql & " BANIDENT="
    '    lstrsql = lstrsql & " BANCO_FATUR"
    '    lstrsql = lstrsql & " MESANO"
    '    lstrsql = lstrsql & " MESANOREF"
    '    lstrsql = lstrsql & " DATAAPR"
    '    lstrsql = lstrsql & " DATAEMISSAO"
    '    lstrsql = lstrsql & "DATAPROXLEIT"
    '    lstrsql = lstrsql & "DATALEIT"
    '    lstrsql = lstrsql & "DATALEITANT"
    '    lstrsql = lstrsql & "FASE"
    '    lstrsql = lstrsql & "TA"
    '    lstrsql = lstrsql & "TENSAO"
    '    lstrsql = lstrsql & "CODHASH"
    '    lstrsql = lstrsql & "CODBARRA"
    '    lstrsql = lstrsql & "DVCODBARRA"
    '    lstrsql = lstrsql & "DESCCLASSE"
    '    lstrsql = lstrsql & "NUM_MED"
    '    lstrsql = lstrsql & "CONST_MED"
    '    lstrsql = lstrsql & "CPF_CNPJ"
    '    lstrsql = lstrsql & "RG_IE"
    '    lstrsql = lstrsql & "CGC"
    '    lstrsql = lstrsql & "INSC"
    '    lstrsql = lstrsql & "AGENC"
    '    lstrsql = lstrsql & "CC"
    '    lstrsql = lstrsql & "NOMECONS"
    '    lstrsql = lstrsql & "REFCONS"
    '    lstrsql = lstrsql & "NOME_CONJUGE"
    '    lstrsql = lstrsql & "CIDADE"
    '    lstrsql = lstrsql & "DISTRITO"
    '    lstrsql = lstrsql & "BAIRRO"
    '    lstrsql = lstrsql & "RUA"
    '    lstrsql = lstrsql & "NUMERO"
    '    lstrsql = lstrsql & "COMPLEMENT"
    '    lstrsql = lstrsql & "CEP"
    '    lstrsql = lstrsql & "UF"
    '    lstrsql = lstrsql & "QUADRA"
    '    lstrsql = lstrsql & "LOTE"
    '    lstrsql = lstrsql & "ENTREGA"
    '    lstrsql = lstrsql & "CID_ENTREGA"
    '    lstrsql = lstrsql & "DIS_ENTREGA"
    '    lstrsql = lstrsql & "BAI_ENTREGA"
    '    lstrsql = lstrsql & "END_ENTREGA"
    '    lstrsql = lstrsql & "NUM_ENTREGA"
    '    lstrsql = lstrsql & "COMPL_ENTREGA"
    '    lstrsql = lstrsql & "CEP_ENTREGA"
    '    lstrsql = lstrsql & "UF_ENTREGA"
    '    lstrsql = lstrsql & "QUA_ENTREGA"
    '    lstrsql = lstrsql & "LOT_ENTREGA"
    '    lstrsql = lstrsql & "GRUPO"
    '    lstrsql = lstrsql & "LEIT"
    '    lstrsql = lstrsql & "LEITURAANT"
    '    lstrsql = lstrsql & "CONSFATURADO"
    '    lstrsql = lstrsql & "CONSLIDO"
    '    lstrsql = lstrsql & "CONSRESIDUO"
    '    lstrsql = lstrsql & "VALORCONSUMO"
    '    lstrsql = lstrsql & "DIASCONSUMO"
    '    lstrsql = lstrsql & "VLRDIARIO"
    '    lstrsql = lstrsql & "MEDIACONSUMODIARIO"
    '    lstrsql = lstrsql & "MAIORCONSUMO"
    '    lstrsql = lstrsql & "MESMAIORCONSUMO"
    '    lstrsql = lstrsql & "MENORCONSUMO"
    '    lstrsql = lstrsql & "MESMENORCONSUMO"
    '    lstrsql = lstrsql & "MEDIACONSUMO3MESES"
    '    lstrsql = lstrsql & "LEIT_REVERSO_ATUAL"
    '    lstrsql = lstrsql & "LEIT_REVERSO_ANTER"
    '    lstrsql = lstrsql & "KWH_REVERSO_FAT"
    '    lstrsql = lstrsql & "KWH_REVERSO_RES"
    '    lstrsql = lstrsql & "KWH_REVERSO_LID"
    '    lstrsql = lstrsql & "MICRO_GERACAO"
    '    lstrsql = lstrsql & "LEIT_IRRIGANTE_ATUAL"
    '    lstrsql = lstrsql & "LEIT_IRRIGANTE_ANTERIOR"
    '    lstrsql = lstrsql & "KWH_IRRIGANTE_FATURADO"
    '    lstrsql = lstrsql & "KWH_IRRIGANTE_LIDO"
    '    lstrsql = lstrsql & "IRRIGACAO_AQUICULTURA"
    '    lstrsql = lstrsql & "TARIFA_BRANCA"
    '    lstrsql = lstrsql & "LEITURA_ANTER_PONTA"
    '    lstrsql = lstrsql & "LEITURA_ATUAL_PONTA"
    '    lstrsql = lstrsql & "LEITURA_ANTER_INTER"
    '    lstrsql = lstrsql & "LEITURA_ATUAL_INTER"
    '    lstrsql = lstrsql & "LEITURA_ANTER_FORAP"
    '    lstrsql = lstrsql & "LEITURA_ATUAL_FORAP"
    '    lstrsql = lstrsql & "RESIDUO_PONTA"
    '    lstrsql = lstrsql & "RESIDUO_INTER"
    '    lstrsql = lstrsql & "RESIDUO_FORAP"
    '    lstrsql = lstrsql & "CONSUMO_PONTA"
    '    lstrsql = lstrsql & "CONSUMO_INTER"
    '    lstrsql = lstrsql & "CONSUMO_FORAP"
    '    lstrsql = lstrsql & "BASEICMS"
    '    lstrsql = lstrsql & "ALIQICMS"
    '    lstrsql = lstrsql & "VLRICMS"
    '    lstrsql = lstrsql & "BASEICMS1"
    '    lstrsql = lstrsql & "ALIQICMS1"
    '    lstrsql = lstrsql & "VLRICMS1"
    '    lstrsql = lstrsql & "BASEPIS"
    '    lstrsql = lstrsql & "ALIQPIS"
    '    lstrsql = lstrsql & "VLRPIS"
    '    lstrsql = lstrsql & "BASECOFINS"
    '    lstrsql = lstrsql & "ALIQCOFINS"
    '    lstrsql = lstrsql & "VLRCOFINS"
    '    lstrsql = lstrsql & "VLRCONSUTRIB"
    '    lstrsql = lstrsql & "BASEICMSTOTAL"
    '    lstrsql = lstrsql & "VLRICMSTOTAL"
    '    lstrsql = lstrsql & "DEC_META"
    '    lstrsql = lstrsql & "FEC_META"
    '    lstrsql = lstrsql & "DIC_META"
    '    lstrsql = lstrsql & "FIC_META"
    '    lstrsql = lstrsql & "DMIC"
    '    lstrsql = lstrsql & "DEC_REA"
    '    lstrsql = lstrsql & "FEC_REA"
    '    lstrsql = lstrsql & "DIC_REA"
    '    lstrsql = lstrsql & "FIC_REA"
    '    lstrsql = lstrsql & "DMIC_REA"
    '    lstrsql = lstrsql & "REFINDICADOR"
    '    lstrsql = lstrsql & "RET_IRPJ"
    '    lstrsql = lstrsql & "RET_PIS"
    '    lstrsql = lstrsql & "RET_CSLL"
    '    lstrsql = lstrsql & "RET_COFINS"
    '    lstrsql = lstrsql & "COMP_ENERGIA"
    '    lstrsql = lstrsql & "COMP_TRANSMISSAO"
    '    lstrsql = lstrsql & "COMP_DISTRIBUICAO"
    '    lstrsql = lstrsql & "COMP_ENCARGOS_SETORIAIS"
    '    lstrsql = lstrsql & "REAVISO_MENSAGEM"
    '    lstrsql = lstrsql & "MENSAGEM"
    '    lstrsql = lstrsql & "ITENSIMP"
    '    lstrsql = lstrsql & "MENSAGEM_BANDEIRA"
    '    lstrsql = lstrsql & "BANDEIRA"
    '    lstrsql = lstrsql & "FRENTEVERSO"
    '    lstrsql = lstrsql & "OCORRENCIA"
    '    lstrsql = lstrsql & "SALDOACUMULADO"

    'End Sub
    'Private Sub sGeraFaturaGrupoA()

    'End Sub

    'Private Sub sInseriGrupoA()

    '    Dim lstrsql As String

    '    lstrsql = "INSERT INTO temp_fatura_mail  SEGVIA"
    '    lstrsql = lstrsql & " NOMEMAQUINA ="
    '    lstrsql = lstrsql & " NUMNF ="
    '    lstrsql = lstrsql & " CFOP="
    '    lstrsql = lstrsql & " ZONA="
    '    lstrsql = lstrsql & " LIVRO="
    '    lstrsql = lstrsql & " CONTA="
    '    lstrsql = lstrsql & " CONS_ID="
    '    lstrsql = lstrsql & " UNID_ID="
    '    lstrsql = lstrsql & " ROTA="
    '    lstrsql = lstrsql & " VALORTOT="
    '    lstrsql = lstrsql & " VALORLIQ="
    '    lstrsql = lstrsql & " CODCLAS="
    '    lstrsql = lstrsql & " DATAVENC="
    '    lstrsql = lstrsql & " BANIDENT="
    '    lstrsql = lstrsql & " BANCO_FATUR"
    '    lstrsql = lstrsql & " MESANO"
    '    lstrsql = lstrsql & " MESANOREF"
    '    lstrsql = lstrsql & " DATAAPR"
    '    lstrsql = lstrsql & " DATAEMISSAO"
    '    lstrsql = lstrsql & "DATAPROXLEIT"
    '    lstrsql = lstrsql & "DATALEIT"
    '    lstrsql = lstrsql & "DATALEITANT"
    '    lstrsql = lstrsql & "FASE"
    '    lstrsql = lstrsql & "TA"
    '    lstrsql = lstrsql & "TENSAO"
    '    lstrsql = lstrsql & "CODHASH"
    '    lstrsql = lstrsql & "CODBARRA"
    '    lstrsql = lstrsql & "DVCODBARRA"
    '    lstrsql = lstrsql & "DESCCLASSE"
    '    lstrsql = lstrsql & "NUM_MED"
    '    lstrsql = lstrsql & "CONST_MED"
    '    lstrsql = lstrsql & "CPF_CNPJ"
    '    lstrsql = lstrsql & "RG_IE"
    '    lstrsql = lstrsql & "CGC"
    '    lstrsql = lstrsql & "INSC"
    '    lstrsql = lstrsql & "AGENC"
    '    lstrsql = lstrsql & "CC"
    '    lstrsql = lstrsql & "NOMECONS"
    '    lstrsql = lstrsql & "REFCONS"
    '    lstrsql = lstrsql & "NOME_CONJUGE"
    '    lstrsql = lstrsql & "CIDADE"
    '    lstrsql = lstrsql & "DISTRITO"
    '    lstrsql = lstrsql & "BAIRRO"
    '    lstrsql = lstrsql & "RUA"
    '    lstrsql = lstrsql & "NUMERO"
    '    lstrsql = lstrsql & "COMPLEMENT"
    '    lstrsql = lstrsql & "CEP"
    '    lstrsql = lstrsql & "UF"
    '    lstrsql = lstrsql & "QUADRA"
    '    lstrsql = lstrsql & "LOTE"
    '    lstrsql = lstrsql & "ENTREGA"
    '    lstrsql = lstrsql & "CID_ENTREGA"
    '    lstrsql = lstrsql & "DIS_ENTREGA"
    '    lstrsql = lstrsql & "BAI_ENTREGA"
    '    lstrsql = lstrsql & "END_ENTREGA"
    '    lstrsql = lstrsql & "NUM_ENTREGA"
    '    lstrsql = lstrsql & "COMPL_ENTREGA"
    '    lstrsql = lstrsql & "CEP_ENTREGA"
    '    lstrsql = lstrsql & "UF_ENTREGA"
    '    lstrsql = lstrsql & "QUA_ENTREGA"
    '    lstrsql = lstrsql & "LOT_ENTREGA"
    '    lstrsql = lstrsql & "GRUPO"
    '    lstrsql = lstrsql & "LEIT"
    '    lstrsql = lstrsql & "LEITURAANT"
    '    lstrsql = lstrsql & "CONSFATURADO"
    '    lstrsql = lstrsql & "CONSLIDO"
    '    lstrsql = lstrsql & "CONSRESIDUO"
    '    lstrsql = lstrsql & "VALORCONSUMO"
    '    lstrsql = lstrsql & "DIASCONSUMO"
    '    lstrsql = lstrsql & "VLRDIARIO"
    '    lstrsql = lstrsql & "MEDIACONSUMODIARIO"
    '    lstrsql = lstrsql & "MAIORCONSUMO"
    '    lstrsql = lstrsql & "MESMAIORCONSUMO"
    '    lstrsql = lstrsql & "MENORCONSUMO"
    '    lstrsql = lstrsql & "MESMENORCONSUMO"
    '    lstrsql = lstrsql & "MEDIACONSUMO3MESES"
    '    lstrsql = lstrsql & "LEIT_REVERSO_ATUAL"
    '    lstrsql = lstrsql & "LEIT_REVERSO_ANTER"
    '    lstrsql = lstrsql & "KWH_REVERSO_FAT"
    '    lstrsql = lstrsql & "KWH_REVERSO_RES"
    '    lstrsql = lstrsql & "KWH_REVERSO_LID"
    '    lstrsql = lstrsql & "MICRO_GERACAO"
    '    lstrsql = lstrsql & "LEIT_IRRIGANTE_ATUAL"
    '    lstrsql = lstrsql & "LEIT_IRRIGANTE_ANTERIOR"
    '    lstrsql = lstrsql & "KWH_IRRIGANTE_FATURADO"
    '    lstrsql = lstrsql & "KWH_IRRIGANTE_LIDO"
    '    lstrsql = lstrsql & "IRRIGACAO_AQUICULTURA"
    '    lstrsql = lstrsql & "TARIFA_BRANCA"
    '    lstrsql = lstrsql & "LEITURA_ANTER_PONTA"
    '    lstrsql = lstrsql & "LEITURA_ATUAL_PONTA"
    '    lstrsql = lstrsql & "LEITURA_ANTER_INTER"
    '    lstrsql = lstrsql & "LEITURA_ATUAL_INTER"
    '    lstrsql = lstrsql & "LEITURA_ANTER_FORAP"
    '    lstrsql = lstrsql & "LEITURA_ATUAL_FORAP"
    '    lstrsql = lstrsql & "RESIDUO_PONTA"
    '    lstrsql = lstrsql & "RESIDUO_INTER"
    '    lstrsql = lstrsql & "RESIDUO_FORAP"
    '    lstrsql = lstrsql & "CONSUMO_PONTA"
    '    lstrsql = lstrsql & "CONSUMO_INTER"
    '    lstrsql = lstrsql & "CONSUMO_FORAP"
    '    lstrsql = lstrsql & "BASEICMS"
    '    lstrsql = lstrsql & "ALIQICMS"
    '    lstrsql = lstrsql & "VLRICMS"
    '    lstrsql = lstrsql & "BASEICMS1"
    '    lstrsql = lstrsql & "ALIQICMS1"
    '    lstrsql = lstrsql & "VLRICMS1"
    '    lstrsql = lstrsql & "BASEPIS"
    '    lstrsql = lstrsql & "ALIQPIS"
    '    lstrsql = lstrsql & "VLRPIS"
    '    lstrsql = lstrsql & "BASECOFINS"
    '    lstrsql = lstrsql & "ALIQCOFINS"
    '    lstrsql = lstrsql & "VLRCOFINS"
    '    lstrsql = lstrsql & "VLRCONSUTRIB"
    '    lstrsql = lstrsql & "BASEICMSTOTAL"
    '    lstrsql = lstrsql & "VLRICMSTOTAL"
    '    lstrsql = lstrsql & "DEC_META"
    '    lstrsql = lstrsql & "FEC_META"
    '    lstrsql = lstrsql & "DIC_META"
    '    lstrsql = lstrsql & "FIC_META"
    '    lstrsql = lstrsql & "DMIC"
    '    lstrsql = lstrsql & "DEC_REA"
    '    lstrsql = lstrsql & "FEC_REA"
    '    lstrsql = lstrsql & "DIC_REA"
    '    lstrsql = lstrsql & "FIC_REA"
    '    lstrsql = lstrsql & "DMIC_REA"
    '    lstrsql = lstrsql & "REFINDICADOR"
    '    lstrsql = lstrsql & "RET_IRPJ"
    '    lstrsql = lstrsql & "RET_PIS"
    '    lstrsql = lstrsql & "RET_CSLL"
    '    lstrsql = lstrsql & "RET_COFINS"
    '    lstrsql = lstrsql & "COMP_ENERGIA"
    '    lstrsql = lstrsql & "COMP_TRANSMISSAO"
    '    lstrsql = lstrsql & "COMP_DISTRIBUICAO"
    '    lstrsql = lstrsql & "COMP_ENCARGOS_SETORIAIS"
    '    lstrsql = lstrsql & "REAVISO_MENSAGEM"
    '    lstrsql = lstrsql & "MENSAGEM"
    '    lstrsql = lstrsql & "ITENSIMP"
    '    lstrsql = lstrsql & "MENSAGEM_BANDEIRA"
    '    lstrsql = lstrsql & "BANDEIRA"
    '    lstrsql = lstrsql & "FRENTEVERSO"
    '    lstrsql = lstrsql & "OCORRENCIA"
    '    lstrsql = lstrsql & "SALDOACUMULADO"
    'End Sub

    Private Function lUpdate(ByRef objConcorte As entidadeConcorte) As Boolean
        Dim repositorioConcorte As New repositorioConcorte
        Try

            repositorioConcorte.Update(objConcorte)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lUpdate" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lUpdate(ByRef objTempFaturaA As entidadeTempFaturaA) As Boolean
        Dim repositorioTempFaturaA As New repositorioTempFaturaA
        Try

            repositorioTempFaturaA.Update(objTempFaturaA)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lUpdate" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lUpdate(ByRef objTempFatura As entidadeTempFatura) As Boolean
        Dim repositorioTempFatura As New repositorioTempFatura
        Try

            repositorioTempFatura.Update(objTempFatura)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lUpdate" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lUpdate_1(ByRef objTempFatura As entidadeTempFatura) As Boolean
        Dim repositorioTempFatura As New repositorioTempFatura
        Try

            repositorioTempFatura.Update_1(objTempFatura)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lUpdate_1" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lDelete(ByRef objConsumos As entidadeConsumos) As Boolean
        Dim repositorioConsumos As New repositorioConsumos
        Try

            repositorioConsumos.Delete(objConsumos)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lDelete" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lDelete(ByRef objTempFaturaA As entidadeTempFaturaA) As Boolean
        Dim repositorioTempFaturaA As New repositorioTempFaturaA
        Try

            repositorioTempFaturaA.Delete(objTempFaturaA)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lDelete" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lDelete(ByRef objTempHistFaturaA As entidadeTempHistFaturaA) As Boolean
        Dim repositorioTempHistFaturaA As New repositorioTempHistFaturaA
        Try

            repositorioTempHistFaturaA.Delete(objTempHistFaturaA)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lDelete" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lDelete(ByRef objTempFatura As entidadeTempFatura) As Boolean
        Dim repositorioTempFatura As New repositorioTempFatura
        Try

            repositorioTempFatura.Delete(objTempFatura)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lDelete" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lInsert(ByRef objConsumos As entidadeConsumos) As Boolean
        Dim repositorioConsumos As New repositorioConsumos
        Try

            repositorioConsumos.Insert_1(objConsumos)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lInsert" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lInsert(ByRef objTempFaturaA As entidadeTempFaturaA) As Boolean
        Dim repositorioTempFaturaA As New repositorioTempFaturaA
        Try

            repositorioTempFaturaA.Insert(objTempFaturaA)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lInsert" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Function lInsert(ByRef objTempFatura As entidadeTempFatura) As Boolean
        Dim repositorioTempFatura As New repositorioTempFatura
        Try

            repositorioTempFatura.Insert(objTempFatura)

            Return True
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lInsert" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Return False
            Exit Function
        End Try
    End Function

    Private Sub chkref_CheckedChanged(sender As Object, e As EventArgs) Handles chkref.CheckedChanged
        Try
            If chkref.Checked Then
                grbRef.Enabled = True
            Else
                grbRef.Enabled = False
            End If
        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: chkref_CheckedChanged" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

    Private Sub cmdfecharinfo_Click(sender As Object, e As EventArgs) Handles cmdfecharinfo.Click
        pnlinformacao.Visible = False
        'pnlgeral.Enabled = True
        cmdLocalizar.Enabled = True
        cmdGerar.Enabled = True
        cmdLocalizaReimpressao.Enabled = True
    End Sub

    Private Sub lstMail_ItemChecked(sender As Object, e As ItemCheckedEventArgs) Handles lstMail.ItemChecked
        'Dim alistitem As System.Windows.Forms.ListViewItem = lstMail.Items(e.Item.Index)
        'Dim lintlinhas As Short
        'Try
        '    With Me.lstMail

        'MsgBox("teste")

        '        'If .Items.Item(alistitem).SubItems(4).Text = "" Then
        '        '    .Items.Item(alistitem).Checked = 0
        '        'End If
        '        'If alistitem.Text = "todas as zlc" Then
        '        'If .Items.Item(1).Checked = True Then
        '        '        For lintlinhas = 1 To .Items.Count - 1
        '        '            .Items.Item(lintlinhas).Checked = True
        '        '        Next lintlinhas
        '        '    ElseIf .Items.Item(1).Checked = False Then
        '        '        For lintlinhas = 1 To .Items.Count - 1
        '        '            .Items.Item(lintlinhas).Checked = False
        '        '        Next lintlinhas
        '        '    End If
        '        'Else
        '        'If alistitem.Checked = False Then
        '        '.Items.Item(1).Checked = False
        '        'End If
        '        'End If
        '    End With
        'Catch ex As Exception
        '    MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: lsvrotas_itemcheck" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
        '    Exit Sub
        'End Try
    End Sub

    Private Sub RefazConsumos(ByVal alngConsId As Integer, ByVal alngUnidId As Integer, ByVal astrZona As String, ByVal astrLivro As String, ByVal astrConta As String, ByVal astrMesAno As String)

        Dim llngDia As Integer
        Dim ldteAtu As Date
        Dim ldteAnt As Date
        Dim lstrLei As String
        Dim lstrMes As String
        Dim lstrMesAnoCanc As String
        Dim ldblCon As Double
        Dim ldtePgt As Date
        Dim lstrPgt As String
        Dim ldblVlr As Double
        Dim lstrOco As String
        Dim ldblMed As Double
        Dim lstrIte As String
        Dim lintCtl As Short

        Dim objConsumos As New entidadeConsumos

        Dim objNf As New entidadeNf
        Dim repositorioNf As New repositorioNf

        Dim vlist

        Try

            objConsumos.ZONA = IIf(String.IsNullOrEmpty(astrZona), String.Empty, astrZona)
            objConsumos.LIVRO = IIf(String.IsNullOrEmpty(astrLivro), String.Empty, astrLivro)
            objConsumos.CONTA = IIf(String.IsNullOrEmpty(astrConta), String.Empty, astrConta)
            objConsumos.UNID_ID = alngUnidId

            lDelete(objConsumos)

            lintCtl = 12

            objNf.ZONA = IIf(String.IsNullOrEmpty(astrZona), String.Empty, astrZona)
            objNf.LIVRO = IIf(String.IsNullOrEmpty(astrLivro), String.Empty, astrLivro)
            objNf.CONTA = IIf(String.IsNullOrEmpty(astrConta), String.Empty, astrConta)
            objNf.CONS_ID = alngConsId
            objNf.UNID_ID = alngUnidId
            objNf.MESANO = IIf(String.IsNullOrEmpty(astrMesAno), String.Empty, astrMesAno)

            vlist = repositorioNf.Select_7(objNf)

            If vlist.Count <> 0 Then

                If vlist.Count = 1 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                    objConsumos.DIAS5 = 0
                    objConsumos.LEIT5 = 0
                    objConsumos.MESANO5 = " "
                    objConsumos.CONSUMO5 = 0
                    objConsumos.DATAPAG5 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR5 = 0
                    objConsumos.OCORRENCIA5 = " "
                    objConsumos.MEDIA5 = " "

                    objConsumos.DIAS6 = 0
                    objConsumos.LEIT6 = 0
                    objConsumos.MESANO6 = " "
                    objConsumos.CONSUMO6 = 0
                    objConsumos.DATAPAG6 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR6 = 0
                    objConsumos.OCORRENCIA6 = " "
                    objConsumos.MEDIA6 = " "

                    objConsumos.DIAS7 = 0
                    objConsumos.LEIT7 = 0
                    objConsumos.MESANO7 = " "
                    objConsumos.CONSUMO7 = 0
                    objConsumos.DATAPAG7 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR7 = 0
                    objConsumos.OCORRENCIA7 = " "
                    objConsumos.MEDIA7 = " "

                    objConsumos.DIAS8 = 0
                    objConsumos.LEIT8 = 0
                    objConsumos.MESANO8 = " "
                    objConsumos.CONSUMO8 = 0
                    objConsumos.DATAPAG8 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR8 = 0
                    objConsumos.OCORRENCIA8 = " "
                    objConsumos.MEDIA8 = " "

                    objConsumos.DIAS9 = 0
                    objConsumos.LEIT9 = 0
                    objConsumos.MESANO9 = " "
                    objConsumos.CONSUMO9 = 0
                    objConsumos.DATAPAG9 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR9 = 0
                    objConsumos.OCORRENCIA9 = " "
                    objConsumos.MEDIA9 = " "

                    objConsumos.DIAS10 = 0
                    objConsumos.LEIT10 = 0
                    objConsumos.MESANO10 = " "
                    objConsumos.CONSUMO10 = 0
                    objConsumos.DATAPAG10 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR10 = 0
                    objConsumos.OCORRENCIA10 = " "
                    objConsumos.MEDIA10 = " "


                ElseIf vlist.Count = 2 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                    objConsumos.DIAS5 = 0
                    objConsumos.LEIT5 = 0
                    objConsumos.MESANO5 = " "
                    objConsumos.CONSUMO5 = 0
                    objConsumos.DATAPAG5 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR5 = 0
                    objConsumos.OCORRENCIA5 = " "
                    objConsumos.MEDIA5 = " "

                    objConsumos.DIAS6 = 0
                    objConsumos.LEIT6 = 0
                    objConsumos.MESANO6 = " "
                    objConsumos.CONSUMO6 = 0
                    objConsumos.DATAPAG6 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR6 = 0
                    objConsumos.OCORRENCIA6 = " "
                    objConsumos.MEDIA6 = " "

                    objConsumos.DIAS7 = 0
                    objConsumos.LEIT7 = 0
                    objConsumos.MESANO7 = " "
                    objConsumos.CONSUMO7 = 0
                    objConsumos.DATAPAG7 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR7 = 0
                    objConsumos.OCORRENCIA7 = " "
                    objConsumos.MEDIA7 = " "

                    objConsumos.DIAS8 = 0
                    objConsumos.LEIT8 = 0
                    objConsumos.MESANO8 = " "
                    objConsumos.CONSUMO8 = 0
                    objConsumos.DATAPAG8 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR8 = 0
                    objConsumos.OCORRENCIA8 = " "
                    objConsumos.MEDIA8 = " "

                    objConsumos.DIAS9 = 0
                    objConsumos.LEIT9 = 0
                    objConsumos.MESANO9 = " "
                    objConsumos.CONSUMO9 = 0
                    objConsumos.DATAPAG9 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR9 = 0
                    objConsumos.OCORRENCIA9 = " "
                    objConsumos.MEDIA9 = " "


                ElseIf vlist.Count = 3 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                    objConsumos.DIAS5 = 0
                    objConsumos.LEIT5 = 0
                    objConsumos.MESANO5 = " "
                    objConsumos.CONSUMO5 = 0
                    objConsumos.DATAPAG5 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR5 = 0
                    objConsumos.OCORRENCIA5 = " "
                    objConsumos.MEDIA5 = " "

                    objConsumos.DIAS6 = 0
                    objConsumos.LEIT6 = 0
                    objConsumos.MESANO6 = " "
                    objConsumos.CONSUMO6 = 0
                    objConsumos.DATAPAG6 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR6 = 0
                    objConsumos.OCORRENCIA6 = " "
                    objConsumos.MEDIA6 = " "

                    objConsumos.DIAS7 = 0
                    objConsumos.LEIT7 = 0
                    objConsumos.MESANO7 = " "
                    objConsumos.CONSUMO7 = 0
                    objConsumos.DATAPAG7 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR7 = 0
                    objConsumos.OCORRENCIA7 = " "
                    objConsumos.MEDIA7 = " "

                    objConsumos.DIAS8 = 0
                    objConsumos.LEIT8 = 0
                    objConsumos.MESANO8 = " "
                    objConsumos.CONSUMO8 = 0
                    objConsumos.DATAPAG8 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR8 = 0
                    objConsumos.OCORRENCIA8 = " "
                    objConsumos.MEDIA8 = " "


                ElseIf vlist.Count = 4 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                    objConsumos.DIAS5 = 0
                    objConsumos.LEIT5 = 0
                    objConsumos.MESANO5 = " "
                    objConsumos.CONSUMO5 = 0
                    objConsumos.DATAPAG5 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR5 = 0
                    objConsumos.OCORRENCIA5 = " "
                    objConsumos.MEDIA5 = " "

                    objConsumos.DIAS6 = 0
                    objConsumos.LEIT6 = 0
                    objConsumos.MESANO6 = " "
                    objConsumos.CONSUMO6 = 0
                    objConsumos.DATAPAG6 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR6 = 0
                    objConsumos.OCORRENCIA6 = " "
                    objConsumos.MEDIA6 = " "

                    objConsumos.DIAS7 = 0
                    objConsumos.LEIT7 = 0
                    objConsumos.MESANO7 = " "
                    objConsumos.CONSUMO7 = 0
                    objConsumos.DATAPAG7 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR7 = 0
                    objConsumos.OCORRENCIA7 = " "
                    objConsumos.MEDIA7 = " "


                ElseIf vlist.Count = 5 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                    objConsumos.DIAS5 = 0
                    objConsumos.LEIT5 = 0
                    objConsumos.MESANO5 = " "
                    objConsumos.CONSUMO5 = 0
                    objConsumos.DATAPAG5 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR5 = 0
                    objConsumos.OCORRENCIA5 = " "
                    objConsumos.MEDIA5 = " "

                    objConsumos.DIAS6 = 0
                    objConsumos.LEIT6 = 0
                    objConsumos.MESANO6 = " "
                    objConsumos.CONSUMO6 = 0
                    objConsumos.DATAPAG6 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR6 = 0
                    objConsumos.OCORRENCIA6 = " "
                    objConsumos.MEDIA6 = " "


                ElseIf vlist.Count = 6 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                    objConsumos.DIAS5 = 0
                    objConsumos.LEIT5 = 0
                    objConsumos.MESANO5 = " "
                    objConsumos.CONSUMO5 = 0
                    objConsumos.DATAPAG5 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR5 = 0
                    objConsumos.OCORRENCIA5 = " "
                    objConsumos.MEDIA5 = " "


                ElseIf vlist.Count = 7 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "

                    objConsumos.DIAS4 = 0
                    objConsumos.LEIT4 = 0
                    objConsumos.MESANO4 = " "
                    objConsumos.CONSUMO4 = 0
                    objConsumos.DATAPAG4 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR4 = 0
                    objConsumos.OCORRENCIA4 = " "
                    objConsumos.MEDIA4 = " "

                ElseIf vlist.Count = 8 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "

                    objConsumos.DIAS3 = 0
                    objConsumos.LEIT3 = 0
                    objConsumos.MESANO3 = " "
                    objConsumos.CONSUMO3 = 0
                    objConsumos.DATAPAG3 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR3 = 0
                    objConsumos.OCORRENCIA3 = " "
                    objConsumos.MEDIA3 = " "



                ElseIf vlist.Count = 9 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "

                    objConsumos.DIAS2 = 0
                    objConsumos.LEIT2 = 0
                    objConsumos.MESANO2 = " "
                    objConsumos.CONSUMO2 = 0
                    objConsumos.DATAPAG2 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR2 = 0
                    objConsumos.OCORRENCIA2 = " "
                    objConsumos.MEDIA2 = " "


                ElseIf vlist.Count = 10 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                    objConsumos.DIAS1 = 0
                    objConsumos.LEIT1 = 0
                    objConsumos.MESANO1 = " "
                    objConsumos.CONSUMO1 = 0
                    objConsumos.DATAPAG1 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR1 = 0
                    objConsumos.OCORRENCIA1 = " "
                    objConsumos.MEDIA1 = " "


                ElseIf vlist.Count = 11 Then

                    objConsumos.DIAS0 = 0
                    objConsumos.LEIT0 = 0
                    objConsumos.MESANO0 = " "
                    objConsumos.CONSUMO0 = 0
                    objConsumos.DATAPAG0 = Convert.ToDateTime("01/01/0001")
                    objConsumos.VALOR0 = 0
                    objConsumos.OCORRENCIA0 = " "
                    objConsumos.MEDIA0 = " "

                End If

                For Each objNfFor As entidadeNf In vlist

                    lintCtl = lintCtl - 1

                    ldteAtu = CDate(IIf(IsDBNull(objNfFor.DATALEIT), "1900-01-01", objNfFor.DATALEIT))
                    ldteAnt = CDate(IIf(IsDBNull(objNfFor.DATALEITANT), "1900-01-01", objNfFor.DATALEITANT))
                    llngDia = DateDiff(Microsoft.VisualBasic.DateInterval.Day, ldteAnt, ldteAtu)
                    lstrMes = IIf(IsDBNull(objNfFor.MESANO), String.Empty, objNfFor.MESANO)
                    lstrMesAnoCanc = Trim(IIf(IsDBNull(objNfFor.CANCELADA_MESANO), String.Empty, objNfFor.CANCELADA_MESANO))
                    ldtePgt = CDate(IIf(IsDBNull(objNfFor.DATAPAG), "1900-01-01", objNfFor.DATAPAG))
                    ldblVlr = CDbl(IIf(IsDBNull(objNfFor.VALORTOT), 0, objNfFor.VALORTOT))
                    lstrIte = IIf(IsDBNull(objNfFor.ITENSSERV), String.Empty, objNfFor.ITENSSERV)

                    If CDate(ldtePgt) = CDate("01/01/1900") Or CDate(ldtePgt) = CDate("01/01/0001") Then
                        lstrPgt = "0001-01-01"
                    Else
                        lstrPgt = VB6.Format(ldtePgt, "yyyy-MM-dd")
                    End If

                    If Len(lstrIte) > 0 Then
                        lstrLei = CStr(BuscaVlrItem(lstrIte, "0302990039"))
                        ldblCon = Arredondar(BuscaVlrItem(lstrIte, "030201008"), 0)
                        If InStr(1, lstrIte, "90410000") > 0 Then
                            lstrOco = Mid(lstrIte, InStr(1, lstrIte, "90410000"), 10)
                            ldblMed = BuscaVlrItem(lstrIte, lstrOco)
                        Else
                            lstrOco = CStr(0)
                            ldblMed = 0
                        End If
                    Else
                        lstrLei = CStr(0)
                        ldblCon = 0
                        lstrOco = CStr(0)
                        ldblMed = 0
                    End If

                    objConsumos.ZONA = IIf(String.IsNullOrEmpty(astrZona), String.Empty, astrZona)
                    objConsumos.LIVRO = IIf(String.IsNullOrEmpty(astrLivro), String.Empty, astrLivro)
                    objConsumos.CONTA = IIf(String.IsNullOrEmpty(astrConta), String.Empty, astrConta)
                    objConsumos.UNID_ID = alngUnidId
                    objConsumos.CONS_ID = alngConsId

                    If lintCtl = 0 Then

                        objConsumos.DIAS0 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT0 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT0 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO0 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO0 = ldblCon
                        objConsumos.DATAPAG0 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR0 = ldblVlr
                        objConsumos.OCORRENCIA0 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA0 = ldblMed

                    ElseIf lintCtl = 1 Then

                        objConsumos.DIAS1 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT1 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT1 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO1 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO1 = ldblCon
                        objConsumos.DATAPAG1 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR1 = ldblVlr
                        objConsumos.OCORRENCIA1 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA1 = ldblMed



                    ElseIf lintCtl = 2 Then

                        objConsumos.DIAS2 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT2 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT2 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO2 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO2 = ldblCon
                        objConsumos.DATAPAG2 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR2 = ldblVlr
                        objConsumos.OCORRENCIA2 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA2 = ldblMed

                    ElseIf lintCtl = 3 Then

                        objConsumos.DIAS3 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT3 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT3 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO3 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO3 = ldblCon
                        objConsumos.DATAPAG3 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR3 = ldblVlr
                        objConsumos.OCORRENCIA3 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA3 = ldblMed

                    ElseIf lintCtl = 4 Then

                        objConsumos.DIAS4 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT4 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT4 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO4 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO4 = ldblCon
                        objConsumos.DATAPAG4 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR4 = ldblVlr
                        objConsumos.OCORRENCIA4 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA4 = ldblMed

                    ElseIf lintCtl = 5 Then

                        objConsumos.DIAS5 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT5 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT5 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO5 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO5 = ldblCon
                        objConsumos.DATAPAG5 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR5 = ldblVlr
                        objConsumos.OCORRENCIA5 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA5 = ldblMed

                    ElseIf lintCtl = 6 Then

                        objConsumos.DIAS6 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT6 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT6 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO6 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO6 = ldblCon
                        objConsumos.DATAPAG6 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR6 = ldblVlr
                        objConsumos.OCORRENCIA6 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA6 = ldblMed

                    ElseIf lintCtl = 7 Then

                        objConsumos.DIAS7 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT7 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT7 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO7 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO7 = ldblCon
                        objConsumos.DATAPAG7 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR7 = ldblVlr
                        objConsumos.OCORRENCIA7 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA7 = ldblMed


                    ElseIf lintCtl = 8 Then

                        objConsumos.DIAS8 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT8 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT8 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO8 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO8 = ldblCon
                        objConsumos.DATAPAG8 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR8 = ldblVlr
                        objConsumos.OCORRENCIA8 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA8 = ldblMed


                    ElseIf lintCtl = 9 Then

                        objConsumos.DIAS9 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT9 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT9 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO9 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO9 = ldblCon
                        objConsumos.DATAPAG9 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR9 = ldblVlr
                        objConsumos.OCORRENCIA9 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA9 = ldblMed

                    ElseIf lintCtl = 10 Then

                        objConsumos.DIAS10 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT10 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT10 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO10 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO10 = ldblCon
                        objConsumos.DATAPAG10 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR10 = ldblVlr
                        objConsumos.OCORRENCIA10 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA10 = ldblMed

                    ElseIf lintCtl = 11 Then

                        objConsumos.DIAS11 = llngDia

                        If IsNumeric(lstrLei) Then
                            objConsumos.LEIT11 = Arredondar(CDbl(IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)), 0)
                        Else
                            objConsumos.LEIT11 = IIf(String.IsNullOrEmpty(lstrLei), String.Empty, lstrLei)
                        End If

                        objConsumos.MESANO11 = IIf(IIf(String.IsNullOrEmpty(lstrMesAnoCanc), String.Empty, lstrMesAnoCanc) <> String.Empty, lstrMesAnoCanc, lstrMes)
                        objConsumos.CONSUMO11 = ldblCon
                        objConsumos.DATAPAG11 = IIf(String.IsNullOrEmpty(lstrPgt), String.Empty, lstrPgt)
                        objConsumos.VALOR11 = ldblVlr
                        objConsumos.OCORRENCIA11 = CInt(Microsoft.VisualBasic.Right(lstrOco, 2))
                        objConsumos.MEDIA11 = ldblMed

                    End If

                Next

                lInsert(objConsumos)

            End If

        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: RefazConsumos" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Sub MaiorMenorMediaConsumos(ByVal alngUnidId As Integer, ByVal alngConsId As Integer, ByVal adblConsumoAtual As Double, ByRef adblMaior As Double, ByRef adblMenor As Double, ByRef adblMedia As Double, ByRef astrMesMa As String, ByRef astrMesMe As String)

        Dim ldblAcumulado As Double
        Dim lintConta As Short
        Dim ldblConsumo As Double
        Dim lstrItens As String

        Dim vlist

        Dim objNf As New entidadeNf
        Dim repositorioNf As New repositorioNf

        adblMaior = adblConsumoAtual
        adblMenor = adblConsumoAtual

        lintConta = 0
        ldblAcumulado = 0

        Try

            objNf.UNID_ID = alngUnidId
            objNf.CONS_ID = alngConsId

            vlist = repositorioNf.Select_6(objNf)

            If vlist.Count <> 0 Then

                For Each objNfFor As entidadeNf In vlist

                    lstrItens = IIf(IsDBNull(objNfFor.ITENSSERV), String.Empty, objNfFor.ITENSSERV)
                    ldblConsumo = BuscaVlrItem(lstrItens, "030201008")

                    If ldblConsumo > adblMaior Then
                        adblMaior = ldblConsumo
                    End If

                    If ldblConsumo < adblMenor Then
                        adblMenor = ldblConsumo
                    End If

                    lintConta = lintConta + 1

                    If lintConta <= 3 Then
                        ldblAcumulado = ldblAcumulado + ldblConsumo
                    End If

                Next

                adblMedia = Arredondar(ldblAcumulado / 3, 0)

            End If

        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: MaiorMenorMediaConsumos" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Function MontaReaviso(ByVal alngConsId As Integer, ByVal alngUnidId As Integer, ByVal astrZona As String, ByVal astrLivro As String, ByVal astrConta As String, ByVal astrCodClas As String, ByVal adteApresentacao As Date, ByVal adblNumNf As Double, ByVal aintAnoMesFat As Integer) As String

        Dim ldteVencReav As Date
        Dim ldblNumNF As Double
        Dim lstrMesAno As String
        Dim ldblValor As Double
        Dim lstrRetorno As String
        Dim lstrMensagem As String
        Dim lstrSituacao As String

        Dim vlist

        Dim objConcorte As New entidadeConcorte
        Dim repositorioConcorte As New repositorioConcorte

        Try

            lstrRetorno = String.Empty

            If gstrReaviso_na_fatura = "S" Then

                ldteVencReav = System.DateTime.FromOADate(adteApresentacao.ToOADate + 15)

                objConcorte.CONS_ID = alngConsId
                objConcorte.UNID_ID = alngUnidId
                objConcorte.ZONA = astrZona
                objConcorte.LIVRO = astrLivro
                objConcorte.CONTA = astrConta
                objConcorte.FAT_NUMNF = adblNumNf
                objConcorte.FAT_ANOMES_FAT = aintAnoMesFat

                vlist = repositorioConcorte.Select(objConcorte)

                If vlist.Count <> 0 Then

                    For Each objConcorteFor As entidadeConcorte In vlist

                        ldblNumNF = CDbl(IIf(IsDBNull(objConcorteFor.NUMNF), 0, objConcorteFor.NUMNF))
                        lstrMesAno = Trim(IIf(IsDBNull(objConcorteFor.MESANO), String.Empty, objConcorteFor.MESANO))
                        ldblValor = CDbl(IIf(IsDBNull(objConcorteFor.VALOR), 0, objConcorteFor.VALOR))
                        ldteVencReav = CDate(IIf(IsDBNull(objConcorteFor.DATAVENC), "1951-01-01", objConcorteFor.DATAVENC))
                        lstrSituacao = Trim(IIf(IsDBNull(objConcorteFor.SIT), String.Empty, objConcorteFor.SIT))

                        'atualizar o prazo do reaviso na concorte

                        objConcorte.PRAZOREAV = VB6.Format(ldteVencReav, "yyyy-MM-dd")
                        objConcorte.CONS_ID = alngConsId
                        objConcorte.UNID_ID = alngUnidId
                        objConcorte.ZONA = astrZona
                        objConcorte.LIVRO = astrLivro
                        objConcorte.CONTA = astrConta
                        objConcorte.MESANO = lstrMesAno
                        objConcorte.NUMNF = ldblNumNF
                        objConcorte.SIT = lstrSituacao


                        lUpdate(objConcorte)

                        If astrCodClas = 9102 Or astrCodClas = 9105 Then
                            lstrMensagem = "APÓS O RECEBIMENTO DESTE REAVISO DE VENCIMENTO, FICA CONCEDIDO O PRAZO DE 30 DIAS PARA REGULARIZAÇÃO."
                        Else
                            lstrMensagem = "APÓS O RECEBIMENTO DESTE REAVISO DE VENCIMENTO, FICA CONCEDIDO O PRAZO DE 15 DIAS PARA REGULARIZAÇÃO."
                        End If

                        lstrRetorno = String.Empty
                        lstrRetorno = lstrRetorno & "'" & VB6.Format(ldteVencReav, "yyyy-MM-dd") & "'; "
                        lstrRetorno = lstrRetorno & " " & ldblNumNF & "; "
                        lstrRetorno = lstrRetorno & " " & Replace(CStr(ldblValor), ",", ".") & "; "
                        lstrRetorno = lstrRetorno & "'" & lstrMesAno & "'; "
                        lstrRetorno = lstrRetorno & "'" & astrZona & "." & astrLivro & "." & astrConta & "'; "
                        lstrRetorno = lstrRetorno & "'" & lstrMensagem & "'; "

                    Next

                Else
                    lstrRetorno = String.Empty
                    lstrRetorno = lstrRetorno & "0000-00-00; "
                    lstrRetorno = lstrRetorno & "0; "
                    lstrRetorno = lstrRetorno & "0.00; "
                    lstrRetorno = lstrRetorno & "''; "
                    lstrRetorno = lstrRetorno & "''; "
                    lstrRetorno = lstrRetorno & "''; "
                End If

            Else
                lstrRetorno = String.Empty
                lstrRetorno = lstrRetorno & "0000-00-00, "
                lstrRetorno = lstrRetorno & "0, "
                lstrRetorno = lstrRetorno & "0.00, "
                lstrRetorno = lstrRetorno & "'', "
                lstrRetorno = lstrRetorno & "'', "
                lstrRetorno = lstrRetorno & "'', "
            End If

            MontaReaviso = lstrRetorno

        Catch ex As Exception
            Exit Function
        End Try


    End Function

    Private Sub VerificaCriaTempItemFatura(ByVal adblNumNf As Double, ByVal astrMesAnoRef As String, ByVal aintAnoMes_Fat As Integer, ByVal astrGrupo As String)

        Dim objTempItemFatura As New entidadeTempItemFatura
        Dim repositorioTempItemFatura As New repositorioTempItemFatura

        Dim objTempItemFaturaB As New entidadeTempItemFaturaB
        Dim repositorioTempItemFaturaB As New repositorioTempItemFaturaB

        Dim objNf As New entidadeNf
        Dim repositorioNf As New repositorioNf

        Dim dt As DataTable

        Try

            If astrGrupo = "A" Then

                objTempItemFatura.NUMNF = adblNumNf
                objTempItemFatura.MESANO = astrMesAnoRef
                objTempItemFatura.ANOMES_FAT = aintAnoMes_Fat

                dt = repositorioTempItemFatura.SelectCount(objTempItemFatura)

                If Convert.ToInt32(dt.Rows(0).ItemArray(0).ToString()) = 0 Then

                    If istrTabela <> "nf" Then

                        objTempItemFatura.NUMNF = adblNumNf
                        objTempItemFatura.MESANO = astrMesAnoRef
                        objTempItemFatura.ANOMES_FAT = aintAnoMes_Fat

                        repositorioTempItemFatura.Execute(objTempItemFatura)

                    Else

                        objNf.NUMNF = adblNumNf
                        objNf.MESANO_REF = astrMesAnoRef
                        objNf.ANOMES_FAT = aintAnoMes_Fat

                        repositorioNf.Execute(objNf)

                    End If

                End If

            ElseIf astrGrupo = "B" Then

                objTempItemFaturaB.NUMNF = adblNumNf
                objTempItemFaturaB.MESANO = astrMesAnoRef
                objTempItemFaturaB.ANOMES_FAT = aintAnoMes_Fat

                dt = repositorioTempItemFaturaB.SelectCount(objTempItemFaturaB)

                If Convert.ToInt32(dt.Rows(0).ItemArray(0).ToString()) = 0 Then

                    If istrTabela <> "nf" Then

                        objTempItemFaturaB.NUMNF = adblNumNf
                        objTempItemFaturaB.MESANO = astrMesAnoRef
                        objTempItemFaturaB.ANOMES_FAT = aintAnoMes_Fat

                        repositorioTempItemFaturaB.Execute(objTempItemFaturaB)

                    Else

                        objNf.NUMNF = adblNumNf
                        objNf.MESANO_REF = astrMesAnoRef
                        objNf.ANOMES_FAT = aintAnoMes_Fat

                        repositorioNf.Execute_1(objNf)

                    End If

                End If

            End If



        Catch ex As Exception
            MessageBox.Show("ocorreu o erro: " & Err.Description & " - rotina: VerificaCriaTempItemFatura" & "", "aviso de erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try

    End Sub

    Private Function FaturaBanco(ByVal vNumNF As Integer, Optional ByVal sCodBarras As String = "") As DataTable

        Dim dt As New DataTable
        'Dim sNossoNumero As String
        Dim iNossoNumero As Integer

        Dim vImage As Byte()

        ' Carrega a imagem e salva em um array de bytes
        vImage = System.IO.File.ReadAllBytes(GetConfig("imagem.banco.faturas.boleto"))

        'Criacao Coluna
        dt.Columns.Add("NUMNF", GetType(Integer))
        dt.Columns.Add("ACEITE_BANCO", GetType(String))
        dt.Columns.Add("AGENCIA_CODBENEFICIARIO_BANCO", GetType(String))
        dt.Columns.Add("CARTEIRA_BANCO", GetType(String))
        dt.Columns.Add("ESPECIE_BANCO", GetType(String))
        dt.Columns.Add("ESPECIES_BANCO", GetType(String))
        dt.Columns.Add("IMAGE_BANCO", GetType(Byte()))
        dt.Columns.Add("NOME_BANCO", GetType(String))
        dt.Columns.Add("NOSSONUMERO_BANCO", GetType(String))
        dt.Columns.Add("NUMERO_BANCO", GetType(String))

        'Preencher os dados
        If sCodBarras <> "" And sCodBarras <> "0" Then
            iNossoNumero = Mid(sCodBarras, 22, 7)
            dt.Rows.Add(vNumNF, GetConfig("aceite.banco.faturas.boleto"), GetConfig("agencia.codbeneficiario.banco.faturas.boleto"), GetConfig("carteira.banco.faturas.boleto"), GetConfig("especie.banco.faturas.boleto"), GetConfig("especies.banco.faturas.boleto"), vImage, GetConfig("nome.banco.faturas.boleto"), iNossoNumero, GetConfig("numero.banco.faturas.boleto"))
        Else
            dt.Rows.Add(vNumNF, GetConfig("aceite.banco.faturas.boleto"), GetConfig("agencia.codbeneficiario.banco.faturas.boleto"), GetConfig("carteira.banco.faturas.boleto"), GetConfig("especie.banco.faturas.boleto"), GetConfig("especies.banco.faturas.boleto"), vImage, GetConfig("nome.banco.faturas.boleto"), GetConfig("nosso.numero.banco.faturas.boleto"), GetConfig("numero.banco.faturas.boleto"))
        End If

        Return dt

    End Function

    Private Sub LigDes(ByVal ablnModo As Boolean)
        Try
            ' Me.lvsReaviso.Enabled = ablnModo
            Me.txtZona.Enabled = ablnModo
            Me.txtLivro.Enabled = ablnModo
            Me.txtConta.Enabled = ablnModo
            cmdLocalizar.Enabled = ablnModo
            cmdGerar.Enabled = ablnModo
            System.Windows.Forms.Application.DoEvents()
        Catch ex As Exception
            MessageBox.Show("Ocorreu o Erro: " & Err.Description & " - Rotina: LigDes" & "", "Aviso de Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Exit Sub
        End Try
    End Sub

End Class