Hola,
Añades una unidad a tu proyecto, en la cual declaras e implementas los procedimientos y funciones que te sean menester, por ejemplo.
Luego, en las unidades de los formularios en que quieras utilizar la unidad antes dicha, o sea, sus procedimientos, funciones, etc., añades dicha unidad en la cláusula Uses.
A partir de ahí usas lo implementado en la unidad, sencillamente.
¿Un poco de código a modo de ejemplo?
Esta unidad corresponde a un formulario:
Código Delphi
[-]
unit Unit1;
interface
uses
Forms, Classes, Controls, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses
Unit2;
procedure TForm1.Button1Click(Sender: TObject);
begin
Saludame; end;
end.
Si te fijas en la cláusula Uses de la unidad se incluye la unidad "Unit2", en la que se implementa el procedimiento Saludame, como puedes ver a continuación:
Código Delphi
[-]
unit Unit2;
interface
uses Dialogs;
procedure Saludame;
implementation
procedure Saludame;
begin
ShowMessage('¡Hola, cómo va eso!');
end;
end.
Nota que la unidad Unit2 (según el código anterior) se encuentra en el mismo directorio en que se encuentra la unidad Unit1, de no ser así, ya sabes que podrías incluir la unidad Unit2 en la unidad Unit1 de este otro modo:
Código Delphi
[-]
uses
Unit2 in 'directorio\Unit2.pas';
Actualización: Sobre esto último (utilizar "Unit2 in directorio\...") podría decirse aún más, pero prefiero que sea el lector quien lo lea por sí mismo en el apartado "The syntax of a uses clause" que puede encontrarse en la ayuda de Delphi: está bien, tal vez es que no me supiera explicar y prefiero que el lector se lo explique a partir de una fuente fidedigna.