quarta-feira, 17 de julho de 2024

VIDEO 4074 - Webservice - Windev29 webdev mobile - Consumir webservice cadastro no Webdev uninfe -dll





bom dia
VIDEO 4074 - Webservice - Windev29 webdev mobile - Consumir webservice cadastro no Webdev uninfe -dll

00:00:00 Introdução
00:00:11 Vamos entrar no cadastro de cliente, e no botao busca cnpj
00:00:29 Vamos perguntar se já existe cnpj digitado
00:00:38 vamos criar as variaveis
00:01:20 vamos instanciar request e response e informar url e metodo
00:01:41 vamos informar os parametors e o tipo
00:02:13 vamos pegar o retorno 
00:02:27 vamos adicionar as informações nos campos com xmlExtractString
00:03:44 Vamos gerar deploy do projeto erp_web_matos
00:04:22 Executando o Site webdev Erp_web_matos
00:04:59 Próxima Aula 
00:05:13 Propaganda Windev Webde Mobile com Adriano boller
00:05:23 Erpmatos 
00:05:29 Representantes ErpMatos
00:05:40 Video Encerramento




=========================================

// vamos verificar se tem cnpj digitado

IF edt_cnpj_cpf<>"" THEN
// buscar cnpj pelo uninfe dll
// criar as variaveis 
s_cnpj_emitente is string = ""
s_certificado_senha is string = ""
s_cnpj_consultar is string = ""
n_cuf is int = 43 
sEDT_Url_string is string = "http://www.amarildomatos.com.br/uninfe_consulta_cadastro"
s_cnpj_consultar = edt_cnpj_cpf
// vamos instanciar request e response
oRequest is httpRequest
oResponse is httpResponse
// vamos informar a url e metodo
oRequest.URL = sEDT_Url_string 
oRequest.Method = httpPost
// vamos informar os parametros
oRequest..Header["s_recebe_cnpj"] = s_cnpj_emitente
oRequest..Header["s_recebe_senha"] = s_certificado_senha
oRequest..Header["n_recebe_CUF"] = n_cuf
oRequest..Header["s_recebe_cnpj_cadastro"] = s_cnpj_consultar
// vamos colocar tipo 
oRequest.Content = ""
oRequest.ContentType = typeMimeJSON

//vamos pegar o retorno 
oResponse = RESTSend(oRequest)
sRetorno_webservice is string = oResponse.Content
    //vamos adicionar as informações nos campos
IF edt_razao_social_nome="" THEN
edt_razao_social_nome=XMLExtractString(sRetorno_webservice,"xNome")
END
IF edt_nome_fantasia="" THEN
edt_nome_fantasia=XMLExtractString(sRetorno_webservice,"xFant")
END
IF EDT_Endereco_cep="" OR EDT_Endereco_cep=0 THEN
EDT_Endereco_cep = XMLExtractString(sRetorno_webservice,"CEP")
END
IF EDT_Endereco_rua="" THEN
EDT_Endereco_rua=XMLExtractString(sRetorno_webservice,"xLgr")
END
IF EDT_Endereco_numero="" OR EDT_Endereco_numero=0 THEN
EDT_Endereco_numero=XMLExtractString(sRetorno_webservice,"nro")
END
IF EDT_Endereco_complemento="" THEN
EDT_Endereco_complemento=XMLExtractString(sRetorno_webservice,"xCpl")
END
IF EDT_Endereco_bairro="" THEN
EDT_Endereco_bairro=XMLExtractString(sRetorno_webservice,"xBairro")
END
IF EDT_Endereco_cidade="" THEN
EDT_Endereco_cidade=XMLExtractString(sRetorno_webservice,"xMun")
END
IF EDT_Endereco_uf="" THEN
EDT_Endereco_uf=XMLExtractString(sRetorno_webservice,"UF")
END
IF EDT_Email=""
EDT_Email=XMLExtractString(sRetorno_webservice,"email")
END
IF edt_inscricao_estadual=""
edt_inscricao_estadual=XMLExtractString(sRetorno_webservice,"IE")
END
IF EDT_Endereco_cmun=0 OR EDT_Endereco_cmun="" THEN
EDT_Endereco_cmun = XMLExtractString(sRetorno_webservice,"cMun")
EDT_Endereco_pais = "BRASIL"
EDT_Endereco_cpais = "1058"
END
IF EDT_Cnae="" THEN
EDT_Cnae=XMLExtractString(sRetorno_webservice,"CNAE")
END
//EDT_Observacao_texto=XMLExtractString(sRetorno_webservice,"")
IF gnRecebe_tipo_cliente_fornecedor=2 THEN
//cliente
CBOX_Tabela_cliente=True
ELSE IF gnRecebe_tipo_cliente_fornecedor=3 
//fornecedor
CBOX_Tabela_fornecedor=True
END
END




terça-feira, 16 de julho de 2024

VIDEO 4073 - Webservice - Windev29 webdev mobile - Consumir webservice cadastro no windev uninfe -dll



bom dia
VIDEO 4073 - Webservice - Windev29 webdev mobile - Consumir webservice cadastro no windev uninfe -dll


00:00:00 Introdução
00:00:12 Criar um botao e um edt resposta 
00:00:58 Vamos criar as variaveis 
00:01:22 vamos instanciar request e response
00:01:33 vamos informar a url e metodo
00:01:47 vamos informar os parametros
00:02:16 vamos colocar tipo 
00:02:28 vamos pegar retorno 
00:02:47 vamos testar 
00:03:06 Próxima Aula 
00:03:10 Propaganda Windev Webde Mobile com Adriano boller
00:03:18 Erpmatos 
00:03:27 Representantes ErpMatos
00:04:38 Video Encerramento





// criar as variaveis 
s_cnpj_emitente is string = ""
s_certificado_senha is string = ""
s_cnpj_consultar is string = ""
n_cuf is int = 43 
sEDT_Url_string is string = "http://www.dominio.com.br/uninfe_consulta_cadastro"
s_cnpj_emitente = "019"
s_certificado_senha = "19"
s_cnpj_consultar = "893"
// vamos instanciar request e response
oRequest is httpRequest
oResponse is httpResponse
// vamos informar a url e metodo
oRequest.URL = sEDT_Url_string 
oRequest.Method = httpPost
// vamos informar os parametros
oRequest..Header["s_recebe_cnpj"] = s_cnpj_emitente
oRequest..Header["s_recebe_senha"] = s_certificado_senha
oRequest..Header["n_recebe_CUF"] = n_cuf
oRequest..Header["s_recebe_cnpj_cadastro"] = s_cnpj_consultar
// vamos colocar tipo 
oRequest.Content = ""
oRequest.ContentType = typeMimeJSON
//vamos pegar o retorno 
oResponse = RESTSend(oRequest)
sRetorno_webservice is string = oResponse.Content
edt_Resposta = sRetorno_webservice


VIDEO 4072 - Webservice - Windev29 webdev mobile - Criar Webservice Rest Cadastro Contribuinte Uninfe Dll





bom dia
VIDEO 4072 - Webservice - Windev29 webdev mobile - Criar Webservice Rest Cadastro Contribuinte Uninfe Dll


00:00:00 Introdução
00:00:15 Explicando o que será feito 
00:00:32 Criando Rest com botao direito 
00:00:41 Criando Rest - nome do Rest 
00:00:51 Criar Point
00:01:02 Associando a procedure
00:01:29 Identificado o metodo como Post
00:01:45 Definir o nome do metodo
00:02:00 Definindo Request formato e Response
00:02:20 Mostrando Metodo
00:02:23 Gerando Webservice para o servidor 
00:03:07 Mostrando servico webservice 
00:03:19 Próxima Aula 
00:03:24 Propaganda Windev Webde Mobile com Adriano boller
00:03:32 Erpmatos 
00:03:41 Representantes ErpMatos
00:04:52 Video Encerramento





// PROCEDURE uninfe_consulta_cadastro()

s_auditoria is string = ""
retorno_xml is string = ""
s_recebe_cnpj is string = WebserviceReadHTTPHeader("s_recebe_cnpj") // cnpj do emitente-> certificado
s_recebe_senha is string = WebserviceReadHTTPHeader("s_recebe_senha") // senha certificado
n_recebe_CUF is int = WebserviceReadHTTPHeader("n_recebe_CUF") // 43 - res
s_recebe_cnpj_cadastro  is string = WebserviceReadHTTPHeader("s_recebe_cnpj_cadastro")

s_arquivo_certificado is string = fCurrentDir()+"\erpmatos\"+s_recebe_cnpj+".pfx"
s_diretorio is string = fCurrentDir()+"\erpmatos\xml_"+s_recebe_cnpj+"\retorno"
IF fMakeDir(s_diretorio)=False THEN
END

s_diretorio_log is string=fCurrentDir()+"\erpmatos\xml_"+s_recebe_cnpj+"\retorno"
IF fMakeDir(s_diretorio_log)=False THEN
END

s_auditoria+="Versao 27.03.15.31"
s_auditoria+=CR+"s_recebe_cnpj["+s_recebe_cnpj+"]"
//s_auditoria+=CR+"s_recebe_senha["+s_recebe_senha+"]"
s_auditoria+=CR+"n_recebe_CUF["+n_recebe_CUF+"]"
s_auditoria+=CR+"s_recebe_cnpj_cadastro["+s_recebe_cnpj_cadastro+"]"
s_auditoria+=CR+"s_arquivo_certificado["+s_arquivo_certificado+"]"
s_auditoria+=CR+"s_diretorio["+s_diretorio+"]"
s_auditoria+=CR+"s_diretorio_log["+s_diretorio_log+"]"

//Revisar acima 
//https://www.youtube.com/live/qUosXijsuPw?si=plDq6F3j8mz9yfgI //comeca 27.32 

// configurações minimas 
o_configuracao is Unimake.Business.DFe.Servicos.Configuracao
o_configuracao.TipoDFe = TipoDFe.NFe //1 // nfe
o_configuracao.CertificadoArquivo = s_arquivo_certificado
o_configuracao.CertificadoSenha = s_recebe_senha

//criar o xml
oConsCad is Unimake.Business.DFe.XML.NFe.ConsCad()
oConsCad.VERSAO = "2.00"

oInfCons is Unimake.Business.DFe.XML.NFe.InfCons()
oInfCons.CNPJ=s_recebe_cnpj_cadastro
oInfCons.uf=UFBrasil.RS // cuf=43 direto //perguntar

oConsCad.InfCons=oInfCons

WHEN EXCEPTION IN
// vamos consumir o servico // Criado um objeto oconsultacadastro
oConsultaCadastro is Unimake.Business.DFe.Servicos.NFe.ConsultaCadastro() 
    
    // vamos chamar ele, passando o xml e a configuração
  oConsultaCadastro.Executar(oConsCad,o_configuracao)
oRetConsCad is Unimake.Business.DFe.XML.NFe.RetConsCad <- oConsultaCadastro.Result
    cstat is string=oRetConsCad.InfCons.CStat
    xmotivo is string=oRetConsCad.InfCons.XMotivo
razao_social is string=oRetConsCad.InfCons.InfCad.XNome
retorno_xml = oConsultaCadastro.RetornoWSString 
DO
retorno_xml="ERRO:"+ExceptionInfo(errFullDetails)
END

// vamos gravar auditoria no servidor
s_auditoria+=CR+retorno_xml+CR
fSaveText(s_diretorio_log+"\cadastro_log.txt",s_auditoria)
fSaveText(s_diretorio+"\cadastro_retorno.xml",retorno_xml)


RESULT retorno_xml


segunda-feira, 6 de maio de 2024

Video 4060 - windev webdev Mobile - Stc Vertical





// youtube : Amarildo Matos - Programador dos pampas


// 06 05 2024
fonte is Font 
fonte..Name="ARIAL"
fonte..Size=13
fonte..Orientation=90
STC_titulo..Font=fonte 
STC_titulo..Width=177
STC_titulo..Height=150









terça-feira, 26 de março de 2024

Video 4044 - windev webdev Mobile - Validar Cpf

Video 4044 - windev webdev Mobile - Validar Cpf

Repositorio





Video 4044 - windev webdev Mobile - Validar Cpf

00:00:00 Introducao
00:00:07 no Windev criar window para pedir o cpf 
00:00:22 Criando a procedure e codigo valida cpf 
00:02:39 Voltando a window digita cpf e chamar a procedure 
00:03:48 Executando e testando cpf 
00:04:02 fazer cpf dentro do windev mobile 
00:05:35 fazer cpf dentro do webdev 
00:07:02 Propaganda wxsolucoes
00:07:24 Progranda Erpmatos 
00:07:33 Representantes erpmatos 
00:07:36 Video encerramento 

=======================================================

validar_cpf(pCpf is string)

_CPF is string
_Peso is 2-byte unsigned int
_Resto is 1-byte int
_Digito is 1-byte int

FOR i=1 _TO_ Length(pCpf)
IF 47 < Asc(pCpf[[i]]) < 58 THEN 
_CPF+=pCpf[[i]]
END
END

IF Length(_CPF) <> 11 THEN RESULT False

FOR i=1 TO 10
_Peso = _Peso + (Asc(_CPF[[1 TO 10]][[i]]) -48)  * (10-i+2)
END

_Resto = modulo(_Peso,11)
IF _Resto < 2 THEN 
_Digito = 0 
ELSE 
_Digito = 11 - _Resto
END

IF Val(_CPF[[11]]) <> _Digito THEN
RESULT False 
ELSE 
RESULT True
END

====================================

terça-feira, 19 de março de 2024

Video 4039 - windev webdev Mobile - novidade 2024 - Alinhamento

00:00:00 Introducao 
00:00:08 Mostrando alinhamento windev 
00:01:18 Mostrando alinhamento webdev  
00:01:51 Mostrando alinhamento Windev mobile 
00:02:21 Propaganda wxsolucoes
00:02:29 Progranda Erpmatos 
00:02:38 Representantes erpmatos 
00:02:41 Video encerramento 


segunda-feira, 18 de março de 2024

Video 4038 - windev webdev Mobile - novidade 2024 - Token

00:00:00 Introducao 
00:00:09 Mostrando o que sera feito 
00:00:24 Criando o botao token 
00:00:36 Escolhendo o tipo de botao token 
00:00:39 Marcando para multiplos escolhas
00:00:50 Marcando para poder mudar de posicao 
00:00:59 Vamos testar 
00:01:25 Propaganda wxsolucoes
00:01:33 Progranda Erpmatos 
00:01:41 Representantes erpmatos 
00:01:45 Video encerramento 



domingo, 17 de março de 2024

segunda-feira, 18 de setembro de 2023

DICA 3909 - Tabela Como imprimir table - Windev-Webdev-Mobile



bom dia

DICA 3909 - Tabela Como imprimir table - Windev-Webdev-Mobile

Indice..

00:00:00 Apresentação
00:00:29 Criando botao 
00:00:39 Colocando codigo tableprint
00:00:50 Testando relatorio
00:01:20 Criando segunda opcao relatorio table
00:01:53 Mostrando Relatorio Gerado
00:02:07 Mostrando Repositorio Windev

Blog

Repositorio Windev

Video Youtube















sexta-feira, 7 de julho de 2023

DICA 3897 - Array e Struture - Como Criar - windev 28 - curso array 28



Video Youtube





Repositorio 


============================

Vamos Criar uma estrutura dados com nome e cidade
Vamos crir um array em cima da estrutura 
Vamos criar dois edt 
Vamos criar um botao onde vamos adicionar os dados no array 
vamos criar outro botao onde vamos ler todos os array e colocar em uma tabela 


============================


------------------ INDICE DO CURSO DE ARRAY e ESTRUTURA


WinDev - Array - 001/... Adiciona/Classifica Ordem/Mostra
WinDev - Array - 002/... Quantas Ocorrencias Array
WinDev - Array - 003/... ArrayDeleteLine - Eliminha uma Linha do Array
WinDev - Array - 004/... ArrayToString - Leva Array Para String
WinDev - Array - 005/... Seek - Procura Por Valor
WinDev - Array - 006/... ArrayDeleteDuplicate - Elimina itens duplos
WinDev - Array - 007/... Delete - Elimina Uma Linha
WinDev - Array - 008/... DeleteAll - Limpa Array
WinDev - Array - 009/... SwapLine - Mover de Lugar
WinDev - Array - 010/... Sum - Somar Array
ARRAYREVERSE - ARRAY - 011/ ... AULA 1185 
ARRAY INICIO - ARRAY 012 / AULA 1229

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









Teste

Teste
teste