Ir para conteúdo
Fórum Script Brasil

hencker

Membros
  • Total de itens

    165
  • Registro em

  • Última visita

Posts postados por hencker

  1. VocÊ pode usar tb a aba BDE, que abriria uma gama maior de recursos, porém seria necessário a criação de um alias!!!

    A vantagem é conexão mais estável, aplicação menos pesada. Desvantagem q eu acho é a obrigatoriedade da criação de um alias...

  2. Cara marathagraria, isso é normal caso você não esteja usando rotinas de verificação.

    É mais ou menos assim:

    Imagine dois gordos...

    Imagine agora que esses dois gordos estão em uma biblioteca e resolvem pegar o mesmo livro...

    As duas "orcas" entram em um corredor estreito para pegar o livro...

    Agora imagina essas duas criatura brigando, rolando no chão por causa do livro e uma bibliotecária velha toda enrrugada e franzina separando a briga...

    É isso que está acontecendo...

    Onde:

    Os dois gordos = Suas aplicações cliente;

    Biblioteca        = Banco de Dados;

    Prateleira do livro = Tabela;

    Corredor    = Conexão do sistema com o Banco de Dados;

    Livro  = Dado a ser pesquisado;

    Bibliotecária = Seu Gerenciador de Banco de Dados;

    Eu não me recordo bem mas existem algumas rotinas que verificam se a tabela está sendo usada por uma outra aplicação... Particularmente (como sempre... unsure.gif ) não me recordo muito bem como funciona!!!

    Porém os Bancos de dados mais robustos e mais novos como o Oracle e Interbase 7.1 sanaram esse problema colocando algo parecido com uma "fila virtual de requisições", onde a aplicação q pediu o dado primeiro acessa primeiro!!!

    rolleyes.gif

    Ps.: Espero não ter viajado de mais na explicação!!! tongue.gif

  3. DataRequest() no TClientDataSet equivale a que procedimento do TQuery??? blink.gif

    O DataRequest() funciona assim:

    if Valor_Chave <> ''
         then SQL := SQL + (' FROM '+ Tab_Banco + ' WHERE '+ Chave + '= "'+  Valor_Chave +'"')
         else SQL := SQL + (' FROM '+ Tab_Banco + ' WHERE '+ Chave + ' IS NULL ');
    
    
      with ClienteDMCadastros.CDGeral do begin
           Close;
    
           DataRequest(SQL);
           Open;
    

    sad.gif

  4. Galera eu to no começo de um novo projeto... ele compila legal, mais depois que eu fecho o executável aparece essa msg:

    Exception EAccessViolation in Module PVulcano.EXE at 000025C0.

    Access Violation at adress 004025C0 in module 'PVulcano.EXE'.

    Alguém sabe a causa ou a solução???

    Estou usando nesse sistema FB, Zeos, D6 e alguns componentes visuais TMS... huh.gif

  5. A sintaxe é a mesma... eu acho... porém note que é necessário o uso do not e do Tabela.Next ...

    Tabela.Open
    Tabela.First
    
    WHILE NOT Tabela.EOF DO
    begin
    <comandos>
    end;
    Tabela.Next
    

    acho q axim vai funfá, testa ai depois c responde!!! biggrin.gif

    Ps.: Se Registra ai... pra ficar mais fácil pla vc...

  6. Olha eu de novo aki galera...smile.gif

    Eu peguei essa dica no site CapaBlanca que é de um dos nossos colegas de profissão e participante aki do fórum...

    Como exibo um DBGrid "zebrado"?

    1. Selecione seu objeto DBGrid1;
    
    2. Na guia events do Object Inspector, dê um duplo-clique no evento OnDrawColumnCell;
    
    3. Insira as linhas que estão em negrito:
    
    
    { ---------- Início do Código ---------- }
    procedure TFormPadrao1.DBGrid1DrawColumnCell(Sender: TObject;
      const Rect: TRect; DataCol: Integer; Column: TColumn;
      State: TGridDrawState);
    begin
      
      if not odd(ADOQuery1.RecNo) then
      begin
        DBGrid1.Canvas.Brush.Color:= clMoneyGreen;
        DBGrid1.Canvas.FillRect(Rect);
        DBGrid1.DefaultDrawDataCell(Rect, Column.Field, State);
    
        if gdFocused in State then
        begin
          DBGrid1.Canvas.Brush.Color:= clBlack;
          DBGrid1.Canvas.FillRect(Rect);
          DBGrid1.DefaultDrawDataCell(Rect, Column.Field, State);
        end;
      end;
      	
    end;
    { ---------- Fim do Código ---------- }
    
    Obs.: no meu exemplo utilizei um objeto dataset ADOQuery1. Basta você alterar para o objeto dataset do seu projeto.
    
    

    Até a próxima! ph34r.gif

  7. Normalmente usamos funçoes pelo teclado e teclas em geral, aqui vai uma lista delas:

    VK_LBUTTON	01	Left mouse button 
    VK_RBUTTON	02	Right mouse button 
    VK_CANCEL	03	Used for control-break processing 
    VK_MBUTTON	04	Middle mouse button (three-button mouse) 
    --         05-07	Undefined 
    VK_BACK         08	BACKSPACE key 
    VK_TAB         09	TAB key 
    --         0A0B	Undefined 
    VK_CLEAR	0C	CLEAR key 
    VK_RETURN	0D	ENTER key 
    --         0E0F	Undefined 
    VK_SHIFT	10	SHIFT key 
    VK_CONTROL	11	CTRL key 
    VK_MENU         12	ALT key 
    VK_PAUSE	13	PAUSE key 
    VK_CAPITAL	14	CAPS LOCK key 
    --         15-19	Reserved for Kanji systems 
    --         1A	Undefined 
    VK_ESCAPE	1B	ESC key 
    --         1C1F	Reserved for Kanji systems 
    VK_SPACE	20	SPACEBAR 
    VK_PRIOR	21	PAGE UP key 
    VK_NEXT         22	PAGE DOWN key 
    VK_END         23	END key 
    VK_HOME         24	HOME key 
    VK_LEFT         25	LEFT ARROW key 
    VK_UP         26	UP ARROW key 
    VK_RIGHT	27	RIGHT ARROW key 
    VK_DOWN  28	DOWN ARROW key 
    VK_SELECT	29	SELECT key 
    --      	2A	OEM specific 
    VK_EXECUTE	2B	EXECUTE key 
    VK_SNAPSHOT	2C	PRINT SCREEN key for Windows 3.0 and later 
    VK_INSERT	2D	INS key 
    VK_DELETE	2E	DEL key 
    VK_HELP  2F	HELP key 
    VK_0    	30	0 key 
    VK_1    	31	1 key 
    VK_2         32	2 key 
    VK_3    	33	3 key 
    VK_4    	34	4 key 
    VK_5    	35	5 key 
    VK_6    	36	6 key 
    VK_7      37	7 key 
    VK_8    	38	8 key 
    VK_9    	39	9 key 
    --         3A40	Undefined 
    VK_A         41	A key 
    VK_B         42	B key 
    VK_C         43	C key 
    VK_D         44	D key 
    VK_E         45	E key 
    VK_F         46	F key 
    VK_G         47	G key 
    VK_H         48	H key 
    VK_I         49	I key 
    VK_J         4A	J key 
    VK_K         4B	K key 
    VK_L         4C	L key 
    VK_M         4D	M key 
    VK_N         4E	N key 
    VK_O         4F	O key 
    VK_P         50	P key 
    VK_Q         51	Q key 
    VK_R         52	R key 
    VK_S         53	S key 
    VK_T         54	T key 
    VK_U         55	U key 
    VK_V         56	V key 
    VK_W         57	W key 
    VK_X         58	X key 
    VK_Y         59	Y key 
    VK_Z         5A	Z key 
    --         5B5F	Undefined 
    VK_NUMPAD0	60	Numeric keypad 0 key 
    VK_NUMPAD1	61	Numeric keypad 1 key 
    VK_NUMPAD2	62	Numeric keypad 2 key 
    VK_NUMPAD3	63	Numeric keypad 3 key 
    VK_NUMPAD4	64	Numeric keypad 4 key 
    VK_NUMPAD5	65	Numeric keypad 5 key 
    VK_NUMPAD6	66	Numeric keypad 6 key 
    VK_NUMPAD7	67	Numeric keypad 7 key 
    
    VK_NUMPAD8	68	Numeric keypad 8 key 
    VK_NUMPAD9	69	Numeric keypad 9 key 
    VK_MULTIPLY	6A	Multiply key 
    VK_ADD         6B	Add key 
    VK_SEPARATOR	6C	Separator key 
    VK_SUBTRACT	6D	Subtract key 
    VK_DECIMAL	6E	Decimal key 
    VK_DIVIDE	6F	Divide key 
    VK_F1         70	F1 key 
    VK_F2         71	F2 key 
    VK_F3         72	F3 key 
    VK_F4         73	F4 key 
    VK_F5         74	F5 key 
    VK_F6         75	F6 key 
    VK_F7         76	F7 key 
    VK_F8         77	F8 key 
    VK_F9         78	F9 key 
    VK_F10         79	F10 key 
    VK_F11         7A	F11 key 
    VK_F12         7B	F12 key 
    VK_F13         7C	F13 key 
    VK_F14         7D	F14 key 
    VK_F15         7E	F15 key 
    VK_F16         7F	F16 key 
    VK_F17         80H	F17 key 
    VK_F18         81H	F18 key 
    VK_F19         82H	F19 key 
    VK_F20         83H	F20 key 
    VK_F21         84H	F21 key 
    VK_F22         85H	F22 key 
    VK_F23         86H	F23 key 
    VK_F24         87H	F24 key 
    --         88-8F	Unassigned 
    VK_NUMLOCK	90	NUM LOCK key 
    VK_SCROLL	91	SCROLL LOCK key 
    --         92B9	Unassigned 
    --      	BAC0	OEM specific 
    --      	C1DA	Unassigned 
    --         DBE4	OEM specific 
    --         E5	Unassigned 
    --         E6	OEM specific 
    --         E7E8	Unassigned 
    --         E9F5	OEM specific 
    --         F6FE	Unassigned 
    
    

    Abraços...

    T. Baroni wink.gif

  8. VocÊ tem o Oracle instalado, se tiver procure por apostilas, se quiser eu tenho uma do 8i, se ainda não tiver o Oracle o primeiro passo é comprar uma cópia, de preferencia original, pois assim terá suporte e menos dores de cabeça futuramente!!!

    Se quiser mande um e-mail que eu envio a apostila...

    Abraços...

    T. Baroni biggrin.gif

  9. Olha eu de novo galera...

    Seguinte: Compilei meu sistema usando o Windows XP, os relatórios são feitos em QuickReport, mas qundo meu software chaega na máquina dos clientes ele simplesmente não imprime nada... mas também não dá erro algum...

    Alguém sabe o que está acontecendo...

    A medida provisória que estou tomando é instalar o Windows XP nas máquinas dos meus clientes... o que está me dando uma grande dor de cabeça, já que nem todos tem HardWare suficiente para suportar essa platafoma...

    Aguardando respostas

    T. Baroni wink.gif

  10. 1º Se registra

    2º Eu fiz uma vez da seguinte forma, criei o sistema normalmente, depois transformei o computador com os bancos de dados em um servidor para internet e hospedei o site nele fazendo com q ele busque localmente, ou seja, busque do próprio servidor os dados necessários...

    qualquer dúvida posta ai...

    Abraços

    Ps: Usei linguagem Delphi + MySQL + PHP... mas no ASP tb funciona...

  11. estou usando o seguinte código:

    var SQL         ,
        Orcamento_ID: String;
        I           : Integer;
    begin
    
      Orcamento_ID := ClienteDMMovimentos.CDOrcamentosOrcamento_ID.AsString;
    
      SQL := ' Select Orc.Orcamento_ID, Cli.Nome_Fantasia as Cliente,       '+
             '        Cli.Endereco, Cli.Bairro,                            '+
             '        Cid.Nome as Cidade, Cid.UF, Cid.CEP, Cli.Telefone,   '+
             '        Op.Descricao As Operacao, Con.Descricao As Condicao, '+
             '        Ven.Nome as Vendedor, Orc.Desconto, Orc.Base_ICMS,   '+
             '        Orc.Valor_ICMS, Orc.Valor_IPI, Orc.Valor_FRETE,      '+
             '        Orc.SUBT_TOTAL, Orc.Total                            '+
             ' From Clientes Cli, Cidades Cid, Operacoes_Venda Op,         '+
             '      Condicoes_Venda Con, Vendedores Ven, Orcamentos Orc    '+
             ' Where Cli.Cliente_ID   = Orc.Cliente_ID                     '+
             '  AND  Cid.Cidade_ID    = Cli.Cidade_ID                      '+
             '  AND  Op.Operacao_ID   = Orc.Operacao_ID                    '+
             '  AND  Con.Condicao_ID  = Orc.Condicao_ID                    '+
             '  AND  Orc.Orcamento_ID = '+#39+Orcamento_ID+#39+' '        ;
    
      with ClienteDMCadastros.CDGeral do begin
           Close;
           DataRequest(SQL);
           Open;
      end;
    
      SQL := ' Select Item.Orcamento_ID, Item.Produto_ID,                  '+
             '        Pro.Descricao As Produto,                            '+
             '        Item.Qtd, Item.Valor_Unitario, Item.Perc_Desconto,   '+
             '        Item.Valor_Total, Item.Valor_Base                    '+
             ' From Itens_Orcamentos Item, Produtos Pro                    '+
             ' Where Pro.Produto_ID   = Item.Produto_ID                    '+
             '  AND  Item.Orcamento_ID = '+Orcamento_ID                    ;
    
    
      with ClienteDMCadastros.CDGeral2 do begin
           Close;
           DataRequest(SQL);
           Open;
           I := RecordCount;
           while ( I mod 35 <> 0 ) do begin
                 Append;
                 FieldByName('ORCAMENTO_ID').AsString := Orcamento_ID;
                 Inc(I);
           end;
      end;
    
    
      MasterRelVenda := TMasterRelVenda.Create(Self);
      MasterRelVenda.QRLTipo.Caption := Titulo;
      MasterRelVenda.QReport.Print;
      MasterRelVenda.Free;
    
      ClienteDMCadastros.CDGeral.Close;
      ClienteDMCadastros.CDGeral2.Close;
    end;
    

    esse é o procedimento do botão imprimir venda mas quando eu pesso para imprimir ele não imprime apenas a venda, o programa entra em looping e imprime a mesma venda para todos os clientes...

    Tipo se eu tiver 100 clientes em meu cadastro ele imprime 100 notas fiscais da mesma venda...

    alguém sabe onde eu estou errando???

×
×
  • Criar Novo...