Fórum Locate parou de funcionar #386625

17/09/2010

0

Apos a migracao do delphi7 para o delphi 2010 o Locate parou de funcionar, ele nao procura o nome do pedido esta o mesmo nada alterado e ele parou de funcionar alguem sabe o motivo ae?     procedure TFPedidos.BOTAOBUSCARClick(Sender: TObject);
begin
PEDIDOS.locate('CLIRAZAOSOCIAL',Edit2.Text,[lopartialkey,locaseinsensitive])
end;       cara nao funciona, as vezes ele consgue buscar o valor se vc digitar o nome completo do cliente, e se vc digitar um nome acima do resultado alterior ele nao busca so busca abaixo.   No outro form o metodo locate ta funcionando normal por isso nao estou entendendo.     quando eu clico pra ver a SQL da query ele da esse erro num janela e trava o delphi.   ________________________________________________________________________________________   [22B13161]{dcldb140.bpl} SqlEdit.TSQLEditForm.FormUpdateActionUpdate (Line 507, "SqlEdit.pas" + 1) + $E
[501EF225]{vcl140.bpl  } StdCtrls.TListBoxStrings.Get (Line 5306, "StdCtrls.pas" + 6) + $19
[22B13161]{dcldb140.bpl} SqlEdit.TSQLEditForm.FormUpdateActionUpdate (Line 507, "SqlEdit.pas" + 1) + $E
[50075727]{rtl140.bpl  } Classes.TBasicAction.Update (Line 12523, "Classes.pas" + 3) + $7
[502B1968]{vcl140.bpl  } ActnList.TContainedAction.Update (Line 463, "ActnList.pas" + 8) + $28
[50075615]{rtl140.bpl  } Classes.TBasicActionLink.Update (Line 12466, "Classes.pas" + 0) + $5
[5029739B]{vcl140.bpl  } Controls.TControl.InitiateAction (Line 7819, "Controls.pas" + 0) + $B
[502C421F]{vcl140.bpl  } Forms.TCustomForm.UpdateActions (Line 6700, "Forms.pas" + 3) + $4
[502C93FA]{vcl140.bpl  } Forms.TApplication.DoActionIdle (Line 10297, "Forms.pas" + 5) + $4
[502C9548]{vcl140.bpl  } Forms.TApplication.Idle (Line 10344, "Forms.pas" + 10) + $3
[502C87C7]{vcl140.bpl  } Forms.TApplication.HandleMessage (Line 9790, "Forms.pas" + 1) + $11
[502C3FE5]{vcl140.bpl  } Forms.TCustomForm.ShowModal (Line 6643, "Forms.pas" + 33) + $5
[22B120F3]{dcldb140.bpl} SqlEdit.BaseEditSQL (Line 174, "SqlEdit.pas" + 12) + $5
[22B12289]{dcldb140.bpl} SqlEdit.EditSQL (Line 205, "SqlEdit.pas" + 3) + $28
[0B4D3636]{dclib140.bpl} Ibdbreg.TSQLPropertyEditor.EditSQL + $6A
[0B4D372D]{dclib140.bpl} Ibdbreg.TIBQuerySQLProperty.Edit + $45
[20976C8E]{coreide140.bpl} PropInsp.TPropertyInspector.PropListEditDblClick (Line 870, "PropInsp.pas" + 21) + $1
[20EC2F75]{vclide140.bpl} IDEInspListBox.TInspListBox.DoEditDblClick (Line 617, "IDEInspListBox.pas" + 2) + $A
[20EC4D3F]{vclide140.bpl} IDEInspListBox.TInspListBox.ListButtonClick (Line 1307, "IDEInspListBox.pas" + 2) + $2
[502963DB]{vcl140.bpl  } Controls.TControl.Click (Line 7178, "Controls.pas" + 9) + $8
[20EBA922]{vclide140.bpl} IDEListBtns.TListButton.WMLButtonUp (Line 582, "IDEListBtns.pas" + 8) + $11
[50295E70]{vcl140.bpl  } Controls.TControl.WndProc (Line 7062, "Controls.pas" + 91) + $6
[20D8C74E]{designide140.bpl} DeskUtil.SetFocusHook (Line 454, "DeskUtil.pas" + 4) + $C
[50299FCB]{vcl140.bpl  } Controls.TWinControl.IsControlMouseMsg (Line 9596, "Controls.pas" + 1) + $9
[5029A738]{vcl140.bpl  } Controls.TWinControl.WndProc (Line 9819, "Controls.pas" + 144) + $6
[50299DD8]{vcl140.bpl  } Controls.TWinControl.MainWndProc (Line 9540, "Controls.pas" + 3) + $6
[50076408]{rtl140.bpl  } Classes.StdWndProc (Line 13015, "Classes.pas" + 8) + $0
[502C8775]{vcl140.bpl  } Forms.TApplication.ProcessMessage (Line 9760, "Forms.pas" + 30) + $1
[502C87BA]{vcl140.bpl  } Forms.TApplication.HandleMessage (Line 9790, "Forms.pas" + 1) + $4
[502C8AE5]{vcl140.bpl  } Forms.TApplication.Run (Line 9927, "Forms.pas" + 26) + $3
[004369AE]{bds.exe     } bds.bds (Line 200, "" + 8) + $FFFB    
Chadoiam

Chadoiam

Responder

Posts

18/09/2010

Eriley Barbosa

Amigo já testei o Locate com campos string em bancos de dados Firebird, SQLSErver e Oracle e ele não funciona, só funciona com campos inteiros. Outras opções são usar o Filter ou comando SQL.
Responder

Gostei + 0

18/09/2010

Chadoiam

Como ficaria um exemplo desse FILTER ?? nao queria mecher com SQL, mais o engracado eh que estava funcionando no delphi7 ae no delphi 2010 ele paro.
Responder

Gostei + 0

18/09/2010

Eriley Barbosa

procedure TFPedidos.BOTAOBUSCARClick(Sender: TObject);
begin
PEDIDOS.Filter := 'CLIRAZAOSOCIAL Like ' + QuotedStr('%' + AnsiUpperCase(Edit2.Text) + '%'); PEDIDOS.Filtered := True;
end; To sem o DElphi aqui, qualquer coisa tente com * no lugar do%.  
Apos a migracao do delphi7 para o delphi 2010 o Locate parou de funcionar, ele nao procura o nome do pedido esta o mesmo nada alterado e ele parou de funcionar alguem sabe o motivo ae?     procedure TFPedidos.BOTAOBUSCARClick(Sender: TObject);
begin
PEDIDOS.locate('CLIRAZAOSOCIAL',Edit2.Text,[lopartialkey,locaseinsensitive])
end;       cara nao funciona, as vezes ele consgue buscar o valor se vc digitar o nome completo do cliente, e se vc digitar um nome acima do resultado alterior ele nao busca so busca abaixo.   No outro form o metodo locate ta funcionando normal por isso nao estou entendendo.     quando eu clico pra ver a SQL da query ele da esse erro num janela e trava o delphi.   ________________________________________________________________________________________   [22B13161]{dcldb140.bpl} SqlEdit.TSQLEditForm.FormUpdateActionUpdate (Line 507, "SqlEdit.pas" + 1) + $E
[501EF225]{vcl140.bpl  } StdCtrls.TListBoxStrings.Get (Line 5306, "StdCtrls.pas" + 6) + $19
[22B13161]{dcldb140.bpl} SqlEdit.TSQLEditForm.FormUpdateActionUpdate (Line 507, "SqlEdit.pas" + 1) + $E
[50075727]{rtl140.bpl  } Classes.TBasicAction.Update (Line 12523, "Classes.pas" + 3) + $7
[502B1968]{vcl140.bpl  } ActnList.TContainedAction.Update (Line 463, "ActnList.pas" + 8) + $28
[50075615]{rtl140.bpl  } Classes.TBasicActionLink.Update (Line 12466, "Classes.pas" + 0) + $5
[5029739B]{vcl140.bpl  } Controls.TControl.InitiateAction (Line 7819, "Controls.pas" + 0) + $B
[502C421F]{vcl140.bpl  } Forms.TCustomForm.UpdateActions (Line 6700, "Forms.pas" + 3) + $4
[502C93FA]{vcl140.bpl  } Forms.TApplication.DoActionIdle (Line 10297, "Forms.pas" + 5) + $4
[502C9548]{vcl140.bpl  } Forms.TApplication.Idle (Line 10344, "Forms.pas" + 10) + $3
[502C87C7]{vcl140.bpl  } Forms.TApplication.HandleMessage (Line 9790, "Forms.pas" + 1) + $11
[502C3FE5]{vcl140.bpl  } Forms.TCustomForm.ShowModal (Line 6643, "Forms.pas" + 33) + $5
[22B120F3]{dcldb140.bpl} SqlEdit.BaseEditSQL (Line 174, "SqlEdit.pas" + 12) + $5
[22B12289]{dcldb140.bpl} SqlEdit.EditSQL (Line 205, "SqlEdit.pas" + 3) + $28
[0B4D3636]{dclib140.bpl} Ibdbreg.TSQLPropertyEditor.EditSQL + $6A
[0B4D372D]{dclib140.bpl} Ibdbreg.TIBQuerySQLProperty.Edit + $45
[20976C8E]{coreide140.bpl} PropInsp.TPropertyInspector.PropListEditDblClick (Line 870, "PropInsp.pas" + 21) + $1
[20EC2F75]{vclide140.bpl} IDEInspListBox.TInspListBox.DoEditDblClick (Line 617, "IDEInspListBox.pas" + 2) + $A
[20EC4D3F]{vclide140.bpl} IDEInspListBox.TInspListBox.ListButtonClick (Line 1307, "IDEInspListBox.pas" + 2) + $2
[502963DB]{vcl140.bpl  } Controls.TControl.Click (Line 7178, "Controls.pas" + 9) + $8
[20EBA922]{vclide140.bpl} IDEListBtns.TListButton.WMLButtonUp (Line 582, "IDEListBtns.pas" + 8) + $11
[50295E70]{vcl140.bpl  } Controls.TControl.WndProc (Line 7062, "Controls.pas" + 91) + $6
[20D8C74E]{designide140.bpl} DeskUtil.SetFocusHook (Line 454, "DeskUtil.pas" + 4) + $C
[50299FCB]{vcl140.bpl  } Controls.TWinControl.IsControlMouseMsg (Line 9596, "Controls.pas" + 1) + $9
[5029A738]{vcl140.bpl  } Controls.TWinControl.WndProc (Line 9819, "Controls.pas" + 144) + $6
[50299DD8]{vcl140.bpl  } Controls.TWinControl.MainWndProc (Line 9540, "Controls.pas" + 3) + $6
[50076408]{rtl140.bpl  } Classes.StdWndProc (Line 13015, "Classes.pas" + 8) + $0
[502C8775]{vcl140.bpl  } Forms.TApplication.ProcessMessage (Line 9760, "Forms.pas" + 30) + $1
[502C87BA]{vcl140.bpl  } Forms.TApplication.HandleMessage (Line 9790, "Forms.pas" + 1) + $4
[502C8AE5]{vcl140.bpl  } Forms.TApplication.Run (Line 9927, "Forms.pas" + 26) + $3
[004369AE]{bds.exe     } bds.bds (Line 200, "" + 8) + $FFFB    
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar