public static string Gravar(TRegistro_CadProduto val, TObjetoBanco banco) { bool st_transacao = false; TCD_CadProduto qtb_produto = new TCD_CadProduto(); try { if (banco == null) { st_transacao = qtb_produto.CriarBanco_Dados(true); } else { qtb_produto.Banco_Dados = banco; } TList_CFG cfg = TCN_CFG.Buscar(string.Empty, qtb_produto.Banco_Dados); val.CD_Produto = CamadaDados.TDataQuery.getPubVariavel(qtb_produto.Grava(val), "@P_CD_PRODUTO"); //monta objeto CamadaDados.Estoque.TRegistro_LanPrecoItem preco = new CamadaDados.Estoque.TRegistro_LanPrecoItem(); preco.CD_Empresa = cfg[0].cd_empresa; preco.CD_TabelaPreco = cfg[0].cd_tabelapreco; preco.CD_Produto = val.CD_Produto; preco.VL_PrecoVenda = val.Vl_precovenda; CamadaDados.Estoque.TList_LanPrecoItem lista = new CamadaDados.Estoque.TList_LanPrecoItem(); lista.Add(preco); TCN_LanPrecoItem.Grava_LanPrecoItem(lista, qtb_produto.Banco_Dados); if (st_transacao) { qtb_produto.Banco_Dados.Commit_Tran(); } return(val.CD_Produto); } catch (Exception ex) { if (st_transacao) { qtb_produto.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar produto: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_produto.deletarBanco_Dados(); } } }
private void bb_saldoest_Click(object sender, EventArgs e) { using (Proc_Commoditties.TFSaldoEstPrecoVenda fSaldo = new Proc_Commoditties.TFSaldoEstPrecoVenda()) { // fSaldo.pSt_servico = st_servico.Checked; if (fSaldo.ShowDialog() == DialogResult.OK) { if (!string.IsNullOrEmpty(fSaldo.Cd_local)) { CamadaDados.Estoque.TRegistro_LanEstoque rEstoque = new CamadaDados.Estoque.TRegistro_LanEstoque(); rEstoque.Cd_empresa = fSaldo.Cd_empresa; rEstoque.Cd_local = fSaldo.Cd_local; rEstoque.Dt_lancto = CamadaDados.UtilData.Data_Servidor(); rEstoque.Tp_movimento = "E"; rEstoque.Qtd_entrada = fSaldo.Quantidade; rEstoque.Qtd_saida = decimal.Zero; rEstoque.Vl_unitario = fSaldo.Vl_unitario; rEstoque.Vl_subtotal = fSaldo.Quantidade * fSaldo.Vl_unitario; rEstoque.Tp_lancto = "M"; rEstoque.St_registro = "A"; (bsProduto.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadProduto).vl_unitario = rEstoque.Vl_unitario; (bsProduto.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadProduto).rSaldoEst = rEstoque; } if (!string.IsNullOrEmpty(fSaldo.Cd_tabelapreco)) { string[] tabela = fSaldo.Cd_tabelapreco.Split(new char[] { ';' }); for (int i = 0; tabela.Count() > i; i++) { CamadaDados.Estoque.TRegistro_LanPrecoItem rPreco = new CamadaDados.Estoque.TRegistro_LanPrecoItem(); rPreco.CD_Empresa = fSaldo.Cd_empresa; rPreco.CD_TabelaPreco = tabela[i]; rPreco.Dt_preco = CamadaDados.UtilData.Data_Servidor(); rPreco.VL_PrecoVenda = fSaldo.Vl_precovenda; (bsProduto.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadProduto).vl_unitario = rPreco.VL_PrecoVenda; (bsProduto.Current as CamadaDados.Estoque.Cadastros.TRegistro_CadProduto).lPrecoItem.Add(rPreco); } } } } }