Beispiel #1
0
 private void FaturarLote()
 {
     using (TFProcLoteContrato fProc = new TFProcLoteContrato())
     {
         if (fProc.ShowDialog() == DialogResult.OK)
         {
             if (fProc.lContratos != null)
             {
                 Utils.ThreadEspera tEspera = new Utils.ThreadEspera("Inicio processamento lote.");
                 string             ret     = string.Empty;
                 try
                 {
                     ret = CamadaNegocio.Servicos.TCN_Contrato.ProcessarLote(fProc.lContratos, fProc.Dt_referencia, tEspera, null);
                 }
                 finally
                 {
                     tEspera.Fechar();
                     tEspera = null;
                 }
                 MessageBox.Show("Lote processado com sucesso." + (string.IsNullOrEmpty(ret) ? string.Empty : "\r\nOs seguintes contratos não foram processados:\r\n" + ret.Trim()), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 CamadaDados.Faturamento.NotaFiscal.TList_RegLanFaturamento lLote = new CamadaDados.Faturamento.NotaFiscal.TList_RegLanFaturamento();
                 //Buscar CfgNfe para a empresa
                 CamadaDados.Faturamento.Cadastros.TList_CfgNfe lCfgNfe =
                     CamadaNegocio.Faturamento.Cadastros.TCN_CfgNfe.Buscar(fProc.lContratos[0].Cd_empresa,
                                                                           string.Empty,
                                                                           string.Empty,
                                                                           null);
                 if (lCfgNfe.Count.Equals(0))
                 {
                     MessageBox.Show("Não existe configuração para envio de NFS-e para a empresa " + fProc.lContratos[0].Cd_empresa.Trim() + ".",
                                     "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 }
                 else
                 {
                     fProc.lContratos.ForEach(p =>
                     {
                         if (p.lNF.Count > 0)
                         {
                             if (p.lNF[0].Cd_modelo.Trim().Equals("55"))
                             {
                                 lLote.Add(CamadaNegocio.Faturamento.NotaFiscal.TCN_LanFaturamento.BuscarNF(p.lNF[0].Cd_empresa, p.lNF[0].Nr_lanctofiscalstr, null));
                             }
                         }
                         if (lLote.Count.Equals(50))
                         {
                             NFES.TGerarRPS.CriarArquivoRPS(lCfgNfe[0], lLote);
                             MessageBox.Show("Lote RPS enviado com sucesso. Aguarde alguns segundos e consulte o status do lote.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                             lLote.Clear();
                         }
                     });
                     if (lLote.Count > 0)
                     {
                         NFES.TGerarRPS.CriarArquivoRPS(lCfgNfe[0], lLote);
                         MessageBox.Show("Lote RPS enviado com sucesso. Aguarde alguns segundos e consulte o status do lote.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                     }
                 }
                 //Imprimir boletos
                 CamadaDados.Financeiro.Bloqueto.blListaTitulo lBloq = new CamadaDados.Financeiro.Bloqueto.blListaTitulo();
                 fProc.lContratos.ForEach(p =>
                 {
                     if (p.lNF.Count > 0)
                     {
                         if (p.lNF[0].Duplicata.Count > 0)
                         {
                             CamadaNegocio.Financeiro.Bloqueto.TCN_Titulo.Buscar(p.lNF[0].Cd_empresa,
                                                                                 p.lNF[0].Duplicata[0].Nr_lancto,
                                                                                 decimal.Zero,
                                                                                 decimal.Zero,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 decimal.Zero,
                                                                                 decimal.Zero,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 string.Empty,
                                                                                 false,
                                                                                 0,
                                                                                 null).ForEach(v => lBloq.Add(v));
                         }
                     }
                 });
                 if (lBloq.Count > 0)
                 {
                     FormRelPadrao.TCN_LayoutBloqueto.Imprime_Bloqueto(false,
                                                                       lBloq,
                                                                       false,
                                                                       true,
                                                                       false,
                                                                       false,
                                                                       string.Empty,
                                                                       null,
                                                                       "BLOQUETO(S) CONTRATO SERVIÇO",
                                                                       string.Empty,
                                                                       false);
                 }
             }
         }
     }
 }
Beispiel #2
0
 private void bbImpBoleto_Click(object sender, EventArgs e)
 {
     if (bsParcelas.Current != null)
     {
         if (string.IsNullOrEmpty((bsParcelas.Current as CamadaDados.Financeiro.Duplicata.TRegistro_LanParcela).Nossonumero))
         {
             MessageBox.Show("Parcela não possui boleto vinculado para emitir.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             return;
         }
         CamadaDados.Financeiro.Bloqueto.blListaTitulo lBoleto = CamadaNegocio.Financeiro.Bloqueto.TCN_Titulo.Buscar((bsParcelas.Current as CamadaDados.Financeiro.Duplicata.TRegistro_LanParcela).Cd_empresa,
                                                                                                                     (bsParcelas.Current as CamadaDados.Financeiro.Duplicata.TRegistro_LanParcela).Nr_lancto.Value,
                                                                                                                     (bsParcelas.Current as CamadaDados.Financeiro.Duplicata.TRegistro_LanParcela).Cd_parcela.Value,
                                                                                                                     decimal.Zero,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     decimal.Zero,
                                                                                                                     decimal.Zero,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     string.Empty,
                                                                                                                     false,
                                                                                                                     1,
                                                                                                                     null);
         if (lBoleto.Count > 0)
         {
             if (!Altera_Relatorio)
             {
                 //Chamar tela de impressao para o bloqueto
                 using (FormRelPadrao.TFGerenciadorImpressao fImp = new FormRelPadrao.TFGerenciadorImpressao())
                 {
                     fImp.St_enabled_enviaremail = true;
                     fImp.pCd_clifor             = lBoleto[0].Cd_sacado;
                     fImp.pMensagem = "BLOQUETO Nº" + lBoleto[0].Nosso_numero.Trim();
                     if ((fImp.ShowDialog() == DialogResult.OK) || (fImp.pSt_enviaremail))
                     {
                         FormRelPadrao.TCN_LayoutBloqueto.Imprime_Bloqueto(Altera_Relatorio,
                                                                           lBoleto,
                                                                           fImp.pSt_imprimir,
                                                                           fImp.pSt_visualizar,
                                                                           fImp.pSt_enviaremail,
                                                                           fImp.pSt_exportPdf,
                                                                           fImp.Path_exportPdf,
                                                                           fImp.pDestinatarios,
                                                                           "BLOQUETO Nº " + lBoleto[0].Nosso_numero,
                                                                           fImp.pDs_mensagem,
                                                                           false);
                     }
                 }
             }
             else
             {
                 FormRelPadrao.TCN_LayoutBloqueto.Imprime_Bloqueto(Altera_Relatorio,
                                                                   lBoleto,
                                                                   false,
                                                                   false,
                                                                   false,
                                                                   false,
                                                                   string.Empty,
                                                                   null,
                                                                   string.Empty,
                                                                   string.Empty,
                                                                   false);
             }
         }
         Altera_Relatorio = false;
     }
 }
Beispiel #3
0
        private void LancarFinanceiro()
        {
            if (bsEmpreendimento.Current != null)
            {
                if ((bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).St_registro.Trim().ToUpper().Equals("A"))
                {
                    using (TFLanDuplicata fDuplicata = new TFLanDuplicata())
                    {
                        fDuplicata.vCd_empresa = (bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).Cd_empresa;
                        fDuplicata.vNm_empresa = (bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).Nm_empresa;

                        fDuplicata.cd_empresa.Enabled = false;
                        fDuplicata.bb_empresa.Enabled = false;
                        fDuplicata.St_empreendimento  = true;
                        if (fDuplicata.ShowDialog() == DialogResult.OK)
                        {
                            //Ratear Centro de Custo
                            if (CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVL_Bool("CRESULTADO_PROVISAO",
                                                                                     (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Cd_empresa,
                                                                                     null).Trim().ToUpper().Equals("S"))
                            {
                                using (TFRateioCResultado fRateio = new TFRateioCResultado())
                                {
                                    fRateio.vVl_Documento = (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Vl_documento_padrao;
                                    //fDupCCusto.Id_empreendimento = (bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).Id_empreendimento.Value.ToString();
                                    fRateio.Tp_mov = (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Tp_mov;
                                    fRateio.ShowDialog();
                                    (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).lCustoLancto    = fRateio.lCResultado;
                                    (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).lCustoLanctoDel = fRateio.lCResultadoDel;
                                }
                            }
                            try
                            {
                                string ret = TCN_LanDuplicata.GravarDuplicata((fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata), false, null);
                                if (ret.Trim() != "")
                                {
                                    string lan = CamadaDados.TDataQuery.getPubVariavel(ret, "@P_NR_LANCTO");

                                    MessageBox.Show("Lançamento Financeiro nr:" + lan + " Gravado com Sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);

                                    CamadaDados.Financeiro.Bloqueto.blListaTitulo lBloqueto =
                                        CamadaNegocio.Financeiro.Bloqueto.TCN_Titulo.Buscar((fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Cd_empresa,
                                                                                            (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Nr_lancto,
                                                                                            decimal.Zero,
                                                                                            decimal.Zero,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            decimal.Zero,
                                                                                            decimal.Zero,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            false,
                                                                                            0,
                                                                                            null);
                                    if (lBloqueto.Count > 0)
                                    {
                                        //Chamar tela de impressao para o bloqueto
                                        using (TFGerenciadorImpressao fImp = new TFGerenciadorImpressao())
                                        {
                                            fImp.St_enabled_enviaremail = true;
                                            fImp.pCd_clifor             = (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Cd_clifor;
                                            fImp.pMensagem = "BLOQUETOS DO DOCUMENTO Nº" + (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Nr_docto;
                                            if ((fImp.ShowDialog() == DialogResult.OK) || (fImp.pSt_enviaremail))
                                            {
                                                TCN_LayoutBloqueto.Imprime_Bloqueto(false,
                                                                                    lBloqueto,
                                                                                    fImp.pSt_imprimir,
                                                                                    fImp.pSt_visualizar,
                                                                                    fImp.pSt_enviaremail,
                                                                                    fImp.pSt_exportPdf,
                                                                                    fImp.Path_exportPdf,
                                                                                    fImp.pDestinatarios,
                                                                                    "BLOQUETO(S) DO DOCUMENTO Nº " + (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Nr_docto,
                                                                                    fImp.pDs_mensagem,
                                                                                    false);
                                            }
                                        }
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.Message.Trim());
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Não é permitido lançar financeiro para empreendimento com status diferente <ATIVO>.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            else
            {
                MessageBox.Show("Necessario selecionar empreendimento para lançar financeiro.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }