public static string sn; //Variável para armazenar a contra senha e enviar para o menu de pesquisa quando der duplo clique em alguma linha do datagrid. public void PesquisarGeralPremium_Click(object sender, RoutedEventArgs e) { //Definindo o padrão de cultura pt-BR para que as datas fiquem no formato dia/mês/ano: CultureInfo.CurrentCulture = new CultureInfo("pt-BR", false); Language = XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag); try { SqlConnection sqlcon = ConexãoDB.obterConexão(); string LikePesquisa = "%" + BoxPesquisaGeralPremium.Text.Trim() + "%"; SqlCommand sqlcmd = new SqlCommand("SelGeralPremium", sqlcon); sqlcmd.CommandType = CommandType.StoredProcedure; sqlcmd.Parameters.AddWithValue("@Pesquisa", LikePesquisa); SqlDataAdapter dataAdp = new SqlDataAdapter(sqlcmd); System.Data.DataTable dt = new System.Data.DataTable(); dataAdp.Fill(dt); GridBuscaGeralPremium.ItemsSource = dt.DefaultView; dataAdp.Update(dt); ConexãoDB.fecharConexao(sqlcon); } catch (Exception erro) { new CaixaDeMensagem(erro.Message); } }
public void PesquisarLicença_Click(object sender, RoutedEventArgs e) { //Definindo o padrão de cultura pt-BR para que as datas fiquem no formato dia/mês/ano: CultureInfo.CurrentCulture = new CultureInfo("pt-BR", false); Language = XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag); string LikeSN; string LikePesquisa = "%" + Box_PesquisarAlterar.Text.Trim() + "%"; //Adiciona os % para funcionar com o parâmetro like do sql. DataLicença.FontWeight = FontWeights.Regular; DataLicença.Foreground = Brushes.DimGray; try { SqlConnection sqlcon = ConexãoDB.obterConexão(); SqlCommand sqlcmd = new SqlCommand("SelLicença", sqlcon); sqlcmd.CommandType = CommandType.StoredProcedure; sqlcmd.Parameters.AddWithValue("@Pesquisa", LikePesquisa); SqlDataReader dataReader = sqlcmd.ExecuteReader(); if (dataReader.HasRows == true) { dataReader.Read(); string drCliente = dataReader.GetString(0); string drContato = dataReader.GetString(1); string drEmail = dataReader.GetString(2); string drProduto = dataReader.GetString(3); string drSN; string drValorDongle = dataReader.GetString(5); string drContraSenha = dataReader.GetString(6); string drLicença = dataReader.GetString(7); string drTipo = dataReader.GetString(8); string drDataRegistro = dataReader.GetDateTime(9).ToShortDateString(); string drNomeComputador; string drPlaca; string drFloripaSec; string drMacAddress; string drFuncionário = dataReader.GetString(14); string drObservações; string drNegócio; string drDataLicença; //Verifica se o valor na tabela é nulo antes de atribuir à variável. if (dataReader.IsDBNull(4)) { drSN = "Não Informado"; LikeSN = drSN; } else { drSN = dataReader.GetString(4); } if (dataReader.IsDBNull(10)) { drNomeComputador = "Não Informado"; } else { drNomeComputador = dataReader.GetString(10); } if (dataReader.IsDBNull(11)) { drPlaca = "Não Informado"; } else { drPlaca = dataReader.GetString(11); } if (dataReader.IsDBNull(12)) { drFloripaSec = "Não Informado"; } else { drFloripaSec = dataReader.GetString(12); } if (dataReader.IsDBNull(13)) { drMacAddress = "Não Informado"; } else { drMacAddress = dataReader.GetString(13); } if (dataReader.IsDBNull(15)) { drObservações = " "; } else { drObservações = dataReader.GetString(15); } if (dataReader.IsDBNull(16)) { drNegócio = "Nulo"; Negócio = "Nulo"; RadVenda.IsChecked = false; RadDemo.IsChecked = false; RadAlguel.IsChecked = false; RadFeira.IsChecked = false; } else { drNegócio = dataReader.GetString(16); Negócio = drNegócio; } if (dataReader.IsDBNull(17)) { drDataLicença = drDataRegistro; } else { drDataLicença = dataReader.GetDateTime(17).ToShortDateString(); } Cliente.Text = drCliente; Contato.Text = drContato; Email.Text = drEmail; Produto.Text = drProduto; SN.Text = drSN; LikeSN = "%" + SN.Text + "%"; Dongle.Text = drValorDongle; Senha.Text = drContraSenha; Licença.Text = drLicença; Tipo.Text = drTipo; Data.Text = drDataRegistro; NomePc.Text = drNomeComputador; Placa.Text = drPlaca; FlopSec.Text = drFloripaSec; MacAdd.Text = drMacAddress; Func.Text = drFuncionário; Obs.Text = drObservações; DataLicença.Text = drDataLicença; //Informando o tipo de negócio: if (drNegócio == "Venda") { Block_Negócio.Text = "Venda"; RadVenda.IsChecked = true; } if (drNegócio == "Demo") { Block_Negócio.Text = "Equipamento Demo"; RadDemo.IsChecked = true; } if (drNegócio == "Aluguel") { Block_Negócio.Text = "Aluguel"; RadAlguel.IsChecked = true; } if (drNegócio == "Feira") { Block_Negócio.Text = "Feira"; RadFeira.IsChecked = true; } if (drNegócio == "Nulo") { Block_Negócio.Text = "Negócio não informado"; } //Exibe os itens d apágina depois que o usuário pesquisar algo, evitando a tentativa de buscar pelos campos e não pela pesquisa. StkPanelNegócio.Visibility = Visibility.Visible; StkPanelColuna1.Visibility = Visibility.Visible; StkPanelColuna2.Visibility = Visibility.Visible; Btn_Salvar.Visibility = Visibility.Visible; ConexãoDB.fecharConexao(sqlcon); //Verificando se o SN é de um produto com suporte Premium: SqlConnection sqlcon2 = ConexãoDB.obterConexão(); string DataPremium; string Ativo; string Debitos; string DataGar; LikeSN = "%" + SN.Text + "%"; SqlCommand sqlcmd2 = new SqlCommand("VerFinanceiro", sqlcon2); sqlcmd2.CommandType = CommandType.StoredProcedure; sqlcmd2.Parameters.AddWithValue("@SN", LikeSN); //Envia o %SN% como parâmetro para o procedimento VerGarantia do banco Protheus. sqlcmd2.Parameters.Add("@ChkPremium", SqlDbType.VarChar, 10); sqlcmd2.Parameters.Add("@Ativo", SqlDbType.Int); sqlcmd2.Parameters.Add("@DBTOS", SqlDbType.VarChar, 10); sqlcmd2.Parameters.Add("@DTGAR", SqlDbType.VarChar, 10); sqlcmd2.Parameters["@ChkPremium"].Direction = ParameterDirection.Output; //Recebe o valor de saída do storedProcedure. sqlcmd2.Parameters["@Ativo"].Direction = ParameterDirection.Output; sqlcmd2.Parameters["@DBTOS"].Direction = ParameterDirection.Output; sqlcmd2.Parameters["@DTGAR"].Direction = ParameterDirection.Output; //Recebe o valor de saída do storedProcedure. sqlcmd2.ExecuteNonQuery(); Debitos = sqlcmd2.Parameters["@DBTOS"].Value.ToString(); DataPremium = sqlcmd2.Parameters["@ChkPremium"].Value.ToString(); //Envia para a variável DataGar a saída do procedimento para fazer as manipulações. Ativo = sqlcmd2.Parameters["@Ativo"].Value.ToString(); DataGar = sqlcmd2.Parameters["@DTGAR"].Value.ToString(); //Envia para a variável DataGar a saída do procedimento para fazer as manipulações. if (SN.Text == "Não Informado") { Block_Premium.Foreground = Brushes.Red; Block_Premium.Text = "Premium: Informe o SN"; Block_Garantia.Foreground = Brushes.Red; Block_Garantia.Text = "Garantia: Informe o SN"; } else { if (Debitos == "1") { Block_Garantia.Foreground = Brushes.Red; Block_Premium.Foreground = Brushes.Red; Block_Garantia.Text = "Garantia e Suporte Suspensos"; Block_Premium.Text = "Verificar com a Administração"; } else { if (DataPremium == "0") //Procedimento retorna 0 se o SN não existir na tabela AA3010. { Block_Premium.Foreground = Brushes.Red; Block_Premium.Text = "Não é Premium"; } else { if (Ativo == "0") { Block_Premium.Foreground = Brushes.Red; Block_Premium.Text = "Suporte Premium Suspenso"; } else //Se for diferente de 0 quer dizer que o SN existe na tabela Premium. { string dataConvertida = Convert.ToDateTime(DataPremium).ToString("dd/MM/yyyy"); //Converte o formato de data americada para BR. int tempoP = (DateTime.Parse(dataConvertida) - DateTime.Now.Date).Days; //Calcula a difença entre a data de vencimento da garantia e a data atual. if (tempoP >= 0) //Se a quantidade de dias for positiva, está na garantia. { Block_Premium.Foreground = Brushes.Green; Block_Premium.Text = "Suporte Premium até: " + dataConvertida; } else { Block_Premium.Foreground = Brushes.Red; Block_Premium.Text = "Suporte Premium expirou em: " + dataConvertida; } } } if (drNegócio == "Demo" || drNegócio == "Aluguel" || drNegócio == "Feira") { Block_Garantia.Foreground = Brushes.Green; Block_Premium.Foreground = Brushes.Green; Block_Garantia.Text = "Em Garantia"; Block_Premium.Text = "Possui Suporte Premium"; } else { if (DataGar == "0") //Procedimento retorna 0 se o SN não existir na tabela AA3010. { Block_Garantia.Foreground = Brushes.Red; Block_Garantia.Text = "Garantia: SN não encontrado"; } else //Se for diferente de 0 quer dizer que o SN existe na tabela AA3010 do Protheus11. { string dataCorrigida = DataGar.Insert(4, "-").Insert(7, "-"); //Formata a data que está como string no sqlserver, separando com - ano e mês. string dataConvertida = Convert.ToDateTime(dataCorrigida).ToString("dd/MM/yyyy"); //Converte o formato de data americada para BR. int tempog = (DateTime.Parse(dataConvertida) - DateTime.Now.Date).Days; //Calcula a difença entre a data de vencimento da garantia e a data atual. if (tempog >= 0) //Se a quantidade de dias for positiva, está na garantia. { Block_Garantia.Foreground = Brushes.Green; Block_Premium.Foreground = Brushes.Green; Block_Garantia.Text = "Em garantia até: " + dataConvertida; Block_Premium.Text = "Suporte Premium (Garantia)"; } else { Block_Garantia.Foreground = Brushes.Red; Block_Garantia.Text = "Garantia expirou em: " + dataConvertida; } } } } ConexãoDB.fecharConexao(sqlcon2); } } else { new CaixaDeMensagem("Nenhum registro encontrado"); } } catch (Exception erro) { new CaixaDeMensagem(erro.Message); } }
public void BuscaPremium_Click(object sender, RoutedEventArgs e) { //Definindo o padrão de cultura pt-BR para que as datas fiquem no formato dia/mês/ano: CultureInfo.CurrentCulture = new CultureInfo("pt-BR", false); Language = XmlLanguage.GetLanguage(CultureInfo.CurrentCulture.IetfLanguageTag); try { string LikePesquisa = "%" + Box_PesquisarPremium.Text.Trim() + "%"; //Adicionar os % para o parâmetro like do sql. SqlConnection sqlcon = ConexãoDB.obterConexão(); SqlCommand sqlcmd = new SqlCommand("SelPremium", sqlcon); sqlcmd.CommandType = CommandType.StoredProcedure; sqlcmd.Parameters.AddWithValue("@Pesquisa", LikePesquisa); SqlDataReader dataReader = sqlcmd.ExecuteReader(); if (dataReader.HasRows == true) { dataReader.Read(); string drCliente = dataReader.GetString(0); string drCTO = dataReader.GetString(1); string drNFPS = dataReader.GetString(2); string drProduto = dataReader.GetString(3); string drSN = dataReader.GetString(4); string drObservações = dataReader.GetString(5); string drData = dataReader.GetDateTime(6).ToShortDateString(); string drVencCTO = dataReader.GetDateTime(7).ToShortDateString(); string drProposta = dataReader.GetString(8); int drID = dataReader.GetInt32(10); int drAtivo = dataReader.GetInt32(9); Cliente.Text = drCliente; Produto.Text = drProduto; SN.Text = drSN; Data.Text = drData; CTO.Text = drCTO; VencCTO.Text = drVencCTO; NFPS.Text = drNFPS; Proposta.Text = drProposta; Obs.Text = drObservações; ID = drID; Ativo = drAtivo; if (drAtivo == 0) { RadSuspenso.IsChecked = true; } else { RadAtivo.IsChecked = true; } //Exibe os itens da apágina depois que o usuário pesquisar algo, evitando a tentativa de buscar pelos campos e não pela caixa de pesquisa. StkPanelColuna1.Visibility = Visibility.Visible; StkPanelColuna2.Visibility = Visibility.Visible; Btn_Salvar.Visibility = Visibility.Visible; ConexãoDB.fecharConexao(sqlcon); } else { new CaixaDeMensagem("Nenhum registro encontrado"); } } catch (Exception erro) { new CaixaDeMensagem(erro.Message); } }