sábado, 30 de maio de 2015

Windev Restaurar Bkp Projeto


Windev - Curso Ligacoes Parte 10/.... - Alterando Rad

VIDEO - CURSO LIGACOES 10/... Alterando Rad



Blog - Curso Ligacoes - Analise - Parte 1/... 

Blog - Curso Ligacoes - Criando Projeto - Parte 2/...

Blog - Curso Ligacoes - Criando Analise - Parte 3/...  

 Blog - Curso Ligacoes - Criando Analise Contatos 4/....

 Blog - Curso Ligacoes - Relacionamento - Parte 5/...

Blog - Curso Ligacoes - Criar Connection - Parte 6/....

Blog - Curso Ligacoes - Menu Ribbon 1 - Parte 7/.... 

Blog - Curso Ligacoes - Menu Ribbon 2 - Parte 8/... 

 Blog - Curso Ligacoes - Rad 1 - Parte 9/...

 Blog - Curso Ligacoes - Alterando Rad - Parte 10/...

Blog - Curso Ligacoes - Tabela Bairro - Parte 11/... 

Blog - Curso Ligacoes - Excel 1/.. - Parte 12/...  

Blog - Curso Ligacoes - Excel 2/... - Parte 13/...

Blog - Curso Ligacoes - Excel 3/... - Parte 14/... 

Blog - curso Ligacoes - Analise Cliente Bairro - Parte 15/...

Blog - Curso Ligacoes - Bairro Recriando Tabela/Form - Parte 16/...

Blog - Curso Ligacoes - Tabela - Cidade /Bairro - Parte 17/... 

Blog - Curso Ligacoes - Importa Excel-Gera Arquivo - Parte 18/...

Blog - Curso Ligacoes - Atendimento Inicio 1 - Parte 19/... 

Blog - Curso Ligacoes - Atendim 2 - Contato Relacionado Movim - Parte 20/....

Blog - Curso Ligacoes - Atendimento 3 - Contato Manual - Parte 21/...

Blog - Curso Ligacoes - Atendimento 4 - Contato Parte 22/...  

Blog - Curso Ligacoes - Atendimento 5 - Ajeitando Tela Parte 23/...

Blog - Curso Ligacoes - Atendimento 6 - Contato Mostra Inf - Parte 24/...  

Blog - Curso Ligacoes - Atendimento 7 - Combox Clientes - Parte 25/...

Blog - Curso Ligacoes - Atendimento 8 - Contatos Filtro - Parte 26/...

Blog - Curso Ligacoes - Atendimento 9 - Contatos Cidade Bairro - Parte 27/...

Blog - Curso Ligacoes - Atendimento 10 - Combox Situacao - Parte 28/...

Blog - Curso Ligacoes - Atendimento 11 - Combox Situacao 2 - Parte 29/...  

Blog - Curso Ligacoes - Seleciona Operador - parte 30/...

Blog - Curso Ligacoes - Atendimento 12 - Ajustes 1 - Parte 31/...

Blog - Curso Ligacoes - Atendimento 13 - Ajustes 2 - Parte 32













amarildo@matosinformatica.com.br



WX - Carregando dados em um Combo Box via código

WX - Carregando dados em um Combo Box via código




WX - Verifica se senha possui só letras e numeros e não caracteres especiais

http://forum.pcsoft.fr/pt-BR/pcsoft.br.windev/234-verifica-senha-possui-letras-numeros-nao-caracteres-especiais/read.awp




WX - Relatorio no Windev Mobile

http://forum.pcsoft.fr/pt-BR/pcsoft.br.windev/252-relatorio-windev-mobile/read.awp



Fselect - Com Ajuda help Windev

VIDEO - SOBRE FSELECT - AJUDA
















amarildo@matosinformatica.com.br



FDate (Função) - Data de Modificação e Criação Arquivos

VIDEO - FDATE


FDate (Função) - http://doc.windev.com
fDate (Example) - http://doc.windev.com
Functions for managing the external files - http://doc.windev.com

// Verificar a ultima data de alteracao do arquivo
_data_modificacao_arquivo is Date = fDate("e:\aleva\txt\carne.clw", "", fModify)

// Verificar a data de criacao do arquivo
_data_criacao_arquivo is Date = fDate("e:\aleva\txt\carne.clw", "", fCreation)

// verificar a data do ultimo acesso ao arquivo
_data_ultimo_Acesso_arquivo is Date = fDate("e:\aleva\txt\carne.clw", "", fAccess)




























amarildo@matosinformatica.com.br



WX - Exemplo de leitura de planilha do excel, cadastramento, geração de csv e envio de email

http://forum.pcsoft.fr/pt-BR/pcsoft.br.windev/238-exemplo-leitura-planilha-excel-cadastramento-geracao-csv-envio/read.awp




Procedure ImportarUsuario()

//Processamento da leitura do USUARIO.XLS
ok is boolean = False

PROGBAR_01..Visible = True

PROGBAR_01..Value = 0

Cabecalho is string = [
Associação Radiotaxi Faixa Vermelha <br>
Rua Dr. Goulin, 1661 <br>
Bairro Hugo Langue <br>
Curitiba - Paraná - Brasil <br>
CEP: 82040-280 <br><br>
]

Mensagem is string = [
[Dados de Acesso ao Voucher Eletronico]:<br>
<br>
Prezado(a): @Nome@ <br>
<br>
Acesse o Link: http://www.taxi62.com.br
<br>
Escolha No Menu superior a opção: Voucher Eletronico
<br>
[Informe os dados abaixo para o Acesso] <br>
Convenio......... = @Convenio@ <br>
Email............ = @Email@ <br>
OU <br>
Matricula........ = @Matricula@ <br>
Senha de Acesso.. = @SenhaAcesso@ <br>
]

nRegistro, nLinha, nUmaLinha is int

sCod_matric_autorz, sDes_email_usuari_web, sDes_senha_usuari_web, sNom_autorz, sDes_nome_empres_usuari_web, sIde_nivel_acesso_usuari_web, sDes_cargo_autorz, sNum_rg_autorz, sNum_cpf_autorz, sDes_observ, sCod_centro_custo, sIde_Tercerizada, sIde_SolicitarOutrosCentrosCusto, sTelefone, sIde_permit_corrid_outros, sDesc_diretoria is string = ""

sCod_client_conven,sCod_libera_pagame_eletro,sSeq_diretoria is int

sFile is string = EDT_Arquivo

nXlsfile is xlsDocument = xlsOpen(sFile)

nUmaLinha = xlsNbRow(nUmaLinha)

IF EDT_Arquivo <> "" AND PositionOccurrence(EDT_Arquivo,"XLS",firstRank,FromBeginning) > 0

FOR nLinha = 2 TO nUmaLinha

nRegistro += 1

PROGBAR_01..Value = nRegistro

//sCod_client_conven = xlsData(nXlsfile,nLinha,1) //Fixo gnConvenioAdministrador

sCod_matric_autorz = xlsData(nXlsfile,nLinha,1) //Matricula
sDes_email_usuari_web = xlsData(nXlsfile,nLinha,2) //Email
sNom_autorz = xlsData(nXlsfile,nLinha,3) //NomeUsuario
sNum_rg_autorz = xlsData(nXlsfile,nLinha,4) //RG
sNum_cpf_autorz = xlsData(nXlsfile,nLinha,5) //CPF
sDes_cargo_autorz = xlsData(nXlsfile,nLinha,6) //Cargo
sTelefone = xlsData(nXlsfile,nLinha,7) //Telefone
sDes_nome_empres_usuari_web = xlsData(nXlsfile,nLinha,8) //NomeEmpresa
sDesc_diretoria = xlsData(nXlsfile,nLinha,9) //NomeDiretoria
sCod_centro_custo = xlsData(nXlsfile,nLinha,10) //CodigoCentroCusto
sIde_SolicitarOutrosCentrosCusto = xlsData(nXlsfile,nLinha,11) //Flag_SolicitarOutrosCentrosCusto
sIde_Tercerizada = xlsData(nXlsfile,nLinha,12) //Flag_Tercerizada
sIde_permit_corrid_outros = xlsData(nXlsfile,nLinha,13) //Flag_Permit_corrid_outros
sIde_nivel_acesso_usuari_web = xlsData(nXlsfile,nLinha,14) //Flag_nivel_acesso_usuari_web
sDes_observ = xlsData(nXlsfile,nLinha,15) //Observacao

//Verifica se existe Diretoria
sSeq_diretoria = BuscaDiretoria(sDesc_diretoria)


//Verifica a existencia
ok = BuscaUsuario(gnConvenioAdministrador, sDes_email_usuari_web, sCod_matric_autorz)

IF sNom_autorz <> "" AND sCod_client_conven <> "" AND sDes_email_usuari_web <> "" AND sCod_matric_autorz <> "" AND sCod_centro_custo <> ""

IF ok = False THEN

sDes_senha_usuari_web = Charact(Random(97,122)) + Charact(Random(97,122)) + Charact(Random(97,122)) + Middle(Random(100,999),1,3)

sCod_libera_pagame_eletro = "0000"

ok = IncluirUsuario(gnConvenioAdministrador, sCod_matric_autorz, sDes_email_usuari_web, sDes_senha_usuari_web, sNom_autorz, sDes_nome_empres_usuari_web, sIde_nivel_acesso_usuari_web, sDes_cargo_autorz, sNum_rg_autorz, sNum_cpf_autorz, sDes_observ, sCod_centro_custo, sCod_libera_pagame_eletro, SN(sIde_SolicitarOutrosCentrosCusto), sSeq_diretoria, SN(sIde_Tercerizada), sTelefone, SN(sIde_permit_corrid_outros))

Mensagem = Replace(Mensagem,"@Nome@",sNom_autorz)
Mensagem = Replace(Mensagem,"@Convenio@",sCod_client_conven)
Mensagem = Replace(Mensagem,"@Email@",sDes_email_usuari_web)
Mensagem = Replace(Mensagem,"@Matricula@",sCod_matric_autorz)
Mensagem = Replace(Mensagem,"@SenhaAcesso@",sDes_senha_usuari_web)

EnviarEmail(sDes_email_usuari_web,"Radiotaxi Faixa Vermelha - Acesso ao Voucher Eletrônico",Cabecalho,Mensagem)

ELSE

ok = AlterarUsuario(gnConvenioAdministrador, sCod_matric_autorz, Seq_autorz, sDes_email_usuari_web, sDes_senha_usuari_web, sNom_autorz, sDes_nome_empres_usuari_web, sIde_nivel_acesso_usuari_web, sDes_cargo_autorz, sNum_rg_autorz, sNum_cpf_autorz, sDes_observ, sCod_centro_custo, sCod_libera_pagame_eletro, SN(sIde_SolicitarOutrosCentrosCusto), sSeq_diretoria, SN(sIde_Tercerizada),sTelefone,SN(sIde_permit_corrid_outros))

END

IF ok = True THEN
EDT_CSV += xlsData(nXlsfile,nLinha,1) +";"+ xlsData(nXlsfile,nLinha,2) +";"+ xlsData(nXlsfile,nLinha,3) +";"+ xlsData(nXlsfile,nLinha,4) +";"+ xlsData(nXlsfile,nLinha,5) +";"+ xlsData(nXlsfile,nLinha,6) +";"+ xlsData(nXlsfile,nLinha,7) +";"+ xlsData(nXlsfile,nLinha,8) +";"+ xlsData(nXlsfile,nLinha,9) +";"+ xlsData(nXlsfile,nLinha,10) +";"+ xlsData(nXlsfile,nLinha,11) +";"+ xlsData(nXlsfile,nLinha,12) +";"+ xlsData(nXlsfile,nLinha,13) +";"+ xlsData(nXlsfile,nLinha,14)+";"+ xlsData(nXlsfile,nLinha,15) +";"+ xlsData(nXlsfile,nLinha,16) +";"+ xlsData(nXlsfile,nLinha,17) +";"+ xlsData(nXlsfile,nLinha,18)
END

END

ok = False

END

PROGBAR_01..Value = 100

Info("Foram adicionados: " + nUmaLinha + " novos Usuarios!")

xlsClose(nXlsfile)

ELSE

Info("O arquivo Usuario a ser importado deve ser XLS")

EDT_Arquivo = ""

END

EDT_Arquivo = ""
==================================================================

//Relatorio Manual Excel
ok is boolean = False
nCAB is int = 0
Lineprint is string = ""
sFileName is string = ""

Lineprint = "Matricula; Nome; Centro Custo; Descricao Centro Custo; Centro Custo Autorizado; Descricao Centro Custo Autorizado; Data Autorizacao; Data Validade; Ultima Alteracao; Qtde Corridas; Corridas Utilizadas; Saldo de Corridas; Baixa da Autorização; Data Baixa; Mostrar Todas as Autorizações; Obs"+Charact(13)+Charact(10)

Lineprint += EDT_Matricula +"; "+ EDT_Nome +"; "+ EDT_CentroCusto +"; "+ EDT_DescricaoCentroCusto +"; "+ EDT_CentroCustoAutorizado +"; "+ EDT_DescricaoCentroCustoAutorizado +"; "+ EDT_DataAutorizacao +"; "+ EDT_DataValidade +"; "+ EDT_UltimaAlteracao +"; "+ EDT_QtdeCorridas +"; "+ EDT_Utilizado +"; "+ EDT_Saldo +"; "+ CBOX_BaixaAutorizacao +"; "+ EDT_DataBaixa +"; "+ CBOX_MostrarTodas +"; "+ EDT_Obs + Charact(13)+Charact(10)

Lineprint = Replace(Lineprint,".",",")

IF ok = True
sFileName = WS_ReturnGenerationDir()+"\AutorizacaoEspecial"+ gnConvenioAdministrador +".csv"
fSaveBuffer(sFileName,Lineprint)
iDestination(iGenericXLS,sFileName)
FileDisplay(sFileName,"application/unknown",sFileName)
fDelete(sFileName)
END
 

quinta-feira, 28 de maio de 2015

Windev - Functions for managing the queues






VIDEO - QUEUES -









-----------------------------------------------------------------------------------------------------------
TableDeleteAll(TABLE_queue)
MyQueue is Queue of int
Enqueue(MyQueue, 1)
      // Enqueue
      // Enfileira um elemento em uma fila. O elemento é adicionado no fim da fila.
Enqueue(MyQueue, 2)
Enqueue(MyQueue, 3)
//
x is int
WHILE Dequeue(MyQueue, x)
    //Dequeue
    //O elemento é excluído da fila e retornado na variável especificada.
    // do primeiro ate o ultimo
    TableAdd(TABLE_queue,x)
END
TableDisplay(TABLE_queue)
 -----------------------------------------------------------------------------------------------------------
TableDeleteAll(TABLE_queue)
MyQueue is Stack of int
Push(MyQueue, 1)
      // Enqueue
      // Enfileira um elemento em uma fila. O elemento é adicionado no fim da fila.
Push(MyQueue, 2)
Push(MyQueue, 3)
x is int
WHILE Pop(MyQueue, x)
    //Dequeue
    //O elemento é excluído da fila e retornado na variável especificada.
    // do ultimo ate o primeiro
    TableAdd(TABLE_queue,x)
END
TableDisplay(TABLE_queue)
  -----------------------------------------------------------------------------------------------------------
TableDeleteAll(TABLE_queue)
MyQueue is Queue of string
Enqueue(MyQueue, "matos")
Enqueue(MyQueue, "amarildo")
x is string
WHILE Dequeue(MyQueue, x)
    TableAdd(TABLE_queue,x)
END
TableDisplay(TABLE_queue)
   -----------------------------------------------------------------------------------------------------------
TableDeleteAll(TABLE_queue)
MyQueue is Stack of string


Push(MyQueue, "matos")
Push(MyQueue, "amarildo")

x is string
WHILE Pop(MyQueue, x)
    TableAdd(TABLE_queue,x)
END

TableDisplay(TABLE_queue)

Windev Input - Entrada de Dados







VIDEO - Input - Entrada de Dados


Input - http://doc.windev.com














---------------------------------------------------------------------------------------------------------------
// Exemplo 1 -
_cpf is string
Input("Entre com Cpf",_cpf)
   // Exibe uma mensagem que permite que o usuário digite uma informação.
  
// Exemplo 2 -
_numero_copias is int
ReturnValue is int
ReturnValue = Input("Quantas Copias Deseja imprimir?", _numero_copias)
SWITCH ReturnValue
    CASE 0: Info("Voce tem de digitar quantidade de copias")
    CASE 1: Info("Sera Listado  " + _numero_copias)
END

// Exemplo 3
_telefone is string
// Use an input mask
Input.InputMask = maskPhone
SWITCH Input("Digite Telefone?", _telefone)
    // OK
    CASE 1: Info(_telefone)
    // Cancel
    CASE 0: Info("Nenhum Telefone")
END

// Exemplo 4
_observacao is string
_observacao = RepeatString(CR, 10)
SWITCH Input("Entre com Observacao", _observacao)
    // OK
    CASE 1: Info(_observacao)
    // Cancel
    CASE 0: Info("No comment")
END

// EXEMPLO 5
_mostra_informacao is boolean = False
Input.OptionalCaption = "Mostra Informação - Caption"
Input("Voce quer mostrar Informacao?", _mostra_informacao)
IF _mostra_informacao=True THEN
    Info("verdade")
ELSE
    Info("Falso")
END

// inputMask
//    maskAAlphaNum    Letra, a seguir letras + dígitos
//    maskAAlphaNumUpper    Letra maiúscula, então maiúsculas letras + dígitos
//    maskAlpha    Letras
//    maskAlphaUpper    Letras em caracteres maiúsculos
//    maskAlphaNum    Cartas + dígitos
//    maskAlphaNumUpper    Letras em caracteres maiúsculos + dígitos
//    maskNone    Nenhuma entrada de máscara
//    maskEmail    Endereço de email
//    maskFileNoFolder    O nome do arquivo (sem seus diretórios)
//    maskINSEE    Número INSEE
//    maskINSEEKey    Número INSEE + chave
//    maskUpper    Tudo em caracteres maiúsculos
//    maskLower    Tudo em caracteres minúsculos
//    maskFileName    O nome do arquivo e caminho
//    maskNum    Digits
//    maskNumPlus    Digits, '+', '', '', '-.', ''
//    maskPatronymic    Cartas + dígitos + espaço + Quote + Traço
//    maskPatronymicUpper    Caps + dígitos + espaço + Quote + Traço
//    maskFUpper    Primeira letra em letra maiúscula
//    maskFileSize    Máscara numérico para o tamanho do arquivo e tamanho do disco
//    maskPhone    Número de telefone
//    maskPhoneFrance    Número de telefone em formato Francês

---------------------------------------------------------------------------------------------------------------

Teste

Teste
teste