Ir para conteúdo
Fórum Script Brasil

Jhonas

Monitores
  • Total de itens

    9.657
  • Registro em

Tudo que Jhonas postou

  1. DMVendas.SqlConProduto.ParamByName('valor').AsFloat := StrToFloat(edtValor.Text); no edtValor voce vai digitar o valor que voce quiser, que será convertido de text para float e será passado como parametro abraço
  2. faça assim DMVendas.SqlConProduto.close; DMVendas.SqlConProduto.ParamByName('codini').AsInteger:=strtoint(edtCodIni.Text); DMVendas.SqlConProduto.ParamByName('codfin').AsInteger:=strtoint(edtCodFin.Text); DMVendas.SqlConProduto.ParamByName('descricao').AsString:=edtDesc.Text+'%'; DMVendas.SqlConProduto.ParamByName('valor').AsFloat := StrToFloat(edtValor.Text); DMVendas.SqlConProduto.Open; abraço
  3. tem um exemplo de uso nesse link ( em ingles ) http://www.drbob42.com/examines/examinB6.htm abraço
  4. exemplo http://pt.kioskea.net/faq/4177-vba-procura...etorno-multiplo abraço
  5. exatamente... se voce reparou o codigo na balança pode ser cadastrado manualmente ou atraves de software outras coisas que voce deve levar em consideração: o servidor de dados, a quantidade de estações de trabalho e o software de desenvolvimento. o servidor de dados deverá comportar a quantidade de estações de trabalho, caso contrário voce terá um sistema lento como voce já desenvolveu um sistema comercial, sabe que uma interface simples e leve é a solução a maioria dos supermercados utilizam o linux ou unix por serem plataformas gratuitas, mas nada impede de se usuar uma outra. não deixe de se inteirar sobre a parte fiscal relativas a supermercados OBS: antes de se aventurar nesse empreendimento, informe-se sobre tudo o que for necessario, para não ter problemas futuros. abraço
  6. voce esta se confundindo com relação ao codigo primeiro vamos ver como funciona o codigo de barras EAN13 Como funciona o código de barras? O código de barras nada mais é do que a representação gráfica da seqüência de algarismos que vem impressa logo abaixo dele. A vantagem das barras é que elas podem ser identificadas rapidamente, e sem risco de erros, por aparelhos portáteis de leitura óptica, como os usados pelos caixas de supermercado. Mas o que realmente importa para identificar o produto é sua seqüência numérica, que também pode ser digitada manualmente pelos caixas. Esse número funciona como uma espécie de RG do produto, ou seja, não existem dois produtos diferentes com o mesmo número, diz a desenhista industrial Cláudia Ferreira, consultora da EAN, organização internacional que gerencia a distribuição dos códigos no mundo e tem uma representação no Brasil. O sistema de barras foi criado nos Estados Unidos em 1973 e acabou sendo adotado na Europa três anos depois. Mas, enquanto os americanos usam uma seqüência numérica de 12 dígitos, os europeus optaram por um padrão com 13, que foi adotado no resto do mundo. A partir de 2005, porém, os dois sistemas deverão ser unificados. Mas isso não significa que toda a confusão numérica vai acabar, pois existem ainda outros tipos de códigos especiais, como o formado por 14 dígitos (usado em caixas de papelão para informar a quantidade de produtos guardados) e o de oito dígitos (utilizado quando a embalagem do produto é muito pequena). Linguagem cifrada Sistema mais comum, desenvolvido na Europa, usa 13 algarismos para cada produto As barras são uma representação gráfica do código binário. Cada traço preto ou branco equivale a um bit (1 ou 0, respectivamente) e cada algarismo é sempre representado por sete bits. Uma barra escura mais grossa que as outras é, na verdade, a somatória de vários traços pretos. O mesmo princípio vale para as barras brancas AVISO INICIAL Essas três primeiras barras mais compridas (uma branca no meio de duas pretas) são uma sinalização, indicando que a seguir vem o código do produto. As barras e seus respectivos algarismos não ficam alinhados por isso o número 7 vem antes das barras de sinalização REGISTRO NACIONAL Esses três primeiros números (789) indicam que o produto foi cadastrado no Brasil, apesar de não necessariamente ter sido fabricado aqui. Cada país tem uma combinação própria. A da Argentina, por exemplo, é 779 RG DO FABRICANTE A segunda seqüência de números, que pode variar de quatro a sete algarismos, é a identificação da empresa fabricante. Esse número é fornecido por uma organização internacional, a EAN, que faz o controle para que não sejam distribuídos números iguais RG DO PRODUTO A terceira seqüência identifica o produto em si. A numeração varia conforme o tipo, o tamanho, a quantidade, o peso e a embalagem do produto uma Coca-Cola em lata, por exemplo, tem uma seqüência diferente de uma em garrafa CHECAGEM FINAL O último número é um dígito verificador. Ao ler todo o código do produto, o computador faz um cálculo complexo, somando, dividindo e multiplicando os dígitos anteriores. Se a leitura estiver correta, o resultado desse cálculo estranho é igual ao do dígito verificador OBS: voce encontra o codigo de barras na maioria dos produtos .... veja que dei o exemplo da banana por ser um produto que não tem código de barras, mas voce pode atribuir um codigo a esse produto sem problemas ( como o da figura acima ) entretanto em alguns supermercados, opta-se por utilizar um codigo ( numero de 2, ou 3 digitos ) para simplificar a passagem pelo caixa, não tendo nessariamente, ter que se atribuir um código de barras a esse tipo de produto e a outros do genero. abraço
  7. voce já deve ter ido a um supermercado e reparado que existe uma balança no caixa... essa balança tem os alguns desses recursos * Impressor incorporado, * Teclado de acesso direto, * Várias configurações para utilização da balança em rede, * Permite cadastro de itens pelo software ou teclado, * Maior capacidade de memória e de processamento, * Visor com duas linhas, * Aplicativo para gerenciar as balanças em rede. imagine que voce comprou uma penca de bananas ... esse item estará cadastrado no banco de dados como numero 22. como a pesagem é automatica, bastará ao caixa digitar somente o numero 22 no teclado para que o item banana apareça no visor juntamente com o calculo do peso com o preço por kg entretanto pode ocorrer que no setor onde foi pego a banana tenha uma balança e o item foi pesado nessa balança, e será emitido um código de barras para a indentificação desse produto ( já cadastrado nessa balança ) junto ao caixa os dados da balança podem ser enviados para uma tabela juntamente com o codigo de barras e no caixa a leitura de código de barras adiantará o processo... veja no link http://www.filizola.com.br/produtos/produto.php?ID=Nw== abraço
  8. na verdade 12, o ultimo é o digito verificador Os 2 são a mesma coisa e se referem ao mesmo produto ... o leitor fará apenas a leitura de um código que já deverá estar previamente cadastrado no sistema, e assim continuar o processamento. se o código não estiver cadastrado no sistema, voce poderá inclui-lo manualmente durante a operação ... mas no ramo de supermercado isso não poderá ser feito no momento da venda ( todos os produtos devem estar cadastrados antecipadamente ) abraço
  9. o problema está em salvar os dados ou suas modificações no banco de dados no help do delphi voce encontra: eu costumo atualizar os outros terminais usando o metodo refresh, na entrada, no meio e no fim de um procedimento, para garantir que se houver alguma alteração nos dados durante esse tempo, medidas sejam tomadas. entretanto voce pode tentar esse metodo: Usando a função da API dbiSaveChanges ou o dbiUseIdleTime para salvar os dados no banco de dados. Resposta: procedure TForm1.Table1AfterPost(DataSet: TDataSet); begin DbiSaveChanges(Table1.handle); end; ou procedure TForm1.Query1AfterPost(DataSet: TDataSet); begin DbiSaveChanges(Query1.handle); end; Isto irá salvar os dados na table definitivamente ou usar o seguinte: procedure TForm1.FormCreate(Sender: TObject); begin Application.onIdle := UseIdle; end; procedure Tform1.UseIdle(Sender: TObject; var Done: Boolean); begin DbiUseIdleTime; end; para que o todos os bancos sejam salvos no momento em que o aplicativo pare de processar mensagens! http://www.ramosdainformatica.com.br/dic_r...s01.php?CDA=175 abraço
  10. em outro terminal não, mas ao atualizar o banco de dados o outro terminal verá a atualização, assim que for dado o comando refresh no clientdataset. exemplo CDS_CLientes.Refresh; abraço
  11. então troque o codigo Result := ShowModal = mrOk; Result := Show = mrOk; abraço
  12. veja se ajuda http://www.eduparise.com/Documents/Script_%20logon.pdf http://www.todoespacoonline.com/como-criar...-windows___1933 abraço
  13. na net voce encontra muito material para estudo http://www.google.com.br/#hl=pt-BR&gs_...024&bih=606 abraço
  14. esse seu relato é o de muitos na net, não só aqui do brasil mas tambem do pessoal dos EUA basta procurar no google pela palavra: geforce gt 220 slow post nesse link ( forum ) diz que o pessoal conseguiu resolver o problema http://www.tomshardware.com/forum/354076-3...220-overheating abraço
  15. experimente assim: procedure TfrmDestino.FormClose(Sender: TObject; var Action: TCloseAction); begin dataModule1.qrUsuario.Close; dataModule2.qrDestino.Close; //LeioComunicados; //Action := CaFree; frmDestino:= NIL; end; procedure TfrmDestino.LeioComunicados; begin with dataModule2.qrDestino do begin close; sql.Clear; sql.Text:='Select * from SCCAENC where USUARIO=:xUsuario and DTLEITURA is Null'; parameters.ParamByName('xUsuario').value:=strUsuario; open; end; if dataModule2.qrDestino.RecordCount <> 0 then begin ShowMessage('Você tem comunicado(s) a ser(em) lido(s)!'); dataModule2.qrDestino.First; while not dataModule2.qrDestino.Eof do begin strCodigo:=dataModule2.qrDestinoCODIGO.AsString; try if frmReadNews = nil then frmReadNews := TfrmReadNews.Create(self); except ShowMessage('Erro na criação do formulário !!'); exit; end; frmReadNews.showmodal; dataModule2.qrDestino.Edit; dataModule2.qrDestinoDTLEITURA.AsDateTime:=date(); dataModule2.qrDestino.Post; end; end; end; abraço
  16. então voce já tem uma ideia onde esta o erro ( na função ) ao invés de usar uma função, porque não usa uma procedure para isso ( mude e veja o resultado ) abraço
  17. Jhonas

    [ajuda]String

    Faça uma pesquisa no forum http://scriptbrasil.com.br/forum/index.php...ite=findreplace abraço
  18. veja se ajuda http://www.dicasdelphi.com.br/tag/dbexpress/ http://www.sybase.com.br/detail?id=1027878 abraço
  19. o problema se resume a BIOS ou a drivers ... quando voce comprou a sua placa mãe, a BIOS vem com uma configuração de fabrica para os dispositivos que estão na placa mãe .... isso inclui a placa de video onboard sugestões para resolver o problema 1 - coloque a placa de video, instale os drives, deslique o micro e reset a BIOS 2 - desinstale os drives antigos antes de instalar os novos exemplo http://www.howtogeek.com/howto/windows-vis...o-new-hardware/ abraço
  20. veja se isso te ajuda a esclarecer as duvidas http://edn.embarcadero.com/article/28959 http://www.planetadelphi.com.br/artigo/141...cord%29-parte-i abraço
  21. apenas um errinho de iniciante ... veja a correção program LOGIN_E_SENHA; {$APPTYPE CONSOLE} uses SysUtils; var login, senha: String; begin Writeln('Digite o Login'); Readln(login); IF (login='aluno') THEN Begin Writeln('Digite a senha'); Readln(senha); end; if (senha='123456') then Begin writeln('Acesso permitido'); Readln; End Else Begin Writeln('Acesso Negado'); readln; End; readln; end. abraço
  22. Left := 256; for i:= 0 to 100 do TImage.Left := posição atual + i; veja que se a posição Left é 256 voce não pode incrementar esse valor de apenas 1 ( for i ) o certo é a posição Left + o tamanho ( largura do Timage ) + 1 .... para que o proximo timage fique ao lado do primeiro timage seria o mesmo que voce desenhar um retangulo ao lado de outro ... veja que as medidas do retangulo devem ser as mesmas ... a unica diferença estaria na posição inicial do proximo retangulo. voce pode fazer uma adaptação do seu código (criação do timage) + o codigo do link, que mostra como posicionar uma imagem lado a lado http://www.planetadelphi.com.br/dica/1634/...o-fundo-do-form veja tambem esse link.. vai te dar uma ideia de como proceder http://www.planetadelphi.com.br/artigo/138/delphi-for-php abraço
  23. voce tem que fazer um select dentro do select no primeiro select voce traz o periodo da data inicial e a data final no subselect voce vai procurar o periodo inicial e final dentro do primeiro select procure na net select dentro de select um exemplo SELECT PRIMEIRO_NOME, ULTIMO_NOME, DATEDIFF(YEAR, DATA_ADMISSAO, GETDATE()) AS ANOS DE EMPRESA FROM FUNCIONARIOS F INNER JOIN DEPARTAMENTOS D ON F.ID_DEPARTAMENTO = D.ID_DEPARTAMENTO WHERE F.SALARIO = (SELECT MAX(SALARIO) FROM FUNCIONARIOS FF, DEPARTAMENTOS DD WHERE FF.ID_DEPARTAMENTO = DD.ID_DEPARTAMENTO AND DD.ID_DEPARTAMENTO = F.ID_DEPARTAMENTO); abraço
  24. Veja nesse link https://groups.google.com/forum/?fromgroups...ird/jpvXLRDaAik mais informações http://marcosalles.wordpress.com/2011/02/1...-ini-dbexpress/ http://www.devmedia.com.br/conexao-e-distr...licativos/16292 abraço
  25. como voce faz a leitura ? ( poste o codigo ) a sua intensão é trabalhar com tabelas temporarias ?
×
×
  • Criar Novo...