-
Posts
1,401 -
Joined
-
Last visited
-
Days Won
30
Everything posted by edutraini
-
Bom dia Se nao me engano o mrboleto usa comandos harupdf se for isso tem esse HPDF_SetPassword() Nunca usei da uma pesquisada depois me fala Abraço
-
exatamente a mesma situacao
-
Bom dia Theotokos Deu certo na verdade em vez de fechar o programa ele fecha a conexao do usuario que esta aberto e abre a tela para logar de novo ou seja usei a sua ideia Obrigado
-
Boa tarde Pessoal, Será que existe alguma forma de fechar o sistema automaticamente por falta de uso Tenho uma situação que o usuario entra no sistema e por algum motivo, deixa o sistema aberto no seu usuario. Dessa forma outro usuario acaba usando sua senha Preciso achar uma solução para caso o sistema nao for usado por algum tempo ele feche Obrigado
-
Bom dia, Pessoal Estou colocando esse tópico aqui no forum pois estão surgindo algumas informações sobre mudança no calculo do Difal Pelo que sei o difal somente e calculado quando a venda e feita para outro estado e que o cliente seja 9-Não contribuinte do Icms Surgiram algumas informações que o difal tem que ser calculado quando o emitente da nota for uma industria e o cliente for usar a mercadoria para consumo próprio, que também seja calculado o difal. Caso for para revenda ai não precisa. Alguém aqui do forum tem conhecimento fiscal para me ajudar. Obrigado
-
Bom dia uma outra opcao que uso e instalar um VM Virtual box com um servidor de ftp
-
sistema de Mercado Autônomo, com seus periféricos.
edutraini replied to edutraini's topic in Programação
E Isso mesmo -
Bom dia, Pessoal Alguem do grupo trabalha com esse tipo de Mercado
-
Bom dia Um Feliz 2024 com muita paz e saude para todos. Conforme dica do Kapi estudei a ferramenta HARUPDF e resolvi todos os meus problemas de Relatorios. Agora gero tudo direto no pdf, acabou meu Rpv Não preciso mais instalar nada na maquina do cliente. Obrigado a todos
-
Bom dia Kapi Obrigado pelo conteudo Depois de olhar tudo o unico comando que achei que pode ajudar HPDF_Page_TextRect
-
Bom dia Pessoal Eu uso harupdf para gerar relatorio em pdf Alguem poderia me ajudar quando uso o comando HPDF_Page_TextOut como faz para jogar o conteudo alinhado para direita ou esquerda Exemplo HPDF_Page_TextOut(page, 340, page_height - nLinDet,trans(cotiimp->unitario,"@E 99,999.99")) Obrigado
-
Bom dia Pessoal eu uso esse comando FWSavePreviewToPDF( oPrncot, cFilePdf , .F. ) para gerar o relatorio direto em pdf Funciona perfeitamente, somente quando uso na horizontal oPrncot:SetLandScape() //->Horizontal(Paisagem) a funcao nao consegue gerar o documento corretamente Alguem sabe me dizer se preciso passar algum parametro na FWSavePreviewtoPDf para ele entender
-
Bom dia, Pessoal Agora com a mudança para o portal nacional das notas de serviços alguem sabe me dizer se tem alguma api para usar no programa tipo flexdocs para emissao da nota Obrigado
-
Bom dia resolvi dessa forma nao sei se esta certo mImpressoraPadrao:=PrnGetName() mImpressora:=PrnGetName() PRINTER oPrnPed to mImpressora NAME "Pedido Nro "+str(pedlst->nropedido,8) PREVIEW MODAL apos a impressao SetDefaultPrinter( mImpressoraPadrao ) PRINTER oPrncot to mImpressoraPadrao oPrncot:End()
-
Pessoal boa noite Uso essa classe para imprimir relatorio usando o comando PRINTER oPrnPed NAME "Pedido Nro "+str(pedlst->nropedido,8) PREVIEW MODAL no Preview meu cliente seleciona a impressora e que fica padrao toda hora que abre o preview novamente Gostaria que sempre viesse a impressora padrao do Windows Alguem poderia me dar uma dica Obrigado
-
Boa tarde Pessoal o Problema estava na Locaweb e respondendo ao marcioe faço o acesso via ip Uma solucao interessante a fazer o acesso via TSplus direto no servidor evita esses problemas.
-
Atualizando as informacoes executei um comando no windows que um amigo de hardware me passou chamado tracert e o ip que ele verifica se a conexao se esgota no caminho e dessa forma vc perde velocidade Na Vivo ele esgota varias vezes ja na Net tudo normal isso explica porque os clientes que usam a Vivo estao com o sistema lento
-
Bom dia Pessoal Desde semana passada os clientes estao reclamando de lentidao no meu sistema em nuvens Todos esses clientes usam internet da Vivo, alguem esta sabendo de alguma coisa.
-
Boa tarde Pessoal Uso flexdocs com a rotina do gilmer Gostaria de saber se existe alguma forma de gravar o protocolo de cancelamento da nota fiscal direto no xml da nota que foi emitida Hoje quando cancelo uma nota e gerado um xml do cancelamento gerando dois arquivo um da nota chave-nfe.xml e outra chave-can.xml Sera que esse cancelamento tem como gravar dentro do arquivo da nota pois os contadores estao reclamando evitando assim que vai uma nota para contabilidade sem o protocolo de cancelamento
-
Bom dia Kapi Obrigado pela indicação vc pode passar o contato dele por favor Obrigado
-
boa tarde, Pessoal Alguem poderia me dar uma dica de alguma ferramenta para emitir nota fiscal de serviço da prefeitura de Sao Paulo Obrigado
-
Bom dia Joao Ja passei seu contato Abraço
-
Bom dia, Pessoal Um amigo me solicitou um programa para controle de Petshop caso alguem tenha interesse passo o contato Obrigado
-
Bom dia Pessoal Preciso ter acesso ao webservice Datasus para pegar o CNS de varios beneficiarios, pois, a ANS passou a validar esse nro.......preciso saber como fazer para solicitar Estou tentando me cadastrar dentro do site mas apos digitar todos os dados da empresa junto com o certificado o site do datasus nem responder Alguem que tem experiencia nisso poderia me ajudar Obrigado
-
Bom dia Eu achei essa rotina em meus arquivos Nunca usei mas derrepente pode ajudar function pacognre() // Parametrizacao de uso cPath := cFilePath( GetModuleFileName( GetInstance() ) ) // cPathNFE := VerifyINI( "PATHS", "PathNFE" , cPath + "\NF-e\remessa\NFE" , cPath + "\" + "nfw.ini", .f.) cPathGNRE := VerifyINI( "PATHS", "PathGNRE" , cPath + "\NF-e\remessa\GNRE" , cPath + "\" + "nfw.ini", .f.) // Dados da empresa cClNome := VerifyINI( "EMPRESA", "Nome" , "5VOLUTION.COM" , cPath + "\" + "nfw.ini", .f. ) cClEndereco := VerifyINI( "EMPRESA", "Endereco", "R Des M C Costa Leite, 25", cPath + "\" + "nfw.ini", .f. ) cClBairro := VerifyINI( "EMPRESA", "Bairro" , "Pirituba" , cPath + "\" + "nfw.ini", .f. ) cClCidade := VerifyINI( "EMPRESA", "Cidade" , "Sao Paulo" , cPath + "\" + "nfw.ini", .f. ) cClCEP := VerifyINI( "EMPRESA", "CEP" , "05171-560" , cPath + "\" + "nfw.ini", .f. ) cClEstado := VerifyINI( "EMPRESA", "Estado" , "SP" , cPath + "\" + "nfw.ini", .f. ) cClCNPJ := VerifyINI( "EMPRESA", "CNPJ" , "18.066.611/0001-06" , cPath + "\" + "nfw.ini", .f. ) cClInscr := VerifyINI( "EMPRESA", "IE" , "142.365.346.110" , cPath + "\" + "nfw.ini", .f. ) cClIM := VerifyINI( "EMPRESA", "IM" , "4.743.049-4" , cPath + "\" + "nfw.ini", .f. ) // cCodUF := VerifyINI( "NFELETRONICA", "cCodUF" , "35" , cPath + "\" + "nfw.ini", .f.) oGNRE := tGNRE():new() oGNRE:nLote := 0 // Se numero de lote for igual a ZERO sera gerada uma guia unica, o contratio gera lote com varias guias oGNRE:Homologacao := .t. // Se homologacao direciona para webservices especificos oGNRE:c01_UfFavorecida := 26 // Contém a sigla da UF favorecida. Campo com 2 dígitos. (Ver ANEXO 1, na aba 'Anexos') oGNRE:c02_receita := 1000099 // Contém o código da receita. Campo numérico com 6 dígitos. (Consultar na aba 'Regras de Preenchimento') oGNRE:c25_detalhamentoReceita := 10101010 // Contém o código do detalhamento da receita. Campo numérico. A quantidade de dígitos corresponde a quantidade de dígitos do código. (Consultar na aba 'Regras de Preenchimento'). oGNRE:c26_produto := "TESTE DE PROD" // Contém o código do produto. Campo numérico. A quantidade de dígitos corresponde a quantidade de dígitos do código. (Consultar na aba 'Regras de Preenchimento'). oGNRE:c27_tipoIdentificacaoEmitente := 1 // Contém o código do tipo de identificação do contribuinte emitente (Responsável pelo Pagamento do Tributo). Campo numérico com 1 dígito. (Ver ANEXO 2, na aba 'Anexos'). Caso a identificação seja pela inscrição estadual, esse campo e sua tag poderão ser omitidos. oGNRE:c03_idContribuinteEmitente := 41819055000105 // Contém o número do documento de identificação do contribuinte emitente. O CPF/ CNPJ não deverá conter espaços, pontos ou traços e apenas um documento poderá ser colocado no arquivo. Caso a identificação seja pela inscrição estadual, esse campo e sua tag poderão ser omitidos. Caso a identificação seja pelo CNPJ, a tag de CPF e de Inscrição Estadual poderão ser omitidas. Caso a identificação seja pelo CPF, os campos e as tags de CNPJ e de Inscrição Estadual poderão ser omitidos. // Exemplos: // CNPJ : <CNPJ>11111111111111</CNPJ> // CPF : <CPF>11111111111</CPF> oGNRE:c28_tipoDocOrigem := 10 // Contém o código do tipo de documento de origem. Campo numérico. A quantidade de dígitos corresponde a quantidade de dígitos do código. (Consultar na aba 'Regras de Preenchimento'). Caso a receita não exija documento de origem, esse campo e sua tag poderão ser omitidos. oGNRE:c04_docOrigem := 5656 // Contém o número contido no documento de origem. Campo numérico sem espaços, traços, pontos ou vírgulas. A quantidade de dígitos corresponde a quantidade de dígitos do número. Caso a receita não exija documento de origem, esse campo e sua tag poderão ser omitidos. oGNRE:c06_valorPrincipal := 10.99 // Contém o valor original da guia. Digitar apenas números. Usar ponto (".") como separador de decimal, e este deve ter 2 números. Caso a receita não exija valor principal, esse campo e sua tag poderão ser omitidos. oGNRE:c10_valorTotal := 12.52 // Contém valor total da guia (valor original + encargos). Digitar apenas números. Usar ponto (".") como separador de decimal, e este deve ter 2 números. Caso a receita não exija valor total, esse campo e sua tag poderão ser omitidos. Para calcular os encargos, procurar informações na Sefaz do Estado da UF favorecida. oGNRE:c14_dataVencimento := "2015-05-01" // Contém a data que o contribuinte deve pagar o tributo de acordo com a legislação de cada UF. Formato: AAAA-MM-DD. oGNRE:c15_convenio := 546456 // Contém o número do convênio. Sem espaços, traços, pontos ou vírgulas. Este campo não é obrigatório e o tamanho do campo corresponde ao número do convênio. No caso de não ter essa informação, esse campo e sua tag poderão ser omitidos. oGNRE:c16_razaoSocialEmitente := "GNRE PHP EMITENTE" // Contém o nome da razão social do contribuinte emitente. No caso da identificação do contribuinte ser por inscrição estadual, esse campo e sua tag poderão ser omitidos. oGNRE:c17_inscricaoEstadualEmitente := 56756 // Contém a inscrição estadual do contribuinte emitente na UF favorecida. Campo numérico sem espaços ou traços. Caso seja inscrito na UF Favorecida, preencher este campo. Caso contrário, esse campo e sua tag poderão ser omitidos. oGNRE:c18_enderecoEmitente := "Queens St" // Contém o endereço do contribuinte emitente. No caso da identificação do contribuinte ser por inscrição estadual, esse campo e sua tag poderão ser omitidos. oGNRE:c19_municipioEmitente := 5300108 // Contém o código do município de localização do contribuinte emitente. Campo numérico. (Consultar no site do IBGE). O IBGE informará o código do município no formato "EEmmmmd". Tirar os 2 primeiros números que indicam o número do Estado e só colocar os 5 números restantes, ficando no formato "mmmmd". // A cidade Recife tem o código 2611606, você tirará os dígitos "26" e colocará no arquivo de lote apenas os dígitos "11606". oGNRE:c20_ufEnderecoEmitente := "DF" // Contém a UF de localização do contribuinte emitente. Campo com 2 dígitos. (Ver ANEXO 1, na aba 'Anexos'). No caso da identificação do contribuinte ser por inscrição estadual, esse campo e sua tag poderão ser omitidos. oGNRE:c21_cepEmitente := "08215917" // Contém o CEP do contribuinte emitente com 8 dígitos. Digitar apenas números. Esse campo não é obrigatório. No caso da identificação do contribuinte ser por inscrição estadual, esse campo e sua tag poderão ser omitidos. oGNRE:c22_telefoneEmitente := 1199999999 // Contém o telefone do contribuinte emitente. Colocar o DDD e o número do telefone. Digitar apenas números. Esse campo não é obrigatório. No caso de não ter essa informação, esse campo e sua tag poderão ser omitidos. Onde: 11 => DDD e 22222222 => Telefone oGNRE:c34_tipoIdentificacaoDestinatario := 1 // Contém o código do tipo de identificação do contribuinte destinatário. Campo numérico com 1 dígito. (Ver ANEXO 2, na aba 'Anexos'). Caso a receita não exija destinatário, esse campo e sua tag poderão ser omitidos. oGNRE:c35_idContribuinteDestinatario := 86268158000162 // Contém o número do documento de identificação do contribuinte destinatário. O CPF/ CNPJ não deverá conter espaços, pontos ou traços e apenas um documento poderá ser colocado no arquivo. Caso a receita não exija destinatário, esse campo e sua tag poderão ser omitidos. oGNRE:c36_inscricaoEstadualDestinatario := 10809181 // Contém a inscrição estadual do contribuinte destinatário. Campo numérico sem espaços ou traços. Caso seja inscrito na UF Favorecida, preencher este campo. Caso a receita não exija destinatário, esse campo e sua tag poderão ser omitidos. oGNRE:c37_razaoSocialDestinatario := "RAZAO SOCIAL GNRE PHP DESTINATARIO" // Contém o nome da firma ou a razão social do contribuinte destinatário. Caso a receita não exija destinatário, esse campo e sua tag poderão ser omitidos. oGNRE:c38_municipioDestinatario := 2702306 // Contém o município de localização do contribuinte destinatário. Campo numérico. (Consultar no site do IBGE). O IBGE informará o código do município no formato "EEmmmmd". Tirar os 2 primeiros números que indicam o número do Estado e só colocar os 5 números restantes, ficando no formato "mmmmd". oGNRE:c33_dataPagamento := "2015-11-30" // Contém a data que o contribuinte irá pagar o tributo.Formato: AAAA-MM-DD. //oGNRE:c05_referencia := "" // Contém as informações do período de referência. Caso a receita não exija período de referência, esse campo e sua tag poderão ser omitidos. oGNRE:mes := "05" // Contém o mês de referência da apuração. Campo numérico com 2 dígitos. (Ver ANEXO 3, na aba 'Anexos'). Caso a receita não exija mês de período de referência, esse campo e sua tag poderão ser omitidos. oGNRE:ano := 2015 // Contém o ano de referência da apuração. Campo numérico com 4 dígitos. Caso a receita não exija ano de período de referência, esse campo e sua tag poderão ser omitidos. oGNRE:parcela := 2 // Contém o número da parcela do débito. Campo numérico com tamanho máximo de 3 dígitos. Caso a receita não exija parcela no período de referência, esse campo e sua tag poderão ser omitidos. oGNRE:periodo := 2014 // Contém o código do período. Campo numérico. A quantidade de dígitos corresponde a quantidade de dígitos do código. (Consultar na aba 'Regras de Preenchimento'). Caso a receita não exija código do período, esse campo e sua tag poderão ser omitidos // Nao importantes //c39_camposExtras := "" // Lista de campos extras. Poderá ter no máximo 3 campos extras por guia. Caso a receita não exija campos extras, esse campo e sua tag poderão ser omitidos. //oGNRE:codigo := 0 // Contém o código do campo extra. Campo numérico. A quantidade de dígitos corresponde a quantidade de dígitos do código. (Consultar na aba 'Regras de Preenchimento'). Caso a receita não exija campos extras, esse campo e sua tag poderão ser omitidos. //oGNRE:tipo := "" // Contém o tipo do campo extra. Campo com um caracter. (Consultar na aba 'Regras de Preenchimento'). Caso a receita não exija campos extras, esse campo e sua tag poderão ser omitidos. //oGNRE:valor := 0.00 // Contém o valor solicitado no campo extra. Se for do tipo Data 'D', o formato é: AAAA-MM-DD. Se for do tipo Númerico 'N', usar ponto (".") como separador de decimal, e este deve ter 2 números. //oGNRE:c42_identificadorGuia := 0 // Contém o identificador da guia no lote. O valor deste campo deverá ser informado pelo contribuinte para a identificação da guia. Esta informação é opcional e deve conter apenas números (até 10 posições). // $lote = new Lote(); // $lote->addGuia($guia); oGNRE:AdicionaGuia() oGNRE:Serializa() ? oGNRE:MostraXML() oGNRE:Enviar() return .t. CREATE CLASS tGNRE VAR nLote VAR cFileName VAR Homologacao VAR aGNRERegistros VAR aGNRERegExtras VAR c01_UfFavorecida VAR c02_receita VAR c25_detalhamentoReceita VAR c26_produto VAR c27_tipoIdentificacaoEmitente VAR c03_idContribuinteEmitente VAR c28_tipoDocOrigem VAR c04_docOrigem VAR c06_valorPrincipal VAR c10_valorTotal VAR c14_dataVencimento VAR c15_convenio VAR c16_razaoSocialEmitente VAR c17_inscricaoEstadualEmitente VAR c18_enderecoEmitente VAR c19_municipioEmitente VAR c20_ufEnderecoEmitente VAR c21_cepEmitente VAR c22_telefoneEmitente VAR c34_tipoIdentificacaoDestinatario VAR c35_idContribuinteDestinatario VAR c36_inscricaoEstadualDestinatario VAR c37_razaoSocialDestinatario VAR c38_municipioDestinatario VAR c33_dataPagamento //VAR c05_referencia VAR mes VAR ano VAR parcela VAR periodo // METHOD New METHOD AdicionaGuia METHOD Serializa METHOD MostraXML // METHOD Enviar METHOD Consulta END CLASS METHOD New( cGNREFileName ) CLASS tGNRE if cGNREFileName == nil ::cFileName := "GNRE.TXT" else ::cFileName := cGNREFileName endif ::nLote := 0 ::Homologacao := .f. ::aGNRERegistros := {} ::aGNRERegExtras := {} RETURN( self ) METHOD AdicionaGuia() CLASS tGNRE aadd( ::aGNRERegistros, { ::c01_UfFavorecida ,; ::c02_receita ,; ::c25_detalhamentoReceita ,; ::c26_produto ,; ::c27_tipoIdentificacaoEmitente ,; ::c03_idContribuinteEmitente ,; ::c28_tipoDocOrigem ,; ::c04_docOrigem ,; ::c06_valorPrincipal ,; ::c10_valorTotal ,; ::c14_dataVencimento ,; ::c15_convenio ,; ::c16_razaoSocialEmitente ,; ::c17_inscricaoEstadualEmitente ,; ::c18_enderecoEmitente ,; ::c19_municipioEmitente ,; ::c20_ufEnderecoEmitente ,; ::c21_cepEmitente ,; ::c22_telefoneEmitente ,; ::c34_tipoIdentificacaoDestinatario ,; ::c35_idContribuinteDestinatario ,; ::c36_inscricaoEstadualDestinatario ,; ::c37_razaoSocialDestinatario ,; ::c38_municipioDestinatario ,; ::c33_dataPagamento ,; ::mes ,; ::ano ,; ::parcela ,; ::periodo }) //aadd( ::aGNRERegExtras, { ::c39_camposExtras ,; // ::codigo ,; // ::tipo ,; // ::valor ,; // ::c42_identificadorGuia }) return ::aGNRERegistros METHOD Serializa() CLASS tGNRE local aGNRE := ::aGNRERegistros local nGNRE := fCreate( ::cFileName ) cResultado := "" // [<?xml version="1.0" encoding="utf-8"?>] + CRLF if ::nLote > 0 //cResultado := cResultado + [ <TLote_GNRE xmlns="http://www.gnre.pe.gov.br">] + CRLF //cResultado := cResultado + [ <guias>] + CRLF // endif FOR I = 1 TO LEN(aGNRE) //cResultado := cResultado + [ <guias>] + CRLF cResultado := cResultado + [ <TDadosGNRE>] + CRLF cResultado := cResultado + [ <c01_UfFavorecida>] + alltrim(str(aGNRE[01])) + [</c01_UfFavorecida>] + CRLF cResultado := cResultado + [ <c02_receita>] + alltrim(str(aGNRE[02])) + [</c02_receita>] + CRLF cResultado := cResultado + [ <c25_detalhamentoReceita>] + alltrim(str(aGNRE[03])) + [</c25_detalhamentoReceita>] + CRLF cResultado := cResultado + [ <c26_produto>] + alltrim(aGNRE[04]) + [</c26_produto>] + CRLF cResultado := cResultado + [ <c27_tipoIdentificacaoEmitente>] + alltrim(str(aGNRE[05])) + [</c27_tipoIdentificacaoEmitente>] + CRLF cResultado := cResultado + [ <c03_idContribuinteEmitente>] + CRLF cResultado := cResultado + [ <CNPJ>] + alltrim(str(aGNRE[06])) + [</CNPJ>] + CRLF cResultado := cResultado + [ </c03_idContribuinteEmitente>] + CRLF cResultado := cResultado + [ <c28_tipoDocOrigem>] + alltrim(str(aGNRE[07])) + [</c28_tipoDocOrigem>] + CRLF cResultado := cResultado + [ <c04_docOrigem>] + alltrim(str(aGNRE[08])) + [</c04_docOrigem>] + CRLF cResultado := cResultado + [ <c06_valorPrincipal>] + alltrim(str(aGNRE[09],2)) + [</c06_valorPrincipal>] + CRLF cResultado := cResultado + [ <c10_valorTotal>] + alltrim(str(aGNRE[10],2)) + [</c10_valorTotal>] + CRLF cResultado := cResultado + [ <c14_dataVencimento>] + alltrim(aGNRE[11]) + [</c14_dataVencimento>] + CRLF cResultado := cResultado + [ <c15_convenio>] + alltrim(str(aGNRE[12])) + [</c15_convenio>] + CRLF cResultado := cResultado + [ <c16_razaoSocialEmitente>] + alltrim(aGNRE[13]) + [</c16_razaoSocialEmitente>] + CRLF cResultado := cResultado + [ <c17_inscricaoEstadualEmitente>] + alltrim(str(aGNRE[14])) + [</c17_inscricaoEstadualEmitente>] + CRLF cResultado := cResultado + [ <c18_enderecoEmitente>] + alltrim(aGNRE[15]) + [</c18_enderecoEmitente>] + CRLF cResultado := cResultado + [ <c19_municipioEmitente>] + alltrim(str(aGNRE[16])) + [</c19_municipioEmitente>] + CRLF cResultado := cResultado + [ <c20_ufEnderecoEmitente>] + alltrim(aGNRE[17]) + [</c20_ufEnderecoEmitente>] + CRLF cResultado := cResultado + [ <c21_cepEmitente>] + alltrim(aGNRE[18]) + [</c21_cepEmitente>] + CRLF cResultado := cResultado + [ <c22_telefoneEmitente>] + alltrim(str(aGNRE[19])) + [</c22_telefoneEmitente>] + CRLF cResultado := cResultado + [ <c34_tipoIdentificacaoDestinatario>] + alltrim(str(aGNRE[20])) + [</c34_tipoIdentificacaoDestinatario>] + CRLF cResultado := cResultado + [ <c35_idContribuinteDestinatario>] + CRLF cResultado := cResultado + [ <CNPJ>] + alltrim(str(aGNRE[21])) + [</CNPJ>] + CRLF cResultado := cResultado + [ </c35_idContribuinteDestinatario>] + CRLF cResultado := cResultado + [ <c36_inscricaoEstadualDestinatario>] + alltrim(str(aGNRE[22])) + [</c36_inscricaoEstadualDestinatario>] + CRLF cResultado := cResultado + [ <c37_razaoSocialDestinatario>] + alltrim(aGNRE[23]) + [</c37_razaoSocialDestinatario>] + CRLF cResultado := cResultado + [ <c38_municipioDestinatario>] + alltrim(str(aGNRE[24])) + [</c38_municipioDestinatario>] + CRLF cResultado := cResultado + [ <c33_dataPagamento>] + alltrim(aGNRE[25]) + [</c33_dataPagamento>] + CRLF cResultado := cResultado + [ <c05_referencia>] + CRLF cResultado := cResultado + [ <mes>] + alltrim(aGNRE[26]) + [</mes>] + CRLF cResultado := cResultado + [ <ano>] + alltrim(str(aGNRE[27])) + [</ano>] + CRLF cResultado := cResultado + [ <parcela>] + alltrim(str(aGNRE[28])) + [</parcela>] + CRLF cResultado := cResultado + [ <periodo>] + alltrim(str(aGNRE[29])) + [</periodo>] + CRLF cResultado := cResultado + [ </c05_referencia>] + CRLF /* cResultado := cResultado + [ <c39_camposExtras>] cResultado := cResultado + [ <campoExtra>] cResultado := cResultado + [ <codigo>16</codigo>] cResultado := cResultado + [ <tipo>T</tipo>] cResultado := cResultado + [ <valor>1200012</valor>] cResultado := cResultado + [ </campoExtra>] cResultado := cResultado + [ <campoExtra>] cResultado := cResultado + [ <codigo>15</codigo>] cResultado := cResultado + [ <tipo>D</tipo>] cResultado := cResultado + [ <valor>2015-03-02</valor>] cResultado := cResultado + [ </campoExtra>] cResultado := cResultado + [ <campoExtra>] cResultado := cResultado + [ <codigo>10</codigo>] cResultado := cResultado + [ <tipo>T</tipo>] cResultado := cResultado + [ <valor>17.21</valor>] cResultado := cResultado + [ </campoExtra>] cResultado := cResultado + [ </c39_camposExtras>] */ cResultado := cResultado + [ </TDadosGNRE>] + CRLF NEXT if ::nLote > 0 // //cResultado := cResultado + [ </guias>] + CRLF //cResultado := cResultado + [ </TLote_GNRE>] + CRLF endif fWrite( nGNRE, cResultado, LEN(cResultado) ) fClose( nGNRE ) return cResultado METHOD MostraXML() CLASS tGNRE return MemoRead( ::cFileName ) METHOD Enviar() CLASS tGNRE LOCAL cResultado cURL := iif( ::Homologacao, "http://www.gnre-he.sp.gov.br", "http://www.gnre.sp.gov.br" ) // cResultado := [<?xml version="1.0" encoding="utf-8"?>] // cResultado := cResultado + [<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">] + CRLF cResultado := cResultado + [ <soap12:Header>] + CRLF cResultado := cResultado + [ <gnreCabecMsg xmlns="http://www.gnre.pe.gov.br/wsdl/processar">] + CRLF cResultado := cResultado + [ <versaoDados>1.00</versaoDados>] + CRLF cResultado := cResultado + [ </gnreCabecMsg>] + CRLF cResultado := cResultado + [ </soap12:Header>] + CRLF cResultado := cResultado + [ <soap12:Body>] + CRLF cResultado := cResultado + [ <gnreDadosMsg xmlns="http://www.gnre.pe.gov.br/webservice/GnreLoteRecepcao">] + CRLF cResultado := cResultado + [ <TLote_GNRE xmlns="] + cURL + [">] + CRLF cResultado := cResultado + [ <guias>] + CRLF cResultado := cResultado + ::MostraXML() + CRLF cResultado := cResultado + [ </guias>] + CRLF cResultado := cResultado + [ </TLote_GNRE>] + CRLF cResultado := cResultado + [ </gnreDadosMsg>] + CRLF cResultado := cResultado + [ </soap12:Body>] + CRLF cResultado := cResultado + [</soap12:Envelope>] + CRLF // //?"Enviar", cResultado cResultado := GNREWebService( cResultado, "POST", cURL, "" ) // cSoapAction ) return cResultado METHOD Consulta( cProtocolo, cUsuario, cSenha, cCNPJ, cCategoria ) CLASS tGNRE LOCAL cResultado // cResultado := [<?xml version="1.0" encoding="utf-8"?>] cResultado := "" // return cResultado Function GNREWebService( cXMLFile, cMethod, cURL, cSoapAction ) DEFAULT cMethod := "POST", cSoapAction := cURL DEFAULT cURL := "http://www.gnre.pe.gov.br/wsdl/processar" oEDXSend:= TOLEAuto():New( "Microsoft.XMLHTTP" ) oEDXSend:Open( cMethod, cURL, .F. ) //oEDXSend:setrequestheader( "SOAPAction", cSoapAction ) //oEDXSend:setrequestheader( "content-type", "text/xml" ) oEDXSend:Send( cXMLFile ) cResultado := oEDXSend:ResponseText() return cResultado function VerifyINI( _section_, _entry_, _var_, _inifile_, _grava_ ) oIni := TIni():New( _inifile_ ) if _grava_ = .t. oIni:Set( _section_, _entry_, _var_ ) endif return oIni:Get( _section_, _entry_, _var_, _var_ ) function Consulta_sintegra() local oDlglink,oDlgxml *cRioGrandeSul := ( "https://www.sefaz.rs.gov.br/NFE/NFE-CCC.aspx" ) cRioGrandeSul := ( "https://dfe-portal.svrs.rs.gov.br/BPE/CCC") MsgRun( ( "Conectando a Página da SEFAZ. " ), ; "Conectando a Página da SEFAZ. Aguarde... ", ; { || ShellExecute(GetActiveWindow(),"open",'"'+cRioGrandeSul+'"', 0 ) } ) * REDEFINE BUTTONBMP oRioGrandeSul ID 320 OF oDlgLink ; * ACTION( ( MsgRun( ( "Conectando a Página da SEFAZ. " ), ; * "Conectando a Página da SEFAZ. Aguarde... ", ; * { || ShellExecute(GetActiveWindow(),"open",'"'+cRioGrandeSul+'"', 0 ) } ) ) ) * * oRioGrandeSul:cToolTip := OemToAnsi( "Sefaz do Estado do Rio Grande do Sul" ) * cValidSefazRS := ( "https://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx" ) * * REDEFINE BUTTONBMP oValidSefazRS ID 301 OF oDlgXml WHEN( lLigaBtnDesab ) ; * ACTION( ShellExecute(GetActiveWindow(),"open",'"'+cValidSefazRS+'"', 0 ) ) * * oValidSefazRS:cToolTip := OemToAnsi( "Validador de Arquivos *.XML da SEFAZ/RS" ) retur(.t.) // http://www.odaircontador.cnt.br/2015/12/tabela-do-fundo-de-combate-pobreza-icms.html // https://blog.quantosobra.com.br/emitir-nota-fiscal-passo-passo-como-emitir-uma-nota-fiscal-eletronica/