Ir para conteúdo
Fórum Script Brasil

Jhonas

Monitores
  • Total de itens

    9.657
  • Registro em

Tudo que Jhonas postou

  1. veja nesses links https://www.google.com.br/?gws_rd=ssl#q=definir+usuario+como+administrador+windows+7 abraço
  2. voce tem a opção de usar o componente zipmaster https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=bakcup zipmaster https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=zipmaster delphi xe6 abraço
  3. isso é configuração da BIOS para ligar nesse horario ... voce tem que desativar o controle veja abraço
  4. o spray voce acha nas lojas de informatica ou de eletronica https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=limpa+contato&também=shop se voce usar o pincel, tome cuidado para que não solte pelos do pincel e caiam dentro do slot ... isso pode prejudicar o contado da placa se tiver duvidas veja os videos https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=como+limpar+slot+da+placa+mae&também=vid abraço
  5. Jhonas

    Error in Row

    Porém, um erro recorrente quando realizo SELECT na base é o "[DataDirect][ODBC Progress OpenEdge Wire Protocol driver]Error in row." Isso indica que o erro ocorreu durante a busca de dados. O problema pode estar no tipo de select que está sendo usado e as chamadas de API de ODBC que estão sendo usadas para buscar os dados. Por exemplo: pode resultar da tentativa de selecionar uma linha que tenha sido excluída ou convertendo os dados do valor retornado pelo banco de dados para o tipo solicitado pelo aplicativo; ou ainda por motivo de ultrapassar o tamanho de uma string ou campo verifique tambem se a configuração do banco está correta Para achar o problema exato, voce precisa capturar um rastreamento ODBC do problema. veja nesse link http://media.datadirect.com/download/docs/odbc/allodbc/#page/odbc%2Fcreating-a-trace-log.html%23wwID0EIQ25 abraço
  6. sugestão: tire a placa de video e passe uma borracha nos terminais ( dos 2 lados ) use um spray limpa contatos no slot da placa mãe e depois faça o teste novamente obs: veja se ao ligar ocorre o bip ( apenas um ) abraço
  7. utilizando a sua function, ficaria assim: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Memo1: TMemo; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} function AmortizaParcelaFixa(vlrPrincipal, txJuros : Double; NumParcelas : Integer; Capitalizar : boolean = true) : Double; var dblJuros, dblPrincipal, dblParcela, dblSaldo, dblTemp : Double; intParcelas, i, j : Integer; begin dblPrincipal := vlrPrincipal; dblJuros := txJuros; intParcelas := NumParcelas; dblTemp := (dblPrincipal / intParcelas) * (1 + dblJuros); for i := trunc(dblTemp * 100) to trunc(dblPrincipal * 100) do begin dblSaldo := dblPrincipal; dblParcela := i / 100; for j := 1 to intParcelas do if Capitalizar then dblSaldo := dblSaldo + (dblSaldo * dblJuros) - dblParcela else begin dblSaldo := dblSaldo - dblParcela; dblSaldo := dblSaldo + (dblSaldo * dblJuros); end; //Form1.Memo1.lines.Append(floattostr(dblsaldo) + ' - ' + floattostr(dblparcela)); if dblSaldo <= 0 then break; end; result := dblParcela; end; procedure TForm1.Button1Click(Sender: TObject); var i : integer; valor, valor_fixo : real; taxa, taxax : real; parcelas : integer; begin // Edit1.Text = Valor Principal 1000 // Edit2.Text = Taxa de juros 2 // Edit3.Text = Nº de Parcelas 5 // Edit4.Text = valor fixo da prestação , calculado pela function = 212,16 valor := strtofloat(Edit1.Text); taxa := strtofloat(Edit2.Text) / 100; parcelas := strtoint(Edit3.Text); valor_fixo := 0; Edit4.Text := floattostr(AmortizaParcelaFixa(valor, taxa, parcelas ,true)); valor_fixo := strtofloat(Edit4.Text); Memo1.Clear; memo1.Lines.Append(formatfloat('0.00',valor) + ' + ' + formatfloat('0.00',valor*taxa) + ' - ' + floattostr(valor_fixo)); Memo1.Lines.Append(''); for i := 1 to parcelas do begin taxax := valor * taxa; valor := (valor + taxax) - valor_fixo; memo1.Lines.Append(formatfloat('0.00',valor) + ' + ' + formatfloat('0.00',valor*taxa) + ' - ' + floattostr(valor_fixo)); Memo1.Lines.Append(''); end; end; end. ================================================================ Resultado no Memo 1000,00 + 20,00 - 212,16 807,84 + 16,16 - 212,16 611,84 + 12,24 - 212,16 411,91 + 8,24 - 212,16 207,99 + 4,16 - 212,16 -0,01 + 0,00 - 212,16 OBS: agora voce modifica para o seu uso abraço
  8. veja se é isso Na prática, para fazer o cálculo do percentual de amortização basta dividir o valor da dívida pelo número de meses acordado para realizar o pagamento. Suponhamos que você tenha financiado a compra de um produto de R$ 1000,00 em 5 vezes com 1,5% de juros ao mês. AMORTIZAÇÃO = 1000,00/5 = 200,00 1ª parcela = 200,00 + 1,5% * 1000,00 = 215,00 2ª parcela = 200,00 + 1,5% * ( 1000,00 - 1*200) = 212,00 3ª parcela = 200,00 + 1,5% * ( 1000,00 - 2*200) = 209,00 4ª parcela = 200,00 + 1,5% * ( 1000,00 - 3*200) = 206,00 5ª parcela = 200,00 + 1,5% * ( 1000,00 - 4*200) = 203,00 parcela = amortização + jurosSobreSaldoDevedor abraço
  9. video aula ou veja https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=instalar+fastreport+delphi+XE7 abraço
  10. amigo, voce só demorou 6 anos para responder .. obs: na mudança do forum os links foram perdidos tente esse https://www.google.com.br/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=analisador lexico em delphi abraço
  11. case strtoint(ClientDataSet_view_nfe.FieldByName('FIN_NFE').AsString ) of 1 : ComboBox_Fin.ItemIndex := 0; 2 : ComboBox_Fin.ItemIndex := 1; 3 : ComboBox_Fin.ItemIndex := 2; 4 : ComboBox_Fin.ItemIndex := 3; end; abraço
  12. no manual da impressora tem um teste para verificar os problemas ....verifique abraço
  13. o aviso é: para que possa visualizar a pagina voce deve instalar o adobe flash player versão 11 ou superior nesse link voce vai achar várias versões para baixar https://pt.dll-files.com/pepflashplayer.dll.html voce pode importar a dll para o seu exe ( mas vai ficar muito grande ) , ou voce pode deixa-la junto com o exe na mesma pasta abraço
  14. realmente é uma dll que é necessario digite no seu browser chrome:\\plugins dentre os plugins instalados deverá achar esse Adobe Flash Player - Versão: 21.0.0.197 Shockwave Flash 21.0 r0 Nome: Shockwave Flash Descrição: Shockwave Flash 21.0 r0 Versão: 21.0.0.197 Local: C:\Arquivos de programas\Google\Chrome\Application\49.0.2623.110\PepperFlash\pepflashplayer.dll Tipo: PPAPI (fora do processo) Desativar a dll é esta : pepflashplayer.dll veja neste link http://sejalivre.org/como-instalar-a-ultima-versao-do-flash-player-no-chromium/ abraço
  15. Como voce colocou um código para cada produto, o campo referencia, ou categoria do produto deve conter o mesmo nome. exemplo: descrição do produto - categoria do produto coca cola 1,5 L - refrigerante coca cola 2 L - refrigerante Fanta L - refrigerante Fanta Uva - refrigerante Sprite - refrigerante Kuat - refrigerante Cookies - bolachas maizena - bolachas cream crakers - bolachas mairilan - bolachas se voce filtrar pela familia, que seria a categoria do produto ... então quando voce escolher refrigerante vai trazer todos eles, mas se voce escolher filtrar pela descrição do produto ( coca cola ) só vai trazer os registros com esse nome quando clico no DbLookupComboBox para escolher outra categoria não aparece as Outras Categorias Somem Todas. voce tem que desativar o filtro antes de fazer outra escolha abraço
  16. quando eu fosse criando uma nova categoria fosse salvando automaticamente no ComboBox, ou em outro componente que der para fazer isso use o componente DBLookupComboBox1 da paleta DataControls na propriedade ListSource coloque o DataSource na propriedade ListField coloque o campo descricao_produto na propriedade KeyField coloque o seu campo chave ( que pode ser o mesmo do ListFields) OBS: o DBLookupComboBox vai conter os nomes de todos os seus produtos, mas isso pode ser um problema se forem muitos. ( se ponha no lugar do usuário ) abraço
  17. como o serviço do mysql roda em cima do windows, pode ser que o seu windows tenha algum arquivo corrompido ... se quiser, vode pode tentar usar o comando para restaurar os arquivos va em iniciar > executar > cmd > sfc /scannow voce tem que ter o disco de instalação do windows se mesmo assim não resolver, então formate o HD abraço
  18. legal, como eu não uso esse componente, acabei aprendendo mais uma com voce obrigado por compartilhar abraço
  19. veja nesses links http://www.google.com.br/search?hl=pt&source=hp&biw=&bih=&q=http%3A%2F%2Fhowtoremove.guide%2Floki-virus-removal%2F&gbv=2&o que=http%3A%2F%2Fhowtoremove.guide%2Floki-virus-removal%2F&gs_l=heirloom-hp.3...1148.1148.0.1629.1.1.0.0.0.0.106.106.0j1.1.0....0...1ac.1.34.heirloom-hp..1.0.0.YxiOSHcFLcE abraço
  20. amigo, o que voce quer fazer não tem como, a não ser, que voce modifique o código fonte do spinedit tirando do código a property PopupMenu; e depois recompilando o código http://www.bvbcode.com/code/dsepigku-1663375-down abraço
  21. ok .... veja esse link http://www.codeproject.com/Articles/6740/A-Spin-Edit-control-with-popup-trackbar ou voce pode criar um spinedit usando o componente Edit e o componente UpDown que não tera esse poupop abraço
  22. Jhonas

    Configurar My.ini

    isso tem mais haver com a estruturação do seu programa mas veja se isso te ajuda https://elias.praciano.com/2015/01/como-se-conectar-mais-facil-ao-mysql-com-o-arquivo-de-configuracoes-my-cnf/ abraço
  23. ok... vou te dar a solução coloque um componente Timer no seu Form de Menu ... deixe a Propriedade Enabled = true e a propriedade Interval = 1000 --------------------------------------------------------------------------- No evento OnTimer procedure TFMenu.Timer1Timer(Sender: TObject); begin limpa_memoria; end; -------------------------------------------------------------------------- e coloque essa procedure limpa_memoria tambem no Form Menu procedure limpa_memoria; var MainHandle : THandle; begin try MainHandle := OpenProcess(PROCESS_ALL_ACCESS, false, GetCurrentProcessID) ; SetProcessWorkingSetSize(MainHandle, $FFFFFFFF, $FFFFFFFF) ; CloseHandle(MainHandle) ; except end; Application.ProcessMessages; end; ------------------------------------------------------------------------ OBS: a cada segundo essa procedure vai limpar a memoria , deixando o seu programa rodar na faixa de mais ou menos 1300 kb abraço
×
×
  • Criar Novo...