/* $Id$ */
/*============================================================================*
 |                 Copyright (c) 2014 Applaud Solutions UK Ltd                |
 |                             All rights reserved                            |
 *===========================================================================*/

SET VERIFY OFF
SET FEEDBACK OFF
WHENEVER OSERROR  EXIT FAILURE ROLLBACK
WHENEVER SQLERROR EXIT FAILURE ROLLBACK

DECLARE
  e_obj_not_exists EXCEPTION;
  PRAGMA EXCEPTION_INIT(e_obj_not_exists, -04043);
BEGIN
  BEGIN
    EXECUTE IMMEDIATE 'DROP TYPE xxas_com_fields FORCE';
  EXCEPTION
    WHEN e_obj_not_exists THEN
      NULL;
  END;
  BEGIN
    EXECUTE IMMEDIATE 'DROP TYPE xxas_com_fields_list FORCE';
  EXCEPTION
    WHEN e_obj_not_exists THEN
      NULL;
  END;
  BEGIN
    EXECUTE IMMEDIATE 'DROP TYPE xxas_com_li_items FORCE';
  EXCEPTION
    WHEN e_obj_not_exists THEN
      NULL;
  END;
  BEGIN
    EXECUTE IMMEDIATE 'DROP TYPE xxas_com_li_item FORCE';
  EXCEPTION
    WHEN e_obj_not_exists THEN
      NULL;
  END;
END;
/

CREATE OR REPLACE TYPE xxas_com_fields AS OBJECT
  (type                     VARCHAR2(100)
  ,label                    VARCHAR2(100)
  ,value                    CLOB);
/
  
CREATE TYPE xxas_com_fields_list AS TABLE OF xxas_com_fields;

/

CREATE OR REPLACE TYPE xxas_com_li_item AS OBJECT
  (name                     VARCHAR2(4000)
  ,value                    VARCHAR(4000));
/
  
CREATE TYPE xxas_com_li_items AS TABLE OF xxas_com_li_item;

/
COMMIT;
EXIT;
