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 -
GERAR PDF RELATORIO CLIENTE - 1902 - PRIVADA - WINDEV 23 - RELATORIO 55 -
DICAS 1977 - PUBLICA - WINDEV - RELATORIOS 56 - INTERNAL PROCEDURE
DICAS 2085 - WINDEV - RELATORIO 57 - RELATORIO INTERNO
DICA 2150 - HANGOUT AO VIVO 10 06 2019 AS 19:00 - MOSTRAR CONSULTORIA COm joao sobre relatorios de como criarDICAS 1977 - PUBLICA - WINDEV - RELATORIOS 56 - INTERNAL PROCEDURE
DICAS 2085 - WINDEV - RELATORIO 57 - RELATORIO INTERNO
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