Ir para conteúdo
  • Cadastre-se

johnbh3

Membros
  • Total de ítens

    712
  • Registro em

  • Última visita

Tudo que johnbh3 postou

  1. Pessoal Neste topico Parece que tinha solução para API do banco inter. Vejo o site dos cara eles fizeram favor de mudar a forma que fala com a API, antes geravam um arquivo certificado e agora aponta pra outo endereço https://developers.bancointer.com.br/reference/token-1 Me tire uma duvida basedo neste link como que faço pra passar os parametros corretos no postman por exemplo? Onde devo informar client_id e client_secret e scope
  2. ACBr_NFeDanfeFR.dpk(94) Fatal: E2202 Required package 'fs25' not found Sabem me dizer pq deu este erro? Somente o DanFe deu isso. Estou usando o delphi sydney pq ele reclamada do fs25? Os outros outros componentes do fastreport instalou.
  3. Desculpe pessoal reinicie o PC e por algum motivo deu ! Coisas de windows
  4. johnbh3

    Instalação do ACBR

    Pessoal estou usando o instalador do ACBR acabei de baixar no delphi delphi sydney E trava quando na parte inicial passa pelo adicionar path e trava em adicionando variavel de ambiente.
  5. unit uVendaItem; interface type TVendaItem = class private FIDVendaItem: Integer; FIDVenda: Integer; FProduto: String; { private declarations } protected { protected declarations } public { public declarations } property IDVendaItem: Integer read FIDVendaItem write FIDVendaItem; property IDVenda: Integer read FIDVenda write FIDVenda; property Produto: string read FProduto write FProduto; published { published declarations } end; implementation end. unit uVenda; interface uses System.Generics.Collections, System.SysUtils, uVendaItem, Dialogs; type TVenda = class private FIDVenda: Integer; FData: TDateTime; FListaVendaItem: TObjectList<TVendaItem>; { private declarations } protected { protected declarations } public { public declarations } property IDVenda: Integer read FIDVenda write FIDVenda; property Data: TDateTime read FData write FData; property ListaVendaItem: TObjectList<TVendaItem> read FListaVendaItem write FListaVendaItem; constructor Create; destructor Destroy; override; procedure AdicionarVendaItem(pProduto: String); procedure Remover(Index: Integer); function Count: Integer; published { published declarations } end; implementation { TVenda } procedure TVenda.AdicionarVendaItem(pProduto: String); var I: Integer; begin FListaVendaItem.Add(TVendaItem.Create); I := FListaVendaItem.Count -1; FListaVendaItem[I].IDVendaItem := I; FListaVendaItem[I].IDVenda := FIDVenda; FListaVendaItem[I].Produto := pProduto; end; function TVenda.Count: Integer; begin Result := FListaVendaItem.Count; end; constructor TVenda.Create; begin inherited; FIDVenda := 0; FData := EncodeDate(1900,1,1); FListaVendaItem := TObjectList<TVendaItem>.Create; end; destructor TVenda.Destroy; begin FreeAndNil(FListaVendaItem); inherited; end; procedure TVenda.Remover(Index: Integer); begin if Index < Count then FListaVendaItem.Delete(Index) else ShowMessage('Item não encontrado!'); end; end. O que vocês acham? Agora vou implementar os campos de valores R$ e percorrer a lista a ideia seria esta mesmo?
  6. Faça uma aplicação para simular o funcionamento de um caixa de restaurante, com as seguintes características: Os produtos disponíveis são: Bebidas • Refrigerante = R$ 5,90 p/ und • Água mineral = R$ 4,00 p/und • Cerveja = R$ 8,50 p/und Alimentos • Sanduiche queijo = R$ 20,00 p/und • Sanduiche misto = R$ 29,00 p/und • Self service = R$ 39,90 p/ Kg • Sobremesa = R$ 45,90 p/Kg Brindes • Boné = R$ 49,90 p/und • Chaveiro = R$ 14,90 p/und Deve existir a possibilidade de acrescentar ou excluir produtos à lista. Ao final da digitação dos dados a conta do cliente deve ser mostrada em uma listbox. A aplicação deve permitir cancelar produtos e recalcular a conta do cliente. Pessoal me dêem uma luz, com.o eu poderia fazer isto no listbox? Eu adicionaria no listbox os dados da conta com zeros a direita tipo assim Prod. Nome do prod. Qtde. Valor 0001. produto teste. 10. 100.00 Mas a dúvida como seria recalculado a conta? Através de um while? Isto e um teste pra vaga de emprego. Mas fiquei confuso por usar um listbox. O que eu fiz até agora foi a classe orientada a objetos do cadastro de produto, se fosse se fosse com dbgrid até seria mais tranquilo usando tabela temporária e chamar minha classe pra gravar a venda
  7. Pessoal uma tabela x e y em MySQL X Y a b c d 1 2 1 2 3 3 3 4 4 5 5 6 5 7 7 8 9 1 Retorna o erro Error Code: 1093. You can't specify target table 'y' for update in FROM clause Sabem o motivo?
  8. Pessoal Na transmissão do ESocial existe alguma tag que identificar o sistema que foi transmitido o xml?
  9. \resolvi pessoal obrigado E desculpe o post
  10. var LRequisicao: TidHTTP; LResposta: String; FLinkAutenticacao: string; LParametros: TStringList; FProtocoloSSL:TIdSSLIOHandlerSocketOpenSSL; begin FLinkAutenticacao:='https://api.lucree.com.br/autenticacao/v1'; LParametros := TStringList.Create; LParametros.Add('"username": "testelucre@gmail.com"'); LParametros.Add('"password": "123456"'); FProtocoloSSL := TIdSSLIOHandlerSocketOpenSSL.Create(Application); FProtocoloSSL.SSLOptions.Mode := sslmUnassigned; FProtocoloSSL.SSLOptions.Method := sslvTLSv1_2; FProtocoloSSL.SSLOptions.SSLVersions := [sslvTLSv1_2]; LRequisicao := TIdHTTP.Create(Nil); //LRequisicao.OnWork := OnWork; LRequisicao.IOHandler := FProtocoloSSL; LRequisicao.Request.ContentType := 'application/json'; LResposta := LRequisicao.Post(FLinkAutenticacao, LParametros); Eu tenho retorno http/ 1.1 400 - bad request O json que envio no raw do postman e: { "username": "testelucree@gmail.com", "password": "123456" }
  11. Detalhe: Variavel: FLinkAutenticacao:='https://api.lucree.com.br/autenticacao/v1'; Eu tenho retorno http/ 1.1 400 - bad request
  12. Pessoal para conexão via postman e bem simples esta conexão GET no endereço: https://api.lucree.com.br/autenticacao/v1 Vou na aba body e adiciono o json {"username": "testelucreeAPI@gmail.com","password": "123456"} Retorna pra mim o token Agora que preciso fazer isto com delphi usando o TidHTTP var LRequisicao: TidHTTP; LResposta: String; FLinkAutenticacao: string; body:string; LParametros: TStringList; FProtocoloSSL:TIdSSLIOHandlerSocketOpenSSL; begin LParametros := TStringList.Create; LParametros.Add('"username": "testelucree@gmail.com"'); LParametros.Add('"password": "123456"'); FProtocoloSSL := TIdSSLIOHandlerSocketOpenSSL.Create(Application); FProtocoloSSL.SSLOptions.Mode := sslmUnassigned; FProtocoloSSL.SSLOptions.Method := sslvTLSv1_2; FProtocoloSSL.SSLOptions.SSLVersions := [sslvTLSv1_2]; LRequisicao := TIdHTTP.Create(Nil); //LRequisicao.OnWork := OnWork; LRequisicao.IOHandler := FProtocoloSSL; LRequisicao.Request.ContentType := 'application/raw'; LResposta := LRequisicao.Post(FLinkAutenticacao, LParametros); Pessoal eu sei não e assim, mas e pra vocês terem uma ideia. Eu fiz uma conexão com outra maquinha onde os dados da conexão se data por parametros, dai eu criava um tStringList e passava exemplo assim LParametros := TStringList.Create; LParametros.Add('grant_type=client_credentials'); LParametros.Add('client_id='+AChaveAtual.ClientID); LParametros.Add('client_secret='+AChaveAtual.SecretCode); LRequisicao.Request.ContentType := 'application/x-www-form-urlencoded'; LResposta := LRequisicao.Post(FLinkAutenticacao, LParametros); Porém como podem ver esta Lucree, os dados para login e passado via JSON no body no postaman e não sei como fazer isto com TidHTTP Nesta lucre diferentemente o body eu passo como raw no postaman
  13. Bom dia Estou tendo este erro na NFCe em Mg - Rejeição: NFC-e com Data-Hora de emissão atrasada Estão sabendo de algo?
  14. Pessoal Tenho uma tabela com seguinte estrutura. SELECT FUNC_CODEMP AS CODEMP, FUNC_CODFUN AS CODFUN, FUNC_AQUINI AS AQUINI, FUNC_AQUFIN AS AQUFIN, FUNC_GOZINI AS GOZINI, FUNC_GOZFIN AS GOZFIN, FUNC_DTAREC AS DTAREC, FUNC_VALREC AS VALREC, FUNC_AUTFUN AS AUTFUN FROM FUNFER WHERE F__AUTFUN = '00100000000000019592' Me foi solicitado para que eu exiba o saldo de ferias dos entre as datas ( FUNC_GOZINI AS GOZINI, FUNC_GOZFIN AS GOZFIN) Ou seja gozo das ferias. O funcionário tirou ferias de 01/03/2022 a 15/03/2022 - Neste caso ele tirou 14 dias - restando 16 dias. No proximo ano o funcionario vai tirar em 01/03/2023 a 15/03/2022 Neste caso ele tirou 14 dias - restando 16 dias Porém exibir o saldo neste caso de 16+16 E possível fazer isto com SQL?
  15. Já resolvi desculpe, coloquei nil e deu certo
  16. Pessoal dentro do fasrtrepot estou carregando uma imagem assim FOTO_FUNCIONARIO.LoadFromFile(foto); Como que eu faço pra limpar esta imagem?
  17. Perdão resolvido o lote coloquei com mmyyddhhnn
  18. johnbh3

    Carta de correção

    Bom dia, Estou com um erro na carta de correeção que ao depurarar da um erro que o número do lote não e um numero inteiro valido. with ACBrNFe1.EventoNFe.Evento.Add do begin infEvento.chNFe := Chave; infEvento.CNPJ := FrmPrincipal.CNPJ_EMP; infEvento.dhEvento := now; infEvento.tpEvento := teCCe; infEvento.nSeqEvento := StrToInt(nSeqEvento); infEvento.detEvento.xCorrecao := Correcao; end; Try ACBrNFe1.EnviarEvento(StrToInt(idLote)); Erro na linha enviar !
  19. Desculpe pessoal encontrei, nossa to cansado. Faltou as virgulas em qtde= :pqtde em diante
  20. Sabem me dizer onde esta meu erro? [FireDAC][Phys][MySQL] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'vunitario= ? vrtotalitem= ? where id= ?' at line 5 Depurando os valores estão todos sendo passado para os parametrôs. O erro esta dando na função function TItemPedido.incluir_Alter_ItemPedido no QryInserir.ExecSQL; QryInserir.ParamByName('pidproduto').AsInteger :=fidproduto; QryInserir.ParamByName('pidpedido').AsInteger :=fidpedido; QryInserir.ParamByName('pqtde').AsFloat:=fqtde; QryInserir.ParamByName('pvunitario').AsFloat:=fvunitario; QryInserir.ParamByName('pvrtotalitem').AsFloat:=fvrtotalitem; QryInserir.ExecSQL; unit classe.itemPedido; interface uses FireDAC.Comp.Client, Vcl.Dialogs, System.SysUtils; type TItemPedido = class private fConexao : TFDConnection; fid :integer; fidpedido :integer; fidproduto :integer; fqtde :Real; fvunitario :Real; fvrtotalitem :Real; public property Conexao : TFDConnection read fConexao write fConexao; property id : integer read fid write fid; property idpedido : integer read fidpedido write fidpedido; property qtde : Real read fqtde write fqtde; property vunitario : Real read fvunitario write fvunitario; property vrtotalitem : Real read fvrtotalitem write fvrtotalitem; property idproduto : Integer read fidproduto write fidproduto; constructor Create (conexao : TFDconnection); destructor Destroy ; override; function incluir_Alter_ItemPedido (TipoOperacao: string; out erro: string) : boolean; procedure excluirPedido(numeroPedido: integer); function consultarItensPedido (idPedido : integer) : TFDQuery; function somaItensPedido (idPedido: integer): Real; end; implementation var Qry : TFDQuery; { TItemPedido } function TItemPedido.consultarItensPedido(idPedido: integer): TFDQuery; begin try //fConexao.Connected :=false; //fConexao.Connected :=true; Qry.Close; Qry.SQL.Clear; Qry.sql.Add('SELECT'); Qry.sql.Add(' itempedido.id,'); Qry.sql.Add(' itempedido.idpedido,'); Qry.sql.Add(' itempedido.idproduto,'); Qry.sql.Add(' itempedido.qtde,'); Qry.sql.Add(' itempedido.vrtotalitem,'); Qry.sql.Add(' itempedido.vunitario,'); Qry.sql.Add(' produto.nome as nome_produto,'); Qry.sql.Add(' produto.vrproduto'); Qry.sql.Add('FROM '); Qry.sql.Add(' itempedido'); Qry.sql.Add(' INNER JOIN produto ON itempedido.idproduto = produto.id'); Qry.SQL.Add('Where itempedido.idpedido='+QuotedStr(IntToStr(idPedido))); Qry.sql.Add(' ORDER BY itempedido.id'); Qry.Open(); finally Result :=Qry; end; end; constructor TItemPedido.Create(conexao: TFDconnection); begin fConexao := conexao; Qry :=TFDQuery.Create(nil); Qry.Connection :=fConexao; end; destructor TItemPedido.Destroy; begin Qry.Destroy; inherited; end; procedure TItemPedido.excluirPedido(numeroPedido: integer); begin fConexao.Connected :=false; fConexao.Connected :=true; fConexao.ExecSQL('delete from pedido where id=:numeroPedido',[numeroPedido]); consultarItensPedido(0); end; function TItemPedido.incluir_Alter_ItemPedido(TipoOperacao: string; out erro: string): boolean; var QryInserir :TFDQuery; begin try try fConexao.Connected :=false; fConexao.Connected :=true; QryInserir :=TFDQuery.Create(nil); QryInserir.Connection :=fConexao; QryInserir.SQL.Clear; if TipoOperacao='INSERIR' then begin QryInserir.SQL.Add('INSERT INTO pedido (dtaemissao, vrtotpedido, codcliente)'); QryInserir.sql.Add('VALUES (:pdtaemissao, :pvrtotpedido, :pcodcliente)'); end else begin QryInserir.SQL.Add('update itempedido set'); QryInserir.SQL.Add('idproduto= :pidproduto,'); QryInserir.SQL.Add('idpedido= :pidpedido,'); QryInserir.SQL.Add('qtde= :pqtde'); QryInserir.SQL.Add('vunitario= :pvunitario'); QryInserir.SQL.Add('vrtotalitem= :pvrtotalitem'); QryInserir.SQL.Add('where id= :pid'); QryInserir.ParamByName('pid').AsInteger :=fid; end; QryInserir.ParamByName('pidproduto').AsInteger :=fidproduto; QryInserir.ParamByName('pidpedido').AsInteger :=fidpedido; QryInserir.ParamByName('pqtde').AsFloat:=fqtde; QryInserir.ParamByName('pvunitario').AsFloat:=fvunitario; QryInserir.ParamByName('pvrtotalitem').AsFloat:=fvrtotalitem; QryInserir.ExecSQL; Result :=true; except on E : Exception do begin erro := E.Message; Result :=false; end; end; finally QryInserir.Destroy; end; end; function TItemPedido.somaItensPedido(idPedido: integer): Real; begin try //fConexao.Connected :=false; //fConexao.Connected :=true; Qry.Close; Qry.SQL.Clear; Qry.sql.Add('SELECT'); Qry.sql.Add(' sum(qtde*vunitario) AS TOTAL_PEDIDO'); Qry.sql.Add('FROM'); Qry.sql.Add(' itempedido'); Qry.sql.Add('Where idpedido='+QuotedStr(IntToStr(idPedido))); Qry.Open(); finally Result :=Qry.FieldByName('TOTAL_PEDIDO').AsFloat; end; end; end.
  21. Mas já estou com TFDPhysMySQLDriverLink incluido no datamodule, os componentes e mesma coisa de trabalhar que Firebird ou Postgress Esses dois links que vc citou nada funciona!, eu já tinha lido eles
  22. Pessoal, estou tendo este erro na conexão com MySQL Quando vou no FDConnection e clico pra testar recebo o erro: cannot load vendor library libmysql.dll se eu executo o .exe faz conexão, mas preciso funcionando na IDE pra desenvolvimento . Eu já fiz de tudo, já deixei como 32bits na IDE e 64. Já peguei tanto as DLL 32/64 em https://dev.mysql.com/downloads/mysql/ e coloquei tanto no diretorio do executavel quanto na pasta bin do delphi, ou no windows. Nada funciona, impressionante tentei de um tudo que se fala no google, algo simples mas que já demorei horas e não sai do lugar. Já peguei a DLL a dll da pasta C:\Program Files\MySQL\MySQL Server 8.0\lib e coloquei junto do executavel - Dai o executavel para de funciona reclamando da arquitetura x64 required x86, ok, compilei em x64 resolveu o problema do .exe mas continua na IDE com mesma jaca, o .exe funciona tanto em 32/64 mas na IDE de forma alguma consigo fazer o teste consequentemente vou conseguir rodar nenhum comando pra dev
  23. Então eu coloquei o papel em modo paisagem e deu certo
  24. O valor unitário liquido também come tudo também
  25. Pessoal preciso incluir 1 milhão na quantidade 1000000 tudo certo, porém no danfe corta e fica assim 000.000,00 o que posso fazer pra resolver? Nem mesmo colocando a fonte minúscula em 6 resolveu! Alguém ja passou por uma necessidade desta? Até mesmo 100 mil na quantidade ultrapassa com a fonte 8 ficando o numeral 1 comendo invadindo a linha da UNIDADE comercial
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...