Ir para conteúdo
Fórum Script Brasil

Leonardo Pizeli

Membros
  • Total de itens

    14
  • Registro em

  • Última visita

Sobre Leonardo Pizeli

Leonardo Pizeli's Achievements

0

Reputação

  1. Boa tarde, pessoal, Estou tentando consumir o Status do Serviço da nota fiscal eletronica 2.00 do estado de minas gerais utilizando HTTPRIO e CAPICOM, porém, ao solicitar o serviço uma mensagem é retornada dizendo: erro não catalogado, não foi possível obter a versão. Alguém poderia me ajudar? Segue o código: //Certificado procedure TForm1.HTTPRIO1HTTPWebNode1BeforePost(const HTTPReqResp: THTTPReqResp; Data: Pointer); var Store : IStore; Certs : ICertificates; Cert : ICertificate2; CertContext : ICertContext; PCertContext : PCCERT_CONTEXT; SerialNumber : String; i : Integer; begin SerialNumber := '123456789'; //Número do serial a ser buscado do certificado Store := CoStore.Create; //Repositórios de Certifcados da Máquina Store.Open(CAPICOM_CURRENT_USER_STORE, 'MY', CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED ); //Abre a lista de certificados Certs := Store.Certificates ; //Aloca todos os certificados instalados na máquia i := 0; //loop de procura ao certificado requerido pelo número serial while i < Certs.Count do begin Cert := IInterface( Certs.Item[ i+1 ] ) as ICertificate2; //Cria objeto para acesso a leitura do certificado if UpperCase(Cert.SerialNumber ) = UpperCase(SerialNumber) then //se o número do serial for igual ao que queremos utilizar begin //carrega informações do certificado CertContext := Cert as ICertContext; CertContext.Get_CertContext( Integer( PCertContext ) ); if not (InternetSetOption( Data, 84, PCertContext, Sizeof( CERT_CONTEXT ) )) then begin ShowMessage( 'Falha ao selecionar o certificado.' ); end; i := Certs.Count; //encerra o loop end; i := i + 1; end; end; //enviar mensagem procedure TForm1.Button1Click(Sender: TObject); var IStatusServico : NfeStatusServico; mensagem, dados: String; begin //cabeçalho da mensage(nfeCabMsg), mensagem(nfeDadosMsg) IStatusServico := (HTTPRIO1 as NfeStatusServico); mensagem:='<xml><soap12><soap12><nfeCabecMsg><cUF> 31</cUF><versaoDados>2.00</versaoDados></nfeCabecMsg></soap12>'; dados:='<soap12><nfeStatusServicoNF2> <nfeDadosMsg><consStatServ><tpAmb>2</tpAmb><cUF>31</cUF><xServ>STATUS</xServ></consStatServ></nfeDadosMsg></nfeStatusServicoNF2></soap12></soap12>'; ShowMessage(IStatusServico.nfeStatusServicoNF(mens agem,dados)); end; //outra tentativa de envio e o mesmo erro rocedure TForm1.Button1Click(Sender: TObject); var IStatusServico : NfeStatusServico; mensagem, dados: String; begin //cabeçalho da mensage(nfeCabMsg), mensagem(nfeDadosMsg) IStatusServico := (HTTPRIO1 as NfeStatusServico); mensagem:='<?xml version="1.0" encoding="utf-8"?>'+ '<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">'+ '<soap12:Header>'+ '<nfeCabecMsg xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico2" versao="2.00">'+ '<versaoDados>2.00</versaoDados>'+ '<cUF>31</cUF>'+ '</nfeCabecMsg>'+ '</soap12:Header>'; dados:='<soap12:Body>'+ '<nfeDadosMsg xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico2">'+ '<consStatServ xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00">'+ '<tpAmb>2</tpAmb>'+ '<cUF>31</cUF>'+ '<xServ>STATUS</xServ>'+ '</consStatServ>'+ '</nfeDadosMsg>'+ '</soap12:Body>'+ '</soap12:Envelope>'; ShowMessage(IStatusServico.nfeStatusServicoNF(mens agem,dados)); end;
  2. Bom é o seguinte acho eu que você tem que verificar se o banco que você esta utilizando aceita o comando round esse comando você pode colocar ele no codigo (Delphi) ao invés de setar no SQL. outra coisa select round(sum(pag_valor),2) Valor você esta esquecendo do as ai ficaria: select sum(pag_valor) as Valor
  3. Jhonas esses links não precedem a minha dúvida. Obrigado assim mesmo. Qualquer outra contribuição sera bem vinda.
  4. Boa tarde, pessoal, Estou precisando utilizar NFe e venho aqui pedir vocês o que podem me indicar a fazer para que eu possa integrar em meus projetos NFe. Seria melhor desenvolver a aplicação? Se sim quais a dificuldades irei infrentar e como soluciona-las? Se não qual o melhor sistema de terceiros que posso usar?
  5. Boa tarde, pessoal, Estou com o seguinte problema: Em um ClientDataSet virtual quando defino Currency True para algum campo deste ClientDataSet e um DBGrid recebendo o DataSource (ligado ao Client) no Grid o campo definido com o currency fica sem o valor real do campo mostrando umas barras ao invés do valor. Alguém sabe como eu poderia definir o currency para os campos em um ClientDataSet virtual? Lembrando que isso ocorre no Delphi 2009. Desde já agradeço!
  6. Obrigado pelas dicas vou verificar. Agora como que eu coloco título no relatório?
  7. Boa tarde pessoal, Estou com o seguinte problema: Meus relatórios não imprimem em impressoras de modelo HP 1005 (1020, etc), porém, em outros modelos a impressão funciona perfeitamente. Bom eu utilizo o Delphi 7 juntamente com o rave 5.0. Acontece que quando mando imprimir na 1005 a impressão vai para tray da impressora e depois de alguns segundos a impressão é excluida normalmente como se estivesse imprimido. Com algumas pesquisadas na net vi que algumas pessoas tiveram o mesmo problema utilizando o Quick Report e que a solução foi dar um nome para o relatório. A questão dar um nome é porque quando é enviado a impressão ela chega na impressora sem nome, chega somente arquivo, isso se verificarmos a impressão diretamente na impressora. Exemplo se você imprimi um arquivo word esse chega na tray da impressora com o nome de arquivo.doc. Já nos meus relatórios Rave não vai com nome de arquivo para a impressora e sim somente o documento de impressão com nome em branco. Outra coisa notei que quando eu imprimo algo no word por exemplo a impressora imprimi meus relatórios rave normalmente. Se alguém puder me ajudar agradeço!
  8. Obriagado pela dica vou dar uma pesquisada.
  9. Pessoal, gostaria de fazer uma conexão de uma pagina PHP armazenada em um servidor que conectasse com um banco .gdb (interbase) em minha máquina cliente. alguém pode me ajudar?
  10. alguém sabe se é possivel ou até possui algo para bloquear pastas do windows através do delphi? Desde já agradeço a colaboração.
  11. defina o tamanho da folha como Custom Size e espefique exatamente o tamanho que deseja ou use um dos padrões de folha com tamanho pequeno. use de preferencia fonte arial na impressora lx 300 ... caso a impressão não saia como deve ser, instale o drive da RX 80 abraço Obrigado pela dica vou testar.
  12. alguém tem alguma dica sobre como posso imprimir na Epson LX 300 (impressão de recibo pequeno) atraves do Rave Reports e delphi.
×
×
  • Criar Novo...