quarta-feira, 20 de novembro de 2019

DICAS 2488 WINDEV WEBDEV MOBILE ACBR 171 ACBR LIB CTE Validar




















Bom dia, Seja bem vindos a mais uma video Aula. Essa Aula está sendo Gravada no dia 20 11 2019.
Dica 2488. Método usado para validar os conhecimentos assinados através do componente ACBrCTe.

DICAS 2488 - WINDEV WEBDEV MOBILE - ACBR 170 - ACBR LIB - CTE_Validar


PROCEDURE ACBR_Validar(sRecebe_nome_dll is string="",sRecebe_nome_metodo is string="",recebe_ultimo_Retorno is string="")


gnretorno_acbr=API(sRecebe_nome_dll,sRecebe_nome_metodo)
//gnretorno_acbr=API("ACBrNFe32.DLL","NFE_Validar")


IF gnretorno_acbr=0 THEN
// 0 = VALIDOU COM SUCESSO
RESULT("0")
ELSE
texto is string="Erro Retorno  ["+gnretorno_acbr+"]" 
IF gnretorno_acbr=-1 THEN texto+=" Indica que a biblioteca não foi inicializada "
IF gnretorno_acbr=-10 THEN texto+=" Indica que houve erro ao Validar"
//texto+=CR+ACBR_ULTIMO_RETORNO("ACBrNFe32.DLL","NFE_UltimoRetorno")
    texto+=CR+ACBR_ULTIMO_RETORNO(sRecebe_nome_dll,recebe_ultimo_Retorno)
   
    RESULT texto
    
END
//https://acbr.sourceforge.io/ACBrLib/NFE_Validar.html
// NFE_Validar;

========================
PROCEDURE ACBR_Assinar(sRecebe_nome_dll is string="",sRecebe_nome_metodo is string="",recebe_ultimo_Retorno is string="")

//gnretorno_acbr=api("ACBrNFe32.DLL","NFE_Assinar")
//EDT_RESPOSTA=ACBR_Assinar("ACBrCTe32.dll","CTE_Assinar")

gnretorno_acbr=API(sRecebe_nome_dll,sRecebe_nome_metodo)

IF gnretorno_acbr=0 THEN
//assinou com sucesso=0
RESULT("0")
ELSE
texto is string="Erro Retorno ["+gnretorno_acbr+"]" 
IF gnretorno_acbr=-1 THEN texto+=" Indica que a biblioteca não foi inicializada "
IF gnretorno_acbr=-10 THEN texto+=" Indica que houve erro ao Assinar"
// aula 19 11 2019
texto+=ACBR_ULTIMO_RETORNO(sRecebe_nome_dll,recebe_ultimo_Retorno)
//"CTE_UltimoRetorno")
   
RESULT texto
END


//https://acbr.sourceforge.io/ACBrLib/NFE_Assinar.html
//Comando: NFE_ Assinar

========================
// btn  ASSINAR xml eCTE
bRETORNO is boolean=ACBR_INICIALIZAR("ACBrCTe32.dll","CTE_Inicializar")
IF bRETORNO=True THEN
EDT_RESPOSTA=ACBR_CARREGARINI("ACBrCTe32.dll","CTE_CarregarINI",EDT_INI)
IF EDT_RESPOSTA=0 THEN
EDT_RESPOSTA=ACBR_Assinar("ACBrCTe32.dll","CTE_Assinar","CTE_UltimoRetorno")
IF EDT_RESPOSTA=0 THEN
//AULA 20 11 2019
EDT_RESPOSTA=ACBR_Validar("ACBrCTe32.dll","CTE_Validar","CTE_UltimoRetorno")
IF EDT_RESPOSTA=0 THEN
EDT_RESPOSTA+=CR+"ASSINADO E VALIDADO COM SUCESSO"
ELSE
Info("ERRO AO VALIDAR:"+CR+EDT_RESPOSTA)
END
//AULA 20 11 2019
ELSE
Info("erro ao assinar"+EDT_RESPOSTA)
END
ELSE
Info("ERRO AO CARREGAR INI")
END
END
ACBR_FINALIZAR("ACBrCTe32.dll","CTE_Finalizar")
========================
PROCEDURE ACBR_ULTIMO_RETORNO(sRecebe_nome_dll is string="",sRecebe_nome_metodo is string="")

gnTamanho is system int=256
gsResposta is string on 256
gnretorno_acbr=API(sRecebe_nome_dll,sRecebe_nome_metodo,&gsResposta,&gnTamanho)
sTEXTO_R is string="Retorno["+gnretorno_acbr+"]"+CR 
sTEXTO_R+=VER_RETORNO_MAIOR_256(sRecebe_nome_dll,sRecebe_nome_metodo,gnTamanho,gsResposta)
RESULT sTEXTO_R
========================
PROCEDURE VER_RETORNO_MAIOR_256(RECEBE_NOME_DLL,RECEBE_METODO,RECEBE_GNTAMANHO,RECEBE_GSRESPOSTA)
gsResposta_maior_256 is string=""
IF RECEBE_GNTAMANHO>256 THEN
gsResposta_maior_256=RepeatString(" ",RECEBE_GNTAMANHO)
gnretorno_acbr=API(RECEBE_NOME_DLL,RECEBE_METODO,&gsResposta_maior_256,&RECEBE_GNTAMANHO)
RESULT UTF8ToString(gsResposta_maior_256)
ELSE
RESULT UTF8ToString(RECEBE_GSRESPOSTA)
END
//"NFE_UltimoRetorno"

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


















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





























Nenhum comentário:

Postar um comentário

Teste

Teste
teste