Ver Mensaje Individual
  #10  
Antiguo 02-09-2015
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Reputación: 19
olbeup Va camino a la fama
Un ejemplo con TIniFiles:

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IniFiles, StdCtrls;

type
  TAreaHead = record
    LastArea: Integer;
    LastAccess: TDateTime;
    LastIDUser: Integer;
  end;

  TArea = record
    Area: Integer;
    Title: String;
    Local: String;
    Active: Boolean;
    Required: Boolean;
  end;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    AreaHead: TAreaHead;

    procedure LoadHeadArea;
    procedure InsertArea(objArea: TArea);
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  LoadHeadArea;
end;

procedure TForm1.LoadHeadArea;
var
  IniAH: TIniFile;
begin
  IniAH := TIniFile.Create('C:\Areas\Area.txt');
    AreaHead.LastArea   := IniAH.ReadInteger('Area.Record', 'LastRecord', 0);
    AreaHead.LastAccess := IniAH.ReadDate('Area.Record', 'LastAccess', 0);
    AreaHead.LastIDUser := IniAH.ReadInteger('Area.Record', 'LastIDUser', 0);
  FreeAndNil(IniAH);
end;

procedure TForm1.InsertArea(objArea: TArea);
var
  IniA: TIniFile;
begin
  IniA := TIniFile.Create('C:\Areas\Area.txt');
    IniA.WriteString('Area.' + IntToStr(objArea.Area), 'Title', objArea.Title);
    IniA.WriteString('Area.' + IntToStr(objArea.Area), 'Local', objArea.Local);
    IniA.WriteInteger('Area.' + IntToStr(objArea.Area), 'Layer', objArea.Area);
    IniA.WriteBool('Area.' + IntToStr(objArea.Area), 'Active', objArea.Active);
    IniA.WriteBool('Area.' + IntToStr(objArea.Area), 'Required', objArea.Required);

    IniA.WriteInteger('Area.Record', 'LastRecord', ObjArea.Area);
    IniA.WriteDate('Area.Record', 'LastAccess', Now);
    IniA.WriteInteger('Area.Record', 'LastIDUser', 36);

  IniA.UpdateFile;
  FreeAndNil(IniA);

  LoadHeadArea;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  xArea: TArea;
begin
  // Pedir datos de los registros y después insertarlos en el Area.txt

  FillChar(xArea, SizeOf(xArea), #0);
  
  xArea.Area      := AreaHead.LastArea +1;
  xArea.Title     := 'SOb';
  xArea.Local     := 'AS\SOL';
  xArea.Active    := True;
  xArea.Required  := False;

  InsertArea(xArea);
end;

end.

Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.
Responder Con Cita