segunda-feira, 29 de março de 2021

Formatar TextBox Valores Decimais

 Adicione um TextBox ao seu projeto e faça as seguintes alterações:

string valor;
        private void txt_valor_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsDigit(e.KeyChar) && e.KeyChar != Convert.ToChar(Keys.Back))
            {
                if (e.KeyChar == ',')
                {
                    e.Handled = (txt_valor.Text.Contains(","));
                }
                else
                    e.Handled = true;
            }            
        }

        private void txt_valor_Leave(object sender, EventArgs e)
        {
            valor = txt_valor.Text.Replace("R$", "");
            txt_valor.Text = string.Format("{0:C}", Convert.ToDouble(valor));
        }

        private void txt_valor_KeyUp(object sender, KeyEventArgs e)
        {
        	valor = txt_valor.Text.Replace("R$","").Replace(",","").Replace(" ","").Replace("00,","");
        	if(valor.Length == 0)
        	{
        		txt_valor.Text = "0,00"+valor;
        	}
        	if(valor.Length == 1)
        	{
        		txt_valor.Text = "0,0"+valor;
        	}
        	if(valor.Length == 2)
        	{
        		txt_valor.Text = "0,"+valor;
        	}
        	else if(valor.Length >= 3)
        	{
        		if(txt_valor.Text.StartsWith("0,"))
        		{
        			txt_valor.Text = valor.Insert(valor.Length - 2,",").Replace("0,","");
        		}
        		else if(txt_valor.Text.Contains("00,"))
        		{
        			txt_valor.Text = valor.Insert(valor.Length - 2,",").Replace("00,","");
        		}
        		else
        		{
        			txt_valor.Text = valor.Insert(valor.Length - 2,",");
        		}
        	}        	
        	valor = txt_valor.Text;
            txt_valor.Text = string.Format("{0:C}", Convert.ToDouble(valor));
            txt_valor.Select(txt_valor.Text.Length,0);
        }


quarta-feira, 17 de março de 2021

DATAGRIDVIEW - AJUSTAR AS COLUNAS DE FORMA AUTOMÁTICA

Propriedade: DataGridView.AutoSizeColumnsMode 



Esta propriedade Obtém ou define um valor que indica como as larguras de coluna são determinadas.

public System.Windows.Forms.DataGridViewAutoSizeColumnsMode AutoSizeColumnsMode { get; set; }

Essa propriedade permite que você configure o controle para que as larguras das colunas sejam ajustadas automaticamente para preencher o controle ou ajustar o conteúdo da célula. Os ajustes de tamanho ocorrem no modo de preenchimento sempre que a largura do controle é alterada


 dataGridView_ExamePacienteDupicados.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;

segunda-feira, 8 de março de 2021

TRUNCATE TABLE (Transact-SQL)

 Remove todas as linhas de uma tabela ou partições especificadas de uma tabela sem registrar as exclusões de linha individual. TRUNCATE TABLE é semelhante à instrução DELETE sem nenhuma cláusula WHERE; entretanto, TRUNCATE TABLE é mais rápida e utiliza menos recursos de sistema e log de transações.

-- Syntax for SQL Server and Azure SQL Database

TRUNCATE TABLE { database_name.schema_name.table_name | schema_name.table_name | table_name } [ WITH ( PARTITIONS ( { <partition_number_expression> | <range> } [ , ...n ] ) ) ] [ ; ]

Argumentos

database_name
É o nome do banco de dados.

schema_name
É o nome do esquema ao qual a tabela pertence.

table_name
É o nome da tabela a ser truncada ou da qual todas as linhas são removidas. table_name deve ser um literal. table_name não pode ser a função OBJECT_ID() nem uma variável.

WITH ( PARTITIONS ( { <partition_number_expression> | <range> } [ , ...n ] ) )
Aplica-se aSQL Server (SQL Server 2016 (13.x) até a versão atual)

Especifica as partições para truncar ou das quais todas as linhas são removidas. Se a tabela não for particionada, o argumento WITH PARTITIONS ON PARTITIONS gerará um erro. Se a cláusula WITH PARTITIONS não for fornecida, a tabela inteira será truncada.

<partition_number_expression> pode ser especificado das seguintes maneiras:

  • Forneça o número de uma partição, por exemplo: WITH (PARTITIONS (2))

  • Forneça os números de várias partições individuais separados por vírgulas, por exemplo: WITH (PARTITIONS (1, 5))

  • Forneça os intervalos e as partições individuais, por exemplo: WITH (PARTITIONS (2, 4, 6 TO 8))

  • <range> pode ser especificado como números de partições separados pela palavra TO, por exemplo: WITH (PARTITIONS (6 TO 8))

Para truncar uma tabela particionada, a tabela e os índices deverão estar alinhados (particionados na mesma função de partição).


Restrições

Você não pode usar TRUNCATE TABLE em tabelas que:

  • São referenciadas por uma restrição FOREIGN KEY. É possível truncar uma tabela que tenha uma chave estrangeira que referencie a ela mesma.

  • Participam de uma exibição indexada.

  • São publicadas com replicação transacional ou replicação de mesclagem.

  • São temporais com controle de versão do sistema.

  • São referenciadas por uma restrição EDGE.


Permissões

A permissão mínima necessária é ALTER em table_name. As permissões TRUNCATE TABLE são padronizadas para o proprietário da tabela, os membros da função de servidor fixa sysadmin e as funções de banco de dados fixas db_owner e db_ddladmin, e não podem ser transferidas. Entretanto, você pode incorporar a instrução TRUNCATE TABLE dentro de um módulo, como um procedimento armazenado, e conceder permissões adequadas ao módulo por meio da cláusula EXECUTE AS.

segunda-feira, 18 de janeiro de 2021

HISTÓRIA DA INTERNET MÓVEL


    Veja como a Internet evoluir em um curto espaço de anos. 

    Ao ver a figura tente imaginar tudo que ela nos proporciona e proporcionou ao longo dos anos.




 

quinta-feira, 2 de julho de 2020

PHP falha de autenticação com contas google

Configurar conta Google

Após a implementação para envio de Email, precisaremos configurar nossa conta de Email, para que não ocorram erros de autenticação: 

1 - Permitir aplicativos menos seguros: https://myaccount.google.com/lesssecureapps

2 - Permitir acesso à sua Conta do Google: https://accounts.google.com/b/0/DisplayUnlockCaptcha

3 - Desativar verificação em duas etapas ou criar uma senha para o e-mail https://support.google.com/accounts/answer/1064203?hl=pt-BR

Normalmente até o segundo passo já resolve o problema



Código envio de Email em PHP

<!DOCTYPE>
<html>
<head>
<title>Formulário enviado com sucesso!</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="content-language" content="pt-br">
</head>
<body>
<?php  
require_once("email/class.phpmailer.php");
include("email/class.smtp.php"); 
require 'email/PHPMailerAutoload.php';
// require("../../phpmailer/class.phpmailer.php");
// include ("config.php");

$data = date("d/m/Y");
$hora = date("H:i");
// Definindo nomes dos campos
$name = $_POST['Name'];
$email = $_POST['Email'];
$telefone = $_POST['Phone'];
$Message = $_POST['Message'];
// Inicia a classe PHPMailer
$mail = new PHPMailer();
// Define os dados do servidor e tipo de conexão
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->IsSMTP(); // Define que a mensagem será SMTP
$mail->Host = "smtp.gmail.com"; // Endereço do servidor SMTP
$mail->Port = 587;
// $mail->SMTPSecure = 'SSL';
$mail->SMTPDebug = 1; // Debugar: 1 = erros e mensagens, 2 = mensagens apenas
$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)
$mail->Username = 'acquafutura2001@gmail.com';//eumail@dominio.net'; // Usuário do servidor SMTP
$mail->Password = 'acqua@123';//senha'; // Senha do servidor SMTP
// Define o remetente
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->From = "acquafutura2001@gmail.com"; //$email;//seumail@dominio.net"; // Seu e-mail
$mail->FromName = "ACQUA FUTURA"; //$name ; // Seu nome
// Define os destinatário(s)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->AddAddress('acquafutura2001@gmail.com', 'ACQUA FUTURA');//fulano@dominio.com.br', 'Fulano da Silva');
//$mail->AddCC('ciclano@site.net', 'Ciclano'); // Copia
//$mail->AddBCC('fulano@dominio.com.br', 'Fulano da Silva'); // Cópia Oculta
// Define os dados técnicos da Mensagem
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->IsHTML(true); // Define
$mail->Subject  = "Formulario de Contato"; // Assunto da mensagem
$mail->Body = utf8_decode("<b>Mensagem: </b>
<br><br>
<b>Nome</b> $name
<br>
<b>Email</b> $email
<br>
<b>Telefone</b> $telefone
<br>
<b>Mensagem</b> $Message");
//Envio da Mensagem
// Envia o e-mail
// $phpmail->ClearAllRecipients();
// $phpmail->ClearAttachments();
$enviado = $mail->Send();
if ($enviado) {
include 'sucesso.html';
} else {
include 'falha.html';
}
?>

</body>
</html>



sábado, 20 de junho de 2020

ENVIAR MENSAGENS NO WHATAPP (ZAP) SEM PRECISAR ADICIONAR AOS CONTATOS

Copie e cole o link no navegador:


Os zeros (00 000 0000), é o número de telefone que deseja enviar a mensagem.
  
Clique no botão Iniciar Conversa

 


Em seguida clique em : Use o WhatsApp Web

 

segunda-feira, 25 de maio de 2020

Windows Form - Mudar a Cor da Borda de um GroupBox

Para mudar as propriedade s de bordas em um Windows Form você precisará criar um evento Paint e criar um método para esta classe, conforme mostra o exemplo abaixo.


private void gbxProcessoTecnica_Paint(object sender, PaintEventArgs e)
        {
            GroupBox box = sender as GroupBox;
            DrawGroupBox(box, e.Graphics, Color.Red, Color.Blue, Color.White);
        }

private void DrawGroupBox(GroupBox box, Graphics g, Color textColor, Color borderColor, Color backgroundColor)
        {
            if (box != null)
            {
                Brush textBrush = new SolidBrush(textColor);
                Brush borderBrush = new SolidBrush(borderColor);
                Pen borderPen = new Pen(borderBrush);
                SizeF strSize = g.MeasureString(box.Text, box.Font);
                Rectangle rect = new Rectangle(box.ClientRectangle.X,
                                               box.ClientRectangle.Y + (int)(strSize.Height / 2),
                                               box.ClientRectangle.Width - 1,
                                               box.ClientRectangle.Height - (int)(strSize.Height / 2) - 1);

                // Coloque a cor do background aqui
                g.Clear(backgroundColor);

                // Draw text
                g.DrawString(box.Text, box.Font, textBrush, box.Padding.Left, 0);

                // Drawing Border
                //Left
                g.DrawLine(borderPen, rect.Location, new Point(rect.X, rect.Y + rect.Height));
                //Right
                g.DrawLine(borderPen, new Point(rect.X + rect.Width, rect.Y), new Point(rect.X + rect.Width, rect.Y + rect.Height));
                //Bottom
                g.DrawLine(borderPen, new Point(rect.X, rect.Y + rect.Height), new Point(rect.X + rect.Width, rect.Y + rect.Height));
                //Top1
                g.DrawLine(borderPen, new Point(rect.X, rect.Y), new Point(rect.X + box.Padding.Left, rect.Y));
                //Top2
                g.DrawLine(borderPen, new Point(rect.X + box.Padding.Left + (int)(strSize.Width), rect.Y), new Point(rect.X + rect.Width, rect.Y));
            }
        }

terça-feira, 21 de janeiro de 2020

REMOVER DIRETÓRIO COM NOMES GRADES NO WINDOWS

A primeira coisa que você tem que verificar é se não existe nenhum arquivo de grande importância dentro do diretório que você deseja excluir. Caso exista faça uma cópia dos arquivos antes de iniciar o processo abaixo.

Para remover um diretório com nomes muito grande, você irá usar um programa de compactação. O exemplo abaixo foi utilizado o 7-Zip que é grátis.

Clique sobre o diretório e selecione Adicionar ao arquivo compactado...


Em seguida você irá marcar a opção Apagar arquivos após a compactação


Feito isso o diretório será apagado.

Apenas um lembre: veja se não existe nenhum arquivo importante no diretório antes de apagar.

quarta-feira, 27 de março de 2019

Visual Studio - Falha ao assinar bin\Debug\app.publish\

Se você está entrando neste post é porque se deparou com a seguinte mensagem ao publicar seu projeto:

Erro ao assinar: Falha ao assinar bin\Debug\app.publish\

Não se desespere a solução é bem simples:

1. Clique no projeto, no Gerenciador de Soluções;
2. Selecione a aba Segurança;
3. Desmarque a caixa de seleção Habilitar configurações de segurança  do ClickOnce.

Espero ter ajudado.

terça-feira, 6 de novembro de 2018

O QUE É PDF?

É uma sigla inglesa que significa Formato Portátil de Documento (Portable Document Format - PDF). 

É um formato de arquivo usado para exibir e compartilhar documentos com segurança, independente do software e do hardware ou sistema operacional.

Esse formato foi criado pela Adobe e é um padrão mantido pela ISO (International Organization for Standardization).

Os PDFs podem conter links, botões, campos de formulários, áudios, vídeos e lógica de negócios.

Eles também podem ser assinados eletronicamente. além disso, você pode incluir uma proteção de senha para impedir que outros copiem ou editem o conteúdo e até mesmo encontrar e remover dados ocultos.

Em 1991, o cofundador da Adobe Dr. John Warnock iniciou a revolução do impresso ao digital com uma ideia que ele chamou de "The Camelot Project". O objetivo era permitir que qualquer pessoa pudesse captar documentos de qualquer proveniência, enviar versões eletrônicas desses documentos a qualquer lugar e exibi-los e imprimi-los em qualquer computador. Em 1992, o Camelot se tornou o formato PDF. Hoje é o formato no qual empresas no mundo todo confiam.

sexta-feira, 13 de abril de 2018

COPIAR PASTAS USANDO ARQUIVO BAT

Vamos direto ao assunto:

@echo off
xcopy "c:\Nome da Pasta Origem\*.*" "c:\Nome da Pasta Destino\" /E/Y/C/H/D
cls
echo.
echo Back-Up concluído com sucesso!
echo.
pause
exit




VEJA ALGUNS PARÂMETROS


/ A Copia somente arquivos com o atributo de arquivo definido, não altera o atributo.
/M Copia somente arquivos com o atributo de arquivo definido, desativa o atributo de arquivamento.
/ D: mda Se nenhuma data for definida, copia somente os arquivos cujo tempo de origem é mais recente que o horário de destino.
/ EXCLUDE: arquivo1 [+ arquivo2] [+ arquivo3] … Especifica uma lista de arquivos que contêm sequências. Quando qualquer uma das sequências de partida de qualquer parte do caminho absoluto do arquivo a ser copiado, esse arquivo será excluído de ser copiado. Por exemplo, especificar uma sequência de caracteres como \ obj \ ou. Obj excluirá todos os arquivos sob a pasta obj ou todos os arquivos com a extensão. Obj extensão, respectivamente.
/P Solicita confirmação antes de criar cada arquivo de destino.
/S Copia pastas e subpastas exceto as vazias.
/E Copia pastas e subpastas, incluindo os vazios. O mesmo que / S / E. Pode ser usado para modificar / T.
/V Verifica cada novo arquivo.
/W Solicita que pressione uma tecla antes de copiar.
/C Continua a copiar mesmo se ocorrer erros.
/I Se o destino não existir e estiver a copiar mais de um arquivo, pressupõe que o destino deve ser um diretório.
/Q Não exibe nomes de arquivos ao copiar.
/F Exibe fonte completo e os nomes de arquivo de destino ao copiar.
/L Exibe arquivos que seriam copiados.
/H Copia arquivos ocultos e de sistema também.
/R Substitui ficheiros só de leitura.
/T Cria a estrutura de diretório, mas não copiar os arquivos. Não inclui pastas ou subpastas vazias. / T / E inclui pastas e subpastas vazias.
/U Copia apenas ficheiros que já existem no destino.
/K Copia arquivos e mantém o atributo somente leitura nos arquivos de destino, se estiver presente nos arquivos de origem.
/N Cópias com os nomes curtos gerados.
/O Copia a posse do arquivo e informações de ACL.
/X Copia arquivo de configurações de auditoria (implica / O).
/Y Suprime o prompt para confirmar se deseja substituir um arquivo de destino existente.
/-Y Exibe o prompt para você confirmar se deseja substituir um arquivo de destino existente.
/Z Copia em uma rede no modo reinicializável.

terça-feira, 1 de agosto de 2017

QUAL A DIFERENÇA ENTRE CC E BCC?

Você que já enviou ou deseja enviar um email, deve ter visto duas palavras e se perguntado: Qual o significado delas. 
Vou de forma direta mostrar o significado delas para você. Depois cabe a você decidir quando usá-las.

Cc 
significa “carbon copy”, neste caso a mensagem é enviada para um destinatário e todos os endereços colocados na lista do campo Cc irão receber uma cópia da mensagem ficando com conhecimento de quem foi o destinatário original e de todos os endereços que receberam cópias.

Bcc 
significa “blind carbon copy”, neste caso o receptor da mensagem não visualizará para o grupo de emails que a mensagem foi enviada.

Espero ter ajudado, um forte abraço a todos.
Wellingon Pereira