Código PHP:
Ver original
CREATE FUNCTION comprar(empresa numeric, telefonoe numeric, fechaa date, ide_producto numeric, cantidades numeric) RETURNS integer LANGUAGE plpgsql AS $$DECLARE hayorden integer; numorden numeric; idresultado integer; BEGIN SELECT COUNT(*) INTO hayorden FROM app_ordenes WHERE id_empresa=empresa AND id_telefono=telefonoe AND estatus='0'; IF(hayorden=0) THEN INSERT INTO app_ordenes VALUES ('',empresa,telefonoe,fechaa,0) RETURNING id INTO numorden; ELSE SELECT id INTO numorden FROM app_ordenes WHERE id_empresa=empresa AND id_telefono=telefonoe AND estatus='0'; INSERT INTO app_ventas VALUES ('',numorden,ide_producto,cantidades) RETURNING id INTO idresultado; RETURN idresultado; end; $$;
Lo invoco asi
Código PHP:
SELECT comprar('1','19','2016-09-17','1','1');
Código PHP:
ERROR: la sintaxis de entrada no es válida para integer: «»
LINE 1: INSERT INTO app_ventas VALUES ('',numorden,ide_producto,cant...
^
QUERY: INSERT INTO app_ventas VALUES ('',numorden,ide_producto,cantidades) RETURNING id
CONTEXT: PL/pgSQL function comprar(numeric,numeric,date,numeric,numeric) line 12 at sentencia SQL