private void GerarCarne() { using (TFProcLoteContrato fProc = new TFProcLoteContrato()) { fProc.St_gerarCarne = true; if (fProc.ShowDialog() == DialogResult.OK) { if (fProc.lContratos != null) { try { CamadaNegocio.Servicos.TCN_Contrato.GerarCarne(fProc.lContratos, fProc.Dt_referencia, null); MessageBox.Show("Lote processado com sucesso.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); afterBusca(); } catch (Exception ex) { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } }
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); } } } } }