// passar o Usuario logado no sistema public CanalPrecoLista_B() { canalPreco = new CanalPreco(); }
// passar o Usuario logado no sistema public CanalPrecoLista_B(int usuarioIDLogado) { canalPreco = new CanalPreco(usuarioIDLogado); }
public int[] AdicionarMulti(int eventoID, int apresentacaoID, int setorID, int precoID, int todosID, string precoNome) { try { DataTable tabelaPrecosAlteraveis = precosAlteraveis(eventoID, apresentacaoID, setorID, precoID, todosID, precoNome); //verificar quais ainda nao existem na tabela Array precosIDs = Array.CreateInstance(typeof(DataRow), tabelaPrecosAlteraveis.Rows.Count); tabelaPrecosAlteraveis.Rows.CopyTo(precosIDs, 0); string precos = Utilitario.ArrayToString(precosIDs); string sqlPrecos = "SELECT tPreco.ID AS PrecoID, tCanalPreco.CanalID " + "FROM tPreco (NOLOCK) " + "LEFT JOIN tCanalPreco (NOLOCK) ON tCanalPreco.PrecoID=tPreco.ID AND tCanalPreco.CanalID=" + this.CanalID.Valor + " " + "WHERE tPreco.ID in (" + precos + ")"; bd.Consulta(sqlPrecos); DataTable tabela = new DataTable("Canais"); tabela.Columns.Add("PrecoID", typeof(int)); tabela.Columns.Add("CanalID", typeof(int)); while (bd.Consulta().Read()) { DataRow linha = tabela.NewRow(); linha["PrecoID"] = bd.LerInt("PrecoID"); linha["CanalID"] = bd.LerInt("CanalID"); tabela.Rows.Add(linha); } bd.Consulta().Close(); CanalPreco canalPreco = new CanalPreco(this.Control.UsuarioID); canalPreco.Limpar(); canalPreco.CanalID.Valor = this.CanalID.Valor; canalPreco.DataInicio.Valor = this.DataInicio.Valor; canalPreco.DataFim.Valor = this.DataFim.Valor; canalPreco.Quantidade.Valor = this.Quantidade.Valor; bd.IniciarTransacao(); int countInseridos = 0; foreach (DataRow linha in tabela.Rows) { int pID = (int)linha["PrecoID"]; int cID = (int)linha["CanalID"]; if (cID == 0) { //null, pode incluir canalPreco.PrecoID.Valor = pID; canalPreco.Inserir(bd, true); countInseridos++; } }//while (bd.Consulta().Read()) bd.FinalizarTransacao(); int[] retorno = new int[2]; retorno[0] = tabela.Rows.Count; retorno[1] = countInseridos; return(retorno); } catch (Exception ex) { bd.DesfazerTransacao(); throw ex; //} finally { // bd.Fechar(); // bd.Cnn.Dispose(); } }