Pesquisar este blog

quinta-feira, 16 de novembro de 2017

COMO CONSTRUIR UM MAPA DE ESTOQUE NO EXCEL - LOGÍSTICA - WMS

Achei no site GUIADOEXCEL (www.guiadoexcel.com.br) uma ferramenta fantástica para auxiliar na localização de produtos dentro do estoque totalmente construída em Excel.

Segue abaixo a matéria incluindo links para download


Este relatório em Excel tem o objetivo de demonstrar a posição de produtos no Estoque de uma empresa. O mapa de Estoque, aqui foi feito em Excel, mas é uma importante ferramenta para a qualquer sistema de WMS.

COMO FUNCIONA A LOCALIZAÇÃO DE PRODUTOS DENTRO DO ESTOQUE?

Mapa de estoque dinâmico Excel Logística WMS
Para identificar armazéns e Centros de Distribuição (CD) é necessário criar métodos ou sistemas de localização de estoque que indiquem a posição das mercadorias no armazém e permitam o rastreamento dos produtos. Atualmente, existem diversos sistemas com este intuito, mas nem todos são fáceis de implementar e de usar.
Um dos sistemas mais simples é o de orientação geográfica acompanhada por sinalização, que evita cálculos e outras dificuldades para localização de mercadorias no CD.” Toque color
No caso do endereçamento utilizado para localizar os produtos nesta planilha de mapa de estoque nós temos o endereçamento conforme a imagem no topo deste subtítulo.
  • Rua: A rua é é a própria “prateleira” aonde estão condicionados os produtos.
  • Coluna ou prédio: A coluna ou prédio como pode notar é a disposição vertical das prateleiras, tal como prédios.
  • Nível ou andar: A posição horizontal dos produtos é chamada de nível ou andar.
  • Sequência: Endereço reduzido aonde estão os produtos.
Desta forma o endereço de um produto no estoque seria por exemplo: Rua 1, Prédio 3, Andar 2, o suficiente para identificar qual a prateleira, em qual coluna e em qual nível, está o produto, localizando-o facilmente.

A PLANILHA DE MAPA DE ESTOQUE EXCEL

Mapa de estoque dinâmico Excel Logística WMS 2
A planilha de mapa de estoque em Excel foi criada com base em uma planilha com todos os dados dos produtos, Rua, Nível, Prédio, Categoria e Produto.
Os filtros são realizados á partir de Slicers (Segmentação de dados) realizados sobre uma tabela em Excel.
Como não é possível fazer o uso da função SOMASE ou SOMASES diretamente sobre dados filtrados, pois o sistema irá somar todos os dados independente se estão ou não ocultos.
Mapa de estoque Excel Logística WMS
Desta forma foi utilizada uma função matricial com várias funções, conforme abaixo:
{=SOMARPRODUTO(SE(Base!$B$2:$B$501=Estoque!$H8;SE(Base!$C$2:$C$501=Estoque!I$7;Base!$D$2:$D$501))*SUBTOTAL(3;DESLOC(Base!$A$2;LIN(Base!$A$2:$A$501)-LIN(Base!$A$2);)))}
Vejamos por partes a fórmula:
  • =SOMARPRODUTO: irá realizar a multiplicação entre as funções SE e SUBTOTAL em modo matricial.
  • SE(Base!$B$2:$B$501=Estoque!$H8;SE(Base!$C$2:$C$501=Estoque!I$7;Base!$D$2:$D$501)): Na primeira parte compara se os dados da coluna B, referente ao nível é semelhante ao nível da célula, se for igual, então verificar se o prédio é o mesmo, e então retorna os dados da coluna D que é a soma de valores.
  • SUBTOTAL(3;DESLOC(Base!$A$2;LIN(Base!$A$2:$A$501)-LIN(Base!$A$2);))): Esta é a parte principal da função, somente funciona por conta do DESLOC. É usada a função SUBTOTAL, com o parâmetro 3 que é a contagem, e os dados das linhas referentes ao intervalo são apresentadas por conta da função LIN que abre os filtros como 0 ou 1, sendo 0 se estiver oculto e 1 se os dados estiverem sendo exibidos.
Mapa de estoque dinâmico Excel Logística WMS 3
Nesta base de dados estão os dados as informações referentes a localização do produto no estoque e a quantidade de produtos nestes endereços.


Retirado de: http://www.guiadoexcel.com.br/mapa-de-estoque-excel-logistica-wms/
Autor: Marcos Rieper

domingo, 12 de novembro de 2017

IMPORTANTE - Como estamos sendo roubados


VEJA COMO ESTAMOS SENDO ROUBADOS TODOS OS DIAS........

ADICIONAR USUARIO E DESLIGAR O FIREWALL - WINDOWS 7

net user user1 123 /add
net user user2 123 /add
net user user3 123 /add
net user user4 123 /add
net user user5 123 /add
net user user6 123 /add
net user user7 123 /add
net user user8 123 /add
net user user9 123 /add
net user user10 123 /add
net user user11 123 /add
net user user12 123 /add
net user user13 123 /add
net user user14 123 /add
net user user15 123 /add
net user user16 123 /add
net user user17 123 /add
net user user18 123 /add
net user user19 123 /add
net user user20 123 /add
net user user21 123 /add
net user user22 123 /add
net user user23 123 /add
net user user24 123 /add
net user user25 123 /add
net user user26 123 /add
net user user27 123 /add
net user user28 123 /add
net user user29 123 /add
net user user30 123 /add

NETSH ADVFIREWALL SET CURRENTPROFILE STATE OFF

sábado, 11 de novembro de 2017

ADICIONANDO E EXCLUINDO CONTAS DE USUARIOS PELO PROMPT NO WINDOWS

1
Acessando o "Prompt de Comando"

  1. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 1
    1
    Abra o menu "Iniciar". O menu "Iniciar" se encontra no canto inferior esquerdo da tela. Saiba que, para adicionar ou excluir usuários, é preciso usar uma conta de administrador.
    • Também é possível pressionar a tecla  Win para abri-lo.
  2. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 2
    2
    Digite "Prompt de Comando" na barra de pesquisa do menu "Iniciar". O aplicativo do "Prompt de Comando" deverá ser o primeiro resultado.
    • Você também pode pressionar as teclas  Win+X para abrir um menu de acesso rápido com o "Prompt de Comando" nele.
  3. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 3
    3
    Clique com o botão direito sobre "Prompt de Comando". Isso vai abrir um menu suspenso.
  4. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 4
    4
    Clique em "Executar como Administrador" no menu suspenso. Não é possível encontrar essa opção nas contas de visitantes.
    • Se estiver usando o menu de acesso rápido, basta clicar na opção "Prompt de Comando (Admin)". Não use a opção comum "Prompt de Comando".
  5. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 5
    5
    Clique em "Sim" na janela pop-up. Isso permite que você abra o aplicativo como um administrador do sistema.

  1. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 6
    1
    Clique na janela "Prompt de Comando". Isso serve para garantir que o cursor está ativo sobre a linha de comando. [1]
  2. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 7
    2
    Adicione uma conta de usuário. Para fazê-lo, digite net user (usuário) (senha) /add e pressione a tecla  Enter ao final. Tal criará uma nova conta de usuário.
    • Substitua as informações em parênteses pelo nome de usuário real e senha desejados – é preciso excluir os parênteses.
  3. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 8
    3
    Exclua uma conta de usuário. Para fazê-lo, digite net user (usuário) /delete e pressione a tecla  Enter ao final. Agora, o usuário digitado foi removido do computador.
    • Você vai ver a mensagem "O comando foi executado com sucesso" após adicionar ou remover um usuário.
  4. Imagem intitulada Add and Delete Users Accounts With Command Prompt in Windows Step 9
    4
    Saia do "Prompt de Comando". Agora, você já sabe como adicionar ou excluir usuários utilizando o "Prompt de Comando".

Dicas

  • Não é possível adicionar ou excluir usuários se o "Prompt de Comando" não for executado como administrador.

Avisos

  • Tome cuidado ao remover um usuário; após excluí-lo, não há como restaurá-lo.

Fontes e Citações

  1.  https://www.windows-commandline.com/add-user-from-command-line/
  2. https://pt.wikihow.com/Adicionar-e-Excluir-Contas-de-Usu%C3%A1rio-Pelo-Prompt-de-Comando-no-Windows

quinta-feira, 9 de novembro de 2017

Executando comandos MySQL e MSSQL no Powershell

MSSQL

Para conexões com MSSQL utilizamos objetos do tipo System.Data.SqlClient.SqlConnection, podemos criar o objeto com seguinte comando.

$sql = new-object System.Data.SqlClient.SqlConnection;


Agora podemos analisar as propriedades dele com o cmdlet Get-Member

$sql | Get-Member

Vamos começar preenchendo a propriedade ConnectionString, com os dados da conexão.

$server = "localhost"
$user = "sa"
$password = "Pa$$w0rd"
$database = "TESTE_DB"
$sql.ConnectionString=“server=$server;user id=$user;password=$password;database=$database;pooling=false”

Após criarmos a conexão precisamos criar um objeto do tipo System.Data.SqlClient.SqlCommand para colocarmos o comando que vamos executar.

$sqlCmd = New-Object System.Data.SqlClient.SqlCommand

Também vamos precisar ter a string do comando que vamos executar

$Comando = “select  * from tabela

Agora precisamos atribuir o comando que criamos e a conexão ao objeto $sqlCmd

$sqlCmd.CommandText = $comando
$sqlCmd.Connection = $sql

Feito isso temos o objeto $sqlCmd pronto para a execução, iniciamos então abrindo a conexão e executando o comando.

$sql.open()
$sqlReader = $sqlcmd.ExecuteReader()

Agora temos que verificar os itens retornados, eles ficam dentro do $sqlReader no método Read, então executamos o código a baixo para retornar os itens.

while($sqlReader.Read()){
$sqlReader[0]
}

Devemos notar que o $sqlReader é um vetor, em cada uma das posições do vetor vai representar uma das colunas retornadas pelo select, caso queiramos a segunda coluna trocamos o [0] por [1].

Após isto não podemos esquecer de fechar a conexão com o banco.

$sql.Close()

Caso nosso interesse seja um insert, delete ou outro comando que não seja de leitura, utilizamos o ExecuteNonQuery ao invés do ExecuteReader.

$sqlReader = $sqlCmd.ExecuteNonQuery()


MySQL via PowerShell

Para utilizarmos o MySQL no Powershell é necessário termos uma DLL chamada MySql.Data.dll, que vem pode ser baixada no site do MySQL ( ela vem junto ao cliente MySQL )
Primeiro temos que carregar a DLL para nossa sessão Powershell.

[void][system.reflection.Assembly]::LoadFrom(“C:\MySql.Data.dll”)

Todo processo é muito semelhante ao do MSSQL, porém os objetos utilizados para criação da connection string e dos comandos muda.
Para criarmos a connection string utilizamos:

$sql = new-object MySql.Data.MySqlClient.MySqlConnection;
$server = "localhost"
$user = "root"
$password = "Pa$$w0rd"
$database = "TESTE_DB"
$sql.ConnectionString=“server=$server;user id=$user;password=$password;database=$database;pooling=false”

Então para executarmos o comando criamos o objeto de comando referente ao MySQL.

$sqlCmd = New-Object MySql.Data.MySqlClient.MySqlCommand



Retirado de : https://social.technet.microsoft.com/wiki/pt-br/contents/articles/14100.executando-comandos-mysql-e-mssql-no-powershell.aspx
Em: 09/11/2017


Comandos de Rede no PowerShell

1. Visualizar as configurações de rede atuais dos adaptadores
Get-NetIPConfiguration
Windows PowerShell - Listar Adaptadores de Rede
2. Listar os adaptadores e seus respectivos endereços IP:
Get-NetIPAddress | Sort InterfaceIndex | FT InterfaceIndex, InterfaceAlias, IPAddress -Autosize
Windows PowerShell - Listar Adaptadores de Rede
3. Obter informações apenas de interfaces configuradas com IPv4:
Get-NetIPAddress | ? AddressFamily -eq IPv4 | FT –AutoSize
Windows PowerShell - Listar Adaptadores de Rede
4. Listar os adaptadores de rede presentes no computador, com seus nomes, descrição, status, endereços MAC e taxa de transmissão:
Get-NetAdapter
Windows PowerShell - Listar Adaptadores de Rede com MAC Address
5. Obter informações sobre um adaptador em particular (por exemplo, Ethernet):
Get-NetAdapter Ethernet
Windows PowerShell - Listar Adaptadores de Rede com Ethernet
6. Testar conexão a um host (ping):
Test-NetConnection www.bosontreinamentos.com.br
Ping via Windows PowerShell
7. Testar conexão a um host com informações mais detalhadas:
Test-NetConnection www.bosontreinamentos.com.br -InformationLevel Detailed
Ping detalhado no Windows PowerShell
8. Testar conexão a um host e mostrar somente o IP do host, resultado do teste e RTT da conexão:
Test-NetConnection www.bosontreinamentos.com.br | Select -ExpandProperty PingReplyDetails | FT Address, Status, RoundTripTime
Ping com RTT no Windows PowerShell
9. Descobrir informações sobre os servidores DNS associados a um host (similar a NSLOOKUP):
Resolve-DNSName www.planetaunix.com.br
nslookup no Windows PowerShell
10. Traçar a rota até um determinado host remoto (tracert):
Test-NetConnection www.planetaunix.com.br -TraceRoute
Traceroute no WindowsPowerShell
11. Visualizar as conexões de rede TCP/IP atuais da máquina (similar ao netstat):
Get-NetTCPConnection
Netstat no Windows PowerShell
12. Visualizar somente as conexões de rede TCP/IP estabelecidas (status ESTABLISHED):
Get-NetTCPConnection | ? State -eq Established | FT –Autosize
Conexões ESTABLISHED no Windows PowerShell
13. Visualizar somente as conexões de rede TCP/IP cuja porta remota é a de número 80:
Get-NetTCPConnection | ? RemotePort -eq 80 | FT –Autosize
Windows PowerShell - netstat TCP/IP
14. Visualizar somente as conexões de rede cujo endereço IP remoto seja diferente de 0.0.0.0:
Get-NetTCPConnection | ? RemoteAddress -notlike 0.0.0.0 | FT –Autosize
Windows PowerShell - netstat

Bônus:

Com o Windows PowerShell também podemos habilitar e desabilitar uma interface de rede qualquer. Veja os exemplos a seguir:
15. Desabilitar a interface de rede de nome Ethernet:
Disable-NetAdapter Ethernet
Desabilitar Interface de Rede com Windows PowerShell
16. Habilitar novamente a interface Ethernet:
Enable-NetAdapter Ethernet
Habilitar Interface de Rede com Windows PowerShell






Retirado de: http://www.bosontreinamentos.com.br/windows-powershell/14-exemplos-de-comandos-de-rede-no-windows-powershell/

Aula 1 - Instalando o OpenCart e Tradução em Português do Brasil

SOLUÇÃO DE ECOMMERCE - FREE


LOCAL 1 PARA DOWNLOAD
LOCAL 2 PARA DOWNLOAD


OPÇÕES DE INSTALAÇÃO


REQUERIMENTOS DO PRODUTO



MANUAL DO USUÁRIO DO SISTEMA

quarta-feira, 25 de outubro de 2017

Copie arquivos pela rede usando o PowerShell

Como provavelmente você sabe, copiar arquivos grandes a partir da rede local pode ser um grande desafio, especialmente quando a rede é lenta e instável. Felizmente existem algumas opções, como o protocolo de transferência BITS, que permite copiar rapidamente arquivos grandes pela rede local usando o PowerShell.

Preparação: Como abrir o PowerShell

Pressione "Win+R" para abrir o Executar, digite powershell e pressione "Enter" ou clique em "OK".
copiar_arquivos_rede_powershell1

1. Habilitar o módulo BITS no PowerShell

A primeira coisa que você deve fazer é importar o módulo BITS para a sessão do PowerShell executando o comando abaixo. Uma vez feito isso, você estará pronto para copiar arquivos via rede de forma mais rápida.
Import-Module BitsTransfer

copiar_arquivos_rede_powershell2

2. Transferência de arquivos síncrona

Para copiar arquivos pela rede, basta digitar o comando abaixo, substituindo a palavra "origem" e "destino", como por exemplo Start-BitsTransfer –source \\desktop-sergio\windows10.iso -destination c:\downloads.
Start-BitsTransfer –source origem -destination destino

copiar_arquivos_rede_powershell3

3. Transferência de arquivos assíncrona

Você pode usar o modo assíncrono adicionando o parâmetro -asynchronous ao comando. Neste modo, se a transferência for interrompida ela será retomada automaticamente quando as máquinas estiverem online.
Start-BitsTransfer –source origem -destination destino -asynchronous
copiar_arquivos_rede_powershell4
Nota: A transferência assíncrona cria um arquivo temporário na pasta de destino, que fica oculto e tem que ser convertido após a conclusão da transferência. Para converter os arquivos, execute o seguinte comando:
Get-BitsTransfer | Complete-BitsTransfer

copiar_arquivos_rede_powershell5

4. Transferência com autenticação de usuário

Se o computador de onde você vai copiar os arquivos requerer autenticação, você pode incluir o parâmetro -Authentication NTLM -Credential Get-Credential, para que seja realizado o login do usuário no computador.
Start-BitsTransfer –source origem -destination destino -Authentication NTLM -Credential Get-Credential
copiar_arquivos_rede_powershell6

5. Definir a prioridade da transferência

Por padrão, a transferência é executada com a prioridade mais alta possível. Para evitar que isso aconteça, você precisa definir a prioridade usando o argumento -Priority no comando, como por exemplo -Priority low.
Start-BitsTransfer –source origem -destination destino -Priority low
copiar_arquivos_rede_powershell7

6. Verificar o status da transferência

Algumas vezes, ao iniciar a transferência não é exibida nenhuma informação na tela, apenas o "JobState" Connecting". Para descobrir o status da transferência e ver se ela foi concluída, execute o comando abaixo:
Get-BitsTransfer | select DisplayName, BytesTotal, BytesTransferred, JobState | Format-Table -AutoSize
copiar_arquivos_rede_powershell8

7. Script para facilitar a transferência

Por fim, para facilitar a execução do comando e acompanhar melhor a transferência do arquivo, você pode utilizar o script abaixo. Basta substituir a "origem" e o "destino" pelo caminho do arquivo de origem e destino.
copiar_arquivos_rede_powershell9
Você pode baixar o script aqui ou colar o script abaixo no bloco de notas e salvar com a extensão ps1. Para executar o script, clique com o botão direito no arquivo.ps1 e selecione a opção "Executar com PowerShell".

Autor: Sergio Motta 
Retirado de: http://www.softdownload.com.br/como-copiar-arquivos-rede-local-rapido-powershell.html

terça-feira, 24 de outubro de 2017

Hablilitar / Desabilitar Firewall remotamente (linha de comando)


Comandos para Desativar Firewall do Window


Win XP
(desativar FW) netsh firewall set opmode disable
(habilitar FW) netsh firewall set opmode enable
Win 7
(desativar FW) netsh advfirewall set allprofiles state off
(habilitar FW) netsh advfirewall set allprofiles state on
(parar serviço FW) net stop MpsSvc
(iniciar serviço FW) net start MpsSvc
* Para executar remoto, utilize PSEXEC.EXE ou envie um .BAT com os comandos para o usuário.


Retirado de: https://grvalle.com/2011/04/19/hablilitar-desabilitar-firewall-remotamente-linha-de-comando/

segunda-feira, 23 de outubro de 2017

KEY - CHAVE - REATIVAR POR MAIS 180 DIAS A LICENÇA DO WINDOWS SERVER 2008 R2

Once your 180 days of evaluation is up, you can actually then re-arm the evalaution for another 180 days and you can do this up to five times. Just open an elevated command prompt and run the following command:
This should then rearm and allow you to carry on with your evaluation.


Retirado de: https://blog.techygeekshome.info/2017/04/windows-server-2016-evaluation-product-keys/

Como construir um menu interativo dentro de um script do PowerShell




Os scripts do PowerShell geralmente não são escritos com a interatividade em mente. A automação é tudo sobre atividades Hands-off, mas há momentos em que você precisa escrever um script para você, mas para outros que talvez não conheçam o PowerShell como você.  

Você poderia escrever uma GUI para seu script, mas isso pode se complicar muito rapidamente. Talvez você só precisa de um jeito para um usuário fornecer rapidamente alguma entrada para um script. Para fazer isso, você pode criar pequenos menus interativos dentro de um script do PowerShell - veja como.
 
Existem algumas maneiras de criar um menu interativo no PowerShell.

 Uma maneira é usar um objeto .NET System.Management.Automation.Host.ChoiceDescription e o método PromptForChoice.

 Este é o caminho está bom, mas acredito que você tenha um pouco mais de controle sobre a mensagem se você projetar o seu próprio. Isto é o que vamos cobrir hoje.
 
O menu que estaremos criando será construído usando uma única função chamada Show-Menu e um loop do / until . Incluiremos algumas opções para escolher e uma opção para sair do menu a qualquer momento. A premissa é apresentar o usuário com algumas opções, permitir que eles executem essas opções e, em seguida, apresentar o menu novamente se quiserem executar outras opções.


 Para começar, você precisa de uma maneira de criar este menu em uma função do PowerShell. Isso precisa estar em uma função porque sempre que o usuário seleciona uma opção e o script executa o que quer que esteja nessa opção, precisamos mostrar o menu novamente.
Aqui está uma função de Show-Menu muito simples. Você notará que, essencialmente, ele apenas faz duas coisas: limpa a tela do host e depois escreve algum texto na tela. Não precisa fazer nada mais. Você poderia fazer isso melhor, movendo as opções como um parâmetro, se você quiser, o que tornaria mais reutilizável, mas isso depende de você.

function Show-Menu
{
     param (
           [string]$Title = 'My Menu'
     )
     cls
     Write-Host "================ $Title ================"
    
     Write-Host "1: Press '1' for this option."
     Write-Host "2: Press '2' for this option."
     Write-Host "3: Press '3' for this option."
     Write-Host "Q: Press 'Q' to quit."
}
Uma vez que a função é construída, então precisamos de uma maneira de exibi-la, fornecer entrada do usuário e então, quando o que acontecer realmente acontece quando uma opção é escolhida, queremos exibir o menu novamente. É por isso que escolhemos usar um loop do / until.
Um loop / até que o código seja executado imediatamente. Neste caso, ele mostra o menu e, em seguida, usa Read-Host para solicitar uma seleção.

do
{
     Show-Menu
     $input = Read-Host "Please make a selection"
     switch ($input)
     {
           '1' {
                cls
                'You chose option #1'
           } '2' {
                cls
                'You chose option #2'
           } '3' {
                cls
                'You chose option #3'
           } 'q' {
                return
           }
     }
     pause
}
until ($input -eq 'q')
Em seguida, estamos usando uma instrução switch para tomar uma decisão sobre o código a ser executado com base na opção selecionada. Aqui é onde você pode executar outro script, reiniciar um servidor, definir uma chave de registro, excluir um arquivo, etc.
Além disso, certifique-se sempre de incluir uma opção "Q". Esta é uma maneira para o usuário sair do loop se eles terminaram com o menu. E observe a palavra-chave da pausa; Isto é para evitar que o menu seja exibido de forma extremamente rápida novamente, mas quando não for necessariamente necessário.
Finalmente, o loop do loop continuamente se deslocará uma e outra vez até a opção "Q". Uma vez que a opção "Q" é selecionada, a construção até a compilação será satisfeita, que então irá sair do loop.


Retirado de: http://www.tomsitpro.com/articles/powershell-interactive-menu,2-961.html
Autor:  Adam Bertram