Ejemplo n.º 1
0
 public override void afterNovo()
 {
     if ((vTP_Modo == TTpModo.tm_busca) || (vTP_Modo == TTpModo.tm_Standby))
     {
         base.afterNovo();
         if (tcCentral.SelectedIndex == 0)
         {
             BS_Cotacao.AddNew();
             BS_Cotacao.ResetCurrentItem();
             if (!(CD_Clifor.Focus()))
             {
                 CD_Clifor.Focus();
             }
             habilitarCombo(true);
         }
         else
         {
             BS_Cotacao_Item.AddNew();
             BS_Cotacao.ResetCurrentItem();
             pDadosCotacaoItem.HabilitarControls(true, this.vTP_Modo);
             pDadosAdicionais.HabilitarControls(true, this.vTP_Modo);
             ST_Cotacao_Item.Enabled = true;
             if (!(Cd_Produto.Focus()))
             {
                 Cd_Produto.Focus();
             }
         }
     }
 }
Ejemplo n.º 2
0
 private void afterGrava()
 {
     if (string.IsNullOrEmpty(CD_Clifor.Text) && string.IsNullOrEmpty(NM_Clifor.Text))
     {
         MessageBox.Show("Obrigatorio informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Clifor.Focus();
         return;
     }
     if (string.IsNullOrEmpty(data_agendamento.SoNumero()))
     {
         MessageBox.Show("Obrigatorio informar data agendamento.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         data_agendamento.Focus();
         return;
     }
     if (string.IsNullOrEmpty(hora_agendamento.SoNumero()))
     {
         MessageBox.Show("Obrigatorio informar hora agendamento.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         hora_agendamento.Focus();
         return;
     }
     if (string.IsNullOrEmpty(cd_servico.Text))
     {
         MessageBox.Show("Obrigatorio informar serviço a ser realizado.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         cd_servico.Focus();
         return;
     }
     (bsAgendamento.Current as CamadaDados.Servicos.TRegistro_Agendamento).Cd_empresa     = this.pCd_empresa;
     (bsAgendamento.Current as CamadaDados.Servicos.TRegistro_Agendamento).Dt_agendamento =
         DateTime.Parse(data_agendamento.Text + " " + hora_agendamento.Text);
     this.DialogResult = DialogResult.OK;
 }
Ejemplo n.º 3
0
 private void LimparFiltros()
 {
     CD_Empresa.Clear();
     CD_Clifor.Clear();
     id_folha.Clear();
     cbAberto.Checked     = false;
     cbProcessado.Checked = false;
 }
Ejemplo n.º 4
0
 public override void afterNovo()
 {
     if ((vTP_Modo == TTpModo.tm_busca) || (vTP_Modo == TTpModo.tm_Standby))
     {
         BS_CadTpProduto_X_Clifor.AddNew();
         base.afterNovo();
         CD_Clifor.Focus();
     }
 }
Ejemplo n.º 5
0
 public override void afterNovo()
 {
     if ((vTP_Modo == Utils.TTpModo.tm_busca) || (vTP_Modo == Utils.TTpModo.tm_Standby))
     {
         bsVeiculoCliente.AddNew();
         base.afterNovo();
         CD_Clifor.Focus();
     }
 }
Ejemplo n.º 6
0
 private void afterBusca()
 {
     if (string.IsNullOrEmpty(cd_empresa.Text))
     {
         MessageBox.Show("Obrigatório informar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         cd_empresa.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Clifor.Text))
     {
         MessageBox.Show("Obrigatório informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Clifor.Focus();
         return;
     }
     if (string.IsNullOrEmpty(cd_produto.Text))
     {
         MessageBox.Show("Obrigatório informar produto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         cd_produto.Focus();
         return;
     }
     TpBusca[] filtro = new TpBusca[6];
     filtro[0].vNM_Campo = "a.cd_empresa";
     filtro[0].vOperador = "=";
     filtro[0].vVL_Busca = "'" + cd_empresa.Text.Trim() + "'";
     filtro[1].vNM_Campo = "a.cd_clifor";
     filtro[1].vOperador = "=";
     filtro[1].vVL_Busca = "'" + CD_Clifor.Text.Trim() + "'";
     filtro[2].vNM_Campo = "a.cd_produto";
     filtro[2].vOperador = "=";
     filtro[2].vVL_Busca = "'" + cd_produto.Text.Trim() + "'";
     filtro[3].vNM_Campo = "isnull(a.st_registro, 'A')";
     filtro[3].vOperador = "=";
     filtro[3].vVL_Busca = "'F'";
     filtro[4].vNM_Campo = "a.tp_movimento";
     filtro[4].vOperador = "=";
     filtro[4].vVL_Busca = rbEntrada.Checked ? "'E'" : "'S'";
     filtro[5].vNM_Campo = "a.nr_lanctofiscal";
     filtro[5].vOperador = "is";
     filtro[5].vVL_Busca = "null";
     if (!string.IsNullOrEmpty(dt_ini.Text.SoNumero()))
     {
         Array.Resize(ref filtro, filtro.Length + 1);
         filtro[filtro.Length - 1].vNM_Campo = "convert(datetime, floor(convert(decimal(30,10), case when a.tp_movimento = 'E' then a.dt_bruto else a.dt_tara end)))";
         filtro[filtro.Length - 1].vOperador = ">=";
         filtro[filtro.Length - 1].vVL_Busca = "'" + DateTime.Parse(dt_ini.Text).ToString("yyyyMMdd") + "'";
     }
     if (!string.IsNullOrEmpty(dt_fin.Text.SoNumero()))
     {
         Array.Resize(ref filtro, filtro.Length + 1);
         filtro[filtro.Length - 1].vNM_Campo = "convert(datetime, floor(convert(decimal(30,10), case when a.tp_movimento = 'E' then a.dt_bruto else a.dt_tara end)))";
         filtro[filtro.Length - 1].vOperador = "<=";
         filtro[filtro.Length - 1].vVL_Busca = "'" + DateTime.Parse(dt_fin.Text).ToString("yyyyMMdd") + "'";
     }
     bsPsDiversas.DataSource = new CamadaDados.Balanca.TCD_PesagemDiversas().Select(filtro, 0, string.Empty);
     tot_psdisponivel.Text   = (bsPsDiversas.List as CamadaDados.Balanca.TList_PesagemDiversas).Sum(p => p.Ps_liquidobruto).ToString("N0", new System.Globalization.CultureInfo("pt-BR"));
 }
Ejemplo n.º 7
0
 private void afterBusca()
 {
     if (CD_Empresa.Text.Trim().Equals(string.Empty))
     {
         MessageBox.Show("Obrigatorio informar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Empresa.Focus();
         return;
     }
     if (TP_Ordem.Text.Trim().Equals(string.Empty))
     {
         MessageBox.Show("Obrigatorio informar tipo de ordem.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         TP_Ordem.Focus();
         return;
     }
     if (CD_Clifor.Text.Trim().Equals(string.Empty))
     {
         MessageBox.Show("Obrigatorio informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Clifor.Focus();
         return;
     }
     bsOS.DataSource = CamadaNegocio.Servicos.TCN_LanServico.Buscar(string.Empty,
                                                                    CD_Empresa.Text,
                                                                    CD_Clifor.Text,
                                                                    string.Empty,
                                                                    CD_Produto.Text,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    "A",
                                                                    DT_Inic.Text,
                                                                    DT_Final.Text,
                                                                    "'FE'",
                                                                    string.Empty,
                                                                    false,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    false,
                                                                    false,
                                                                    false,
                                                                    false,
                                                                    false,
                                                                    0,
                                                                    string.Empty,
                                                                    string.Empty,
                                                                    null);
 }
Ejemplo n.º 8
0
        private void afterBusca()
        {
            if (string.IsNullOrEmpty(CD_Empresa.Text))
            {
                MessageBox.Show("Obrigatorio informar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                CD_Empresa.Focus();
                return;
            }
            if (string.IsNullOrEmpty(CD_Clifor.Text))
            {
                MessageBox.Show("Obrigatorio informar clifor.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                CD_Clifor.Focus();
                return;
            }
            if (string.IsNullOrEmpty(Tp_Dup.Text))
            {
                MessageBox.Show("Obrigatorio informar tipo duplicata.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                Tp_Dup.Focus();
                return;
            }
            Utils.TpBusca[] filtro = new Utils.TpBusca[6];
            //Empresa
            filtro[0].vNM_Campo = "a.cd_empresa";
            filtro[0].vOperador = "=";
            filtro[0].vVL_Busca = "'" + CD_Empresa.Text.Trim() + "'";
            //Clifor
            filtro[1].vNM_Campo = "a.cd_clifor";
            filtro[1].vOperador = "=";
            filtro[1].vVL_Busca = "'" + CD_Clifor.Text.Trim() + "'";
            //Tipo Duplicata
            filtro[2].vNM_Campo = "a.tp_duplicata";
            filtro[2].vOperador = "=";
            filtro[2].vVL_Busca = "'" + Tp_Dup.Text.Trim() + "'";
            //Duplicata Ativa
            filtro[3].vNM_Campo = "isnull(dup.st_registro, 'A')";
            filtro[3].vOperador = "<>";
            filtro[3].vVL_Busca = "'C'";
            //Parcela com saldo a liquidar
            filtro[4].vNM_Campo = "isnull(a.st_registro, 'A')";
            filtro[4].vOperador = "in";
            filtro[4].vVL_Busca = "('A', 'P')";
            //Parcelas Vencidas
            filtro[5].vNM_Campo = "convert(datetime, floor(convert(decimal(30,10), a.dt_vencto)))";
            filtro[5].vOperador = "<";
            filtro[5].vVL_Busca = "convert(datetime, floor(convert(decimal(30,10), getdate())))";

            bsParcelas.DataSource = new CamadaDados.Financeiro.Duplicata.TCD_LanParcela().Select(filtro, 0, string.Empty, "a.dt_vencto, c.nm_clifor", string.Empty);
            //Totalizar dados parcelas
            Tot_Parcelas.Value  = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_parcela);
            Tot_Liquidado.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_liquidado);
            Tot_Atual.Value     = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.cVl_atual);
        }
Ejemplo n.º 9
0
 private void afterGrava()
 {
     if (pOs.validarCampoObrigatorio())
     {
         if (string.IsNullOrEmpty(CD_Clifor.Text) &&
             string.IsNullOrEmpty(NM_Clifor.Text))
         {
             MessageBox.Show("Obrigatorio informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             if (!CD_Clifor.Focus())
             {
                 NM_Clifor.Focus();
             }
             return;
         }
         DialogResult = DialogResult.OK;
     }
 }
Ejemplo n.º 10
0
 private void bb_cadClifor_Click(object sender, EventArgs e)
 {
     using (Financeiro.Cadastros.TFCadCliforResumido fClifor = new Financeiro.Cadastros.TFCadCliforResumido())
     {
         if (fClifor.ShowDialog() == DialogResult.OK)
         {
             try
             {
                 CamadaNegocio.Financeiro.Cadastros.TCN_CadClifor.Gravar(fClifor.rClifor, null);
                 MessageBox.Show("Cliente gravado com sucesso.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 CD_Clifor.Text   = fClifor.rClifor.Cd_clifor;
                 NM_Clifor.Text   = fClifor.rClifor.Nm_clifor;
                 CD_Endereco.Text = fClifor.rClifor.lEndereco[0].Cd_endereco;
                 DS_Endereco.Text = fClifor.rClifor.lEndereco[0].Ds_endereco;
                 CD_Clifor.Focus();
             }
             catch (Exception ex)
             { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); }
         }
     }
 }
Ejemplo n.º 11
0
 public override void afterAltera()
 {
     base.afterAltera();
     if (vTP_Modo == TTpModo.tm_Edit)
     {
         if (tcCentral.SelectedIndex == 0)
         {
             CD_Clifor.Focus();
             habilitarCombo(true);
         }
         else
         {
             pDadosCotacaoItem.HabilitarControls(true, this.vTP_Modo);
             pDadosAdicionais.HabilitarControls(true, this.vTP_Modo);
             ST_Cotacao_Item.Enabled = true;
             Cd_Produto.Enabled      = true;
             bbProduto.Enabled       = true;
             Cd_Produto.Focus();
         }
     }
 }
Ejemplo n.º 12
0
 private void TFOutrasReceitas_Load(object sender, EventArgs e)
 {
     this.Icon = Utils.ResourcesUtils.TecnoAliance_ICO;
     pDados.set_FormatZero();
     if (rreceita != null)
     {
         bsReceita.DataSource = new CamadaDados.Frota.TList_OutrasReceitas()
         {
             rreceita
         };
         CD_Empresa.Enabled   = false;
         BB_Empresa.Enabled   = false;
         cd_motorista.Enabled = false;
         bb_motorista.Enabled = false;
         id_veiculo.Enabled   = false;
         bb_veiculo.Enabled   = false;
         dt_receita.Enabled   = false;
         vl_receita.Enabled   = false;
     }
     else
     {
         bsReceita.AddNew();
         CD_Empresa.Text      = pCd_empresa;
         cd_motorista.Text    = pCd_motorista;
         id_veiculo.Text      = pId_Veiculo;
         CD_Empresa.Enabled   = string.IsNullOrEmpty(CD_Empresa.Text);
         BB_Empresa.Enabled   = string.IsNullOrEmpty(CD_Empresa.Text);
         cd_motorista.Enabled = string.IsNullOrEmpty(cd_motorista.Text);
         bb_motorista.Enabled = string.IsNullOrEmpty(cd_motorista.Text);
         id_veiculo.Enabled   = string.IsNullOrEmpty(id_veiculo.Text);
         bb_veiculo.Enabled   = string.IsNullOrEmpty(id_veiculo.Text);
         if (!CD_Empresa.Enabled)
         {
             CD_Clifor.Focus();
         }
     }
 }
Ejemplo n.º 13
0
 private void afterGrava()
 {
     if (pDados.validarCampoObrigatorio())
     {
         if (string.IsNullOrEmpty(CD_Clifor.Text) &&
             string.IsNullOrEmpty(NM_Clifor.Text))
         {
             MessageBox.Show("Obrigatório informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             if (!CD_Clifor.Focus())
             {
                 NM_Clifor.Focus();
             }
             return;
         }
         if (string.IsNullOrEmpty(ds_obsgeral.Text))
         {
             MessageBox.Show("Obrigatório informar Descrição PROJETO!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
             tcProjeto.SelectedTab = tpDS_OS;
             ds_obsgeral.Focus();
             return;
         }
         this.DialogResult = DialogResult.OK;
     }
 }
Ejemplo n.º 14
0
        private void nr_contrato_origem_Leave(object sender, EventArgs e)
        {
            DataRow linha = UtilPesquisa.EDIT_LEAVE("a.nr_contrato|=|" + nr_contrato_origem.Text + ";" +
                                                                                          // O Tipo De pedido tem que permitir transferência
                                                    "cfgped.ST_PermiteTransf|=|'S';" +
                                                                                          //Contrato de Deposito ou a Fixar
                                                    "||isnull(cfgped.ST_Deposito, 'N') = 'S' or isnull(cfgped.ST_ValoresFixos, 'N') <> 'S';" +
                                                    "isnull(a.st_registro, 'A')|=|'A';" + //Contrato Aberto
                                                                                          //Usuario tem que ter acesso a empresa
                                                    "|EXISTS|(select 1 from Tb_div_usuario_X_empresa  x where x.cd_empresa = a.cd_empresa " +
                                                    "and ((x.login = '******') or " +
                                                    "(exists(select 1 from tb_div_usuario_x_grupos y " +
                                                    "       where y.logingrp = x.login and y.loginusr = '******'))));" +
                                                    //Usuario tem que ter acesso ao tipo de pedido
                                                    "|EXISTS|(select 1 from tb_div_usuario_x_cfgpedido x " +
                                                    "where x.cfg_pedido = a.cfg_pedido " +
                                                    "and ((x.login = '******') or " +
                                                    "(exists(select 1 from tb_div_usuario_x_grupos y " +
                                                    "       where y.logingrp = x.login and y.loginusr = '******'))));" +
                                                    // Configuracao fiscal de devolucao
                                                    "|EXISTS|(select 1 from TB_FAT_CFG_PedFiscal x " +
                                                    "where x.cfg_pedido = cfgped.cfg_pedido and x.TP_Fiscal = 'TF') "

                                                    , new Componentes.EditDefault[] {
                nr_contrato_origem,
                dt_contrato_origem,
                TP_Movimento,
                CD_Empresa,
                NM_Empresa,
                CD_Clifor,
                NM_Clifor,
                CPF,
                DS_Endereco,
                DS_Cidade,
                UF,
                CD_Produto,
                DS_Produto,
                VL_Unitario,
                QTD_Origem
            }, new CamadaDados.Graos.TCD_CadContrato());

            if (linha != null)
            {
                CD_Unidade_Origem_Est.Text = linha["cd_unid_produto"].ToString();
                CD_Unidade_Origem_VL.Text  = linha["CD_Unidade"].ToString();
                Unidade_Origem_Est.Text    = linha["sigla_unid_produto"].ToString();
                Unidade_Origem_VL.Text     = linha["Sigla_Unidade"].ToString();
                (BS_Transf_Origem.Current as CamadaDados.Graos.TRegistro_Transf_X_Contrato).Nr_pedido             = decimal.Parse(linha["nr_pedido"].ToString());
                (BS_Transf_Origem.Current as CamadaDados.Graos.TRegistro_Transf_X_Contrato).Id_pedidoitem         = decimal.Parse(linha["id_pedidoitem"].ToString());
                (BS_Transf_Origem.Current as CamadaDados.Graos.TRegistro_Transf_X_Contrato).Cd_condfiscal_produto = linha["cd_condfiscal_produto"].ToString();
            }
            if (string.IsNullOrEmpty(nr_contrato_origem.Text))
            {
                nr_contrato_origem.Clear();
                dt_contrato_origem.Clear();
                TP_Movimento.Clear();
                CD_Empresa.Clear();
                NM_Empresa.Clear();
                CD_Clifor.Clear();
                NM_Clifor.Clear();
                CPF.Clear();
                DS_Endereco.Clear();
                DS_Cidade.Clear();
                UF.Clear();
                CD_Produto.Clear();
                DS_Produto.Clear();
                VL_Unitario.Clear();
                VL_Sub_Total_Origem.Value = decimal.Zero;
                VL_Unitario_Transf.Value  = decimal.Zero;
                QTD_Transferir.Value      = decimal.Zero;
                QTD_Origem.Clear();
                CD_Unidade_Origem_Est.Clear();
                CD_Unidade_Origem_VL.Clear();
                Unidade_Origem_Est.Clear();
                Unidade_Origem_VL.Clear();
            }
            else
            {
                Busca_Saldo_Contrato_Origem();
                if (string.IsNullOrEmpty(Saldo_Contrato_Origem.Text) ? false : decimal.Parse(Saldo_Contrato_Origem.Text) > decimal.Zero)
                {
                    try
                    {
                        QTD_Transferir.Value = decimal.Parse(Saldo_Contrato_Origem.Text);
                    }
                    catch { }
                }
                else
                {
                    MessageBox.Show("Contrato origem não possui saldo disponivel para realizar transferência.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    nr_contrato_origem.Clear();
                    nr_contrato_origem.Focus();
                }
                if (string.IsNullOrEmpty(VL_Unitario.Text) ? false : decimal.Parse(VL_Unitario.Text) > decimal.Zero)
                {
                    try
                    {
                        VL_Unitario_Transf.Value = decimal.Parse(VL_Unitario.Text);

                        if (CD_Unidade_Origem_Est.Text.Trim() != CD_Unidade_Origem_VL.Text.Trim())
                        {
                            VL_Sub_Total_Origem.Value = CamadaNegocio.Estoque.Cadastros.TCN_CadConvUnidade.ConvertUnid(CD_Unidade_Origem_Est.Text, CD_Unidade_Origem_VL.Text, QTD_Transferir.Value * VL_Unitario_Transf.Value, 2, null);
                        }
                        else
                        {
                            VL_Sub_Total_Origem.Value = (QTD_Transferir.Value * VL_Unitario_Transf.Value);
                        }
                    }
                    catch { }
                }
                nr_contrato_destino.Clear();
                DT_Contrato_Destino.Clear();
                TP_Movimento_Destino.Clear();
                CD_Empresa_Destino.Clear();
                NM_Empresa_Destino.Clear();
                CD_Clifor_Destino.Clear();
                NM_Clifor_Destino.Clear();
                CPF_Destino.Clear();
                DS_Endereco_Destino.Clear();
                DS_Cidade_Destino.Clear();
                UF_Destino.Clear();
                CD_Produto_Destino.Clear();
                DS_Produto_Destino.Clear();
                VL_Unitario_Destino.Clear();

                VL_Sub_Total_Destino.Value       = decimal.Zero;
                VL_Unitario_Destino_Transf.Value = decimal.Zero;

                QTD_Destino.Clear();
                CD_Unidade_Destino_Est.Clear();
                CD_Unidade_Destino_VL.Clear();
                Unidade_Destino_Est.Clear();
                Unidade_Destino_VL.Clear();
            }
        }
Ejemplo n.º 15
0
 private void ConfigOutrosImpostos()
 {
     if (string.IsNullOrEmpty(CD_Empresa.Text))
     {
         MessageBox.Show("Obrigatorio informar empresa para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Empresa.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CFG_Pedido.Text))
     {
         MessageBox.Show("Obrigatorio informar tipo pedido para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CFG_Pedido.Focus();
         return;
     }
     if (Cbx_TP_Fiscal.SelectedValue == null)
     {
         MessageBox.Show("Obrigatorio selecionar tipo fiscal para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         Cbx_TP_Fiscal.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Clifor.Text))
     {
         MessageBox.Show("Obrigatorio informar cliente/fornecedor para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Clifor.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Endereco.Text))
     {
         MessageBox.Show("Obrigatorio informar endereço para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Endereco.Focus();
         return;
     }
     if (bsProdutoSimular.Count.Equals(0))
     {
         MessageBox.Show("Obrigatorio informar produto para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         bb_adicionar.Focus();
         return;
     }
     //Buscar movimentacao comercial do tipo de pedido
     CamadaDados.Faturamento.Cadastros.TList_CadCFGPedidoFiscal lCfgPed =
         new CamadaDados.Faturamento.Cadastros.TCD_CadCFGPedidoFiscal().Select(
             new Utils.TpBusca[]
     {
         new Utils.TpBusca()
         {
             vNM_Campo = "a.cfg_pedido",
             vOperador = "=",
             vVL_Busca = "'" + CFG_Pedido.Text.Trim() + "'"
         },
         new Utils.TpBusca()
         {
             vNM_Campo = "a.tp_fiscal",
             vOperador = "=",
             vVL_Busca = "'" + Cbx_TP_Fiscal.SelectedValue.ToString() + "'"
         }
     }, 1, string.Empty);
     if (lCfgPed.Count < 1)
     {
         MessageBox.Show("Não existe configuração fiscal para o tipo de pedido " + CFG_Pedido.Text.Trim() + ", tipo fiscal " + Cbx_TP_Fiscal.SelectedValue.ToString() + ".",
                         "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CFG_Pedido.Focus();
         return;
     }
     using (TFCondFiscalImposto fCondImposto = new TFCondFiscalImposto())
     {
         fCondImposto.pCd_empresa            = CD_Empresa.Text;
         fCondImposto.pCd_imposto            = (bsImpProduto.Current as CamadaDados.Faturamento.NotaFiscal.TRegistro_ImpostosNF).Cd_impostostr;
         fCondImposto.pCd_condfiscal_clifor  = cd_condfiscal_clifor.Text;
         fCondImposto.pCd_condfiscal_produto = (bsProdutoSimular.Current != null ? (bsProdutoSimular.Current as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Cd_condfiscal_produto : string.Empty);
         fCondImposto.pCd_movimentacao       = lCfgPed[0].Cd_movtostring;
         fCondImposto.pTp_faturamento        = TP_Mov.Text;
         fCondImposto.pSt_juridica           = tp_pessoa.Text.Trim().ToUpper().Equals("J");
         fCondImposto.pSt_fisica             = tp_pessoa.Text.Trim().ToUpper().Equals("F");
         if (fCondImposto.ShowDialog() == DialogResult.OK)
         {
             if ((fCondImposto.rCond != null) &&
                 (fCondImposto.lMov != null) &&
                 (fCondImposto.lCondClifor != null) &&
                 (fCondImposto.lCondProd != null))
             {
                 try
                 {
                     CamadaNegocio.Fiscal.TCN_CondicaoFiscalImposto.gravarFiscImposto(fCondImposto.rCond,
                                                                                      fCondImposto.lMov,
                                                                                      fCondImposto.lCondClifor,
                                                                                      fCondImposto.lCondProd,
                                                                                      fCondImposto.pSt_fisica,
                                                                                      fCondImposto.pSt_juridica,
                                                                                      fCondImposto.pSt_estrangeiro,
                                                                                      null);
                 }
                 catch { }
             }
         }
         CalcularImpostos();
     }
 }
Ejemplo n.º 16
0
 private void ConfigImpostoUf()
 {
     if (string.IsNullOrEmpty(CD_Empresa.Text))
     {
         MessageBox.Show("Obrigatorio informar empresa para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Empresa.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CFG_Pedido.Text))
     {
         MessageBox.Show("Obrigatorio informar tipo pedido para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CFG_Pedido.Focus();
         return;
     }
     if (Cbx_TP_Fiscal.SelectedValue == null)
     {
         MessageBox.Show("Obrigatorio selecionar tipo fiscal para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         Cbx_TP_Fiscal.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Clifor.Text))
     {
         MessageBox.Show("Obrigatorio informar cliente/fornecedor para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Clifor.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Endereco.Text))
     {
         MessageBox.Show("Obrigatorio informar endereço para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Endereco.Focus();
         return;
     }
     if (bsProdutoSimular.Count.Equals(0))
     {
         MessageBox.Show("Obrigatorio informar produto para configurar imposto.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         bb_adicionar.Focus();
         return;
     }
     //Buscar movimentacao comercial do tipo de pedido
     CamadaDados.Faturamento.Cadastros.TList_CadCFGPedidoFiscal lCfgPed =
         new CamadaDados.Faturamento.Cadastros.TCD_CadCFGPedidoFiscal().Select(
             new Utils.TpBusca[]
     {
         new Utils.TpBusca()
         {
             vNM_Campo = "a.cfg_pedido",
             vOperador = "=",
             vVL_Busca = "'" + CFG_Pedido.Text.Trim() + "'"
         },
         new Utils.TpBusca()
         {
             vNM_Campo = "a.tp_fiscal",
             vOperador = "=",
             vVL_Busca = "'" + Cbx_TP_Fiscal.SelectedValue.ToString() + "'"
         }
     }, 1, string.Empty);
     if (lCfgPed.Count < 1)
     {
         MessageBox.Show("Não existe configuração fiscal para o tipo de pedido " + CFG_Pedido.Text.Trim() + ", tipo fiscal " + Cbx_TP_Fiscal.SelectedValue.ToString() + ".",
                         "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CFG_Pedido.Focus();
         return;
     }
     using (TFCondFiscalICMS fCondICMS = new TFCondFiscalICMS())
     {
         fCondICMS.pCd_empresa            = CD_Empresa.Text;
         fCondICMS.pCd_condfiscal_clifor  = cd_condfiscal_clifor.Text;
         fCondICMS.pCd_condfiscal_produto = (bsProdutoSimular.Current != null ? (bsProdutoSimular.Current as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Cd_condfiscal_produto : string.Empty);
         fCondICMS.pCd_movto     = lCfgPed[0].Cd_movtostring;
         fCondICMS.pCd_UfDest    = TP_Mov.Text.Trim().ToUpper().Equals("E") ? uf_empresa.Text : UF.Text;
         fCondICMS.pCd_UfOrig    = TP_Mov.Text.Trim().ToUpper().Equals("E") ? UF.Text : uf_empresa.Text;
         fCondICMS.pTp_movimento = (Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DV") ||
                                    Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DF")) ? TP_Mov.Text.Trim().ToUpper().Equals("E") ? "S" : "E" : TP_Mov.Text;
         if (fCondICMS.ShowDialog() == DialogResult.OK)
         {
             if ((fCondICMS.rCond != null) &&
                 (fCondICMS.lMov != null) &&
                 (fCondICMS.lUfDestino != null) &&
                 (fCondICMS.lUfOrigem != null))
             {
                 try
                 {
                     CamadaNegocio.Fiscal.TCN_CadCondFiscalICMS.Gravar(fCondICMS.rCond,
                                                                       fCondICMS.lMov,
                                                                       fCondICMS.lUfOrigem,
                                                                       fCondICMS.lUfDestino,
                                                                       null);
                 }
                 catch { }
             }
         }
         CalcularImpostos();
     }
 }
Ejemplo n.º 17
0
        private void afterBusca()
        {
            if (string.IsNullOrEmpty(CD_Empresa.Text))
            {
                MessageBox.Show("Obrigatório informar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                CD_Empresa.Focus();
                return;
            }
            if (string.IsNullOrEmpty(Tp_Dup.Text))
            {
                MessageBox.Show("Obrigatório informar tipo duplicata.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                Tp_Dup.Focus();
                return;
            }
            if (ID_CategoriaClifor.Enabled.Equals(false) && string.IsNullOrEmpty(CD_Clifor.Text))
            {
                MessageBox.Show("Obrigatório informar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                CD_Clifor.Focus();
                return;
            }
            Utils.TpBusca[] filtro = new Utils.TpBusca[5];
            //Empresa
            filtro[0].vNM_Campo = "a.cd_empresa";
            filtro[0].vOperador = "=";
            filtro[0].vVL_Busca = "'" + CD_Empresa.Text.Trim() + "'";
            //Tipo Duplicata
            filtro[1].vNM_Campo = "a.tp_duplicata";
            filtro[1].vOperador = "=";
            filtro[1].vVL_Busca = "'" + Tp_Dup.Text.Trim() + "'";
            //Duplicata Ativa
            filtro[2].vNM_Campo = "isnull(dup.st_registro, 'A')";
            filtro[2].vOperador = "<>";
            filtro[2].vVL_Busca = "'C'";
            //Parcela com saldo a liquidar
            filtro[3].vNM_Campo = "isnull(a.st_registro, 'A')";
            filtro[3].vOperador = "in";
            filtro[3].vVL_Busca = "('A', 'P')";
            //Não buscar duplicata que possuem boletos com remessa processada
            filtro[4].vNM_Campo = string.Empty;
            filtro[4].vOperador = "not exists";
            filtro[4].vVL_Busca = "(select 1 from TB_COB_LoteRemessa_X_Titulo x " +
                                  "inner join TB_COB_LoteRemessa y " +
                                  "on x.id_lote = y.id_lote " +
                                  "inner join TB_COB_Titulo z " +
                                  "on x.cd_empresa = z.cd_empresa " +
                                  "and x.nr_lancto = z.nr_lancto " +
                                  "and x.cd_parcela = z.cd_parcela " +
                                  "and x.id_cobranca = z.id_cobranca " +
                                  "and isnull(z.st_registro, 'A') <> 'C' " +
                                  "where a.cd_empresa = x.cd_empresa " +
                                  "and a.nr_lancto = x.nr_lancto " +
                                  "and a.cd_parcela = x.cd_parcela " +
                                  "and isnull(y.ST_Registro, 'A') = 'P') ";
            if (DT_Inicial.Text.Trim() != "/  /")
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = RB_Emissao.Checked ? "a.dt_emissao" : "a.dt_vencto";
                filtro[filtro.Length - 1].vOperador = ">=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + string.Format(new System.Globalization.CultureInfo("en-US", true), Convert.ToDateTime(DT_Inicial.Text).ToString("yyyyMMdd")) + " 00:00:00'";
            }
            if (DT_Final.Text.Trim() != "/  /")
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = RB_Emissao.Checked ? "a.dt_emissao" : "a.dt_vencto";
                filtro[filtro.Length - 1].vOperador = "<=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + string.Format(new System.Globalization.CultureInfo("en-US", true), Convert.ToDateTime(DT_Final.Text).ToString("yyyyMMdd")) + " 23:59:59'";
            }
            //Clifor
            if (!string.IsNullOrEmpty(CD_Clifor.Text.Trim()))
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "a.cd_clifor";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + CD_Clifor.Text.Trim() + "'";
            }
            //Por categoria de clifor
            if (!string.IsNullOrEmpty(ID_CategoriaClifor.Text))
            {
                Array.Resize(ref filtro, filtro.Length + 1);
                filtro[filtro.Length - 1].vNM_Campo = "c.id_categoriaclifor";
                filtro[filtro.Length - 1].vOperador = "=";
                filtro[filtro.Length - 1].vVL_Busca = "'" + ID_CategoriaClifor.Text.Trim() + "'";
            }


            bsParcelas.DataSource = new CamadaDados.Financeiro.Duplicata.TCD_LanParcela().Select(filtro, 0, string.Empty, "a.dt_vencto, c.nm_clifor", string.Empty);
            //Totalizar dados parcelas
            Tot_Parcelas.Value  = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_parcela);
            Tot_Liquidado.Value = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.Vl_liquidado);
            Tot_Atual.Value     = (bsParcelas.DataSource as CamadaDados.Financeiro.Duplicata.TList_RegLanParcela).Sum(p => p.cVl_atual);
        }
Ejemplo n.º 18
0
        private void afterPrint()
        {
            if (cbEmpresa.SelectedValue == null)
            {
                MessageBox.Show("Obrigatório selecionar empresa.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                cbEmpresa.Focus();
                return;
            }
            if (string.IsNullOrEmpty(CD_Clifor.Text))
            {
                MessageBox.Show("Obrigatório selecionar cliente.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                CD_Clifor.Focus();
                return;
            }
            List <CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR> lExtrato =
                new CamadaDados.Financeiro.Duplicata.TCD_ExtratoIR().Select(cbEmpresa.SelectedValue.ToString(),
                                                                            CD_Clifor.Text,
                                                                            cbAno.Text);

            if (lExtrato.Count > 0)
            {
                //Janeiro
                if (!lExtrato.Exists(p => p.Mes.Equals(1)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 1;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(0, reg);
                }
                //Fevereiro
                if (!lExtrato.Exists(p => p.Mes.Equals(2)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 2;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(1, reg);
                }
                //Março
                if (!lExtrato.Exists(p => p.Mes.Equals(3)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 3;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(2, reg);
                }
                //Abril
                if (!lExtrato.Exists(p => p.Mes.Equals(4)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 4;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(3, reg);
                }
                //Maio
                if (!lExtrato.Exists(p => p.Mes.Equals(5)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 5;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(4, reg);
                }
                //Junho
                if (!lExtrato.Exists(p => p.Mes.Equals(6)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 6;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(5, reg);
                }
                //Julho
                if (!lExtrato.Exists(p => p.Mes.Equals(7)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 7;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(6, reg);
                }
                //Agosto
                if (!lExtrato.Exists(p => p.Mes.Equals(8)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 8;
                    reg.Vl_recebido = decimal.Zero;
                    reg.Vl_pago     = decimal.Zero;
                    lExtrato.Insert(7, reg);
                }
                //Setembro
                if (!lExtrato.Exists(p => p.Mes.Equals(9)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 9;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(8, reg);
                }
                //Outubro
                if (!lExtrato.Exists(p => p.Mes.Equals(10)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 10;
                    reg.Vl_recebido = decimal.Zero;
                    reg.Vl_pago     = decimal.Zero;
                    lExtrato.Insert(9, reg);
                }
                //Novembro
                if (!lExtrato.Exists(p => p.Mes.Equals(11)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 11;
                    reg.Vl_pago     = decimal.Zero;
                    reg.Vl_recebido = decimal.Zero;
                    lExtrato.Insert(10, reg);
                }
                //Dezembro
                if (!lExtrato.Exists(p => p.Mes.Equals(12)))
                {
                    CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR reg = new CamadaDados.Financeiro.Duplicata.TRegistro_ExtratoIR().Copy(lExtrato[0]);
                    reg.Mes         = 12;
                    reg.Vl_recebido = decimal.Zero;
                    reg.Vl_pago     = decimal.Zero;
                    lExtrato.Insert(11, reg);
                }
            }
            BindingSource bs = new BindingSource();

            bs.DataSource = lExtrato;
            using (FormRelPadrao.TFGerenciadorImpressao fImp = new FormRelPadrao.TFGerenciadorImpressao())
            {
                FormRelPadrao.Relatorio Rel = new FormRelPadrao.Relatorio();
                Rel.Altera_Relatorio = Altera_relatorio;
                Rel.DTS_Relatorio    = bs;
                Rel.Nome_Relatorio   = "REL_FIN_EXTRATO_IR";
                Rel.NM_Classe        = "REL_FIN_EXTRATO_IR";
                Rel.Modulo           = "FIN";
                Rel.Parametros_Relatorio.Add("PERIODO", cbAno.Text);
                fImp.St_enabled_enviaremail = true;
                fImp.pCd_clifor             = string.Empty;
                fImp.pMensagem = "EXTRATO DECLARAÇÃO IMPOSTO RENDA";

                if (Altera_relatorio)
                {
                    Rel.Gera_Relatorio(string.Empty,
                                       fImp.pSt_imprimir,
                                       fImp.pSt_visualizar,
                                       fImp.pSt_enviaremail,
                                       fImp.pSt_exportPdf,
                                       fImp.Path_exportPdf,
                                       fImp.pDestinatarios,
                                       null,
                                       "EXTRATO DECLARAÇÃO IMPOSTO RENDA",
                                       fImp.pDs_mensagem);
                    Altera_relatorio = false;
                }
                else
                if ((fImp.ShowDialog() == DialogResult.OK) || (fImp.pSt_enviaremail))
                {
                    Rel.Gera_Relatorio(string.Empty,
                                       fImp.pSt_imprimir,
                                       fImp.pSt_visualizar,
                                       fImp.pSt_enviaremail,
                                       fImp.pSt_exportPdf,
                                       fImp.Path_exportPdf,
                                       fImp.pDestinatarios,
                                       null,
                                       "EXTRATO DECLARAÇÃO IMPOSTO RENDA",
                                       fImp.pDs_mensagem);
                }
            }
        }
Ejemplo n.º 19
0
 private void CalcularImpostos()
 {
     if (string.IsNullOrEmpty(CD_Empresa.Text))
     {
         MessageBox.Show("Obrigatorio informar empresa para simular impostos.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Empresa.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CFG_Pedido.Text))
     {
         MessageBox.Show("Obrigatorio informar tipo pedido para simular impostos.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CFG_Pedido.Focus();
         return;
     }
     if (Cbx_TP_Fiscal.SelectedValue == null)
     {
         MessageBox.Show("Obrigatorio selecionar tipo fiscal para simular impostos.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         Cbx_TP_Fiscal.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Clifor.Text))
     {
         MessageBox.Show("Obrigatorio informar cliente/fornecedor para simular impostos.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Clifor.Focus();
         return;
     }
     if (string.IsNullOrEmpty(CD_Endereco.Text))
     {
         MessageBox.Show("Obrigatorio informar endereço para simular impostos.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CD_Endereco.Focus();
         return;
     }
     if (bsProdutoSimular.Count.Equals(0))
     {
         MessageBox.Show("Obrigatorio informar produto para simular impostos.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         bb_adicionar.Focus();
         return;
     }
     //Buscar movimentacao comercial do tipo de pedido
     CamadaDados.Faturamento.Cadastros.TList_CadCFGPedidoFiscal lCfgPed =
         new CamadaDados.Faturamento.Cadastros.TCD_CadCFGPedidoFiscal().Select(
             new Utils.TpBusca[]
     {
         new Utils.TpBusca()
         {
             vNM_Campo = "a.cfg_pedido",
             vOperador = "=",
             vVL_Busca = "'" + CFG_Pedido.Text.Trim() + "'"
         },
         new Utils.TpBusca()
         {
             vNM_Campo = "a.tp_fiscal",
             vOperador = "=",
             vVL_Busca = "'" + Cbx_TP_Fiscal.SelectedValue.ToString() + "'"
         }
     }, 1, string.Empty);
     if (lCfgPed.Count < 1)
     {
         MessageBox.Show("Não existe configuração fiscal para o tipo de pedido " + CFG_Pedido.Text.Trim() + ", tipo fiscal " + Cbx_TP_Fiscal.Text + ".",
                         "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
         CFG_Pedido.Focus();
         return;
     }
     CamadaDados.Fiscal.TList_ResumoImposto lResumo = new CamadaDados.Fiscal.TList_ResumoImposto();
     for (int i = 0; i < bsProdutoSimular.Count; i++)
     {
         string retobs = string.Empty;
         (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).lImpProduto =
             CamadaNegocio.Faturamento.NotaFiscal.TCN_LanFaturamento_Item.procuraImpostosPorUf(CD_Empresa.Text,
                                                                                               (TP_Mov.Text.Trim().ToUpper().Equals("E") &&
                                                                                                (Cbx_TP_Fiscal.SelectedValue.ToString().Trim() != "DV") &&
                                                                                                (Cbx_TP_Fiscal.SelectedValue.ToString().Trim() != "DF") ? UF.Text : uf_empresa.Text),
                                                                                               (TP_Mov.Text.Trim().ToUpper().Equals("E") &&
                                                                                                (Cbx_TP_Fiscal.SelectedValue.ToString().Trim() != "DV") &&
                                                                                                (Cbx_TP_Fiscal.SelectedValue.ToString().Trim() != "DF") ? uf_empresa.Text : UF.Text),
                                                                                               lCfgPed[0].Cd_movtostring,
                                                                                               (Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DV") ||
                                                                                                Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DF") ?
                                                                                                TP_Mov.Text.Trim().Equals("E") ? "S" : "E" : TP_Mov.Text),
                                                                                               cd_condfiscal_clifor.Text,
                                                                                               (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Cd_condfiscal_produto,
                                                                                               (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Vl_subtotal,
                                                                                               (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Quantidade,
                                                                                               ref retobs,
                                                                                               DateTime.Now,
                                                                                               cd_produto.Text,
                                                                                               string.Empty,
                                                                                               string.Empty,
                                                                                               null);
         (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).lImpProduto.Concat(CamadaNegocio.Faturamento.NotaFiscal.TCN_LanFaturamento_Item.procuraCondicaoFiscalImpostos(cd_condfiscal_clifor.Text,
                                                                                                                                                                                            (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Cd_condfiscal_produto,
                                                                                                                                                                                            lCfgPed[0].Cd_movtostring,
                                                                                                                                                                                            (Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DV") ||
                                                                                                                                                                                             Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DF") ?
                                                                                                                                                                                             TP_Mov.Text.Trim().Equals("E") ? "S" : "E" : TP_Mov.Text),
                                                                                                                                                                                            tp_pessoa.Text,
                                                                                                                                                                                            CD_Empresa.Text,
                                                                                                                                                                                            lCfgPed[0].Nr_serie,
                                                                                                                                                                                            CD_Clifor.Text,
                                                                                                                                                                                            string.Empty,
                                                                                                                                                                                            DateTime.Now,
                                                                                                                                                                                            (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Quantidade,
                                                                                                                                                                                            (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Vl_subtotal,
                                                                                                                                                                                            string.Empty,
                                                                                                                                                                                            pCd_municipioexecservico,
                                                                                                                                                                                            null));
         var ipi  = (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).lImpProduto.Find(v => v.Imposto.St_IPI);
         var icms = (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).lImpProduto.Find(v => v.Imposto.St_ICMS);
         if (ipi != null &&
             (icms == null ? false : icms.St_somarIPIBaseICMS || icms.St_somarIPIBaseST))
         {
             TRegistro_ImpostosNF rImp = new TRegistro_ImpostosNF();
             rImp.Cd_imposto                  = icms.Cd_imposto;
             rImp.Pc_aliquota                 = icms.Pc_aliquota;
             rImp.Pc_reducaoaliquota          = icms.Pc_reducaoaliquota;
             rImp.Pc_reducaobasecalc          = icms.Pc_reducaobasecalc;
             rImp.Pc_aliquotasubst            = icms.Pc_aliquotasubst;
             rImp.Pc_reducaobasecalcsubsttrib = icms.Pc_reducaobasecalcsubsttrib;
             rImp.Tp_situacao                 = icms.Tp_situacao;
             rImp.Dt_imposto                  = icms.Dt_imposto;
             rImp.St_impostouf                = 0;
             rImp.Tp_modbasecalc              = icms.Tp_modbasecalc;
             rImp.Tp_modbasecalcST            = icms.Tp_modbasecalcST;
             rImp.Cd_st               = icms.Cd_st;
             rImp.St_substtrib        = icms.St_substtrib;
             rImp.St_simplesnacional  = icms.St_simplesnacional;
             rImp.Pc_iva_st           = icms.Pc_iva_st;
             rImp.Vl_mva              = icms.Vl_mva;
             rImp.Pc_aliquotaICMSDest = icms.Pc_aliquotaICMSDest;
             rImp.Vl_pauta            = icms.Vl_pauta;
             rImp.St_somarIPIBaseICMS = icms.St_somarIPIBaseICMS;
             rImp.St_somarIPIBaseST   = icms.St_somarIPIBaseST;
             rImp.Vl_ipisomar         = ipi.Vl_impostocalc;
             //Calcular Imposto
             CamadaNegocio.Faturamento.NotaFiscal.TCN_LanFaturamento_Item
             .CalcImpostos(rImp,
                           (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Vl_subtotal,
                           (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).Quantidade,
                           (Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DV") ||
                            Cbx_TP_Fiscal.SelectedValue.ToString().Trim().Equals("DF") ?
                            TP_Mov.Text.Trim().Equals("E") ? "S" : "E" : TP_Mov.Text));
             //Preencher ICMS Item Nota
             icms.Vl_basecalcsubsttrib = rImp.Vl_basecalcsubsttrib;
             icms.Vl_impostosubsttrib  = rImp.Vl_impostosubsttrib;
         }
         (bsProdutoSimular[i] as CamadaDados.Fiscal.TRegistro_ProdutoSimular).lImpProduto.ForEach(p =>
         {
             if (lResumo.Exists(v => v.Cd_imposto.Trim().Equals(p.Cd_imposto.Value.ToString()) &&
                                v.St_totalnota.Trim().Equals(p.St_totalnota.Trim())))
             {
                 lResumo.Find(v => v.Cd_imposto.Trim().Equals(p.Cd_impostostr.Trim())).Vl_imposto         += p.Vl_impostocalc;
                 lResumo.Find(v => v.Cd_imposto.Trim().Equals(p.Cd_impostostr.Trim())).Vl_impostoretido   += p.Vl_impostoretido;
                 lResumo.Find(v => v.Cd_imposto.Trim().Equals(p.Cd_impostostr.Trim())).Vl_impostosubstrib += p.Vl_impostosubsttrib + p.Vl_FCPST;
             }
             else
             {
                 lResumo.Add(new CamadaDados.Fiscal.TRegistro_ResumoImposto()
                 {
                     Cd_imposto         = p.Cd_impostostr,
                     Ds_imposto         = p.Ds_imposto,
                     Vl_imposto         = p.Vl_impostocalc,
                     Vl_impostoretido   = p.Vl_impostoretido,
                     Vl_impostosubstrib = p.Vl_impostosubsttrib + p.Vl_FCPST,
                     St_totalnota       = p.St_totalnota
                 });
             }
         });
     }
     tot_imposto.Value = lResumo.Sum(p => p.Vl_imposto);
     tot_retido.Value  = lResumo.Sum(p => p.Vl_impostoretido);
     tot_subst.Value   = lResumo.Sum(p => p.Vl_impostosubstrib);
     bsProdutoSimular.ResetBindings(true);
     bsResumoImposto.DataSource = lResumo;
 }