Clique em "Configurações", dentro de configurações clique em "Virtual Machine Startup/Shutdown" e clique em "propriedades", conforme a imagem abaixo !!
Sete a opção "Allow virtual machines to start and stop automatically with the system". Clicando no botão "Move Up" para adicionar a maquina como inicialização automática. Ou "Move Down" para deixar a virtual como inicialização manual !
Trabalhando com os comandos "vi"
O vi é um editor de texto muito usado na interface de carácter do Linux para edição de arquivos e programas.
Basicamente ele tem dois modos de trabalho: Modo de Operação e Modo de Inserção.
No modo de operação o vi espera comandos que vão realizar alguma operação, ja no modo inserção, tudo que for digitado é considerado texto.
O modo de operação é acessado através da tecla "ESC"
O modo de inserção é acessado através da tecla "i"
Para fazer a edição:
$ vi nomedoarquivo
Para editar o arquivo entre no modo de inserção "i"
Após editar, use algum desse comandos básicos
"ESC" para entrar em modo de operação
:w para salvar as modificações
:wq para salvar e sair do vi
:q para sair sem salvar
Abrir Arquivo :e arquivo Salvar Arquivo :w Salvar Arquivo Como:w arquivo Salvar e Sair :wq Sair sem Salvar:q! Gravar se alterado :ZZ Marcar para Copiar :v, setas de direção Copiar texto marcadoy Cortar texto marcadoc Colar texto marcadop Copiar uma linha yy Copiar até o final do arquivoyG Apagar texto a frentex Apagar texto para trásX Apagar uma linha dd Apagar até o final do arquivodG Apagar até o final da linhaD Localizar texto/texto Localizar Novamente/ Localizar texto atrás ?texto Localizar Novamente/ Desfazer alterações u Refazer alterações CTRL+r Formatar Alinhamento Centralizado :ce Alinhamento à direita:ri Alinhamento à esquerda:le Abrir Nova Janela :new Dividir a janela atual em duas:split Abrir arquivo em nova janela:split arquivo Ir para janela de cimaCTRL+w,k Ir para janela de baixoCTRL+w,j Ir para o inicio linha 0 Ir para o final linha $ Ir para o final arquivoG Ir para linha abaixo j Ir para linha de cima k Ir para esquerda h Ir para direital Ir para o final da tela L Ajuda :help
Erro de catálogo global ao cadastrar um usuário no Active Directory.
"Windows cannot verify that user name is unique because the following error occurred while contacting the global catalog: The server is not operational.
Windows will create this user account, but the user can log on only after the user name is verified to be unique. make sure the global catalog is available. For more information about troubleshooting thi issue, see Windows Help"
Erro: O windows não pode verificar que o nome de usuário é único, por que ocorreu erro ao entrar em contato com o catálogo global: O servidor não está operacional...
Resolução:
No "Executar" digite o comando dssite.msc
Expandir a árvore de acordo com a imagem abaixo e clicar com o botão direito + propriedades em "NTDS Settings"
Em "Query Policy", definir de onde será feito a consulta e setar o item "Global Catalog"
Series de Exercícios de Algorítimos feitos em Maker da Softwell
2- Faça um algoritmo que receba dois números e ao final mostre a soma, subtração, multiplicação e a divisão dos números lidos.
Faça a tela de acordo com a imagem abaixo.
2 Componentes "Caixas de Texto" definida com os nomes "X" e "Y"
4 Componentes "Texto" definido com os nomes "soma", "subtracao", "multiplicacao" e "divisao". Defina a descrição para cada componente "Texto".
1 botão para realizar as operações via fluxo !
Crie um novo fluxo ! Defina os parâmetros de entrada "X" e "Y" . Crie as variáveis local "Somar", "Subtracao", "Multiplicacao" e "Divisao" conforme as imagens abaixo.
Crie os processamentos conforme a imagem abaixo !
Para o 1° processamento usamos a função "Soma", vinculando com a variável local "Somar".
Para o 2° processamento usamos a função "Subtracao", vinculando com a variável "Subtracao".
Em ambas funções vinculamos aos parâmetros "X" e "Y". Conforme imagens abaixo.
Para o 3° processamento usamos a função "Multiplicação", vinculando com a variável local "Multiplicacao".
Para o 4° processamento usamos a função "Divisão", vinculando com a variável "Divisao".
Em ambas funções vinculamos aos parâmetros "X" e "Y". Conforme imagens abaixo.
No 5° e 6° Processamento iremos usar a função "Alterar Valor do Componente" e "Concatenação".
Parâmetros da Função "Alterar Valor do Componente"
1. Formulário onde está o componente.
2. Componente que será alterado.
3. Novo valor do componente
Conforme a imagem abaixo, repare que utilizamos a função "Concatenação" para juntar o texto "A Soma é" + a variável local "Somar" e 6° Processamento "A Subtração é: + a variável local "Subtracao".
No 7° e 8° Processamento iremos usar a função "Alterar Valor do Componente" e "Concatenação".
Parâmetros da Função "Alterar Valor do Componente"
1. Formulário onde está o componente.
2. Componente que será alterado.
3. Novo valor do componente
Conforme a imagem abaixo, repare que utilizamos a função "Concatenação" para juntar o texto "A Multiplicação é:" + a variável local "Multiplicacao" e 7° Processamento "A Divisão é: + a variável local "Divisao".
Salve o fluxo com o nome "Operacoes-Matematica"
Por fim, vamos vincular o fluxo salvo ao evento "Ao Clicar" do botão "OK". Conforme a imagem abaixo !!
Series de Exercícios de Algorítimos feitos em Maker da Softwell
1. Faça um algoritmo que receba dois números e exiba o resultado da sua soma. Neste exercício uso:
A) 3 componentes "caixa de texto" e 1 botão.
B) 1 fluxo que defino com o nome "somar"
C) 2 parâmetros de entrada "X", "Y".
D) 1 Variável Local "Somar"
Construa a tela conforme a imagem abaixo !
Vamos criar o fluxo para o botão "OK". Clique com o botão direito em cima do botão "OK" + Eventos + Ao Clicar . Defina os Parâmetros de Entrada conforme a imagem abaixo
Defina a Variável Local "Somar", conforme a imagem abaixo
Vamos criar dois processamento.
No 1° processamento vinculamos a variável "Somar", e utilizamos a função "Somar". Nos parâmetros da função iremos vincula-los aos parâmetros de entrada "X" e "Y", conforme a imagem abaixo !
No 2° processamento iremos usar a função "Alterar Valor do Componente". Conforme a imagem abaixo iremos definir os 3 parâmetros da função. 1-Formulário a ser vinculado, 2-Componente a ser alterado e a variável "somar" no 3° parâmetro.
Salve o fluxo com o nome "Somar". E por fim em Definições vamos associar eventos aos componentes "X" e "Y", conforme a imagem abaixo !
Neste tutorial estou supondo que você seja um desenvolvedor Maker Softwell...
Criando uma grade com os feriados bancários de São Paulo. O mesmo pode ser adaptado para outros estados. Abaixo a imagem do resultado final.. Conforme alteramos o ano, os feriados irão alterar de acordo com o ano !!
Plataforma de desenvolvimento: Maker 2.7 Softwell.
Banco de Dados: SQL Server 2008.
Criando as telas no Maker. 1- Crie a tela conforme imagem abaixo..
2- Vinculando o formulário com a tabela "TempFeriado". Em Definições + Assistente de Consulta, monte a tabela de acordo com a imagem abaixo.
3- Voltando no formulário, defina as propriedades dos componentes Id, Data e Feriado com os respectivos campos. "Id = IdFeriado", "Data = Data" e "Feriado = "Feriado", conforme imagem abaixo e Salve !!
4- Após salvar o formulário, rode no seu browser e cadastre os feriados fixos, conforme imagem abaixo.
5- Agora vamos criar o formulário no Maker vinculado com a tabela "Feriado". Seguindo os passos 1,2 e 3, porem com a tabela "Feriado".
6- Agora vamos criar o formulário "Feriado Bancário", onde usaremos uma grade para vincular com a tabela "Feriado" dois botões para avançar e voltar um ano e um componente "Caixa de Texto" para digitarmos o ano e buscar os feriados daquele ano !! Salve o formulário sem vincula-lo a nenhum banco. Veja na imagem abaixo a estrutura do formulário !!
7- Após arrastar o formulário "Feriado" para dentro do Formulário "Feriado Bancário" e criar os botões e o componente "Caixa de Texto (Ano) ". Vamos criar o fluxo no evento ao modificar do componente "Ano"..
Abaixo segue o fluxo !!
8- Crie o Parâmetro de Entrada "AnoAtual" Tipo "Inteiro"..
9- No 1° processamento (Executar Procedure FeriadoSP), dê dois cliques q utilize a função "Executar Procedure".. No primeiro parâmetro defina o nome da Procedure, (FeriadoSP) no segundo parâmetro utilize a função "Criar Lista A Partir do Elementos" e vincule a lista com o parâmetro de entrada "AnoAtual". Verifique a imagem abaixo !!
10- Agora vamos para o processo "Modificar Consulta do Formulário ou Grade". Dê um duplo clique no processo e procure pela função "Modificar Consulta do Formulário ou Grade". No 1° parâmetro, digite o Nome do Formulário (Feriado), no 2° parâmetro use a função "Abrir Consulta Navegável". Utilize o "Wizard SQL" e procure pela tabela "Feriado". Selecione os campos Feriado.Data (tipo de ordem Ascendente), Feriado.Feriado e Feriado.Dia. Dê "Ok". No 3° parâmetro da função Modificar Consulta do Formulário ou Grade marque a opção "true", para permitir a atualização da grade ! Abaixo segue as duas imagens de como deve ficar o fluxo e a consulta sql !!
11- Salve o fluxo com o nome Feriado na camada servidor !
De volta ao formulário "Feriado Bancário" no evento ao modificar do componente "Ano", vamos vincular o fluxo ao componente "ano". Veja na imagem abaixo !!
12- Agora vamos criar um fluxo no "evento ao entrar", no formulário "Feriado Bancário". Esse fluxo é simples. Coloque um processamento e utilize a função "Alterar Valor do Componente". Nos parâmetros coloque: 1° Formulário "Feriado Bancário", 2° Ano (ano) e no 3° utilize a função "Ano" e adicione a função "Hoje", conforme a imagem abaixo.. Salve o fluxo e verifique se ele esta vinculado ao evento "Ao Entrar" do formulário Feriado Bancário. Salve e Rode o sistema para ver funcionando !!
Resultado Final No Browser e uma pequena demonstração de funcionamento !!
Importando registros de uma tabela sql server para outra tabela em instancias diferentes !
Definimos que as tabelas que serão abastecidas estão sem nenhum registro cadastrado !
Tabelas a serem importadas: FR_FORMULARIO E FR_MENU.
Ambas as tabelas já estão criadas nas duas base de dados.
Iremos importar uma tabela com registros, para outra tabela que esta sem registros.
1° Acessando o banco de dados na base que iremos importar as tabelas com os registros.. 1A) Botão direito na base de dados que contem as tabelas vazias + Task + "Import Data"
2° Será aberto um Wizard do sql server para importação
3° Definimos os campos "Server Name" com o nome do servidor que contêm as tabelas com os registros inseridos, conforme a imagem abaixo, preenchemos o usuário e senha para autenticação.
4° Na próxima tela definimos o "Server Name" com o nome do servidor que contêm as tabelas vazias que serão abastecidas ! Conforme a imagem abaixo definimos usuário e senha !
5° Next com a opção 1 selecionada ! Para escolhermos as tabelas a serem inseridas ! Caso selecione a segunda opção ! Deverá definir via comando sql as tabelas !! Imagem abaixo
6° Selecionamos as tabelas que serão importadas ! No exemplo, utilizei FR_FORMULARIO e FR_MENU
Configuração de VPN com o roteador DrayTek Vigor 2910, entre duas redes (Lan to Lan).
Acesse o roteador (192.168.0.1:8080), logue-se e no menu a esquerda, navegue em "VPN and Remote Settings -> LAN to LAN";
Escolha um perfil para editar (clique no número a frente do perfil a configurar);
A configuração que iremos efetuar é o modo PPTP (Point-to-Point Tunneling Protocol).
DIAL-OUT
Primeiro, configuramos a rede que fará a requisição de conexão para a VPN; abaixo, segue os passos a seguir (Tome como exemplo o ROTEADOR DAY):
Defina o nome do Perfil (Profile Name);
Deixe ticado a opção "Enable this profile";
Em VPN Connection Through, defina o link por onde estabelecer a VPN;
Em Call Direction, habilite "Dial-Out", e deixe ticado a opção "Always on".
Em "Type of Server I am calling", habilite o serviço PPTP;
Em "Server IP/Host Name for VPN", defina o IP da rede que será contatada para conexão;
Ao lado de "Type of Server I am calling" (Direita), defina um usuário e senha para autenticar a conexão, e deixe a opção PAP/CHAP em "PPP Authentication";
Em VJ Compresson, deixe setado "ON".
Em "TCP/IP Network Settings":
Remote Network IP (Defina o endereço de rede que se estabelecerá a VPN)
Remote Network Mask (Defina a mascara dessa rede)
Em RIP Direction, defina "Disable"
Em "From first subnet to...", defina "Route"
Confirme a configuração clicando em OK.
DIAL-IN
Agora configuramos a rede que receberá a requisição de conexão.
Defina o nome do perfil (Profile Name);
Habilite o perfil ticando "Enable this Profile";
Defina a preferência de link em "VPN Connection Through";
Em "Call Direction", habilite "Dial-In";
Em "Idle Timeout", deixe 0.
Em "Dial-In Settings", na opção "Allowed Dial-In Type", defina o serviço PPTP;
Ao lado, informe o usuário e senha que foram definidos na outra rede (Tome como exemplo o ROTEADOR HMSM).
Defina a rede e máscara em "Remote Network IP" e "Remote Network Mask" respectivamente.