Ver la Versión Completa : Insertar registro en acces
jgmarduel
02-09-2005, 17:58:10
Soy supernovato y pongo este código sin resultado ni error. Alguien me podría orientar ?? Aceptaría con gusto especificaciones para Mod y Delete.
procedure TForm2.BitBtn2Click(Sender: TObject);
var
estado: Boolean;
begin
estado := False;
if Form2.CheckBox1.State = cbChecked then
begin
estado := True;
end;
Database1.Connected := True;
DataSource1.Enabled := True;
Table1.Active := True;
Table1.Open;
Table1.Insert;
Table1.FieldByName('Titulo').AsString := Form2.Edit1.Text;
Table1.FieldByName('Arancelado').AsBoolean := estado;
Table1.Post;
Table1.Close;
Table1.Active := False;
DataSource1.Enabled := False;
Database1.Connected := False;
end;
MasterXP
02-09-2005, 18:25:16
no entiendo, cual es el problema?
jgmarduel
02-09-2005, 19:00:57
no inserta el registro, ni tira ningún error.
vtdeleon
03-09-2005, 00:40:00
Saludos
Puede ser que tenga la propiedad CacheUpdate en True.:-S
Trata de hacer un ApplyUpdate despues del post.
jgmarduel
03-09-2005, 00:52:22
gracias. No he encontrado mucho en los manuales que hay por ahí. Ponen en el cielo al BDGrid pero la mayoría de mis probables aplicaciones no dejarán ver las tablas a los clientes, sino que insertarán, modificarán y borraran en forms 'colgados' del principal.
Si conocen algo por favor avisen, ya que la respuesta a mi mensaje (muy rápida y gentil por cierto) trata de una función que no está en ninguno de los que encontré.
Gracias
vtdeleon
03-09-2005, 00:54:35
Saludos
Te resulto lo que te escribir?
jgmarduel
05-09-2005, 19:44:13
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, Buttons, DBCtrls, DB, DBTables;
type
TForm2 = class(TForm)
Label1: TLabel;
Label2: TLabel;
GroupBox1: TGroupBox;
Label3: TLabel;
Label4: TLabel;
DateTimePicker1: TDateTimePicker;
DateTimePicker2: TDateTimePicker;
DateTimePicker3: TDateTimePicker;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Table1: TTable;
DataSource1: TDataSource;
Database1: TDatabase;
Edit1: TEdit;
GroupBox2: TGroupBox;
CheckBox1: TCheckBox;
Edit2: TEdit;
Label5: TLabel;
procedure BitBtn1Click(Sender: TObject);
procedure Hola(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure Table1AfterInsert(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.BitBtn1Click(Sender: TObject);
begin
close;
end;
procedure TForm2.Hola(Sender: TObject);
begin
Form2.DateTimePicker2.Enabled := True;
end;
procedure TForm2.BitBtn2Click(Sender: TObject);
var
estado: Boolean;
begin
estado := False;
if Form2.CheckBox1.State = cbChecked then
begin
estado := True;
end;
Database1.Connected := True;
end;
No hay caso. Este es el cod actual:
DataSource1.Enabled := True;
Table1.Active := True;
Table1.Open;
Table1.Insert;
Table1.FieldByName('Titulo').AsString := Form2.Edit1.Text;
Table1.FieldByName('Arancelado').AsBoolean := estado;
Table1.Post;
Table1.ApplyUpdates;
Table1.Close;
Table1.Active := False;
DataSource1.Enabled := False;
Database1.Connected := False;
end;
procedure TForm2.Table1AfterInsert(DataSet: TDataSet);
begin
ShowMessage ('Registro agregado');
end;
end.
vtdeleon
06-09-2005, 00:12:26
Saludos
????????
Pd:Usa etiquetas [delphi][/delphi ]
jgmarduel
06-09-2005, 19:54:27
no. No me resultó. Gracias igual. Estoy viendo algunas cuestiones vinculadas con el acceso.
marcoev
08-09-2005, 22:11:38
Intena lo siguiente
procedure TForm2.BitBtn2Click(Sender: TObject);
begin
Database1.Connected := True;
Table1.Open;
Table1.Insert;
Table1.FieldByName('Titulo').AsString := Form2.Edit1.Text;
Table1.FieldByName('Arancelado').AsBoolean := if Form2.CheckBox1.State;
Table1.Post;
end;
nose para que necesitas abrir y cerrar tanto las tablas y conexiones, por cierto para BD de access te recomiendo utilizar componentes de Ado y en lugar de un componente de Database utilizar el componente de conection.
TAdoConnection
TAdoTable
por cierto para editar solo cambia el insert por Table1.Edit, y para borrar solo pon Table1.Delete, espero y te sirva de algo
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.