PDA

Ver la Versión Completa : procedure con parametros variables


rruffino
04-03-2009, 23:08:00
Hola foristas.... Nuevamente pidiendo ayuda.
Resulta que estoy desarrollando una aplicación cliente/servidor en la cual traigo los datos de las tablas a mano. Estoy pensando en hacer un procedimiento get y un set que me traiga y actualice los datos respectivamente. Mi idea consiste y aca viene la pregunta, como las tablas tienen distintos campos no solo en nombre sino en cantidad, queria saber si puedo hacer algun procedimiento general que me deje indicar esos parametros, por ejemplo:
procedure get_datos(nombreTabla, campo1, campo2)
y que esa misma procedure pueda ser llamada con mas o menos argumentos, obvamente el parametro de nombre tabla siempre iria, para saber de que tabla sacar la info, lo que variaria serian los campos.
La verdad que no se si se puede hacer, si se pudiera solo definiria el get y set una sola vez con lo que nme ahorraria mucho. Aunque de existir la posibilidad no se que tan eficiente seria.
Desde ya les agradezco y espero vuestras respuestas.
Román.-:rolleyes:

roman
05-03-2009, 01:58:55
Pascal no acepta una cantidad variable de parámetros. No obstante, puedes hacer algo parecido usando arreglos abiertos:


{
El parámetro Campos es un arreglo abierto de cadenas: el número
de éstas es variable.
}
procedure get_datos(Tabla: String; Campos: array of String);
var
I: Integer;

begin
(* Recorrer la lista de campos *)
for I := Low(Campos) to High(Campos) do
begin
{
Hacer algo con Campos[I];
}
end;
end;


Lo llamarías así:


get_datos('pais', ['nombre', 'poblacion', 'lengua']);


// Saludos