sábado, 28 de dezembro de 2019

DICAS 2597 - WINDEV WEBDEV MOBILE - Relatorio 62 - Como eu Fiz Danf no Windev.






Doação Para Amarildo matos - https://streamelements.com/amarildo_matos/tip











Doaçao Amarildo Matos - Link da doação: https://streamelements.com/amarildo_matos/tip
Boa Tarde

Seja bem vindos a mais uma video Aula. Essa aula estara disponivel as 18:00 do dia 28/12/2019.
Dica 2597. Vou Mostrar como eu Fiz Impressao Danf no Windev.

DICAS 2597 - WINDEV WEBDEV MOBILE - Relatorio 62 - Como eu Fiz Danf no Windev. 

Compartilhe Canal Youtube Amarildo Matos
Amarildo, desde 1990 ensinando Desenvolvimento de Sistemas, tornando
sonhos em realidades.



--------------------------------------------------------------
EXTERN win_danf_relatorio
LoadWDL("relatorio.wdl")
n_id_nota_fiscal is int=TABLE_nota_fiscal.COL_Id_nota_fiscal
Open(win_danf_relatorio,n_id_nota_fiscal,"IMPRESSAO",True,True)
---------------------------------------------------------------

// BTN_IMPRIMIR_DANF
HReadSeekFirst(nota_fiscal_xml,Id_nota_fiscal,gn_id_nota_fiscal)
TableDeleteAll(TABLE_itens)
IF HFound(nota_fiscal_xml) THEN
IF nota_fiscal_xml.xml_nfe<>"" THEN
EDT_Xml_nfe=nota_fiscal_xml.xml_nfe
ELSE
EDT_Xml_nfe=nota_fiscal_xml.xml_enviado
END
ler_danfe_itens_impostos_xml()
ELSE
EDT_Xml_nfe=nota_fiscal.id_nota_fiscal
ler_danfe_itens_impostos_homologacao()
END
IF empresa_parametro_nfe.pdf_gerar=True THEN
iDestination(iPDF,s_retorno_pdf)
imprime_danf(True)
IF gbNao_abrir_pdf=True THEN
ELSE
ShellExecute(s_retorno_pdf)
END
ELSE
imprime_danf(False)
END
====================================================
INTERNAL PROCEDURE ler_danfe_itens_impostos_xml()

documento is string = EDT_Xml_nfe
xml_nfe is a xmlDocument
xml_nfe=XMLOpen(documento,fromString)
det is xmlNode
_sequencia is int=0
HReadSeekFirst(empresa_parametro_nfe,Id_empresa,gnEmpresacodigo)
FOR EACH det OF xml_nfe.nfeProc.NFe.infNFe on det
TableAddLine(TABLE_itens) // Adicionando a tabela
n_ocorrencia is int= TABLE_itens..Occurrence //vou ter o numero atual linha tabela
_sequencia++
TABLE_itens.COL_01_sequencia[n_ocorrencia]=_sequencia
TABLE_itens.COL_02_id_nota_fiscal_iten[n_ocorrencia]=0
TABLE_itens.COL_03_cProd[n_ocorrencia]=det.prod.cProd
TABLE_itens.COL_04_cEAN[n_ocorrencia]=det.prod.cEAN
TABLE_itens.COL_05_xProd[n_ocorrencia]=det.prod.xProd
TABLE_itens.COL_06_NCM[n_ocorrencia]=det.prod.NCM
TABLE_itens.COL_07_CFOP[n_ocorrencia]=det.prod.CFOP
TABLE_itens.COL_08_uCom[n_ocorrencia]=det.prod.uCom
TABLE_itens.COL_09_qCom[n_ocorrencia]=det.prod.qCom
TABLE_itens.COL_17_vTotTrib[n_ocorrencia]=det.imposto.vTotTrib 
TABLE_itens.COL_18_ICMS_ICMSSN_orig[n_ocorrencia]=det.imposto.ICMS..ChildNode[1].orig
s_cst_csosn is string=""
s_cst_csosn=det.imposto.ICMS..ChildNode[1].CST
TABLE_itens.COL_19_ICMS_ICMSSN_CST_CSOSN[n_ocorrencia]=det.imposto.ICMS..ChildNode[1].orig+det.imposto.ICMS..ChildNode[1].CST
IF s_cst_csosn="" THEN
TABLE_itens.COL_19_ICMS_ICMSSN_CST_CSOSN[n_ocorrencia]=det.imposto.ICMS..ChildNode[1].orig+det.imposto.ICMS..ChildNode[1].CSOSN
END
TABLE_itens.COL_20_ICMS_ICMSSN_pCred[n_ocorrencia]=det.imposto.ICMS..ChildNode[1].pCred
TABLE_itens.COL_21_ICMS_ICMSSN_vCred[n_ocorrencia]=det.imposto.ICMS..ChildNode[1].vCred

END



END
===================================================================
INTERNAL PROCEDURE ler_danfe_itens_impostos_homologacao()
nUmero_item is int=0
TableDeleteAll(TABLE_ItemID)
TableSort(TABLE_ItemID,False)
HReadSeekFirst(nota_fiscal,id_nota_fiscal,gn_id_nota_fiscal)
QRY_ItensNF.param_idNota = nota_fiscal.id_nota_fiscal
HExecuteQuery(QRY_ItensNF,hQueryWithoutHFCorrection)
FOR EACH QRY_ItensNF
TableAddLine(TABLE_ItemID,QRY_ItensNF.id_nota_fiscal_iten,QRY_ItensNF.sequencia_digitacao)
END
TableSort(TABLE_ItemID,"+COL_sequencia")
FOR EACH ROW OF TABLE_ItemID
HReadSeek(nota_fiscal_iten,id_nota_fiscal_iten,TABLE_ItemID.COL_IdItemNotaFiscal)
HReadSeekFirst(material,material.chave_empresa_material,[gnEmpresacodigo,nota_fiscal_iten.id_empresa_material])
TableAddLine(TABLE_itens)
nUmero_item++
TABLE_itens.COL_01_sequencia[nUmero_item]=nota_fiscal_iten.sequencia_digitacao
TABLE_itens.COL_03_cProd[nUmero_item]=nota_fiscal_iten.codigo_produto_cProd
TABLE_itens.COL_04_cEAN[nUmero_item]=nota_fiscal_iten.codigo_barra_cean
TABLE_itens.COL_05_xProd[nUmero_item]=material.nome
TABLE_itens.COL_33_percentual_desc[nUmero_item]=nota_fiscal_iten.Valor_desconto_percentual
END
TableSort(TABLE_itens,"+COL_01_sequencia")
END
================================================
IF empresa_parametro_nfe.pdf_gerar=True THEN
iDestination(iPDF,s_retorno_pdf)
imprime_danf(True)
IF gbNao_abrir_pdf=True THEN
ELSE
ShellExecute(s_retorno_pdf)
END
ELSE
imprime_danf(False,False)
END
================================================
INTERNAL PROCEDURE imprime_danf(_pdf is boolean=False, envioEmail is boolean=False)
IF _pdf=True THEN
ELSE
IF gb_deseja_configuracar=True THEN
iConfigure()
END
iPreview(ipvZoom100)
END
IF empresa_parametro_nfe.danf_quantidade_vias>0 THEN
iParameter(iCopies,empresa_parametro_nfe.danf_quantidade_vias)
END
iPrintReport(RPT_danf_nfe_mod2,gn_id_nota_fiscal)

END
================================================
// BTN_gERAR_tABELA

TABLE_itens_pedido.DeleteAll()
//TableDeleteAll(TABLE_itens_pedido) // VERSOES ANTERIORES

// VAMOS AGORA LER OS ITENS DO PEDIDO E GERAR NA TABELA

FOR EACH pedido_iten where PedidoID=EDT_Numero_Pedido

nOCORRENCIA is int=TABLE_itens_pedido.AddLine()
TABLE_itens_pedido[nOCORRENCIA].COL_01_pedido_itenid=pedido_iten.pedido_itenID
TABLE_itens_pedido[nOCORRENCIA].COL_02_pedido_id=pedido_iten.PedidoID
TABLE_itens_pedido[nOCORRENCIA].COL_03_material_id=pedido_iten.Materialid
TABLE_itens_pedido[nOCORRENCIA].COL_04_nome_material=""
HReadSeekFirst(material,materialid,pedido_iten.Materialid)
IF HFound(material) THEN
TABLE_itens_pedido[nOCORRENCIA].COL_04_nome_material=material.nome
END
TABLE_itens_pedido[nOCORRENCIA].COL_05_quantidade=pedido_iten.quantidade
TABLE_itens_pedido[nOCORRENCIA].COL_06_vlr_unitario=pedido_iten.valor_unitario
TABLE_itens_pedido[nOCORRENCIA].COL_07_valor_total=pedido_iten.valor_total

END
==========================================






























Blog - WinDev - Relatorio - 001/... Configura e Filtro
Blog - WinDev - Relatorio - 002/... IParameterReport
Blog - WinDev - Relatório - 003/... Marca D´Agua
Blog - WinDev - Relatorio - 004/... Layout 
Blog - WinDev - Relatorio - 005/... Campo Vertical - Angle 
Blog - WinDev - Relatorio - 006/... Como fazer quando sai duas paginas? 
Blog - WinDev - Relatorio - 007/... Imprimir Linha Multi Line
Blog - WinDev - Relatorio - 008/... Relatorio Valor Zero deixar Branco
Blog - WinDev - Relatorio - 009/... Relatorio Alinhar Texto 
Blog - WinDev - Relatorio - 010/... Colocar Totalizador
Blog - WinDev - Relatorio - 011/... Imprime Somente os Selecionados ou Todos da Tabela 
Blog - WinDev - Relatorio - 012/... Break e totalizadores de valores
Blog - WinDev - Relatorio - 013/... Retorno de Relatorio - Result 
Blog - WinDev - Relatorio - 014/... Zerar Totalizador  
Blog - WinDev - Relatorio - 015/... Relatorio - Totalmente Manual
Blog - WinDev - Relatorio - 016/... Linha Zebrada
Blog - WinDev - Relatorio - 017/... Posicoes do Relatorio Alterar
Blog - WinDev - Relatorio - 018/... Alterar Fonte
Blog - WinDev - Relatorio - 019/... Linha Acrescentar
Blog - WinDev - Relatorio - 020/... Relatorio - Gerar Pdf
Blog - WinDev - Relatorio - 021/... Filtro
Blog - WinDev - Relatorio - 022/... Pagina Inicial/Final - Data Hora
Blog - WinDev - Relatorio - 023/... Pular Página Break - IpageEnd()
Blog - WinDev - Relatorio - 024/... Imprimir Tabela com TablePrint
Blog - WinDev - Relatorio - 025/... Relatorio Mudar Orientação
Blog - WinDev - Relatorio - 026/... Mostrar impressoras/Selecionar e Imprimir
Blog - WinDev - Relatorio - 027/... IDestination - Destino do Relatorio
Blog - WinDev - Relatorio - 028/... Iprint - Relatorio Manual
Blog - WinDev - Relatorio - 029/... Dica Tabela e print
Blog - WinDev - Relatorio - 030/... Totalizadores
Blog - WinDev - Relatorio - 031/... Caption Mudar
Blog - WinDev - Relatorio - 032/... Intervalo Bancos
Blog - WinDev - Relatorio - 033/... Manual Linha - IHLine
Blog - WinDev - Relatorio - 034/... Borda - Iborder
Blog - WinDev - Relatorio - 035/... IPageNum
Blog - WinDev - Relatorio - 036/... Numero Com Espaco
Blog - WinDev - Relatorio - 037/... Fonte Seleciona - ISelectFont -
Blog - WinDev - Relatorio - 038/... Linha Mais de 2 - Mais informacoes no Campo
Blog - WinDev - Relatorio - 039/... Copias - IParameter - Icopies
Blog - WinDev - Relatorio - 040/... Pdf - Ler e Extrair Texto
Blog - WinDev - Relatorio - 041/... Imprimir Numero 000.001.500
Blog - WinDev - Relatorio - 042/... IListPrinter - Mostra Impressoras e Lista
Relatorio Inventario com Query - Relatorio 043/...
Relatorio - Sem Template - Dica Pedrosão - Relatorio - 044
Titulo Cabecalho - Alterar - WinDev - Relatorio - 045
Totais - Colocar Totais Abaixo ultima Linha Detalhe - WinDev - Relatorio - 046
Relatorio String Angulo 90% - WinDev - Relatorio - 047/...
Links Pagina e Email no Relatorio - WinDev - Relatorio - 048
PREVIEW TRADUZIR - WINDEV - RELATORIO - 049 - AULA 1211
TABELA E RELATORIO - COMO FAZER - RELATORIO 050 - AULA 1223
MANUAL - RELATORIO TOTALMENTE MANUAL - WINDEV RELATORIO 051 - AULA 1224
MEMORIA RELATORIO - AULA 1257 relatorio 052 tabela memoria
TOTAL BREAK - DICAS 1711 - PUBLICA - WINDEV RELATORIO 053 
GERAR PDF - DICAS 1889 - PUBLICA - WINDEV_23 - RELATORIO 54 - 
DICA 2150 - HANGOUT AO VIVO 10 06 2019 AS 19:00 - MOSTRAR CONSULTORIA COm joao sobre relatorios de como criar
DICAS 2151 WINDEV WEBDEV MOBILE RELATORIOS 59 CONSULTORIA JOAO 08062019
DICAS 2152 WINDEV WEBDEV MOBILE RELATORIOS 60 TOTAL RELATORIO
DICAS 2193 WINDEV WEBDEV MOBILE RELATORIO 61 IPREVIEW iMiniPreview
DICAS 2597 - WINDEV WEBDEV MOBILE - Relatorio 62 - Como eu Fiz Danf no Windev.
AO VIVO FACEBOOK - 2882 20:00 - 06/05/2020 - RELATORIOS COM TABELAS WINDEV











Ao vivo 2596 - 28/12/2019 14:30 - Amarildo - Desenvolvimento e Estudos -...



Doaçao Amarildo Matos - Link da doação: https://streamelements.com/amarildo_matos/tip
Boa Noite

Ao vivo 2596 - 28/12/2019 14:30 - Amarildo - Desenvolvimento e Estudos - Windev

Compartilhe Canal Youtube Amarildo Matos
Amarildo, desde 1990 ensinando Desenvolvimento de Sistemas, tornando
sonhos em realidades


Doação Para Amarildo matos - https://streamelements.com/amarildo_matos/tip
























Ao vivo 2595 - 28/12/2019 08:00 - Amarildo - Desenvolvimento e Estudos -...






Doação Para Amarildo matos - https://streamelements.com/amarildo_matos/tip
























sexta-feira, 27 de dezembro de 2019

Ao vivo 2594 - 27/12/2019 14:00 - Amarildo - Desenvolvimento e Estudos -...






Doação Para Amarildo matos - https://streamelements.com/amarildo_matos/tip
























DICAS 2590 WINDEV WEBDEV MOBILE Uninfe 43 Cancelamento Nota






Doação Para Amarildo matos - https://streamelements.com/amarildo_matos/tip











Doaçao Amarildo Matos - Link da doação: https://streamelements.com/amarildo_matos/tip
Bom Dia

DICAS 2590 WINDEV WEBDEV MOBILE Uninfe 43 Cancelamento Nota

Compartilhe Canal Youtube Amarildo Matos
Amarildo, desde 1990 ensinando Desenvolvimento de Sistemas, tornando
sonhos em realidades.



------------------------------------
Aqui a mensagem de erro quando transmitiu
ERRO:WL call:
Process of 'Global procedure CANCELAMENTO_NFE' (GlobalProcedures.CANCELAMENTO_NFE), line 67

What happened?
Error returned by .NET Framework: 
Uma exceção foi acionada pelo destino de uma chamada.

Error code: 200007
Level: fatal error

Dump of the error of 'wd240net4.dll' module (24.0.73.0).
Identifier of detailed information (.err): 200007
Debugging information:
System.Reflection.TargetInvocationException: Uma exceção foi acionada pelo destino de uma chamada. ---> System.NullReferenceException: Referência de objeto não definida para uma instância de um objeto.
   em Unimake.Business.DFe.Servicos.NFe.RecepcaoEvento.DefinirConfiguracao()
   em Unimake.Business.DFe.Servicos.ServicoBase.Inicializar()
   em Unimake.Business.DFe.Servicos.ServicoBase..ctor(XmlDocument conteudoXML, Configuracao configuracao)
   em Unimake.Business.DFe.Servicos.NFe.ServicoBase..ctor(XmlDocument conteudoXML, Configuracao configuracao)
   em Unimake.Business.DFe.Servicos.NFe.RecepcaoEvento..ctor(XmlDocument conteudoXML, Configuracao configuracao)
   em Unimake.Business.DFe.Servicos.NFe.RecepcaoEvento..ctor(EnvEvento envEvento, Configuracao configuracao)
   --- Fim do rastreamento de pilha de exceções internas ---
   em System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   em System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   em CDotNetType.vpgcrInvokeConstructor(CDotNetType* , ConstructorInfo pclConstructorInfo, CSLevel* pclPile, Int32 nNbParamPile, STOperationDotNet* pstOperation)
   em CDotNetType.vpgcrInvokeConstructor(CDotNetType* , STMethodeDotNet* pstMethode, UInt32* pdwIdentifiant, CSLevel* pclPile, Int32 nNbParamPile, STOperationDotNet* pstOperation)
   em CDotNetInstance.bExecuteConstructeur(CDotNetInstance* , STMethodeDotNet* pstMethode, UInt32* pdwIdentifiant, CSLevel* pclPile, Int32 nNbParamPile, STOperationDotNet* pstOperation)
Additional information:
EIT_PILEWL :
Global procedure CANCELAMENTO_NFE (GlobalProcedures.CANCELAMENTO_NFE), line 67
Click BTN_CANCELAMENTO (WIN_UNINFE.BTN_CANCELAMENTO), line 10
EIT_DATEHEURE : 27/12/2019 09:20:46
EIT_TYPE_WDFILE : <7>
EIT_IDCODE : <458752>

Exemplo: C#

// ---------------------------------------------------------------------------------------------------------
//Enviando XML de eventos
// ---------------------------------------------------------------------------------------------------------

try
{
    var xml = new EnvEvento
    {
        Versao = "1.00",
        IdLote = "000000000000001",
        Evento = new[] {
            new Evento
            {
                Versao = "1.00",
                InfEvento = new InfEvento(new DetEventoCanc
                {
                    NProt = "141190000660363",
                    Versao = "1.00",
                    XJust = "Justificativa para cancelamento da NFe de teste"
                })
                {
                    COrgao = CUF,
                    ChNFe = "41190806117473000150550010000579131943463890",
                    CNPJ = "06117473000150",
                    DhEvento = DateTime.Now,
                    TpEvento = TipoEventoNFe.Cancelamento,
                    NSeqEvento = 1,
                    VerEvento = "1.00",
                    TpAmb = TpAmb
                }
            }
        }
    };

    var configuracao = new Configuracao
    {
        CertificadoDigital = CertificadoSelecionado
    };

    var recepcaoEvento = new RecepcaoEvento(xml, configuracao);
    recepcaoEvento.Executar();
    MessageBox.Show(recepcaoEvento.RetornoWSString);
    MessageBox.Show(recepcaoEvento.Result.XMotivo);

    //Gravar o XML de distribuição se a inutilização foi homologada
    if (recepcaoEvento.Result.CStat == 128) //128 = Lote de evento processado com sucesso
    {
        switch (recepcaoEvento.Result.RetEvento[0].InfEvento.CStat)
        {
            case 135: //Evento homologado com vinculação da respectiva NFe
            case 136: //Evento homologado sem vinculação com a respectiva NFe (SEFAZ não encontrou a NFe na base dela)
            case 155: //Evento de Cancelamento homologado fora do prazo permitido para cancelamento
                recepcaoEvento.GravarXmlDistribuicao(@"c:\testenfe\");
                break;

            default: //Evento rejeitado
                recepcaoEvento.GravarXmlDistribuicao(@"c:\testenfe\");
                break;
        }
    }
}
catch (Exception ex)
{
    CatchException(ex);
}



Exemplo Windev

======================================
PROCEDURE SELECIONA_CERTIFICADO()

o_CertificadoDigital is CertificadoDigital
ver_certificado is Variant=""
IF YesNo("DESEJA SELECIONAR ARQUIVO CERTIFICADO") THEN
    ver_certificado=o_CertificadoDigital.Selecionar()
ELSE
ver_certificado=o_CertificadoDigital.CarregarCertificadoDigitalA1(gs_localizacao_certificado,gs_senha_certificado)
END

RESULT ver_certificado
======================================
PROCEDURE CANCELAMENTO_NFE(sRecebe_NProt is string="",sRecebe_justificativa is string="",recebe_IdLote is int=0, ...
                           nrecebe_COrgao_cuf is int=0,sRecebe_ChNFe is string="",sRecebe_CNPJ is string="", ...
                           nrecebe_tipo_ambiente is int=0,recebe_tipo_evento is int=0,recebe_sequencia_evento is int=0)
                         
                         
retorno_xml is string=""
retorno_cstat is string=""
retorno_xmotivo is string=""

ver_certificado is Variant=SELECIONA_CERTIFICADO()
O_CONFIGURACAO is Configuracao
O_CONFIGURACAO.CertificadoDigital=ver_certificado

O_EnvEvento is EnvEvento
O_EnvEvento.Versao = "1.00"
O_EnvEvento.IdLote = recebe_IdLote // "000000000000001"

o_Evento is Evento
o_Evento.Versao = "1.00"

o_DetEventoCanc is DetEventoCanc
o_DetEventoCanc.NProt=sRecebe_NProt
o_DetEventoCanc.Versao = "1.00"
o_DetEventoCanc.XJust=sRecebe_justificativa

o_InfEvento is InfEvento(o_DetEventoCanc)
o_InfEvento.COrgao = nrecebe_COrgao_cuf //43
o_InfEvento.ChNFe = sRecebe_ChNFe 
o_InfEvento.CNPJ = sRecebe_CNPJ

data_transmissao is DateTime=""
dDate is Date = DateSys()

hora is Time=Now()

data_transmissao..Day=dDate..Day
data_transmissao..Month=dDate..Month
data_transmissao..Year=dDate..Year

data_transmissao..Hour=hora..Hour
data_transmissao..Minute=hora..Minute
data_transmissao..Second=hora..Second

o_InfEvento.DhEvento = data_transmissao
o_InfEvento.TpEvento = recebe_tipo_evento // 110110
o_InfEvento.NSeqEvento = recebe_sequencia_evento // 1
o_InfEvento.VerEvento = "1.00"
o_InfEvento.TpAmb = nrecebe_tipo_ambiente// 2 = homologacao 

WHEN EXCEPTION IN

O_RecepcaoEvento is Unimake.Business.DFe.Servicos.NFe.RecepcaoEvento(O_EnvEvento, O_CONFIGURACAO)
O_RecepcaoEvento.Executar()
retorno_xml=O_RecepcaoEvento.RetornoWSString
retorno_cstat=O_RecepcaoEvento.Result.CStat
retorno_xmotivo=O_RecepcaoEvento.Result.XMotivo

SWITCH retorno_cstat
CASE "128"
Info("128 - LOTE PROCESSADO COM SUCESSO")
CASE "135"
Info("135 - Evento homologado com vinculação da respectiva NFe")
CASE "136"
Info("136 - Evento homologado sem vinculação com a respectiva NFe (SEFAZ não encontrou a NFe na base dela)")
CASE "155"
Info("155 - Evento de Cancelamento homologado fora do prazo permitido para cancelamento")
OTHER CASE
Info("Evento rejeitado")

END

O_RecepcaoEvento.GravarXmlDistribuicao("c:\TEMP\");

DO
retorno_xml="ERRO:"+ExceptionInfo(errFullDetails)

END

RESULT(retorno_xml,retorno_cstat,retorno_xmotivo)
====================================

// btn_ nfe_cancelar_cancelarnota

tipo_ambiente is int=EDT_AMBIENTE
nTipo_evento is int=110110
nSequencia_evento is int=EDT_cancelar_sequencia_Evento
nnumero_lote is int=EDT_cancelar_numero_lote
ncuf is int=EDT_CUF

(EDT_RESULTADO,EDT_RETORNO_CSTAT,EDT_RETORNO_xMotivo)=CANCELAMENTO_NFE(EDT_cancelar_NProt,EDT_cancelar_Justificativa, ...
                                                      nnumero_lote,ncuf, ...
  EDT_cancelar_eChave,EDT_cancelar_cnpj_emitente,tipo_ambiente,nTipo_evento, ...
  nSequencia_evento)
=================================

















Blog - Uninfe - 1/... Como Instalar
Blog - Uninfe - 2/... - Criando wdl nfe
Blog - Uninfe - 3/... - Linkando Wdl Nota 
Blog - Xml - 4/... Xml Cabecalho
Blog - Xml - 5/... Tag Nfe
Blog - Xml - 6/... Tag InfNfe
Blog - Xml - 7/... - Tag Ide - uf
Blog - Xml - 8/... Tag Ide - Pegar Data e Hora Emissão
Blog - Xml - 9 / ... Tag Ide - Finalizar Grupo de Tag 
Blog - Xml - 10 / ... - Tag Emit - Inicio
Blog - Xml - 11 / ... - Tag emit - Emitente Final
Blog - Xml - 12/... - Tag Dest - Destinatario
Blog - Xml - 13/... - Tag - det nItem=1 - Inicio
Blog - Xml - 14/... - Tag - det Prod
Blog - Xml - 15/... - Tag - Imposto 
Blog - Xml - 16/... - Tag Final
Blog - Xml - 17/... - Gerar Xml e Enviar Pasta Validado
Blog - Xml - 18/... - Pegar retorno Xml Validado 
Blog - Xml - 19/... Calculo Digito - Modulo 11 Nfe
Blog - Xml - 20/... Achar a Posicao do Erro Nfe
Blog - Xml - 21/... Transmitir e Pegar Retorno
Blog - Xml - 22/... Imprimir Nfc-e Com Daruma
Blog - Xml - 23/... - Monitorar Pasta Uninfe de Retorno
Blog - Xml - 24/... - Parte 1/... - Uninfe Consulta Cadastro Contribuiente 
Blog - Xml - 25/... - Parte 2/... - Uninfe Consulta Cadastro Contribuiente
Blog - Xml - 26/... - Parte 3/... - Uninfe Consulta Cadastro Contribuiente  
Blog - Xml - 27/... - Parte 4/... - Uninfe Retorno Cadastro Contribuinte  
Blog - Xml - 28/... - Parte 5/... - Uninfe Retorno Contribuinte colocar Xml Edt 
Blog - Xml - 29/... - Parte 6/... - Uninfe Retorno Contribuinte - Pegar Dados Xml 
Blog - Xml - 30/... - Parte 7/... - Uninfe Retorno Contribuinte - Mudando Para Procedure global 
Blog - Xml - 31/... - Parte 8/Final - Uninfe Retorno Contribuiente Final 
INSTALACAO UNINFE - WINDEV UNIMAKE 32 - AULA 1345
Dica 2248. Hangout Vivo - Uninfe Integrando Com Windev - 13 08 2019 20:00
Dica 2251. Hangout Vivo - 15/08 20:00 - Iniciando Uninfe dll com Windev
DICAS 2560 WINDEV WEBDEV MOBILE Uninfe 36 Reiniciando Estudos Dll Uninfe
DICAS 2562 WINDEV WEBDEV MOBILE Uninfe 37 Seleciona Certificado Uninfe
DICAS 2568 WINDEV WEBDEV MOBILE Uninfe 38 Status Servico
DICAS 2572 WINDEV WEBDEV MOBILE Uninfe 39 Consulta Nota
DICAS 2575 WINDEV WEBDEV MOBILE Uninfe 40 Consulta Cadastro
DICAS 2580 - WINDEV WEBDEV MOBILE - Uninfe 41 - Inutilizacao Nota com uninfe dll
DICAS 2584 WINDEV WEBDEV MOBILE Uninfe 42 Consulta Recibo dll
DICAS 2590 WINDEV WEBDEV MOBILE Uninfe 43 Cancelamento Nota









Ao vivo 2593 - 27/12/2019 08:30 - Amarildo - Parte 4 - Fazendo Cancelamento Nf uninfe dll




Doaçao Amarildo Matos - Link da doação: https://streamelements.com/amarildo_matos/tip
Bom Dia

Ao vivo 2593 - 27/12/2019 08:30 - Amarildo - Parte 4 - Fazendo Cancelamento Nf uninfe dll

Compartilhe Canal Youtube Amarildo Matos
Amarildo, desde 1990 ensinando Desenvolvimento de Sistemas, tornando
sonhos em realidades.




Doação Para Amarildo matos - https://streamelements.com/amarildo_matos/tip
























Teste

Teste
teste