Dicas sobre desenvolvimento de software, gestão e tributações

Rede Social

23 de outubro de 2019

C#: Operadores lógicos menos usados


Operador AND lógico &
O operador & computa o AND lógico de seus operandos. O resultado de x & y será true se ambos x e y forem avaliados como true. Caso contrário, o resultado será false.
O operador & avalia os dois operandos, mesmo se o operando à esquerda for avaliado como false, de modo que o resultado deve ser false, independentemente do valor do operando à direita.

Operador OR exclusivo lógico ^
O operador ^ computa o OR exclusivo lógico, também conhecido como o XOR lógico, de seus operandos. O resultado de x ^ y é true se x é avaliado como true e y avaliado como false, ou x avaliado como false e y avaliado como true. Caso contrário, o resultado será false. Ou seja, para os operandos bool, o operador ^ computa o mesmo resultado que o operador de desigualdade !=.

Operador OR lógico |
O operador | computa o OR lógico de seus operandos. O resultado de x | y será true se x ou y for avaliado como true. Caso contrário, o resultado será false.
O operador | avalia os dois operandos, mesmo se o operando à esquerda for avaliado como true, de modo que o resultado deve ser true, independentemente do valor do operando à direita.
Ler

27 de agosto de 2019

SQL: Localizar funções criadas no banco de dados


Na dica de hoje irei mostrar como listar as funções criadas por usuários em um banco de dados.

Dependendo da sua aplicação pode ser interessante criar funções no banco de dados, só que conforme elas vão se acumulando fica difícil encontrar uma função específica e mesmo que os nomes estejam bem organizados, para ajudar nisso um comando pode listar todas e usar os filtros desejados.

SELECT name AS function_name, 
       SCHEMA_NAME(schema_id) AS schema_name,
       type_desc,
       create_date,
       modify_date
FROM sys.objects
WHERE type_desc LIKE '%FUNCTION%' 
      AND NAME LIKE'%Texto Desejado%'

Veja que no where a coluna name tem um like onde se pode colocar parte do nome da função desejada ou apenas remover o and para listar todas as funções, são muitas possibilidades.
Ler

24 de julho de 2019

SQL: Como criar unique key com exceções SQL Server


Em alguns casos precisamos criar uma chave única no banco de dados com o intuito de não repetir um valor.
Mas pode ser que existam exceções à regra, vou dar um exemplo, tenho uma tabela com o cadastro dos meus clientes e nessa tabela tenho a coluna de CNPJ do tipo varchar, nessa coluna coloco o número do CNPJ do cliente e quando ele é do exterior preencho com o texto "EXTERIOR", mas imagine que se a chave é única só poderia ter um cliente do exterior, para resolver isso crio uma chave única, pois não quero que nenhum CNPJ se repita, mas o caso do EXTERIOR sim pode se repetir, para isso coloco um where na criação do índice.

CREATE UNIQUE INDEX UN_CLIENTE_CNPJ

ON CLIENTE(CNPJ)
WHERE CNPJ != 'EXTERIOR' AND CNPJ IS NOT NULL AND CNPJ != ''
Ler

29 de maio de 2019

SQL: Como localizar coluna no banco de dados


Nesse post vou mostrar uma forma de se localizar uma coluna no banco de dados, mesmo quando não se sabe em qual tabela ela está, ou mesmo quando pensamos em criar uma nova coluna e queremos saber se já existe alguma coluna com o mesmo nome.

SELECT T.name AS Tabela, C.name AS Coluna
FROM sys.sysobjects AS T (NOLOCK)
INNER JOIN sys.all_columns AS C (NOLOCK) ON T.id = C.object_id AND T.XTYPE = 'U'
WHERE C.NAME LIKE '%NomeDoCampo%'

Apenas deve-se trocar o NomeDoCampo pelo nome que deseja. Simples assim.

Explicando resumidamente o select, a tabela sysobjects, possui as tabelas e a all_columns possui todas as colunas uma por uma do banco de dados inteiro.
Ler

25 de fevereiro de 2019

Desenho de telas (brainstorm)


Brainstorm é um termo em inglês para tempestade cerebral, traduzindo para o mundo dos negócios seria algo como tempestade de ideias.
    Essa técnica é muito utilizada nas empresas para resolução de problemas (geralmente os mais complicados), onde a equipe se reune para discutir a resolução de um problema. Ele deve seguir alguns princípios:


     Sempre se lembre de que quanto mais ideias melhor, por mais que de primeiro momento pareçam absurdas, nunca as descarte. Tente ser flexível, pois algumas vezes fazer diferente do habitual é necessário, faça com que os envolvidos interajam uns com os outros, quanto mais melhor, pois surgem mais discussões, mais ideias e provavelmente uma delas será a escolhida como melhor alternativa para resolver o problema.
    Na UX é na maioria das vezes interessante desenhar as telas e após concluídos os desenhos, que você as refaça, pois nesse momento de se refazer as telas é que surgem as melhorias das mesmas, onde se começa a pensar nas funcionalidades menos óbvias da aplicação.
    Feito isso comece a imaginar como o usuário irá utilizar o sistema, e ir desenhando os fluxos da aplicação, utilizar o modelo feito acima e ir ilustrando (criando marcações) onde o usuário vai clicando ou tocando, cada interação que se imagina que ele terá, isso ajuda a pensar em reduzir o fluxo, facilitar a utilização do sistema pelo usuário.
Ler

8 de janeiro de 2019

GIT: Comandos Log, Diff, checkout e reset


Comando Log
     O git possui o comando log para podermos ver algumas informações do que vem sendo feito nele como, por exemplo, os commits.
- git log - serve para exibir os últimos commits.- git log decorate - para exibir mais informações como as branchs, merges, tags.- git log author="nome" -para mostrar os últimos commits de um autor em específico.- git shortlog - que mostra em ordem alfabética do nome do autor o número de commits de cada autor junto com o comentário adicionado por ele. E caso queira ver apenas um totalizador de commits por autor é só adicionar -sn ao final do comando, assim git shortlog -sn- git show hash do commit - serve para exibir detalhadamente as alterações do commit em específico.

Comando Diff
     Com o comando git diff podemos verificar todas as diferenças de arquivos antes de dar commit nas alterações, isso é muito importante para podermos conferir para saber se está tudo realmente ok. Ele exibe os arquivos e linha a linha quais são as diferenças, o que vai ser adicionado e o que será removido.    Também temos a opção de ver apenas quais são os arquivos que possuem alguma alteração e isso inclui arquivos novos que serão adicionados ao controle do git e arquivos que serão removidos, para isso basta utilizar o comando git diff --name-only.

Comandos checkout e reset     Algumas vezes precisamos desfazer as alterações realizadas em um arquivo, seja por algum erro, mudança de planos enfim, no GIT temos a opção de desfazer as alterações de um arquivo.    Primeiramente vamos ver o checkout que serve para desfazer as alterações de um arquivo que ainda não foi comitado, basta digitar o comando git checkout nomeDoArquivo    Agora caso o arquivo já tenha sido comitado devemos utilizar o comando reset, com isso o arquivo volta ào estágio de não comitado e você pode ainda utilizar o checkout para desfazer as alterações, para utilizar o reset você deve digitar git reset HEAD nomeDoArquivo.    Também para o comando reset podemos cancelar um comit que foi atualizado no servidor e voltar o status dos arquivos para mostrar as diferenças de alterações que foram feitas no commit, para isso utilizamos o comando git reset --mixed hash do commit anterior ao que eu quero cancelar.
Ler