Advertisement
LovelessIsma

Untitled

Mar 16th, 2016
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- Function: pa_facturacion_generar(character varying, smallint, character varying, smallint, smallint, timestamp without time zone, timestamp without time zone, character varying, numeric, integer)
  2.  
  3. -- DROP FUNCTION pa_facturacion_generar(character varying, smallint, character varying, smallint, smallint, timestamp without time zone, timestamp without time zone, character varying, numeric, integer);
  4.  
  5. CREATE OR REPLACE FUNCTION pa_facturacion_generar(
  6.     IN idproyecto character varying,
  7.     IN tipofacturacion smallint,
  8.     IN idpropiedad character varying,
  9.     IN anho smallint,
  10.     IN mes smallint,
  11.     IN fechavencimiento timestamp without time zone,
  12.     IN fechatope timestamp without time zone,
  13.     IN idmoneda character varying,
  14.     IN tipocambio numeric,
  15.     IN idusuario integer,
  16.     OUT rpta character varying,
  17.     OUT titulomsje character varying,
  18.     OUT contenidomsje character varying)
  19.   RETURNS record AS
  20. $BODY$
  21. DECLARE rPropiedad record;
  22.         rConcepto record;
  23.         rFacturacion record;
  24.         idfactura CHARACTER VARYING(15);
  25.         correlativofacturacion CHARACTER VARYING(45);
  26.         prefijoproyecto CHARACTER VARYING(30);
  27.         FACTURAS integer;
  28.         codigomoneda CHARACTER VARYING;
  29.         codigofactura CHARACTER VARYING(15);
  30.         codigofactpropietario CHARACTER VARYING(15);
  31.         codigoconceptofact CHARACTER VARYING(15);
  32.         importefacturado NUMERIC(10, 2);
  33.         countfactpropietario BIGINT;
  34.         areapropiedad NUMERIC(6, 2);
  35.         valorconcepto NUMERIC(6,2);
  36.         areadepartamento NUMERIC(6, 2);
  37.         areaestacionamiento NUMERIC(6, 2);
  38.         ratioProp NUMERIC(6, 4);
  39.         areadeposito NUMERIC(6, 2);
  40.         formula TEXT;
  41.         consumomes NUMERIC(9, 2);
  42.         tipovalorizacion CHARACTER VARYING;
  43.         cantidadPropiedades SMALLINT;
  44.         AreaProyecto numeric (10,2);
  45.         variableDuplex SMALLINT;
  46.         PorcenDscto NUMERIC;
  47. BEGIN
  48.     IF (SELECT COUNT(*) FROM tm_proceso WHERE tm_idestadoproceso  = 1 AND tm_idproyecto = idproyecto AND tm_per_ano = anho AND tm_per_mes = mes AND activo = 1) = 0 THEN
  49.     rpta := '1';
  50.     titulomsje := 'El proceso actual no ha sido abierto';
  51.     contenidomsje := 'La operación no se puede realizar';
  52.     RETURN;
  53.     END IF;
  54.    
  55.     SELECT COUNT(*) INTO FACTURAS from tm_facturacion WHERE tm_idproyecto = idproyecto AND tm_per_ano = anho AND tm_per_mes = mes AND activo = 1;
  56.  
  57.         IF FACTURAS > 0 THEN
  58.            
  59.            -- UPDATE td_facturacionpropietario SET activo = 0 WHERE tm_idfacturacion IN (SELECT tm_idfacturacion FROM tm_facturacion WHERE tm_idproyecto = idproyecto AND tm_per_ano = anho AND tm_per_mes = mes AND activo = 1);
  60.  
  61.         UPDATE td_facturacionpropietario fprop SET fprop.activo = 0 FROM tm_facturacion fac
  62.         WHERE fac.tm_idproyecto = idproyecto AND fac.tm_per_ano = anho AND fac.tm_per_mes = mes AND fac.tm_idfacturacion = fprop.tm_idfacturacion AND fprop.activo = 1;
  63.  
  64.             UPDATE tm_facturacion SET activo = 0  WHERE tm_idproyecto = idproyecto AND tm_per_ano = anho AND tm_per_mes = mes AND activo = 1;
  65.    
  66.             UPDATE td_conceptosfacturacion SET activo = 0  WHERE tm_idproyecto = idproyecto AND tm_per_ano = anho AND tm_per_mes = mes AND activo = 1;
  67.  
  68.         END IF;
  69.  
  70.     variableDuplex := 0;
  71.    
  72.     PorcenDscto :=0;
  73.  
  74.     CREATE TEMP SEQUENCE temp_seq;
  75.    
  76.     IF idmoneda = '0' THEN
  77.       SELECT tm_idmoneda INTO codigomoneda FROM tm_moneda WHERE tm_default = 1 AND activo = 1;
  78.     ELSE
  79.       codigomoneda := idmoneda;
  80.     END IF;
  81.  
  82.     SELECT tm_codigoproyecto, ta_tipovaloracion INTO prefijoproyecto, tipovalorizacion FROM tm_proyecto WHERE tm_idproyecto = idproyecto AND activo = 1;
  83.  
  84.     --- Traer campo descuento para Dúplex
  85.    
  86.     SELECT tm_tieneporcjduplex INTO  variableDuplex FROM tm_proyecto WHERE tm_idproyecto = idproyecto AND activo = 1;
  87.    
  88.    --- Si se descuenta por dúplex, traer el % de descuento
  89.  
  90.     IF variableDuplex = 1 THEN
  91.    
  92.         SELECT tm_porcjduplex INTO  PorcenDscto FROM tm_proyecto WHERE tm_idproyecto = idproyecto AND activo = 1;    
  93.    
  94.     END IF;
  95.  
  96.     IF tipovalorizacion = '00' THEN
  97.    
  98.         SELECT COUNT(*) INTO cantidadPropiedades FROM tm_propiedad WHERE tm_idproyecto = idproyecto AND tm_idtipopropiedad = 'DPT' AND activo = 1;
  99.    
  100.     ELSE
  101.          select resultado into AreaProyecto from pa_area_proyecto(idproyecto,PorcenDscto);
  102.     END IF;
  103.  
  104.     SELECT COUNT(*) INTO countfactpropietario FROM td_facturacionpropietario;
  105.  
  106.     IF tipoFacturacion = 1 THEN
  107.  
  108.    
  109.         FOR rPropiedad IN SELECT a.tm_idpropiedad, a.tm_idpropiedadrelacionada, a.tm_area FROM tm_propiedad AS a WHERE a.tm_idproyecto = idproyecto AND a.activo = 1 AND a.tm_idtipopropiedad = 'DPT' LOOP
  110.      
  111.             areadepartamento := rPropiedad.tm_area;
  112.      
  113.             SELECT 'FN' || LPAD((COUNT(*) + 1)::TEXT, 13, '0') INTO codigofactura FROM tm_facturacion;
  114.             SELECT prefijoproyecto || anho::character varying || mes::character varying || LPAD((COUNT(*) + 1)::TEXT, 10, '0') INTO correlativofacturacion FROM tm_facturacion WHERE activo = 1;
  115.            
  116.            
  117.             --- Se Calcula el porcentaje de participación y se graba en la cabecera de la factura
  118.             IF tipovalorizacion = '00' THEN
  119.                 ratioProp := round(1/cantidadPropiedades,4);
  120.             ELSE
  121.                 select porcentaje into ratioProp from pa_porcentaje_participacion(rPropiedad.tm_idpropiedad, idproyecto, AreaProyecto);
  122.             END IF;
  123.  
  124.             INSERT INTO tm_facturacion (tm_idfacturacion, tm_codigo, tm_idproyecto, tm_per_ano, tm_per_mes, tm_ratio, tm_idmoneda, tm_tipo_cambio,  tm_fechaemision, tm_fechavencimiento, tm_fechatope, tm_importefacturado, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  125.             VALUES (codigofactura, correlativofacturacion, idproyecto, anho, mes, ratioProp, codigomoneda, tipocambio, CURRENT_TIMESTAMP, fechavencimiento, fechatope, 0, 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP);
  126.      
  127.      
  128.             INSERT INTO td_facturacionpropietario (td_idfacturacionpropietario, tm_idpropietario, tm_idfacturacion, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  129.             SELECT 'FP' || LPAD(( countfactpropietario + NEXTVAL('temp_seq'))::TEXT, 13, '0'), oldtable.tm_idtipopropietario, codigofactura, 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP
  130.             FROM (SELECT * FROM vstpropietario AS propt
  131.                     INNER JOIN td_propiedadpropietario AS b ON propt.tm_idtipopropietario = b.tm_idpropietario AND b.tm_idpropiedad = rPropiedad.tm_idpropiedad
  132.             ORDER BY propt.tm_idtipopropietario) AS oldtable;
  133.            
  134.             SELECT areadepartamento + SUM(a.tm_area) INTO areapropiedad FROM tm_propiedad AS a WHERE tm_idpropiedadrelacionada = rPropiedad.tm_idpropiedad AND a.tm_idtipopropiedad <> 'DPT' AND a.activo = 1;
  135.      
  136.            
  137.             FOR rConcepto IN SELECT a.tm_idconcepto, a.tm_definicion_formula, a.tm_esformula, a.tm_escalonable, a.tm_ascensor FROM tm_concepto AS a WHERE a.tm_idproyecto = idproyecto AND a.ta_tipoconcepto = '02' AND a.activo = 1 LOOP
  138.      
  139.                 SELECT 'CF' || LPAD((COUNT(*) + 1)::TEXT, 13, '0') INTO codigoconceptofact FROM td_conceptosfacturacion;
  140.                
  141.                 IF rConcepto.tm_escalonable = 1 THEN
  142.                   SELECT td_consumoperiodo INTO consumomes FROM td_consumoescalonable WHERE tm_idconcepto = rConcepto.tm_idconcepto AND tm_idproyecto = idproyecto AND tm_idpropiedad = rPropiedad.tm_idpropiedad AND tm_per_mes = mes AND tm_per_ano = anho;
  143.      
  144.                   consumomes := COALESCE(consumomes, 0.0);
  145.      
  146.                   SELECT a.pagoconsumo INTO valorconcepto FROM pa_conceptoescalonable_calcular(rConcepto.tm_idconcepto, consumomes) AS a;
  147.                 ELSE
  148.                     IF rConcepto.tm_ascensor = 1 THEN
  149.                         SELECT a.facturarconcepto INTO valorconcepto  FROM pa_facturacion_ascensor(idproyecto, rPropiedad.tm_idpropiedad, anho, mes, idusuario ) AS a;          
  150.                     ELSE
  151.                         IF rConcepto.tm_esformula = 1 THEN
  152.                            IF tipovalorizacion = '00' THEN
  153.                               SELECT a.facturarconcepto INTO valorconcepto  FROM pa_facturacion_equitativa(rConcepto.tm_idconcepto, rPropiedad.tm_idpropiedad, idproyecto, mes, anho, cantidadPropiedades) AS a;
  154.                            ELSE
  155.                               SELECT a.facturarconcepto INTO valorconcepto FROM pa_facturacion_calcular(rConcepto.tm_idconcepto, rPropiedad.tm_idpropiedad, idproyecto, AreaProyecto, mes, anho) AS a;
  156.                            END IF;
  157.                         ELSE
  158.                            valorconcepto := 0.0;
  159.                         END IF;
  160.                     END IF;
  161.                 END IF;
  162.                
  163.                 INSERT INTO td_conceptosfacturacion  (td_idconceptofacturacion, tm_idproyecto, tm_idfacturacion, tm_per_ano, tm_per_mes, tm_idpropiedad, tm_idconcepto, td_valorconcepto, ta_tiporesultado, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  164.                 VALUES (codigoconceptofact, idproyecto, codigofactura, anho, mes, rPropiedad.tm_idpropiedad, rConcepto.tm_idconcepto, valorconcepto, '01', 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP);
  165.      
  166.             END LOOP;
  167.      
  168.             SELECT SUM(td_valorconcepto) INTO importefacturado FROM td_conceptosfacturacion WHERE tm_idfacturacion = codigofactura;
  169.  
  170.             UPDATE tm_facturacion SET tm_importefacturado = importefacturado  WHERE tm_idfacturacion = codigofactura;
  171.      
  172.         END LOOP;
  173.      
  174.         IF tipovalorizacion <> '00' THEN
  175.  
  176.             FOR rPropiedad IN SELECT a.tm_idpropiedad, a.tm_area FROM tm_propiedad AS a WHERE a.tm_idproyecto = idproyecto AND a.activo = 1 AND a.tm_idtipopropiedad <> 'DPT' AND (tm_idpropiedadrelacionada='' OR tm_idpropiedadrelacionada IS NULL)  LOOP
  177.          
  178.                 areadepartamento := rPropiedad.tm_area;
  179.          
  180.                 SELECT 'FN' || LPAD((COUNT(*) + 1)::TEXT, 13, '0') INTO codigofactura FROM tm_facturacion;
  181.                 SELECT prefijoproyecto || anho::character varying || mes::character varying || LPAD((COUNT(*) + 1)::TEXT, 10, '0') INTO correlativofacturacion FROM tm_facturacion WHERE activo = 1;
  182.                
  183.                 --- Se Calcula el porcentaje de participación y se graba en la cabecera de la factura
  184.            
  185.                 select porcentaje into ratioProp from pa_porcentaje_participacion(rPropiedad.tm_idpropiedad,idproyecto, AreaProyecto);
  186.  
  187.                 INSERT INTO tm_facturacion (tm_idfacturacion, tm_codigo, tm_idproyecto, tm_per_ano, tm_per_mes, tm_ratio, tm_idmoneda, tm_tipo_cambio,  tm_fechaemision, tm_fechavencimiento, tm_fechatope, tm_importefacturado, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  188.                 VALUES (codigofactura, correlativofacturacion, idproyecto, anho, mes, ratioProp, codigomoneda, tipocambio, CURRENT_TIMESTAMP, fechavencimiento, fechatope, 0, 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP);
  189.          
  190.          
  191.                 INSERT INTO td_facturacionpropietario (td_idfacturacionpropietario, tm_idpropietario, tm_idfacturacion, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  192.                 SELECT 'FP' || LPAD(( countfactpropietario + NEXTVAL('temp_seq'))::TEXT, 13, '0'), oldtable.tm_idtipopropietario, codigofactura, 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP
  193.                 FROM (SELECT * FROM vstpropietario AS propt
  194.                         INNER JOIN td_propiedadpropietario AS b ON propt.tm_idtipopropietario = b.tm_idpropietario AND b.tm_idpropiedad = rPropiedad.tm_idpropiedad
  195.                 ORDER BY propt.tm_idtipopropietario) AS oldtable;
  196.                
  197.                
  198.                 FOR rConcepto IN SELECT a.tm_idconcepto, a.tm_definicion_formula, a.tm_esformula, a.tm_escalonable FROM tm_concepto AS a WHERE a.tm_idproyecto = idproyecto AND a.ta_tipoconcepto = '02' AND a.activo = 1 LOOP
  199.          
  200.                     SELECT 'CF' || LPAD((COUNT(*) + 1)::TEXT, 13, '0') INTO codigoconceptofact FROM td_conceptosfacturacion;
  201.                         IF rConcepto.tm_esformula = 1 THEN
  202.                               SELECT a.facturarconcepto INTO valorconcepto FROM pa_facturacion_calcular(rConcepto.tm_idconcepto, rPropiedad.tm_idpropiedad, idproyecto, AreaProyecto, mes, anho) AS a;
  203.                         ELSE
  204.                            valorconcepto := 0.0;
  205.                         END IF;
  206.                    
  207.                     INSERT INTO td_conceptosfacturacion  (td_idconceptofacturacion, tm_idproyecto, tm_idfacturacion, tm_per_ano, tm_per_mes, tm_idpropiedad, tm_idconcepto, td_valorconcepto, ta_tiporesultado, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  208.                     VALUES (codigoconceptofact, idproyecto, codigofactura, anho, mes, rPropiedad.tm_idpropiedad, rConcepto.tm_idconcepto, valorconcepto, '01', 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP);
  209.          
  210.                 END LOOP;
  211.          
  212.                 SELECT SUM(td_valorconcepto) INTO importefacturado FROM td_conceptosfacturacion WHERE tm_idfacturacion = codigofactura;
  213.  
  214.                 UPDATE tm_facturacion SET tm_importefacturado = importefacturado  WHERE tm_idfacturacion = codigofactura;
  215.        
  216.             END LOOP;
  217.         END IF;
  218.     ELSE
  219.        
  220.         FOR rPropiedad IN SELECT a.tm_idpropiedad, a.tm_idpropiedadrelacionada, a.tm_area FROM tm_propiedad AS a WHERE a.tm_idpropiedad = idpropiedad AND a.activo = 1 LOOP
  221.      
  222.             SELECT DISTINCT tm_idfacturacion into idfactura from td_conceptosfacturacion WHERE  tm_per_ano = anho AND tm_per_mes = mes AND tm_idpropiedad = rPropiedad.tm_idpropiedad AND activo = 1;
  223.  
  224.             IF idfactura IS NOT NULL THEN
  225.                
  226.                 UPDATE td_facturacionpropietario SET activo = 0 WHERE tm_idfacturacion = idfactura and activo = 1;
  227.  
  228.                 UPDATE tm_facturacion SET activo = 0  WHERE tm_idfacturacion = idfactura and activo = 1;
  229.        
  230.                 UPDATE td_conceptosfacturacion SET activo = 0  WHERE tm_idfacturacion = idfactura and activo = 1;
  231.  
  232.             END IF;
  233.  
  234.             areadepartamento := rPropiedad.tm_area;
  235.      
  236.             SELECT 'FN' || LPAD((COUNT(*) + 1)::TEXT, 13, '0') INTO codigofactura FROM tm_facturacion;
  237.             SELECT prefijoproyecto || anho::character varying || mes::character varying || LPAD((COUNT(*) + 1)::TEXT, 10, '0') INTO correlativofacturacion FROM tm_facturacion WHERE activo = 1;
  238.            
  239.             --- Se Calcula el porcentaje de participación y se graba en la cabecera de la factura
  240.             IF tipovalorizacion = '00' THEN
  241.                 ratioProp := round(1/cantidadPropiedades,4);
  242.             ELSE
  243.                 select porcentaje into ratioProp from pa_porcentaje_participacion(rPropiedad.tm_idpropiedad, idproyecto, AreaProyecto);
  244.             END IF;
  245.  
  246.             INSERT INTO tm_facturacion (tm_idfacturacion, tm_codigo, tm_idproyecto, tm_per_ano, tm_per_mes, tm_ratio, tm_idmoneda, tm_tipo_cambio,  tm_fechaemision, tm_fechavencimiento, tm_fechatope, tm_importefacturado, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  247.             VALUES (codigofactura, correlativofacturacion, idproyecto, anho, mes, ratioProp, codigomoneda, tipocambio, CURRENT_TIMESTAMP, fechavencimiento, fechatope, 0, 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP);
  248.      
  249.      
  250.             INSERT INTO td_facturacionpropietario (td_idfacturacionpropietario, tm_idpropietario, tm_idfacturacion, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  251.             SELECT 'FP' || LPAD(( countfactpropietario + NEXTVAL('temp_seq'))::TEXT, 13, '0'), oldtable.tm_idtipopropietario, codigofactura, 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP
  252.             FROM (SELECT * FROM vstpropietario AS propt
  253.                     INNER JOIN td_propiedadpropietario AS b ON propt.tm_idtipopropietario = b.tm_idpropietario AND b.tm_idpropiedad = rPropiedad.tm_idpropiedad
  254.             ORDER BY propt.tm_idtipopropietario) AS oldtable;
  255.            
  256.             SELECT areadepartamento + SUM(a.tm_area) INTO areapropiedad FROM tm_propiedad AS a WHERE tm_idpropiedadrelacionada = rPropiedad.tm_idpropiedad AND a.tm_idtipopropiedad <> 'DPT' AND a.activo = 1;
  257.      
  258.            
  259.             FOR rConcepto IN SELECT a.tm_idconcepto, a.tm_definicion_formula, a.tm_esformula, a.tm_escalonable, a.tm_ascensor FROM tm_concepto AS a WHERE a.tm_idproyecto = idproyecto AND a.ta_tipoconcepto = '02' AND a.activo = 1 LOOP
  260.      
  261.                 SELECT 'CF' || LPAD((COUNT(*) + 1)::TEXT, 13, '0') INTO codigoconceptofact FROM td_conceptosfacturacion;
  262.                
  263.                 IF rConcepto.tm_escalonable = 1 THEN
  264.                   SELECT td_consumoperiodo INTO consumomes FROM td_consumoescalonable WHERE tm_idconcepto = rConcepto.tm_idconcepto AND tm_idproyecto = idproyecto AND tm_idpropiedad = rPropiedad.tm_idpropiedad AND tm_per_mes = mes AND tm_per_ano = anho;
  265.      
  266.                   consumomes := COALESCE(consumomes, 0.0);
  267.      
  268.                   SELECT a.pagoconsumo INTO valorconcepto FROM pa_conceptoescalonable_calcular(rConcepto.tm_idconcepto, consumomes) AS a;
  269.                 ELSE
  270.                     IF rConcepto.tm_ascensor = 1 THEN
  271.                         SELECT a.facturarconcepto INTO valorconcepto  FROM pa_facturacion_ascensor(idproyecto, rPropiedad.tm_idpropiedad, anho, mes, idusuario) AS a;          
  272.                     ELSE
  273.                         IF rConcepto.tm_esformula = 1 THEN
  274.                            IF tipovalorizacion = '00' THEN
  275.                               SELECT a.facturarconcepto INTO valorconcepto  FROM pa_facturacion_equitativa(rConcepto.tm_idconcepto, rPropiedad.tm_idpropiedad, idproyecto, mes, anho, cantidadPropiedades) AS a;
  276.                            ELSE
  277.                               SELECT a.facturarconcepto INTO valorconcepto FROM pa_facturacion_calcular(rConcepto.tm_idconcepto, rPropiedad.tm_idpropiedad, idproyecto, AreaProyecto, mes, anho) AS a;
  278.                            END IF;
  279.                         ELSE
  280.                            valorconcepto := 0.0;
  281.                         END IF;
  282.                     END IF;
  283.                 END IF;
  284.                
  285.                 INSERT INTO td_conceptosfacturacion  (td_idconceptofacturacion, tm_idproyecto, tm_idfacturacion, tm_per_ano, tm_per_mes, tm_idpropiedad, tm_idconcepto, td_valorconcepto, ta_tiporesultado, activo, idusuarioreg, fechareg, idusuarioact, fechaact)
  286.                 VALUES (codigoconceptofact, idproyecto, codigofactura, anho, mes, rPropiedad.tm_idpropiedad, rConcepto.tm_idconcepto, valorconcepto, '01', 1, idusuario, CURRENT_TIMESTAMP, idusuario, CURRENT_TIMESTAMP);
  287.      
  288.             END LOOP;
  289.      
  290.             SELECT SUM(td_valorconcepto) INTO importefacturado FROM td_conceptosfacturacion WHERE tm_idfacturacion = codigofactura;
  291.  
  292.             UPDATE tm_facturacion SET tm_importefacturado = importefacturado  WHERE tm_idfacturacion = codigofactura;
  293.      
  294.         END LOOP;
  295.     END IF;
  296.     DROP SEQUENCE temp_seq;
  297.  
  298.     rpta := '1';
  299.     titulomsje := 'Generado correctamente';
  300.     contenidomsje := 'La operaci&oacute;n se realiz&oacute; correctamente';
  301. END;
  302. $BODY$
  303.   LANGUAGE plpgsql VOLATILE
  304.   COST 100;
  305. ALTER FUNCTION pa_facturacion_generar(character varying, smallint, character varying, smallint, smallint, timestamp without time zone, timestamp without time zone, character varying, numeric, integer)
  306.   OWNER TO postgres;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement