public static string Gravar(TRegistro_PesagemDiversas val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_PesagemDiversas qtb_pesagem = new TCD_PesagemDiversas(); try { if (banco == null) { st_transacao = qtb_pesagem.CriarBanco_Dados(true); } else { qtb_pesagem.Banco_Dados = banco; } if ((val.Ps_bruto > 0) && (val.Ps_tara > 0)) { val.St_registro = "F";//Finalizar pesagem } val.Id_ticketstr = CamadaDados.TDataQuery.getPubVariavel(qtb_pesagem.Gravar(val), "@P_ID_TICKET"); if (st_transacao) { qtb_pesagem.Banco_Dados.Commit_Tran(); } return(val.Id_ticketstr); } catch (Exception ex) { if (st_transacao) { qtb_pesagem.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar pesagem: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_pesagem.deletarBanco_Dados(); } } }
public static void ImprimirTicket(TRegistro_PesagemDiversas val) { //Buscar configuracao impressao ticket do terminal CamadaDados.Diversos.TList_CadTerminal lTerminal = CamadaNegocio.Diversos.TCN_CadTerminal.Busca(Utils.Parametros.pubTerminal, string.Empty, null); if (lTerminal.Count.Equals(decimal.Zero)) { throw new Exception("Obrigatorio informar terminal para imprimir ticket pesagem."); } if (lTerminal[0].Tp_imptick.Trim().ToUpper().Equals("T") && string.IsNullOrEmpty(lTerminal[0].Porta_imptick)) { throw new Exception("Obrigatorio configurar porta de impressão para utilizar tipo de impressão texto."); } FileInfo f = null; StreamWriter w = null; f = new FileInfo(Path.GetTempPath() + Path.DirectorySeparatorChar + "Ticket.txt"); w = f.CreateText(); try { //Buscar dados empresa CamadaDados.Diversos.TRegistro_CadEmpresa rEmp = CamadaNegocio.Diversos.TCN_CadEmpresa.Busca(val.Cd_empresa, string.Empty, string.Empty, null)[0]; w.WriteLine("EMPRESA: " + val.Nm_empresa.Trim().ToUpper().FormatStringDireita(60, ' ') + "CNPJ: " + rEmp.rClifor.Nr_cgc.Trim()); w.WriteLine("ENDEREÇO: " + rEmp.rEndereco.Ds_endereco.Trim() + ", " + rEmp.rEndereco.Numero.Trim() + " - " + rEmp.rEndereco.Bairro.Trim() + " - " + rEmp.rEndereco.DS_Cidade.Trim() + ", " + rEmp.rEndereco.UF.Trim()); w.WriteLine(); w.WriteLine(); w.WriteLine("".FormatStringDireita(80, '-')); w.WriteLine("*********************************PESAGEM DIVERSA*********************************"); w.WriteLine("".FormatStringDireita(80, '-')); w.WriteLine(); w.WriteLine(" ROMANEIO: " + val.Id_ticket.ToString().FormatStringDireita(50, ' ') + "Data Ticket: " + CamadaDados.UtilData.Data_Servidor().ToString("dd/MM/yyyy")); w.WriteLine(" PLACA: " + val.Placacarreta.Trim().FormatStringDireita(10, ' ')); w.WriteLine(" PRODUTO: " + val.Ds_produto.Trim()); w.WriteLine(); w.WriteLine(); w.WriteLine(); w.WriteLine(" PESO BRUTO: " + val.Ps_bruto.ToString("N2", new System.Globalization.CultureInfo("en-US", true)).FormatStringEsquerda(10, ' ') + " " + (val.Dt_bruto.HasValue ? val.Dt_bruto.Value.ToString("dd/MM/yyyy HH:mm:ss") : string.Empty) + " " + val.Tp_captura_bruto.Trim().ToUpper()); w.WriteLine(" PESO TARA: " + val.Ps_tara.ToString("N2", new System.Globalization.CultureInfo("en-US", true)).FormatStringEsquerda(10, ' ') + " " + (val.Dt_tara.HasValue ? val.Dt_tara.Value.ToString("dd/MM/yyyy HH:mm:ss") : string.Empty) + " " + val.Tp_captura_tara.Trim().ToUpper()); w.WriteLine(" PESO LIQUIDO: " + val.Ps_liquido.ToString("N2", new System.Globalization.CultureInfo("en-US", true)).FormatStringEsquerda(10, ' ')); w.WriteLine(); w.WriteLine(); w.WriteLine(" OBSERVACAO: " + val.Ds_observacao.Trim() + "\r\n Atencao: Esta pesagem nao tem nenhuma relacao com o movimento interno."); w.WriteLine(); w.WriteLine("TecnoAliance Software - www.tecnoaliance.com.br - (0xx45)3421 5050 / Toledo-PR"); w.Write(Convert.ToChar(12)); w.Write(Convert.ToChar(27)); w.Write(Convert.ToChar(109)); w.Flush(); f.CopyTo(lTerminal[0].Porta_imptick); } catch (Exception ex) { MessageBox.Show("Erro impressão Ticket: " + ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { w.Dispose(); f = null; } }
public static string Excluir(TRegistro_PesagemDiversas val, BancoDados.TObjetoBanco banco) { //Verificar se pesagem não tem aplicação TList_LanAplicacaoPedido lAplicacao = TCN_LanAplicacaoPedido.Buscar(string.Empty, string.Empty, string.Empty, val.Cd_empresa, string.Empty, val.Id_ticket.ToString(), val.Tp_pesagem, banco); if (lAplicacao.Count > 0) { string msg = ""; for (int i = 0; i < lAplicacao.Count; i++) { msg += "Aplicação...: " + lAplicacao[i].Id_aplicacao.ToString() + "\r\n" + "Pedido......: " + lAplicacao[i].Nr_pedido.ToString() + "\r\n" + "Nota Fiscal.: " + lAplicacao[i].Nr_notafiscalaplic.ToString() + "\r\n" + "Serie NF....: " + lAplicacao[i].Nr_serieaplic.ToString() + "\r\n" + "--------------------------------------\r\n"; } throw new Exception("Não é possivel excluir pesagem porque existe aplicação.\r\n\r\n" + "-------Dados da Pesagem-------\r\n" + "Empresa.....: " + val.Cd_empresa + "\r\n" + "Ticket......: " + val.Id_ticket.ToString() + "\r\n" + "TP. Pesagem.: " + val.Tp_pesagem + "\r\n\r\n" + "--------Dados Aplicação---------\r\n" + msg); } bool st_transacao = false; TCD_PesagemDiversas qtb_pesagem = new TCD_PesagemDiversas(); try { if (st_transacao) { st_transacao = qtb_pesagem.CriarBanco_Dados(true); } else { qtb_pesagem.Banco_Dados = banco; } //Setar ST_Registro para C, pois a exclusão é somente lógica. val.St_registro = "C"; qtb_pesagem.Gravar(val); if (st_transacao) { qtb_pesagem.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { qtb_pesagem.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro cancelar pesagem avulsa: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_pesagem.deletarBanco_Dados(); } } }