Advertisement
Guest User

Untitled

a guest
Jun 7th, 2019
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 2.42 KB | None | 0 0
  1. CREATE OR REPLACE FUNCTION sre_recaudaciones.sre_fac_val_tipo_envase_recepcion_manual(p_json json)                                     
  2.  RETURNS SMALLINT
  3.  LANGUAGE plpgsql
  4. AS $function$
  5. /**************************************************************************************************************************************************
  6. FUNCIONALIDAD : <Descripcion>
  7. PARAMETROS INGRESO
  8.     <Descripcion>
  9. PARAMETROS SALIDA
  10.     <Descripcion>
  11. SUBSISTEMA : Facturación
  12. FECHA CREACION : <dd/mm/yyyy>
  13. AUTOR : Equipo Tully
  14. VERSION : 1.0
  15. **************************************************************************************************************************************************/
  16. /**************************************************************************************************************************************************
  17. MODIFICACIONES:  <Descripcion>
  18. NUMERO SECUENCIAL : <Numero secuencial>
  19. FECHA DE MODIFICACION :<dd/mm/yyyy>
  20. AUTOR DE LA MODIFICACION : :<Nombre y apellido>
  21. VERSION : <Numero Version secuencial>
  22. **************************************************************************************************************************************************/
  23. DECLARE  
  24.   p_tipo_envase VARCHAR:=(SELECT CAST(p_json->'XmlFactura'->'factura'->'cabecera'->>'tipoEnvase' AS VARCHAR));
  25.   v_tipo_envase_descripcion VARCHAR :='';
  26.   v_resultado SMALLINT :=1000;  
  27. BEGIN  
  28.         CASE
  29.                 WHEN(p_tipo_envase='T') THEN
  30.                         v_tipo_envase_descripcion = 'BOTELLAS';    
  31.        
  32.                 WHEN(p_tipo_envase='B') THEN
  33.                         v_tipo_envase_descripcion = 'BIDONES';  --adicionar bidones en transversales
  34.                    
  35.                 WHEN(p_tipo_envase='O') THEN
  36.                         v_tipo_envase_descripcion = 'OTROS';   
  37.                         ELSE
  38.                     RETURN 'ERROR'; --Etapa inexistente
  39.         END CASE;
  40.  
  41.            
  42.      v_resultado := COALESCE((SELECT sre_recaudaciones.sre_fac_par_codigo_respuesta('codigo_exito')
  43.                           FROM str_transversales.str_cps_clasificadores c
  44.                           WHERE c.descripcion = v_tipo_envase_descripcion
  45.                            limit 1)
  46.                            ,
  47.                            (SELECT sre_recaudaciones.sre_fac_ope_obtener_codigo_error('sre_fac_val_caed_factura_manual'))---CREAR UN ERROR
  48.                          );
  49.                  
  50.     RETURN v_resultado;    
  51.   EXCEPTION
  52.   WHEN OTHERS
  53.     THEN
  54.       RETURN (SELECT sre_recaudaciones.sre_fac_val_tipo_envase_recepcion_manual(SQLSTATE, SQLERRM, 'sre_fac_val_tipo_envase_recepcion_manual'));
  55. END;
  56. $function$;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement