public static void EncerrarSessao(TRegistro_Sessao val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_Sessao qtb_sessao = new TCD_Sessao(); try { if (banco == null) { st_transacao = qtb_sessao.CriarBanco_Dados(true); } else { qtb_sessao.Banco_Dados = banco; } val.Dt_fechamento = CamadaDados.UtilData.Data_Servidor(); val.St_registro = "F"; Gravar(val, qtb_sessao.Banco_Dados); if (st_transacao) { qtb_sessao.Banco_Dados.Commit_Tran(); } } catch (Exception ex) { if (st_transacao) { qtb_sessao.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro encerrar sessao: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_sessao.deletarBanco_Dados(); } } }
public static string Gravar(TRegistro_Sessao val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_Sessao qtb_sessao = new TCD_Sessao(); try { if (banco == null) { st_transacao = qtb_sessao.CriarBanco_Dados(true); } else { qtb_sessao.Banco_Dados = banco; } //Gravar sessao val.Id_sessaostr = CamadaDados.TDataQuery.getPubVariavel(qtb_sessao.Gravar(val), "@P_ID_SESSAO"); if (st_transacao) { qtb_sessao.Banco_Dados.Commit_Tran(); } return(val.Id_sessaostr); } catch (Exception ex) { if (st_transacao) { qtb_sessao.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar sessão: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_sessao.deletarBanco_Dados(); } } }
public static string AbrirSessao(TRegistro_Sessao val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_Sessao qtb_sessao = new TCD_Sessao(); try { if (banco == null) { st_transacao = qtb_sessao.CriarBanco_Dados(true); } else { qtb_sessao.Banco_Dados = banco; } //Verificar se existe sessao aberta para o usuario if (qtb_sessao.BuscarEscalar( new Utils.TpBusca[] { new Utils.TpBusca() { vNM_Campo = "a.id_pdv", vOperador = "=", vVL_Busca = val.Id_pdvstr }, new Utils.TpBusca() { vNM_Campo = "a.login", vOperador = "=", vVL_Busca = "'" + val.Login.Trim() + "'" }, new Utils.TpBusca() { vNM_Campo = "isnull(a.st_registro, 'A')", vOperador = "<>", vVL_Busca = "'F'" } }, "1") != null) { throw new Exception("Usuario ja possui sessão aberta no pdv Nº" + val.Id_pdvstr); } val.Dt_abertura = CamadaDados.UtilData.Data_Servidor(); val.St_registro = "A"; val.Id_sessaostr = Gravar(val, qtb_sessao.Banco_Dados); if (st_transacao) { qtb_sessao.Banco_Dados.Commit_Tran(); } return(val.Id_sessaostr); } catch (Exception ex) { if (st_transacao) { qtb_sessao.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro abrir sessao: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_sessao.deletarBanco_Dados(); } } }