TEXT
PACKAGE ABM AS 
/**	
    NOM DEL PAQUET: ABM
    FUNCIONALITAT: Proporciona les operaciones necessàries per fer les altes, les baixes i les modificacions de JUGADORS, CONTRACTES i PARTITS.
**/


  /** NOM DEL PROCEDIMENT: jugador_alta
      FUNCIONALITAT: Permet donar d'alta un jugador 
      PARÀMETRES D'ENTRADA: excepte JUGADOR_ID, tots els camps de la taula JUGADOR
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/
  procedure jugador_alta(
    p_NACIONALITAT_ID     IN JUGADOR.NACIONALITAT_ID%type, 
    p_FEDERACIO_ID        IN JUGADOR.FEDERACIO_ID%type ,
    p_NUMERO_FEDERAT      IN JUGADOR.NUMERO_FEDERAT%type ,
    p_NOM                 IN JUGADOR.NOM%type ,
    p_DATA_NAIXEMENT      IN JUGADOR.DATA_NAIXEMENT%type ,
    p_ALÇADA              IN JUGADOR.ALÇADA%type ,
    p_PES                 IN JUGADOR.PES%type ,
    p_POSICIO_ID          IN JUGADOR.POSICIO_ID%type ,
    p_REPRESENTANT_ID     IN JUGADOR.REPRESENTANT_ID%type ,
    p_URL_WEB             IN JUGADOR.URL_WEB%type DEFAULT NULL ,
    p_URL_VIDEO_PROMOCIO  IN JUGADOR.URL_VIDEO_PROMOCIO%type DEFAULT NULL ,
    p_ACTIVITAT_ID        IN JUGADOR.ACTIVITAT_ID%type ,
    p_ESTAT_ID            IN JUGADOR.ESTAT_ID%type ,
    p_SUB_ESTAT_ID        IN JUGADOR.SUB_ESTAT_ID%type ,
    p_DIAGNOSTIC          IN JUGADOR.DIAGNOSTIC%type DEFAULT NULL ,
    p_DATA_DISPONIBILITAT IN JUGADOR.DATA_DISPONIBILITAT%type DEFAULT NULL ,
    p_GENERE_ID           IN JUGADOR.GENERE_ID%type ,
    p_modalitat_id        in jugador.modalitat_id%type ,
    RSP OUT LOG_CRIDES.RSP%TYPE);
  
  
  /** NOM DEL PROCEDIMENT: jugador_baixa
      FUNCIONALITAT: Permet donar de baixa un jugador 
      PARÀMETRES D'ENTRADA: p_JUGADOR_ID
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/
  procedure jugador_baixa(
    p_JUGADOR_ID          IN JUGADOR.JUGADOR_ID%type ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: jugador_baixa
      FUNCIONALITAT: Permet donar de baixa un jugador 
      PARÀMETRES D'ENTRADA: FEDERACIO_ID, NUMERO_FEDERAT
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/  
  procedure jugador_baixa(
    p_FEDERACIO_ID   IN JUGADOR.FEDERACIO_ID%type ,
    p_NUMERO_FEDERAT IN JUGADOR.NUMERO_FEDERAT%type ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: jugador_modificació
      FUNCIONALITAT: Permet modificar un jugador 
      PARÀMETRES D'ENTRADA: Tots camps de JUGADOR
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/   
  procedure jugador_modificació(
    p_JUGADOR_ID          IN JUGADOR.JUGADOR_ID%type ,
    p_NACIONALITAT_ID     IN JUGADOR.NACIONALITAT_ID%type, 
    p_FEDERACIO_ID        IN JUGADOR.FEDERACIO_ID%type ,
    p_NUMERO_FEDERAT      IN JUGADOR.NUMERO_FEDERAT%type ,
    p_NOM                 IN JUGADOR.NOM%type ,
    p_DATA_NAIXEMENT      IN JUGADOR.DATA_NAIXEMENT%type ,
    p_ALÇADA              IN JUGADOR.ALÇADA%type ,
    p_PES                 IN JUGADOR.PES%type ,
    p_POSICIO_ID          IN JUGADOR.POSICIO_ID%type ,
    p_REPRESENTANT_ID     IN JUGADOR.REPRESENTANT_ID%type ,
    p_URL_WEB             IN JUGADOR.URL_WEB%type DEFAULT NULL ,
    p_URL_VIDEO_PROMOCIO  IN JUGADOR.URL_VIDEO_PROMOCIO%type DEFAULT NULL ,
    p_ACTIVITAT_ID        IN JUGADOR.ACTIVITAT_ID%type ,
    p_ESTAT_ID            IN JUGADOR.ESTAT_ID%type ,
    p_SUB_ESTAT_ID        IN JUGADOR.SUB_ESTAT_ID%type ,
    p_DIAGNOSTIC          IN JUGADOR.DIAGNOSTIC%type DEFAULT NULL ,
    p_DATA_DISPONIBILITAT IN JUGADOR.DATA_DISPONIBILITAT%type DEFAULT NULL ,
    p_GENERE_ID           IN JUGADOR.GENERE_ID%type ,
    p_MODALITAT_ID        IN JUGADOR.MODALITAT_ID%type ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: contracte_alta
      FUNCIONALITAT: Permet donar d'alta un contracte
      PARÀMETRES D'ENTRADA: excepte CONTRACTE_ID, tots els camps de la taula CONTRACTE
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/
  procedure contracte_alta(
    p_DATA_SIGNATURA              IN CONTRACTE.DATA_SIGNATURA%type ,
    p_JUGADOR_ID                  IN CONTRACTE.JUGADOR_ID%type ,
    p_EQUIP_COMPRADOR_ID          IN CONTRACTE.EQUIP_COMPRADOR_ID%type ,
    p_EQUIP_VENEDOR_ID            IN CONTRACTE.EQUIP_VENEDOR_ID%type ,
    p_DURADA_CONTRACTE            IN CONTRACTE.DURADA_CONTRACTE%type ,
    p_SALARI_BRUT_ANUAL           IN CONTRACTE.SALARI_BRUT_ANUAL%type ,
    p_COMPENSACIO_A_EQUIP_VENEDOR IN CONTRACTE.COMPENSACIO_A_EQUIP_VENEDOR%type ,
    p_REPRESENTANT_ID             IN CONTRACTE.REPRESENTANT_ID%type,
    p_DATA_FINAL_CONTRACTE        IN CONTRACTE.DATA_FINAL_CONTRACTE%type ,
    p_ULTIM                       IN CONTRACTE.ULTIM%type ,
    p_PRIMERA_TEMPORADA_ID        IN CONTRACTE.PRIMERA_TEMPORADA_ID%TYPE ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: contracte_baixa
      FUNCIONALITAT: Permet donar de baixa un contracte 
      PARÀMETRES D'ENTRADA: CONTRACTE_ID
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/  
  procedure contracte_baixa(
    p_CONTRACTE_ID                IN CONTRACTE.CONTRACTE_ID%type ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: contracte_modificacio
      FUNCIONALITAT: Permet modificar un contracte 
      PARÀMETRES D'ENTRADA: Tots camps de la taula CONTRACTE
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/  
  procedure contracte_modificacio(
    p_CONTRACTE_ID                IN CONTRACTE.CONTRACTE_ID%type ,
    p_DATA_SIGNATURA              IN CONTRACTE.DATA_SIGNATURA%type ,
    p_JUGADOR_ID                  IN CONTRACTE.JUGADOR_ID%type ,
    p_EQUIP_COMPRADOR_ID          IN CONTRACTE.EQUIP_COMPRADOR_ID%type ,
    p_EQUIP_VENEDOR_ID            IN CONTRACTE.EQUIP_VENEDOR_ID%type ,
    p_DURADA_CONTRACTE            IN CONTRACTE.DURADA_CONTRACTE%type ,
    p_SALARI_BRUT_ANUAL           IN CONTRACTE.SALARI_BRUT_ANUAL%type ,
    p_COMPENSACIO_A_EQUIP_VENEDOR IN CONTRACTE.COMPENSACIO_A_EQUIP_VENEDOR%type ,
    p_VALOR_OPERACIO              IN CONTRACTE.VALOR_OPERACIO%type ,
    p_REPRESENTANT_ID             IN CONTRACTE.REPRESENTANT_ID%type,
    p_DATA_FINAL_CONTRACTE        IN CONTRACTE.DATA_FINAL_CONTRACTE%type ,
    p_ULTIM                       IN CONTRACTE.ULTIM%type , 
    p_PRIMERA_TEMPORADA_ID        IN CONTRACTE.PRIMERA_TEMPORADA_ID%TYPE ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: partit_alta
      FUNCIONALITAT: Permet donar d'alta un partit
      PARÀMETRES D'ENTRADA: excepte PARTIT_ID, tots els camps de la taula PARTIT
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/  
  procedure partit_alta(
    p_DATA_HORA         IN PARTIT.DATA_HORA%type ,
    p_MUNICIPI          IN PARTIT.MUNICIPI%type ,
    p_PAVELLO           IN PARTIT.PAVELLO%type ,
    p_EQUIP_LOCAL_ID    IN PARTIT.EQUIP_LOCAL_ID%type ,
    p_EQUIP_VISITANT_ID IN PARTIT.EQUIP_VISITANT_ID%type ,
    p_COMPETICIO_ID     IN PARTIT.COMPETICIO_ID%type ,
    p_ARBITRE_P_ID      IN PARTIT.ARBITRE_P_ID%type ,
    p_L1_ID             IN PARTIT.L1_ID%type ,
    p_L2_ID             IN PARTIT.L2_ID%type ,
    p_L3_ID             IN PARTIT.L3_ID%type ,
    p_L4_ID             IN PARTIT.L4_ID%type ,
    p_L5_ID             IN PARTIT.L5_ID%type ,
    p_L6_ID             IN PARTIT.L6_ID%type ,
    p_L7_ID             IN PARTIT.L7_ID%type ,
    p_L8_ID             IN PARTIT.L8_ID%type ,
    p_L9_ID             IN PARTIT.L9_ID%type ,
    p_L10_ID            IN PARTIT.L10_ID%type ,
    p_L11_ID            IN PARTIT.L11_ID%type ,
    p_L12_ID            IN PARTIT.L12_ID%type ,
    p_V1_ID             IN PARTIT.V1_ID%type ,
    p_V2_ID             IN PARTIT.V2_ID%type ,
    p_V3_ID             IN PARTIT.V3_ID%type ,
    p_V4_ID             IN PARTIT.V4_ID%type ,
    p_V5_ID             IN PARTIT.V5_ID%type ,
    p_V6_ID             IN PARTIT.V6_ID%type ,
    p_V7_ID             IN PARTIT.V7_ID%type ,
    p_V8_ID             IN PARTIT.V8_ID%type ,
    p_V9_ID             IN PARTIT.V9_ID%type ,
    p_V10_ID            IN PARTIT.V10_ID%type ,
    p_V11_ID            IN PARTIT.V11_ID%type ,
    p_V12_ID            IN PARTIT.V12_ID%type ,
    p_ARBITRE_AUX1_ID   IN PARTIT.ARBITRE_AUX1_ID%type ,
    p_ARBITRE_AUX2_ID   IN PARTIT.ARBITRE_AUX2_ID%type ,
    p_ARBITRE_AUX3_ID   IN PARTIT.ARBITRE_AUX3_ID%type DEFAULT NULL ,
    RSP OUT varchar2);

  
  /** NOM DEL PROCEDIMENT: partit_baixa
      FUNCIONALITAT: Permet donar de baixa un partit 
      PARÀMETRES D'ENTRADA: PARTIT_ID
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/
  procedure partit_baixa(
    p_PARTIT_ID         IN PARTIT.PARTIT_ID%type ,
    RSP OUT varchar2);


  /** NOM DEL PROCEDIMENT: partit_modificacio
      FUNCIONALITAT: Permet modificar un partit 
      PARÀMETRES D'ENTRADA: Tots els camps de la taula PARTIT
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/  
  procedure partit_modificacio(
    p_PARTIT_ID         IN PARTIT.PARTIT_ID%type ,
    p_DATA_HORA         IN PARTIT.DATA_HORA%type ,
    p_MUNICIPI          IN PARTIT.MUNICIPI%type ,
    p_PAVELLO           IN PARTIT.PAVELLO%type ,
    p_EQUIP_LOCAL_ID    IN PARTIT.EQUIP_LOCAL_ID%type ,
    p_EQUIP_VISITANT_ID IN PARTIT.EQUIP_VISITANT_ID%type ,
    p_COMPETICIO_ID     IN PARTIT.COMPETICIO_ID%type ,
    p_ARBITRE_P_ID      IN PARTIT.ARBITRE_P_ID%type ,
    p_L1_ID             IN PARTIT.L1_ID%type ,
    p_L2_ID             IN PARTIT.L2_ID%type ,
    p_L3_ID             IN PARTIT.L3_ID%type ,
    p_L4_ID             IN PARTIT.L4_ID%type ,
    p_L5_ID             IN PARTIT.L5_ID%type ,
    p_L6_ID             IN PARTIT.L6_ID%type ,
    p_L7_ID             IN PARTIT.L7_ID%type ,
    p_L8_ID             IN PARTIT.L8_ID%type ,
    p_L9_ID             IN PARTIT.L9_ID%type ,
    p_L10_ID            IN PARTIT.L10_ID%type ,
    p_L11_ID            IN PARTIT.L11_ID%type ,
    p_L12_ID            IN PARTIT.L12_ID%type ,
    p_V1_ID             IN PARTIT.V1_ID%type ,
    p_V2_ID             IN PARTIT.V2_ID%type ,
    p_V3_ID             IN PARTIT.V3_ID%type ,
    p_V4_ID             IN PARTIT.V4_ID%type ,
    p_V5_ID             IN PARTIT.V5_ID%type ,
    p_V6_ID             IN PARTIT.V6_ID%type ,
    p_V7_ID             IN PARTIT.V7_ID%type ,
    p_V8_ID             IN PARTIT.V8_ID%type ,
    p_V9_ID             IN PARTIT.V9_ID%type ,
    p_V10_ID            IN PARTIT.V10_ID%type ,
    p_V11_ID            IN PARTIT.V11_ID%type ,
    p_V12_ID            IN PARTIT.V12_ID%type ,
    p_ARBITRE_AUX1_ID   IN PARTIT.ARBITRE_AUX1_ID%type ,
    p_ARBITRE_AUX2_ID   IN PARTIT.ARBITRE_AUX2_ID%type ,
    p_ARBITRE_AUX3_ID   IN PARTIT.ARBITRE_AUX3_ID%type DEFAULT NULL ,
    RSP OUT varchar2);

    
  /** NOM DEL PROCEDIMENT: inserta_log
      FUNCIONALITAT: Permet fer un registre dels procediments cridats, els paràmetres d'entrada i els de sortida
      PARÀMETRES D'ENTRADA: paquet del procediment que crida al log
                            procediment que crida al log
                            entrada: paràmetres d'entrada al procediment que crida al log
                            sortida: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
                            inici: moment en que comença el procediment que crida al log
                            final: moment en que acaba el procediment que crida al log
      PARÀMETRES DE SORTIDA: RSP, indica si l'execució ha finalitzat amb èxit (valor 'OK') o no (valor 'ERROR + TIPUS D'ERROR')
  **/  
  procedure inserta_log(
    p_paquet IN varchar2, 
    p_procediment IN varchar2, 
    p_entrada IN varchar2, 
    p_sortida IN varchar2, 
    p_inici IN timestamp, 
    p_final IN timestamp);
END ABM;