Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/01/2009, 17:40
loganazo
 
Fecha de Ingreso: agosto-2008
Mensajes: 4
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: vector como argumento en una funcion

Cita:
Iniciado por seyko Ver Mensaje
No entiendo porque quieres hacer esto asi.
Lo normal seria tener una tabla intermedia servicios_x_facturas que relacione los servicios con las facturas.
Revisa tu diseño o da más información

Salu2
hola seyko lo que queria hacer ya lo logre programando mediante PHP y no pgplsql como queria :(

resulta q estoy haciendo un sistema para la asignatura base datos obviamente, y una nota se basa en aplicar plsql en el sistema de cada uno,ahora mi profesor es medio quisquilloso y ya que en el modelo estableci que la relacion factura con servicio es 1:N, no se justifica la creacion de una tabla intermedia.

el codigo en PHP (estoy programando en clases)

function IngresarFactura($datos_in, $datos_in2, $count){

for($i=0; $i<$count; $i=$i+1)
{
$sql="SELECT insertafactura($datos_in[0], $datos_in[1], $datos_in[2],$datos_in[3],$datos_in[4], $datos_in[5], $datos_in[6],$datos_in2[$i], $i)";


$this->id_consulta=pg_query($this->conexion,$sql);

}


donde datos_in es el vector que contiene los datos que iran a la tabla factura y datos_in2 es el vector con las ID's que se relacionaran con esa factura.

y mi funcion pgplsql es

CREATE OR REPLACE FUNCTION insertafactura(id_fac integer, dia_f integer, mes_f integer, ano_f integer, neto_f numeric, iva_f numeric, total_f numeric, id_serv integer, contador integer)
RETURNS void AS
$BODY$BEGIN
IF (contador = 0) THEN
insert into factura(id_factura,dia_fac,mes_fac,ano_fac,neto_fa c,iva_fac,total_fac,estado_fac)
values(id_fac,dia_f,mes_f,ano_f,neto_f,iva_f,total _f,'pendiente');
END IF;

UPDATE servicio
set id_factura=id_fac, pagoservicio='facturado'
where id_servicio=id_serv;
END;$BODY$
LANGUAGE 'plpgsql' VOLATILE;


Bueno asi fue como lo resolvi, ahora si tu sabes como pasar un vector como argumento te agradeceria mucho

de antemano gracias...