public static string AcertarVlMedio(TRegistro_LanEstoque val, TObjetoBanco banco) { bool st_transacao = false; TCD_LanEstoque qtb_estoque = new TCD_LanEstoque(); try { if (banco == null) { st_transacao = qtb_estoque.CriarBanco_Dados(true); } else { qtb_estoque.Banco_Dados = banco; } string retorno = qtb_estoque.AcertarVlMedio(val); if (st_transacao) { qtb_estoque.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (st_transacao) { qtb_estoque.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro acertar valor medio: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_estoque.deletarBanco_Dados(); } } }
public static void CancelarEstoque(TRegistro_LanEstoque val, TObjetoBanco banco) { bool st_transacao = false; TCD_LanEstoque qtb_est = new TCD_LanEstoque(); try { if (banco == null) { st_transacao = qtb_est.CriarBanco_Dados(true); } else { qtb_est.Banco_Dados = banco; } qtb_est.CancelarEstoque(val); if (st_transacao) { qtb_est.Banco_Dados.Commit_Tran(); } } catch (Exception ex) { if (st_transacao) { qtb_est.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro cancelar estoque: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_est.deletarBanco_Dados(); } } }
public static string DeletarEstoque(TRegistro_LanEstoque val, TObjetoBanco banco) { if (val.Cd_empresa.Trim().Equals("")) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: CD_Empresa\r\n" + "Método: DeletarEstoque\r\n" + "Classe: TCN_LanEstoque"); } if (val.Cd_produto.Trim().Equals("")) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: CD_Produto\r\n" + "Método: DeletarEstoque\r\n" + "Classe: TCN_LanEstoque"); } if (val.Id_lanctoestoque < 1) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: ID_LanctoEstoque\r\n" + "Método: DeletarEstoque\r\n" + "Classe: TCN_LanEstoque"); } string retorno = string.Empty; bool pode_liberar = false; TCD_LanEstoque qtb_estoque = new TCD_LanEstoque(); try { if (banco == null) { pode_liberar = qtb_estoque.CriarBanco_Dados(true); } else { qtb_estoque.Banco_Dados = banco; } retorno = qtb_estoque.DeletaEstoque(val); if (pode_liberar) { qtb_estoque.Banco_Dados.Commit_Tran(); } return(retorno); } catch { if (pode_liberar) { qtb_estoque.Banco_Dados.RollBack_Tran(); } return(string.Empty); } finally { if (pode_liberar) { qtb_estoque.deletarBanco_Dados(); } } }
public static string GravarEstoque(TRegistro_LanEstoque val, TObjetoBanco banco) { //Validar Campos obrigatorios para gravar estoque if (string.IsNullOrEmpty(val.Cd_empresa)) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: CD_Empresa\r\n" + "Método: GravarEstoque\r\n" + "Classe: TCN_LanEstoque"); } if (string.IsNullOrEmpty(val.Cd_produto)) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: CD_Produto\r\n" + "Método: GravarEstoque\r\n" + "Classe: TCN_LanEstoque"); } if (val.Dt_lancto.Equals(new DateTime())) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: DT_Lancto\r\n" + "Método: GravarEstoque\r\n" + "Classe: TCN_LanEstoque"); } if (string.IsNullOrEmpty(val.Tp_movimento)) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: TP_Movimento\r\n" + "Método: GravarEstoque\r\n" + "Classe: TCN_LanEstoque"); } if (string.IsNullOrEmpty(val.Tp_lancto)) { throw new Exception("Campo Obrigatorio !\r\n" + "Campo: TP_Lancto\r\n" + "Método: GravarEstoque\r\n" + "Classe: TCN_LanEstoque"); } bool pode_liberar = false; TCD_LanEstoque qtb_estoque = new TCD_LanEstoque(); try { if (banco == null) { pode_liberar = qtb_estoque.CriarBanco_Dados(true); } else { qtb_estoque.Banco_Dados = banco; } //Gravar Estoque string retorno = string.Empty; if ((!new TCD_CadProduto(qtb_estoque.Banco_Dados).ItemServico(val.Cd_produto)) && (!new TCD_CadProduto(qtb_estoque.Banco_Dados).ProdutoConsumoInterno(val.Cd_produto))) { if (val.Tp_movimento.Trim().Equals("S")) { decimal saldo = 0; if (BloquearEstoqueNegativo(val.Cd_empresa, val.Cd_produto, val.Cd_local, val.Qtd_saida, ref saldo, qtb_estoque.Banco_Dados)) { throw new Exception("Saldo insuficiente para baixar estoque do produto:\r\n" + val.Cd_produto + " - " + val.Ds_produto + "\r\n" + "No local de armazenagem: " + val.Cd_local.Trim() + "-" + val.Ds_local.Trim() + "\r\n" + "Saldo Disponivel: " + saldo.ToString("### ### ##0.000") + "\r\n" + "Saldo Requerido: " + val.Qtd_saida.ToString("### ### ##0.000") + "\r\n" + "Informe o Depto Contabil para lançamento da provisão de estoque !"); } } retorno = qtb_estoque.GravaEstoque(val); val.Id_lanctoestoque = decimal.Parse(CamadaDados.TDataQuery.getPubVariavel(retorno, "@@P_ID_LANCTOESTOQUE")); //Gravar Lote Anvisa val.lMovLoteAnvisa.ForEach(p => { p.Id_lanctoestoque = val.Id_lanctoestoque; Faturamento.LoteAnvisa.TCN_MovLoteAnvisa.Gravar(p, qtb_estoque.Banco_Dados); }); //Gravar Grade val.lGrade.ForEach(p => TCN_GradeEstoque.Gravar(new TRegistro_GradeEstoque() { Cd_empresa = val.Cd_empresa, Cd_produto = val.Cd_produto, Id_lanctoestoque = val.Id_lanctoestoque, Id_caracteristica = p.Id_caracteristica, Id_item = p.Id_item, quantidade = p.Vl_mov }, qtb_estoque.Banco_Dados)); if (pode_liberar) { qtb_estoque.Banco_Dados.Commit_Tran(); } return(retorno); } return(string.Empty); } catch (Exception ex) { if (pode_liberar) { qtb_estoque.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar estoque: " + ex.Message.Trim()); } finally { if (pode_liberar) { qtb_estoque.deletarBanco_Dados(); } } }