Como informei em meu outro e-mail, utilize a Unit Variants na clausula uses, ficando assim:
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls, Mask, DBCtrls, Variants; Gustavo Fujita -----Mensagem original----- De: info.Desenvolvimento [mailto:[EMAIL PROTECTED] Enviada em: sexta-feira, 11 de fevereiro de 2005 10:52 Para: delphi-br@yahoogrupos.com.br Assunto: [delphi-br] Variant Pessoal desculpem o transtorno mas preciso dessa ajuda. O problema é o seguinte (e-mails anteriores), eu tinha D5 eagora tenho D7, quando fui compilar o sistema deu erro na variant, abaixo segue o meu código completo: Onde está o erro? MINHA UNIT: unit UTMdica; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls, Mask, DBCtrls; type TFtMedica = class(TForm) Panel1: TPanel; BitGrava: TBitBtn; BitCancela: TBitBtn; BitDeleta: TBitBtn; Panel2: TPanel; Label1: TLabel; Label2: TLabel; Label3: TLabel; DBEdit2: TDBEdit; Label4: TLabel; DBEdit3: TDBEdit; SBPesq: TSpeedButton; DBText1: TDBText; Edit2: TEdit; Edit1: TEdit; DBText2: TDBText; procedure BitAlteraClick(Sender: TObject); procedure BitGravaClick(Sender: TObject); procedure BitCancelaClick(Sender: TObject); procedure BitDeletaClick(Sender: TObject); procedure FormActivate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure SBPesqClick(Sender: TObject); procedure DBComboBox1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure DBEdit2KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure Edit2Exit(Sender: TObject); procedure Edit2KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure FormKeyPress(Sender: TObject; var Key: Char); procedure Edit1Exit(Sender: TObject); procedure Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure Edit1KeyPress(Sender: TObject; var Key: Char); private { Private declarations } public { Public declarations } end; var FtMedica: TFtMedica; V: Variant; implementation uses UDataModulo, UPesq_Medica, UnInicial; {$R *.DFM} Gera o seguinte erro ([Error] UTMdica.pas(171): Undeclared identifier: 'VarArrayCreate') Em todos os forms que eu uso a Variant está com o mesmo erro. O que eu fiz e solucionou para alguns Forms. Fui em File - Use Unit - Acrescentei todas as units, mas em alguns continua o erro ** AQUI QUE ESTÁ O PROBLEMA: {EVENTO ON EXIT DO EDIT} procedure TFtMedica.Edit2Exit(Sender: TObject); Begin {CÓDIGO PARA LOCATE EM CHAVE COMPOSTA} ** V := VarArrayCreate([0,1], varOleStr); if Edit2.Text = '' then begin Application.MessageBox('Campo Vazio - Preencher o campo'+#13'Pressione ESC', 'Aviso', mb_iconExclamation); Edit2.SetFocus; end else begin {CÓDIGO PARA LOCATE EM CHAVE COMPOSTA} DataModulo.TMedica.Active:= True; V[0]:= EDIT1.TEXT; V[1]:= EDIT2.TEXT; If(DataModulo.TMedica.Locate('TPMEDICA;CDMEDICA', V,[]))then begin Edit1.Text:=DataModulo.TMEDICA.FieldByName('TPMEDICA').AsString; Edit2.Text:=DataModulo.TMEDICA.FieldByName('CDMEDICA').AsString; Caption:= 'ICM: Alterar/Deletar/Cancelar-Esc Aborta a operação'; Edit1.visible:= False; Edit2.visible:= False; DBText1.Visible:= True; DBText2.Visible:= True; DataModulo.TMedica.Edit; Caption:= 'ICM: Alteração - ESC Aborta a operação'; DBEdit2.SetFocus; BitGrava.Enabled:= True; BitCancela.Enabled:=True; BitDeleta.Enabled:= True; end else begin DataModulo.TMEDICA.Append; Caption:= 'ICM: Novo Registro - ESC Aborta a operação'; DataModulo.TMEDICA.FieldByName('TPMEDICA').AsString:= Edit1.Text; DataModulo.TMEDICA.FieldByName('CDMEDICA').AsString:= Edit2.Text; BitGrava.Enabled:= True; BitCancela.Enabled:= True; BitDeleta.Enabled:= True; DBEdit2.SetFocus; end; end; end; end. [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- No virus found in this incoming message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.8.7 - Release Date: 10/2/2005 -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.8.7 - Release Date: 10/2/2005 -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html