private void AlterarItemFicha() { if (bsFichaTecOS.Current != null) { decimal qtd = (bsFichaTecOS.Current as CamadaDados.Servicos.TRegistro_FichaTecOS).Quantidade; using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade()) { fQtde.Casas_decimais = 2; fQtde.Vl_default = qtd; fQtde.Ds_label = "Quantidade"; if (fQtde.ShowDialog() == DialogResult.OK) { (bsFichaTecOS.Current as CamadaDados.Servicos.TRegistro_FichaTecOS).Quantidade = fQtde.Quantidade; if (Vl_Unitario.Enabled) { Vl_Unitario.Value = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal); vl_custo.Value = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_TotCusto); } vl_custo.Enabled = vl_custo.Value.Equals(decimal.Zero) && St_obrigaCusto; tot_itensFichaTec.Text = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal). ToString("N2", new System.Globalization.CultureInfo("pt-BR")); } BS_Pecas.ResetCurrentItem(); } } else { MessageBox.Show("Obrigatorio selecionar item ficha tecnica para alterar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void TFServicosSalao_Load(object sender, EventArgs e) { pnl_Pecas.set_FormatZero(); this.Icon = Utils.ResourcesUtils.TecnoAliance_ICO; if (rpeca == null) { BS_Pecas.AddNew(); (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Quantidade = 1; } else { if (rpeca.Vl_acrescimo > decimal.Zero && rpeca.Pc_acrescimo.Equals(decimal.Zero)) { rpeca.Pc_acrescimo = Math.Round(decimal.Divide(decimal.Multiply(rpeca.Vl_acrescimo, 100), rpeca.Vl_subtotal), 5, MidpointRounding.AwayFromZero); } if (rpeca.Vl_desconto > decimal.Zero && rpeca.Pc_desconto.Equals(decimal.Zero)) { rpeca.Pc_desconto = Math.Round(decimal.Divide(decimal.Multiply(rpeca.Vl_desconto, 100), rpeca.Vl_subtotal), 5, MidpointRounding.AwayFromZero); } BS_Pecas.DataSource = rpeca; CD_Produto.Enabled = false; DS_Produto.Enabled = false; if (!string.IsNullOrEmpty(Cd_clifor)) { rProg = CamadaNegocio.Faturamento.ProgEspecialVenda.TCN_ProgEspecialVenda.BuscarProg(CD_Empresa, Cd_clifor, CD_Produto.Text, CD_TabelaPreco, null); } } }
private void InserirItemFicha() { if (BS_Pecas.Current != null) { TpBusca[] filtro = new TpBusca[2]; filtro[0].vNM_Campo = "isnull(e.ST_Servico, 'N')"; filtro[0].vOperador = pSt_servico ? "=" : "<>"; filtro[0].vVL_Busca = "'S'"; filtro[1].vNM_Campo = "isnull(e.ST_Composto, 'N')"; filtro[1].vOperador = "<>"; filtro[1].vVL_Busca = "'S'"; TRegistro_CadProduto rProd = null; //Buscar Produto rProd = UtilPesquisa.BuscarProduto(string.Empty, CD_Empresa, Nm_empresa, CD_TabelaPreco, new Componentes.EditDefault[] { CD_Produto, DS_Produto }, filtro); if (rProd != null) { decimal qtd = 1; using (Componentes.TFQuantidade fQtde = new Componentes.TFQuantidade()) { fQtde.Vl_default = 0; fQtde.Ds_label = "Quantidade"; if (fQtde.ShowDialog() == DialogResult.OK) { qtd = fQtde.Quantidade; } } (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Add( new TRegistro_FichaTecOS() { Cd_item = rProd.CD_Produto, Ds_item = rProd.DS_Produto, Quantidade = qtd }); if (Vl_Unitario.Enabled) { Vl_Unitario.Value = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal); vl_custo.Value = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_TotCusto); } vl_custo.Enabled = vl_custo.Value.Equals(decimal.Zero) && St_obrigaCusto; tot_itensFichaTec.Text = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal). ToString("N2", new System.Globalization.CultureInfo("pt-BR")); BS_Pecas.ResetCurrentItem(); } } }
private void afterBuscaItens() { if (bsOS.Count > 0) { string vid_os = string.Empty; string virg = string.Empty; (bsOS.List as CamadaDados.Servicos.TList_LanServico).ForEach(p => { if (p.St_processarOS) { vid_os += virg + p.Id_os.ToString(); virg = ","; } }); BS_Pecas.Clear(); if (vid_os.Trim() != string.Empty) { BS_Pecas.DataSource = new CamadaDados.Servicos.TCD_LanServicosPecas().Select( new TpBusca[] { new TpBusca() { vNM_Campo = "a.cd_empresa", vOperador = "=", vVL_Busca = "'" + CD_Empresa.Text.Trim() + "'" }, new TpBusca() { vNM_Campo = "a.id_os", vOperador = "in", vVL_Busca = "(" + vid_os + ")" } }, 0, string.Empty, string.Empty); } this.CalcularTotais(); } }
private void TFLan_Pecas_Ordem_Servico_Load(object sender, EventArgs e) { if (!string.IsNullOrEmpty(Utils.Parametros.pubCultura)) { Idioma.TIdioma.AjustaCultura(this); } pnl_Pecas.set_FormatZero(); Icon = ResourcesUtils.TecnoAliance_ICO; Height = 456; St_obrigaCusto = CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlBool("ST_OBRIGAR_CUSTO_UNIT_ORC", null).Equals(true); if (!St_alterar) { BS_Pecas.AddNew(); } else { if (rpeca.lFichaTecOS.Count > 0) { Height = 600; (BS_Pecas.Current as TRegistro_LanServicosPecas).lFichaTecOS.ForEach(p => { p.Vl_unitario = TCN_LanPrecoItem.Busca_ConsultaPreco(CD_Empresa, p.Cd_item, CD_TabelaPreco, null); }); if (Vl_Unitario.Enabled) { Vl_Unitario.Value = (BS_Pecas.Current as TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal); vl_custo.Value = (BS_Pecas.Current as TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_TotCusto); } vl_custo.Enabled = vl_custo.Value.Equals(decimal.Zero) && St_obrigaCusto; tot_itensFichaTec.Text = (BS_Pecas.Current as TRegistro_LanServicosPecas).lFichaTecOS.Sum(p => p.Vl_Subtotal). ToString("N2", new System.Globalization.CultureInfo("pt-BR")); } if (rpeca.Vl_acrescimo > decimal.Zero && rpeca.Pc_acrescimo.Equals(decimal.Zero)) { rpeca.Pc_acrescimo = Math.Round(decimal.Divide(decimal.Multiply(rpeca.Vl_acrescimo, 100), rpeca.Vl_subtotal), 5, MidpointRounding.AwayFromZero); } if (rpeca.Vl_desconto > decimal.Zero && rpeca.Pc_desconto.Equals(decimal.Zero)) { rpeca.Pc_desconto = Math.Round(decimal.Divide(decimal.Multiply(rpeca.Vl_desconto, 100), rpeca.Vl_subtotal), 5, MidpointRounding.AwayFromZero); } BS_Pecas.DataSource = rpeca; CD_Produto.Enabled = false; DS_Produto.Enabled = false; CD_Local.Enabled = !pSt_servico && !St_consumoInterno; BB_Local.Enabled = !pSt_servico && !St_consumoInterno; ID_Tecnico.Enabled = pSt_servico; BB_Tecnico.Enabled = pSt_servico; if (!string.IsNullOrEmpty(Cd_clifor)) { rProg = CamadaNegocio.Faturamento.ProgEspecialVenda.TCN_ProgEspecialVenda.BuscarProg(CD_Empresa, Cd_clifor, CD_Produto.Text, CD_TabelaPreco, null); } } if (!St_alterar) { ID_Tecnico.Text = Cd_tecnico; DS_Funcao.Text = Nm_tecnico; } vl_custo.Enabled = vl_custo.Value.Equals(decimal.Zero) && St_obrigaCusto; Vl_Unitario.Enabled = string.IsNullOrEmpty(CD_TabelaPreco) || CamadaNegocio.Diversos.TCN_Usuario_RegraEspecial.ValidaRegra(Utils.Parametros.pubLogin, "PERMITIR INFORMAR PREÇO VENDA", null); vl_custo.Visible = St_obrigaCusto; lbCusto.Visible = St_obrigaCusto; CD_Local.Enabled = !pSt_servico; BB_Local.Enabled = !pSt_servico; st_servico.Checked = pSt_servico; if (pSt_servico) { BB_NovoProduto.Text = "(F8)\r\nServiço"; } if (St_consumoInterno) { CD_Local.Enabled = false; BB_Local.Enabled = false; } }
private void BuscarProduto() { TpBusca[] filtro = new TpBusca[1]; filtro[0].vNM_Campo = "isnull(e.ST_Servico, 'N')"; filtro[0].vOperador = pSt_servico ? "=" : "<>"; filtro[0].vVL_Busca = "'S'"; if (St_consumoInterno) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "isnull(e.ST_consumointerno, 'N')"; filtro[filtro.Length - 1].vOperador = "="; filtro[filtro.Length - 1].vVL_Busca = "'S'"; } TRegistro_CadProduto rProd = null; if (string.IsNullOrEmpty(CD_Produto.Text)) { rProd = UtilPesquisa.BuscarProduto(string.Empty, CD_Empresa, Nm_empresa, CD_TabelaPreco, new Componentes.EditDefault[] { CD_Produto, DS_Produto }, filtro); } else if (CD_Produto.Text.SoNumero().Trim().Length != CD_Produto.Text.Trim().Length) { rProd = UtilPesquisa.BuscarProduto(CD_Produto.Text, CD_Empresa, Nm_empresa, CD_TabelaPreco, new Componentes.EditDefault[] { CD_Produto, DS_Produto }, filtro); } else { Array.Resize(ref filtro, filtro.Length + 2); filtro[filtro.Length - 2].vNM_Campo = "isnull(a.st_registro, 'A')"; filtro[filtro.Length - 2].vOperador = "<>"; filtro[filtro.Length - 2].vVL_Busca = "'C'"; filtro[filtro.Length - 1].vNM_Campo = string.Empty; filtro[filtro.Length - 1].vOperador = string.Empty; filtro[filtro.Length - 1].vVL_Busca = "(a.cd_produto like '%" + CD_Produto.Text.Trim() + "') or " + "(a.Codigo_Alternativo = '" + (CD_Produto.TextOld != null ? CD_Produto.TextOld.ToString() : CD_Produto.Text.Trim()) + "') or " + "(exists(select 1 from tb_est_codbarra x " + " where x.cd_produto = a.cd_produto " + " and x.cd_codbarra = '" + CD_Produto.Text.Trim() + "'))"; TList_CadProduto lProd = new TCD_CadProduto().Select(filtro, 0, string.Empty, string.Empty, string.Empty); if (lProd.Count > 0) { rProd = lProd[0]; } } if (rProd != null) { CD_Produto.Text = rProd.CD_Produto; DS_Produto.Text = rProd.DS_Produto; sigla_unidade.Text = rProd.Sigla_unidade; DS_Observacao.Text = rProd.DS_Tecnica; st_kit.Checked = rProd.St_composto; if ((!st_servico.Checked)) { //Buscar local armazenagem object obj = new TCD_CadLocalArm().BuscarEscalar( new TpBusca[] { new TpBusca() { vNM_Campo = string.Empty, vOperador = "exists", vVL_Busca = "(select 1 from tb_est_empresa_x_localarm x " + "where x.cd_local = a.cd_local " + "and x.cd_empresa = '" + CD_Empresa.Trim() + "')" }, new TpBusca() { vNM_Campo = string.Empty, vOperador = "exists", vVL_Busca = "(select 1 from tb_est_localarm_x_produto x " + "where x.cd_local = a.cd_local " + "and x.cd_produto = '" + CD_Produto.Text.Trim() + "')" } }, "a.cd_local"); if (obj != null) { CD_Local.Text = obj.ToString(); CD_Local_Leave(this, new EventArgs()); Quantidade.Focus(); } else { if (string.IsNullOrEmpty(CD_Local.Text)) { CD_Local.Focus(); } else { Quantidade.Focus(); } } } if (st_kit.Checked) { Height = 900; Quantidade.Value = 1; try { (BS_Pecas.Current as TRegistro_LanServicosPecas).lFichaTecOS = TCN_LanServicoPecas.MontarFichaTecOS(CD_Produto.Text, CD_Empresa, Quantidade.Value, null); BS_Pecas.ResetCurrentItem(); } catch (Exception ex) { MessageBox.Show(ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { Height = 456; (BS_Pecas.Current as TRegistro_LanServicosPecas).lFichaTecOS.Clear(); BS_Pecas.ResetCurrentItem(); } } ConsultaPreco(); }
private void afterAlterarPecas(bool st_servico) { if (bsOrdemServico.Current != null) { if (!st_servico && BS_Pecas.Current == null) { MessageBox.Show("Obrigatorio selecionar peça para alterar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (st_servico && bsServico.Current == null) { MessageBox.Show("Obrigatorio selecionar Serviço para alterar.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } using (TFLan_Pecas_Ordem_Servico fPeca = new TFLan_Pecas_Ordem_Servico()) { fPeca.CD_Empresa = CD_Empresa.Text; fPeca.Nm_empresa = NM_Empresa.Text; fPeca.CD_TabelaPreco = CD_TabelaPreco.Text; fPeca.St_alterar = true; fPeca.pSt_servico = st_servico; CamadaDados.Servicos.TRegistro_LanServicosPecas rPeca = new CamadaDados.Servicos.TRegistro_LanServicosPecas(); if (!st_servico) { fPeca.rPeca = BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas; rPeca.Cd_produto = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_produto; rPeca.Ds_produto = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_produto; rPeca.Ds_unidproduto = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_unidproduto; rPeca.Sigla_unidproduto = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Sigla_unidproduto; rPeca.Cd_local = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_local; rPeca.Ds_local = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_local; rPeca.Id_evolucao = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Id_evolucao; rPeca.Ds_observacao = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_observacao; rPeca.Quantidade = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Quantidade; rPeca.Vl_desconto = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_desconto; rPeca.Vl_acrescimo = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_acrescimo; rPeca.Vl_subtotal = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_subtotal; rPeca.Vl_SubTotalLiq = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_SubTotalLiq; rPeca.Vl_unitario = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_unitario; rPeca.St_atendimentogarantiabool = (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).St_atendimentogarantiabool; } else { fPeca.rPeca = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas); rPeca.Cd_produto = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_produto; rPeca.Ds_produto = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_produto; rPeca.Ds_unidproduto = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_unidproduto; rPeca.Sigla_unidproduto = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Sigla_unidproduto; rPeca.Cd_local = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_local; rPeca.Ds_local = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_local; rPeca.Id_evolucao = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Id_evolucao; rPeca.Ds_observacao = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_observacao; rPeca.Quantidade = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Quantidade; rPeca.Vl_desconto = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_desconto; rPeca.Vl_acrescimo = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_acrescimo; rPeca.Vl_subtotal = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_subtotal; rPeca.Vl_SubTotalLiq = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_SubTotalLiq; rPeca.Vl_unitario = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_unitario; rPeca.St_atendimentogarantiabool = (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).St_atendimentogarantiabool; } if (fPeca.ShowDialog() != DialogResult.OK) { if (!st_servico) { (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_produto = rPeca.Cd_produto; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_produto = rPeca.Ds_produto; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_unidproduto = rPeca.Ds_unidproduto; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Sigla_unidproduto = rPeca.Sigla_unidproduto; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_local = rPeca.Cd_local; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_local = rPeca.Ds_local; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Id_evolucao = rPeca.Id_evolucao; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_observacao = rPeca.Ds_observacao; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Quantidade = rPeca.Quantidade; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_desconto = rPeca.Vl_desconto; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_acrescimo = rPeca.Vl_acrescimo; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_subtotal = rPeca.Vl_subtotal; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_SubTotalLiq = rPeca.Vl_SubTotalLiq; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_unitario = rPeca.Vl_unitario; (BS_Pecas.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).St_atendimentogarantiabool = rPeca.St_atendimentogarantiabool; } else { (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_produto = rPeca.Cd_produto; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_produto = rPeca.Ds_produto; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_unidproduto = rPeca.Ds_unidproduto; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Sigla_unidproduto = rPeca.Sigla_unidproduto; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Cd_local = rPeca.Cd_local; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_local = rPeca.Ds_local; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Id_evolucao = rPeca.Id_evolucao; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Ds_observacao = rPeca.Ds_observacao; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Quantidade = rPeca.Quantidade; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_desconto = rPeca.Vl_desconto; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_acrescimo = rPeca.Vl_acrescimo; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_subtotal = rPeca.Vl_subtotal; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_SubTotalLiq = rPeca.Vl_SubTotalLiq; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).Vl_unitario = rPeca.Vl_unitario; (bsServico.Current as CamadaDados.Servicos.TRegistro_LanServicosPecas).St_atendimentogarantiabool = rPeca.St_atendimentogarantiabool; } } if (!st_servico) { BS_Pecas.ResetCurrentItem(); } else { bsServico.ResetCurrentItem(); } } } else { MessageBox.Show("Não existe peça(serviço) selecionado.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); } }