/// <summary> /// Inseri novo(a) LeituraCodigo na lista /// </summary> /// <returns></returns> public override bool Inserir() { try { bool ok = leituraCodigo.Inserir(); if (ok) { lista.Add(leituraCodigo.Control.ID); Indice = lista.Count - 1; } return(ok); } catch (Exception ex) { throw ex; } }
public DataTable InserirTxt(int eventoID, int apresentacaoID, int setorID, string[] linhas) { BD bd = new BD(); bd.IniciarTransacao(); DataTable oDataTable = new DataTable("Codigos"); oDataTable.Columns.Add("CodigosEncontrados", typeof(int)); oDataTable.Columns.Add("CodigosNaoEncontrados", typeof(int)); DataRow linhaTable = oDataTable.NewRow(); linhaTable["CodigosEncontrados"] = 0; linhaTable["CodigosNaoEncontrados"] = 0; CodigoBarra oCodigoBarra = new CodigoBarra(); try { //varre as linhas do txt foreach (string linha in linhas) { if (linha.Trim() == string.Empty) { continue; } //separa os itens em variáveis string[] parameters = linha.Split(','); string codigoBarra = parameters[0].Trim(); string dataLeitura = parameters[1].Trim(); string portaria = parameters[2].Trim(); string entradaSaida = parameters[3].Trim(); LeituraCodigo.CodigoResposta oCodigoResposta = (LeituraCodigo.CodigoResposta) int.Parse(parameters[4]); //grava no banco, usando a transação LeituraCodigo oLeituraCodigo = new LeituraCodigo(); oLeituraCodigo.EventoID.Valor = eventoID; oLeituraCodigo.ApresentacaoID.Valor = apresentacaoID; oLeituraCodigo.SetorID.Valor = setorID; oLeituraCodigo.DataLeitura.Valor = DateTime.ParseExact(dataLeitura, "yyyyMMddHHmmss", null); oLeituraCodigo.CodigoResultado.Valor = (int)oCodigoResposta; oLeituraCodigo.CodigoBarra.Valor = codigoBarra; oLeituraCodigo.Portaria.Valor = portaria; oLeituraCodigo.Inserir(bd); //verifica se o código existe, para posterior relatório if (oCodigoBarra.ExisteLog(codigoBarra)) { linhaTable["CodigosEncontrados"] = (int)linhaTable["CodigosEncontrados"] + 1; } else { linhaTable["CodigosNaoEncontrados"] = (int)linhaTable["CodigosNaoEncontrados"] + 1; } } oDataTable.Rows.Add(linhaTable); bd.FinalizarTransacao(); return(oDataTable); } catch (Exception ex) { bd.DesfazerTransacao(); throw ex; } finally { bd.Fechar(); } }