Home
MANUAL TECNICO - Repositorio CISC
Contents
1. CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP CANAL CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK Nulo 1 CNL CODIGO Varchar2 3 C digo del canal X 2 DESCRIPCIONL Varchar2 50 Uescripcion Identifica el tipo 3 CNL TIPO CANAL Varchar2 1 decanal Define el CNL_PORC_ porcentaje de COMISION CANAL Number comisi n por canal 54 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP RANGO VENTAS CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK Nulo C digo de rango 1 RNV COD RANGO VENTAS Varchar2 4 Ventas aplicado y al pago de comisiones Identifica l mite inferior 2 LIMITE INFERIOR Number 6 2 correspondiente al rango de venta Identifica l mite superior 3 RNV LIMITE SUPERIOR Number 6 2 correspondiente al rango de ventas Espec fica 4 RN
2. 56 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Marzo 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos CRM OFERTA SERVICIO CRM Referencial Descripci n Descripci n de Campos Identifica secuencial del item que Sen forma parte del paquete promocional OSR COD OFERTA C digo del servicio que OSR_COD_ITEM Number forma parte del paquete promocional Identifca el precio del OSR PRECIO ITEM pum item por servicio 57 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos CRM VOP VISITAS Referencial Descripci n Descripci n de Campos o FK Secuencial que identifica las visitas realizadas por NOT CONTRO Number determinado cliente y determinado servicio VST ID VISITA VST CODIGO CLIENTE VST OBSERVACION C digo de la visita C digo del cliente Espec fica el motivo de la visita o el porqu se encuentra pendiente m VST FECHA Date ASIGNACION VST FECHA VISITA Estado de visita VST ESTADO Varchar2 1 asignada V
3. VI CADUCIDAD CRM CONTRATO CLIENTE CTC CADUCIDAD96TYPE VI FEC CONTRATO IN CRM CONTRATO CLIENTE CTC FECHA MIN VI FEC RECISION IN CRM CONTRATO CLIENTE CTC FECHA VI COD VENDEDOR IN CRM VOP CONTRATO CLIENTE CTC COD VI COD FORMA PAGO IN CRM VOP CONTRATO CLIENTE CTC COD FORMA VI TIPO CONTRATO CRM CONTRATO CLIENTE CTC TIPO VI CODIGO CICLO IN CRM CONTRATO CLIENTE CTC CODIGO VI COD TIPO BAJA IN CRM VOP CONTRATO CLIENTE CTC COD TIPO BAJA TYPE 137 PROCEDURE VOP_P_ACTUALIZAR_SERV_CONT VI COD CONTRATO IN CRM SERV CONT SEC COD VI CODCLIENTE IN CRM SERV VI CODIGO SERV IN CRM SERV CONT SEC CODIGO VI SEC FECHA ACTIVACION IN CRM SERV CONT SEC FECHA VI SEC FECHA FINAL IN CRM SERV CONT SEC FECHA FINAL9 6TYPE VI PRECIO SERV IN CRM SERV CONT SEC PRECIO VI ESTADO IN CRM SERV CONT SEC VI COD TIPO BAJA IN CRM VOP SERV CONT SEC COD TIPO end VOP_K_REGISTRA_CONTRATO create or replace package body VOP_K_REGISTRA_CONTRATO is FUNCTION VOP_F_GENERA_CODIGO_VENTA VO_COD_V
4. BEGIN VL NUM ITEM 0 SELECT MAX OFR OSR NUM ITEM INTO VL NUM ITEM FROM CRM VOP OFERTA SERVICIO OFR IF VL NUM ITEM IS NULL THEN VL NUM ITEM 0 END IF VL NUM ITEM VL NUM INSERT INTO CRM VOP OFERTA SERVICIO OSR NUM ITEM OSR COD OFERTA OSR COD ITEM OSR PRECIO ITEM VALUES VL NUM ITEM VI COD OFERTA VI COD ITEM VI PRECIO ITEM END VOP_P_INSERTAR_OFERTA_SERVICIO 100 1 8 3 Paquetes almacenados 1 8 3 1 Paquete para c lculo de comisiones CREATE OR REPLACE PACKAGE VOP_K_COMISIONAR IS FUNCTION VOP_F_NUM_SECUENCIAL_CMS VO_CODIGO_CMS OUT CRM_VOP_COMISION_MULTA CMS_COD_COMISIONES TYPE RETURN CRM_VOP_COMISION_MULTA CMS_COD_COMISIONES TYPE FUNCTION VOP_F_CALCULAR_COM_SERV VI CODIGO VENDEDOR IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VALOR SERV CRM ADM PARAMETROS PRM VALOR SERV MIN VO VALOR COMISION OUT CRM_VOP_VENTA VTS_VALOR9 TYPE RETURN CRM VENTA VTS FUNCTION CALCULAR COM CANAL CODIGO VENDEDOR IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI CODIGO CRM CANAL CNL VO VALOR COMISION OUT CRM_VOP_VENTA VTS_VALOR9 TYPE RETURN CRM VENTA VTS FUNCTION VOP CALCULAR COM VI CODIGO VENDEDOR IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VO VALOR COMISION OUT CRM VENTA VTS RETURN CRM VENT
5. FACTURA CFAC RETURN CRM CAB FACTURA CFAC IS 123 V total factura CRM_VOP_CAB_FACTURA CFAC_TOTAL TYPE total abonado CRM CAB FACTURA CFAC VALOR v porcentaje CRM ADM PARAMETROS PRM INTERES begin VO 0 SELECT par prm interes mora INTO v porcentaje FROM crm adm parametros par IF V PORCENTAJE IS NULL THEN PORCENTAJE 0 END IF SELECT SUM NVL cfa cfac total 0 SUM NVL cfa cfac valor 0 INTO v total factura v total abonado FROM CRM VOP CAB FACTURA cfa WHERE cfa cfac cod cliente vi cod cliente AND cfa cfac fecha vencimiento sysdate AND cfa cfac estado in D A IF V TOTAL FACTURA IS NULL THEN V TOTAL FACTURA 0 END IF IF V TOTAL ABONADO IS NULL THEN V TOTAL ABONADO 0 END IF vo recargo total factura v total abonado v porcentaje return vo recargo end CALCULAR SUBTOTAL FACTURA function VOP F CALCULAR SUBTOTAL FACT VI CODCLIENTE IN CRM CONTRATO CODCLIENTE 6TYPE VI COD CONTRATO IN CRM CONTRATO 124 VO SUBTOTAL OUT CRM_VOP_CAB_FACTURA CFAC_SUBTOTAL TYPE return CRM_VOP_CAB_FACTURA CFAC_SUBTOTAL TYPE is begin VO_SUBTOTAL 0 SELECT SUM SC SEC_PRECIO_SERV INTO VO_SUBTOTAL FROM CRM_VOP_CONTRATO_CLIENTE CC CRM_VOP_SERV_CONT SC WHERE
6. VOP _FACTURA CFAC_ICE TYPE V RECARGO V TOTAL CRM CAB FACTURA CFAC _ V OBSERVACION VL_VALOR_PRORRATEADO NUMBER VL_DIA_INICIO_CICLO NUMBER VL_DIA_FIN_CICLO NUMBER VL MES NUMBER VL NUMBER VL FECHA INICIO CICLO DATE VL FECHA FIN CICLO DATE VL RESPUESTA VARCHAR2 2 131 begin V_ANT_CODCONT 0 V_SUBTOTAL 0 V_MONIVA 0 V_MONICE 0 V RECARGO 0 V TOTAL 0 VL VALOR PRORRATEADO 0 FOR C IN CU CONTRATO LOOP Verificar si este contrato pertenece al ciclo indicado VL_RESPUESTA VOP_F_CONTRATO_CICLO_ANTERIOR C CTC_CODCONTRATO VL_RESP UESTA IF VL_RESPUESTA lt gt NO THEN SI EL CONTRATO SE PRORRATEA SE CALCULA SU VALOR Y SE LO PONE COMO VALOR DE RECARGO RESPUESTA PR THEN V CALCULAR SUBTOTAL FACT C CTC CODCLIENTE C CTC COD CONTRATO V SUBTOTAL 0 SELECT TO CHAR SYSDATE MM TO CHAR SYSDATE YYYY INTO VL MES VL ANIO FROM DUAL Obtener dia inicio fin del ciclo SELECT CF CIF DIA INICIO CICLO CF CIF DIA FIN CICLO INTO VL DIA INICIO CICLO VL DIA FIN CICLO FROM CRM VOP CICLO FACT CF CRM VOP CONTRATO CLIENTE CC WHERE CF CIF CODIGO CC CTC CODIGO CICLO AND CC CTC_CODCONTRATO C CTC_CODCONTRATO VL_FECHA_INICIO_CICLO VOP_F_CONSTRUYE_FECHA VL_
7. VI DIA FIN INCRM VOP CICLO FACT CIF DIA VI NUM DIAS FACT IN CRM CICLO FACT CIF NUM DIAS IS BEGIN UPDATE CRM VOP CICLO FACT SET DESCRIPCION VI DESCRIPCION CIF DIA INICIO CICLO VI DIA INICIO CICLO CIF DIA FIN CICLO VI DIA FIN CICLO DIA INICIO FACT VI DIA INICIO FACT DIA FIN FACT VI DIA FIN FACT CIF NUM DIAS FACT VI NUM DIAS FACT WHERE CODIGO VI CODIGO END VOP P ACTUALIZAR CICLO 71 1 8 2 3 Procedimiento VOP_P_ACTUALIZAR_OFERTA El siguiente procedimiento actualiza los datos de la oferta seleccionada correspondiente a la tabla CRM_VOP_OFERTA CREATE OR REPLACE PROCEDURE VOP_P_ACTUALIZAR_OFERTA VI COD OFERTA IN CRM OFERTA OFR COD OFERTA 6TYPE VI OFERTA IN CRM OFERTA OFR DESCRIPCION OFERTA 6TYPE VI FECHA INICIAL IN CRM VOP OFERTA OFR FECHA VI FECHA FINAL IN CRM OFERTA OFR FECHA FINAL 6TYPE VI COD SERVICIO IN CRM OFERTA OFR COD SERVICIO 6TYPE IS BEGIN UPDATE CRM OFERTA SET OFR COD OFERTA VI COD OFERTA OFR DESCRIPCION OFERTA VI DESCRIPCION OFERTA OFR FECHA INICIAL VI FECHA INICIAL OFR FECHA FINAL VI FECHA FINAL OFR COD SERVICIO VI COD SERVICIO WHERE OFR COD OFERTA VI COD OFERTA END VOP P ACTUALIZAR OFERTA 72 1 8 2 4 Procedimiento VOP P ACTUALIZAR PROSPECTO El siguiente procedimiento
8. CODIGO 2c EMP CODIGO ORDERBY a TLV CODIGO 151 RowSet crm vop canalRowSet Tabla CRM VOP CANAL Clase mantenimientoCanal mantenimientoVendedor edicionVisitas edicionContrato SELECT CNL CODIGO CNL_DESCRIPCIONL DECODE CNL CANAL Interno Externo TIPO CANAL CNL PORC COMISION CANAL FROM CRM CRM VOP CANAL ORDER BY CNL CODIGO RowSet crm vop vendedorRowSet Tabla CRM VOP VENDEDOR Clase mantenimientoTelefonoVendedor mantenimientoVendedor edicionVisitas consultaComisiones consultaVentas SELECT a VEN CODIGO b EMP NOMBRES b EMP APELLIDOS AS EMP APELLIDOS b EMP NOMBRES b EMP COD DEPARTAMENTO b EMP COD CARGO b EMP COD PROFESION b EMP_CEDULA b EMP_SEXO TO CHAR b EMP FECHA NACIMIENTO DD MM Y Y YY EMP FECHA NACIMIENTO b EMP ESTADO CIVIL b EMP DOMICILIO b EMP TELEFONO b EMP CELULAR b EMP EMAIL b EMP_SUELDO b EMP_JEFE b EMP_COD_AGENCIA a VEN_COD_TIPO_VENDEDOR a VEN_COD_RANGO_VENTAS a VEN_COD_CANAL a VEN COMISIONES CRM CRM_VOP_VENDEDOR a CRM CRM_ADM_EMPLEADOS b a VEN_CODIGO b EMP_CODIGO AND a VEN_ESTADO lt gt ORDER BY a VEN_CODIGO 152 RowSet crm adm tipo telefonoRowSet Tabla CRM ADM TIPO TELEFONO Clase mantenimientoTelefonoVendedor SELECT a TPT CODIGO a TPT DESCRIPCION FROM CRM CRM ADM TIPO TELEFONO a RowSet crm sco tipo cliente juridicoRowSet Tabla CRM SCO TIPO CLIENTE JURIDICO Clase edicionProspecto
9. 20 Los m todos de la clase DatosVop que contiene las invocaciones a procedimientos funciones y paquetes almacenados se clasifican en tres tipos y deben llevar el prefijo correspondiente a la funcionalidad dada Tipo de m todo Prefijo Ejemplo Inserci n DML_ Insertar DML InsertarCanal Actualizaci n DML Actualizar DML ActualizarCanal Eliminaci n DML Eliminar DML EliminarCanal 21 1 4 Implementaci n de c digo El m dulo consta del siguiente tipo de clases Clase para establecer conexi n a la base de datos 4 Conexi n Clases que contienen invocaciones a procedimientos funciones y paquetes de PL SQL 4 DatosVop 4 FuncionesVop Clases que contienen dise o de interfaz y gr fica Todas las que empiecen con los siguientes prefijos 4 Mantenimiento 4 Edici n 4 Consultas 4 Procesos Clases que manipulan tipos de datos similares a las tablas del sistema Sus nombres se asemejan a los que definen a las tablas Ej Canal Clase de validaciones de n meros ValidaNumeros 22 1 4 1 C digo de construcci n del men Este c digo est contenido en el m todo init de todas las p ginas public void init super init try init catch Exception e log AdmjspPlantilla Initialization Failure e throw e instanceof FacesException FacesException e new FacesException e if getVOPSessionBean1 isCrmSesion Limpiar y Crear Men cConsultarMenu o
10. VALUES VL_CODCONTRATO VI_CODCLIENTE VI_FECINICIO VI_FEC_CADUCIDAD VI_FEC_MIN_CONTRATO VI_COD_VENDEDOR VI_COD_FORMA_PAGO VI_TIPO_CONTRATO VI CODIGO CICLO VO_CODCONTRATO VL_CODCONTRATO RETURN VO CODCONTRATO END INSERTAR CONTRATO 142 143 PROCEDURE VOP_P_INSERTAR_SERV_CONT VI COD CONTRATO INCRM_VOP_SERV_CONT SEC_COD_CONTRATO TYPE VI CODCLIENTE IN CRM VOP SERV CONT SEC VI CODIGO SERV IN CRM SERV CONT SEC CODIGO VI SEC FECHA ACTIVACION IN CRM SERV CONT SEC FECHA VI SEC FECHA FINAL IN CRM VOP SERV CONT SEC FECHA 1 VI PRECIO SERV IN CRM SERV CONT SEC PRECIO IS VL PRECIO SERV CRM VOP SERV CONT SEC PRECIO BEGIN VL PRECIO SERV ROUND VI PRECIO 2 INSERT INTO CRM VOP SERV CONT SEC COD CONTRATO CODCLIENTE SEC CODIGO SERV SEC FECHA ACTIVACION SEC FECHA FINAL SEC PRECIO SERV SEC ESTADO VALUES VI COD CONTRATO VI CODCLIENTE VI CODIGO SERV VI SEC FECHA VI SEC FECHA FINAL VL PRECIO SERV A END VOP_P_INSERTAR_SERV_CONT PROCEDURE VOP P INSERTAR VENTA VI CODIGO IN CRM VENTA VTS CODIGO VI COD CONTRATO IN CRM VOP VENTA VTS CODIGO 144 VI CODIGO CANAL IN CRM_VOP_VENTA VTS_CODIGO_CANALY TYPE VI CODIGO FORMA P
11. WHEN VL MES INICIO 10 THEN OCT WHEN VL MES INICIO 11 THEN NOV WHEN VL MES INICIO 12 THEN DEC END VL FECHA TO CHAR VL DIA INICIO VL MESI TO CHAR VL INICIO END IF 111 IF VI TIPO CALCULO A THEN VL FECHA2 TO DATE TO CHAR VL DIA COMISIONA DEC CHAR SYSDATE YYYY SELECT TO NUMBER TO CHAR VL FECHA2 1 DD TO NUMBER TO CHAR VL 2 11 TO NUMBER TO CHAR VL FECHA2 YYYY INTO VL DIA INICIO VL MES INICIO VL INICIO FROM DUAL VL FECHA TO DATE TO CHAR VL DIA INICIO JAN TO CHAR VL INICIO END IF SELECT NVL SUM VT VTS VALOR 0 INTO VL TOTAL VTAS VEND FROM CRM VOP VENTA VT WHERE VT VTS FECHA BETWEEN VL AND VL FECHA2 IF VL TOTAL VTAS VEND IS NULL THEN VL TOTAL VTAS VEND 0 END IF FOR C IN CL RANGO VENTAS LOOP IF VL TOTAL VTAS VEND BETWEEN C RNV LIMITE INFERIOR AND C RNV LIMITE SUPERIOR AND C RNV TIPO META VI TIPO CALCULO THEN VL PORC COMISION 2C RNV PORCENTAJE COMISION ELSE VL PORC COMISION 0 END IF EXIT WHEN VL PORC COMISION lt gt 0 END LOOP VO COMISION RV VL TOTAL VTAS VEND VL PORC COMISION 100 RETURN VO COMISION RV END CALCULAR COM RV FUNCION CALCULAR MULTAS FUNCTION VOP F CALCULAR MULTA VI CODIGO IN CRM VENDEDOR VEN CODIGO 6TYPE VO VALOR MULTA OUT CRM VENTA VTS 112 RETURN CRM_VOP_VENTA VTS_VALORY TYPE IS FE
12. CONTRATO CLIENTE CTC FECHA VI COD VENDEDOR IN CRM CONTRATO CLIENTE CTC COD VI COD FORMA PAGO IN CRM VOP CONTRATO CLIENTE CTC COD FORMA VI TIPO CONTRATO CRM VOP CONTRATO TIPO VI CODIGO CICLO IN CRM CONTRATO CLIENTE CTC CODIGO VI COD TIPO BAJA 147 CRM_VOP_CONTRATO_CLIENTE CTC_COD_TIPO_BAJA TYPE IS VL FECHA RECISION CRM_VOP_CONTRATO_CLIENTE CTC_FECHA_RECISION TYPE VL TIPO VOP CONTRATO COD TIPO BEGIN VL FECHA RECISION VI FEC RECISION VL TIPO BAJA VI COD TIPO BAJA TIPO BAJA lt 0 THEN VL TIPO BAJA NULL END IF UPDATE CRM CONTRATO CLIENTE SET CODCLIENTE VI CODCLIENTE FEC INICIO VI FECINICIO FEC CADUCIDAD VI FEC CADUCIDAD FECHA CONTRATO VI FEC CONTRATO FECHA RECISION VL FECHA RECISION COD VENDEDOR VI COD VENDEDOR COD FORMA PAGO COD FORMA PAGO TIPO CONTRATO VI TIPO CONTRATO CODIGO CICLO VI CODIGO CICLO COD TIPO BAJA VL TIPO BAJA WHERE CTC_CODCONTRATO COD CONTRATO END VOP P CONTRATO PROCEDURE P ACTUALIZAR SERV CONT VI COD CONTRATO CRM SERV CONT SEC COD VI CODCLIENTE C
13. RowSet crm sco actividadRowSet Tabla CRM SCO ACTIVIDAD Clase edicionProspecto SELECT FROM CRM CRM SCO ACTIVIDAD 156 RowSet crm vop visitasRowSet Tabla CRM VOP VISITAS Clase edicionVisitas SELECT V VST CONTROL V VST ID VISITA b CLN NOMBRES b CLN APELLIDOS AS APELLIDOS NOMBRES APELLIDOS AS NOMBRES C CNL DESCRIPCIONL V VST CODIGO CLIENTE V VST CODIGO VENDEDOR V VST CODIGO CANAL TO CHAR V VST FECHA ASIGNACION DD MM Y YY Y VST FECHA ASIGNACION TO CHAR V VST FECHA VISITA DD MM YYYY VST FECHA VISITA DECODE VST ESTADO V Visitado Pendiente VST ESTADO V VST OBSERVACION CRM CRM VOP VISITAS V CRM CRM VENDEDOR VE CRM CRM ADM EMPLEADOS E CRM CRM VOP CANAL C CRM CRM SCO CLIENTES a 500 CLIENTE NATURAL b WHERE V VST CODIGO VENDEDOR VE VEN CODIGO AND V VST CODIGO CLIENTE a CLI CODIGO AND V VST CODIGO CANAL C CNL CODIGO AND VE VEN CODIGO E EMP CODIGO AND CODIGO b CLN ID UNION SELECT V VST CONTROL V VST ID VISITA b CLJ NOMB COM b CLJ_RAZON AS APELLIDOS NOMBRES APELLIDOS AS NOMBRES C CNL DESCRIPCIONL V VST CODIGO CLIENTE V VST CODIGO VENDEDOR V VST CODIGO CANAL TO CHAR V VST FECHA ASIGNACION DD MM Y YY Y VST FECHA ASIGNACION TO CHAR V VST FECHA VISITA DD MM YYYY VST FECHA VISITA DECODE VST ESTADO V Visitado Pendiente VST ESTADO V VST OBSERVACION CR
14. return false public static boolean isFloat try Float parseFloat numero return true catch NumberFormatException nfe return false public boolean isNumberString String validChars 0123456789 boolean isNumber true for int i 0 i lt numero length amp amp isNumber i char c numero charAt i if validChars indexOf c 1 isNumber false else isNumber true return isNumber 1 5 Diccionario de datos 36 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP CONTRATO CLIENTE CRM Transaccional Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n FK Nulo C digo de 1 CODCONTRATO Number contrato de X cliente 2 CTC CODCLIENTE Number C digo del cliente X X 3 CTC FEC INICIO Date Focha micie dal contrato Fecha de 4 CTC FEC CADUCIDAD Date caducidad del contrato Fecha m nima en que debe 5 CTC FECHA Date permanecer el MIN CONTRATO cliente en cumplimiento con el contrato Fecha en la que 6 CTC FECHA RECISION Date ciente puede renunciar al contrato C digo del vendedor que 7 CTC C
15. function VOP F CALCULAR ICE VI SUBTOTAL IN CRM VOP CAB FACTURA CFAC SUBTOTAL 6TYPE VO ICE OUT CRM FACTURA CFAC return CRM FACTURA CFAC function VOP F CALCULAR RECARGO vi cod cliente IN CRM FACTURA CFAC COD vo recargo OUT CRM FACTURA CFAC return CRM_VOP_CAB_FACTURA CFAC_RECARGO TYPE 119 FUNCTION VOP_F_CALCULAR_SUBTOTAL_FACT VI CODCLIENTE IN CRM_VOP_CONTRATO_CLIENTE CTC_CODCLIENTE TYPE VI COD CONTRATO IN CRM CONTRATO VO SUBTOTAL OUT CRM_VOP_CAB_FACTURA CFAC_SUBTOTAL TYPE RETURN CRM FACTURA CFAC SUBTOTAL 6TYPE FUNCTION VOP F CONSTRUYE FECHA VI DIA IN NUMBER VI INICIO FIN IN VARCHAR2 VI MES HOY IN NUMBER VI ANIO HOY IN NUMBER VO FECHA CONSTRUIDA OUT DATE RETURN DATE FUNCTION VOP CALCULAR PORRATEADO VI FECHA INICIO CONTRATO IN VARCHAR2 VI FECHA INICIO CICLO IN VARCHARZ2 VI FECHA FIN CICLO IN VARCHAR2 VI TARIFA BASICA IN NUMBER VO VALOR PRORRATEADO OUT NUMBER RETURN NUMBER FUNCTION CONTRATO CICLO ANTERIOR COD CONTRATO IN CRM CONTRATO VO RESPUESTA OUT VARCHAR2 RETURN VARCHAR2 PROCEDURE VOP P FACTURAR JOB PROCEDURE P FACTURAR VI CODIGO CLIENTE IN CRM SCO CLIENTES CLI
16. try pCon close catch SQLException se se printStackTrace 24 1 4 5 C digo para los botones de selecci n Las tablas creadas para visualizaci n de datos tienen en su primera columna botones de selecci n para tratar los datos de un registro seleccionado Se debe agregar el siguiente c digo en la p gina public String getFilaActual return tableRowGroup1 getRowKey getRowld private Object ultimoSeleccionado 0 public Object getRBSeleccionado String sv String radioButton1 getSelectedValue return sv equals ultimoSeleccionado sv null public void setRBSeleccionado Object seleccionado if seleccionado null ultimoSeleccionado seleccionado Y enlazar las siguientes propiedades con los valores indicados Propiedad Valor nombre grupoBoton selected RBSeleccionado selectedValue FilaActual 25 1 4 6 C digo para los controles calendario Al crear controles calendario para el manejo de fechas se deben crear los siguientes m todos en donde se definen los valores m nimos y m ximos que mostrar el calendario private Date minCalDate public Date getMinCalDate java util Calendar date java util Calendar getlnstance FacesContext getCurrentInstance getViewRoot getLocale date set java util Calendar HOUR DAY 0 date set java util Calendar MINUTE 0 date set java util Calendar SECOND 0 da
17. END VOP K FACTURAR 120 CREATE OR REPLACE PACKAGE BODY VOP_K_FACTURAR IS FUNCTION AND PROCEDURE IMPLEMENTATIONS OBTENER SECUENCIAL DE LA FACTURA FUNCTION VOP_F_NUM_SECUENCIAL_FACTURA VO_NUMFACTURA OUT CRM_VOP_CAB_FACTURA CFAC_NUM_FACTURA TYPE RETURN CRM_VOP_CAB_FACTURA CFAC_NUM_FACTURA TYPE IS BEGIN VO NUMFACTURA 0 SELECT MAX NVL CFAC NUM FACTURA 0 INTO VO NUMFACTURA FROM CRM CAB FACTURA IF VO NUMFACTURA IS NULL THEN VO NUMFACTURA 0 END IF VO NUMFACTURA VO NUMFACTURA 1 RETURN VO NUMFACTURA END OBTENER SECUENIAL DEL DETALLE FUNCTION VOP F NUM SECUENCIAL DETALLE VI NUMFACTURA IN CRM CAB FACTURA CFAC NUM VO SEQDETALLE OUT CRM DET FACTURA DFAC NUM RETURN CRM VOP DET FACTURA DFAC NUM IS CURSOR C REGISTROS IS SELECT MAX NVL DFAC NUM 0 INTO V SEQDETALLE FROM CRM VOP DET FACTURA WHERE DFAC NUM NUMFACTURA BEGIN VO SEQDETALLE 0 OPEN C REGISTROS LOOP FETCH REGISTROS INTO VO SEQDETALLE IF C_REGISTROS ROWCOUNT 0 THEN VO SEQDETALLE 0 END IF EXIT WHEN C_REGISTROS NOTFOUND END LOOP 121 IF VO SEQDETALLE IS NULL THEN VO SEQDETALLE 0 END IF VO SEQDETALLE VO 1 RETURN TO CHAR VO SEQDETALLE END EXISTE CONTRATO POR CLIENTE function VOP F EXISTE CLIENTECONTRATO VI CODIGO CRM SCO CLIENTES CLI CODIGO 6T
18. toString valor_com_rotacion Float parseFloat crm_vop_comision_multaDataProvider getValue CMS_VALOR_COMISIONES toString valor_com_incentivo Float parseFloat crm_vop_comision_multaDataProvider getValue CMS_VALOR_COMISIONES toString 34 fila fila 10 pagina drawString new Float valor toString 10 fila pagina drawString fecha 40 fila pagina drawString new Float valor_multa toString 70 fila pagina drawString new Float valor com canal toString 100 fila pagina drawString new Float valor com servicio toString 130 fila pagina drawString new Float valor com rotacion toString 160 fila pagina drawString new Float valor com incentivo toString 190 fila blHayRegistros crm comision multaDataProvider cursorNext cont info Documento impreso correctamente pagina dispose pj end jcatch Exception info La impresil363n ha sido cancelada return null 35 1 4 12 Clase Valida Numeros Esta clase consta de m todos que permiten validar si un n mero es entero flotante o es una cadena de caracteres que s lo contiene n meros public class ValidaNumeros private static String numero null Creates a new instance of ValidaNumeros public ValidaNumeros String pNumero numero pNumero public static boolean isNumeric try Integer parselnt numero return true catch NumberFormatException
19. CMS VALOR COMISIONES CMS FECHA COMISIONES CMS VALOR MULTA CMS VALOR COM CANAL CMS VALOR COM SERVICIO CMS VALOR COM ROTACION CMS VALOR COM INCENTIVO VALUES VI COD COMISIONES VI COD VENDEDOR VI DESCRIPCION VI VALOR COMISIONES VI FECHA COMISIONES VI VALOR MULTA VI VALOR COM CANAL VI VALOR COM SERVICIO 115 VI VALOR COM ROTACION VI VALOR COM INCENTIVO END VOP_P_INSERTAR_COMISION_MULTA PROCEDIMIENTO PRINCIPAL PROCEDURE VOP_P_OBTENER_COMISION VI COD VENDEDOR IN CRM VENDEDOR VEN VI COM ROTACION IN VARCHAR2 VI COM SERVICIO IN VARCHAR2 VI COM INCENTIVO IN VARCHARe2 VI COM CANAL IN VARCHARe2 VI COM RANGO VTAS IN VARCHAR2 VL VALOR MIN SERV CRM ADM PARAMETROS PRM VALOR SERV MIN VL COD CANAL VEND CRM VENDEDOR VEN COD CANAL 96TYPE VL FECHA2 DATE VL DIA COMISIONA NUMBER 2 VL CODIGO CMS COMISION MULTA CMS COD VL COMISION CRM_VOP_VENDEDOR VEN_COMISIONES TYPE VL_MULTA CRM_VOP_COMISION_MULTA CMS_VALOR_MULTA TYPE VL COM SERV CRM_VOP_VENDEDOR VEN_COMISIONES TYPE VL COM CANAL CRM VENDEDOR VEN VL COM ROTACION CRM VENDEDOR VEN COMISIONES e6TYPE VL COM RANGO VTAS CRM_VOP_VENDEDOR VEN_COMISIONES TYPE VL COM INCENTIVO CRM VOP VENDEDOR VEN COMISIONES 6TYPE BEGIN VL COD CANAL VEND VL CODIGO 8 COMISION 0 VL MULTA 0 VL
20. VI CODIGO VENDEDOR AND AND AND AND AND AND VN VEN CODIGO CC CTC COD VENDEDOR CODCONTRATO SC SEC COD CONTRATO CC CTC_CODCLIENTE SC SEC_CODCLIENTE SC SEC_PRECIO_SERV gt VI_VALOR_MIN_SERV CC CTC_FEC_INICIO BETWEEN VL_FECHA1 AND VL_FECHA2 CC CTC_FECHA_RECISION IS NULL VO_VALOR_COMISION VL_TOTAL_VTA VL_PORC_COM 100 RETURN VO VALOR COMISION END CALCULAR COM SERV FUNCION COMISION CANAL FUNCTION VOP_F_CALCULAR_COM_CANAL VI CODIGO VENDEDOR IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI CODIGO CRM_VOP_CANAL CNL_CODIGO TYPE VO VALOR COMISION OUT CRM VOP VENTA VTS RETURN CRM_VOP_VENTA VTS_VALOR9 TYPE AS VL PORC COM CRM CANAL CNL PORC COMISION VL TOTAL CRM VENTA VTS VL DATE VL FECHA2 DATE VL DIA COMISIONA NUMBER 2 VL DIA INICIO NUMBER 2 VL MES INICIO NUMBER 2 VL MES VARCHAR 2 3 VL ANIO INICIO NUMBER 4 105 BEGIN SELECT CNL_PORC_COMISION_CANAL INTO VL PORC COM FROM CRM VOP CANAL WHERE CODIGO VI CODIGO CANAL SELECT PRM DIA COMISIONA INTO VL DIA COMISIONA FROM CRM ADM PARAMETROS VL 2 TO DATE TO CHAR VL DIA COMISIONA TO CHAR SYSDATE MON CHAR SYSDATE YYYY VL_FECHA1 VL FECHA 28 SELECT TO NUMBER TO CHAR VL FECHA2 1 DD NUMBER TO CHAR VL FECHA2 MM TO NUMBER TO C
21. VI PRECIO SERV IN CRM SERV CONT SEC PRECIO PROCEDURE VOP_P_INSERTAR_VENTA VI CODIGO INCRM_VOP_VENTA VTS_CODIGO_VENTA TYPE VI COD CONTRATO IN CRM VOP VENTA VTS CODIGO VI CODIGO CANAL IN CRM VOP VENTA VTS CODIGO CANAL TYPE VI CODIGO FORMA PAGO IN CRM VENTA VTS CODIGO FORMA VI CODIGO AGENCIA IN CRM VOP VENTA VTS CODIGO VI VALOR IN CRM VOP VENTA VTS VI IN CRM VOP VENTA VTS 136 PROCEDURE VOP_P_INSERTAR_VENT_VEND_SERV VI COD VENTA INCRM_VOP_VENT_VEND_SERV VVS_CODIGO_VENTA TYPE VI SECUENCIA IN CRM VENT VEND SERV VVS VI CODIGO SERVICIO IN CRM VENT VEND SERV VVS CODIGO PROCEDURE VOP_P_REGISTRAR_VENTA VI_COD_CONTRATO IN CRM_VOP_VENTA VTS_CODIGO_CONTRATO TYPE VI CODIGO CANAL IN CRM_VOP_VENTA VTS_CODIGO_CANAL9 TYPE VI CODIGO FORMA PAGO IN CRM VENTA VTS CODIGO FORMA VI CODIGO AGENCIA IN CRM VENTA VTS CODIGO VI IN CRM VOP VENTA VTS PROCEDURE VOP_P_ACTUALIZAR_CONTRATO VI COD CONTRATO IN CRM CONTRATO VI CODCLIENTE IN CRM CONTRATO VI FECINICIO IN CRM VOP CONTRATO CLIENTE CTC FEC
22. VL CODIGO PROSPECTO VI TIPO PROSPECTO VI NOMBRES VI APELLIDOS NVL2 VI CEDULA VI CEDULA NVL2 VI PASAPORTE VI PASAPORTE NVL2 VI SEXO VI SEXO NVL2 VI ESTADO CIVIL VI ESTADO CIVIL NVL2 VI FECHA FECHA VI ACTIVIDAD VI NACIONALIDAD VI ESTADO 2 TIPO CLIENTE JURIDICO VI TIPO CLIENTE JURIDICO NVL2 VI REP LEGAL VI REP LEGAL Ji END VOP P INSERTAR PROSPECTO 92 1 8 2 27 Procedimiento VOP_P_INSERTAR_RANGO_VENTAS El siguiente procedimiento inserta los datos de un nuevo rango de ventas a la tabla CRM_VOP_RANGO_VENTAS donde el c digo es generado secuencialmente CREATE REPLACE PROCEDURE VOP_P_INSERTAR_RANGO_VENTAS VI LIMITE INFERIOR IN CRM VOP RANGO VENTAS RNV LIMITE INFERIOR TYPE VL LIMITE SUPERIOR IN CRM RANGO VENTAS RNV LIMITE VI PORCENTAJE COMISION IN CRM VOP RANGO VENTAS RNV PORCENTAJE VI FECHA INICIAL RANGO IN CRM VOP RANGO VENTAS RNV FECHA INICIAL VI FECHA FINAL RANGO IN CRM RANGO VENTAS RNV FECHA FINAL VI TIPO META IN CRM RANGO VENTAS RNV DESCRIPCION IN CRM RANGO VENTAS RNV IS VL COD RANGO VENTAS CRM VOP RANGO 5 COD RANGO BEGIN SELECT COD RANGO VENTAS INTO VL COD RANGO VENTAS FROM CR
23. 48 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP DET SOLICITUD CRM Transaccional Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK FK Nulo Describe el n mero de 1 DSL NUM SOLICITUD Number la solicitud que X X procede este detalle 2 DSL NUM ITEM Varcharo a Valor secuencial pOr lt factura Describe el c digo del ltem servicio 3 DSL COD SERVICIO Number contenido aA la X solicitud 4 DSL CANTIDAD SERVICIO Number 3 20 de Cantidad del servicio solicitado Valor total del servicio 5 DSL VALOR SERVICIO Number 6 2 producto del precio por la cantidad 49 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP CICLO FACT CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK Nulo 1 CIF CODIGO Number C d
24. CC CTC_CODCONTRATO VI_COD_CONTRATO AND CC CTC_CODCLIENTE VI_CODCLIENTE AND CC CTC_CODCLIENTE SC SEC_CODCLIENTE AND CC CTC_CODCONTRATO SC SEC_COD_CONTRATO IF VO SUBTOTAL IS NULL THEN VO SUBTOTAL 0 END IF return VO SUBTOTAL end CONSTRUYE FECHA FUNCTION CONSTRUYE FECHA VI DIA IN NUMBER VI INICIO IN VARCHAR2 VI MES HOY IN NUMBER VI ANIO INNUMBER VO FECHA CONSTRUIDA OUT DATE RETURN DATE IS VL MES HOY NUMBER VL ANIO HOY NUMBER VL MES VARCHAR2 3 VL FECHA CONSTRUIDA DATE BEGIN VL FECHA CONSTRUIDA VL MES HOY VI MES HOY VL HOY VI HOY TO_CHAR SYSDATE MM TO_CHAR SYSDATE YY YY INTO VL_MES_HOY VL_ANIO_HOY FROM DUAL 125 INICIO FIN IN T THEN VL MES HOY VL MES HOY 1 MES HOY 0 THEN VL MES HOY 12 VL HOY VL HOY 1 END IF END IF VL MES CASE WHEN VL MES HOY 1 THEN JAN WHEN VL MES HOY 2 THEN FEB WHEN VL MES HOY 3 THEN MAR WHEN VL MES HOY 4 THEN APR WHEN VL MES HOY 5 THEN WHEN VL MES HOY 6 THEN WHEN VL MES HOY 7 THEN JUL WHEN MES HOY 8 THEN AUG WHEN VL MES HOY 9 THEN WHEN VL MES HOY 10 THEN OCT WHEN VL MES HOY 11 THEN NOV WHEN VL MES HOY 12 THEN DEC END DBMS OUTPUT PUT LINE VL MES HOY VL FECHA CONSTRUIDA TO DATE TO CHAR VI DIA VL CHAR VL HOY VO FECHA CONSTRUIDA VL FECHA CONSTRUIDA
25. CRM Transaccional CMS COD COMISIONES Varchar2 CMS COD VENDEDOR CMS DESCRIPCION CMS VALOR COMISIONES CMS FECHA COMISIONES Fecha de comisi n CMS_VALOR_MULTA Descripci n Descripci n de Campos C digo comisiones o multa Valor total de multas CMS_VALOR_COM_CANAL CMS_VALOR_ COM_SERVICIO Valor total Valor total Number 6 2 comisi n servicios costosos Descripci n comisi n Valor de la comisi n las de comisi n por canal de por Autor Grupo 2 Nulo 41 CMS VALOR _ COM ROTACION CMS VALOR _ COM INCENTIVO Number Number 6 2 6 2 Valor total de comisi n por venta de servicios con rotaci n baja Valor total de comisi n por cumplimiento de metas 42 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Base de Nombre de Tabla Datos Tipo CRM_ADM_PARAMETROS Descripci n Descripci n de Campos PRM_PORC_MULTA PRM_PORC_INCENTIVO_ANUAL PRM_DIA_COMISIONA Porcentaje descontar a 105 vendedores por recisi n del contrato del cliente Porcentaje a pagar a los vendedores por metas logradas Inicio del per odo establecido pagar comisiones N mero de mes m nimo en que el cliente puede cambiar los servicios de s
26. OFERTA WHERE OFR COD OFERTA VI COD OFERTA END VOP P ELIMINAR OFERTA 1 8 2 15 Procedimiento VOP P ELIMINAR PROSPECTO El siguiente procedimiento elimina l gicamente a un prospecto de la tabla CRM VOP PROSPECTO es decir que su estadio cambia de A Activo a I Inactivo CREATE OR PROCEDURE VOP P ELIMINAR PROSPECTO VI CODIGO PROSPECTO IN CRM PROSPECTO PRO CODIGO IS BEGIN UPDATE CRM VOP PROSPECTO SET PRO ESTADO I WHERE PRO CODIGO PROSPECTO VI CODIGO PROSPECTO END VOP P ELIMINAR PROSPECTO 81 1 8 2 16 Procedimiento VOP_P_ELIMINAR_RANGO El siguiente procedimiento elimina los datos del rango de ventas seleccionado correspondiente a la tabla CRM_VOP_RANGO_VENTAS CREATE OR REPLACE PROCEDURE VOP_P_ELIMINAR_RANGO VI_COD_RANGO_VENTAS IN CRM_VOP_RANGO_VENTAS RNV_COD_RANGO_VENTASY TYPE DELETE FROM CRM_VOP_RANGO_VENTAS WHERE RNV COD RANGO VENTAS VI COD RANGO VENTAS END VOP P ELIMINAR RANGO 1 8 2 17 Procedimiento VOP P ELIMINAR TELF CODVEND El siguiente procedimiento elimina los datos del tel fono del vendedor seleccionado correspondiente a la tabla CRM VOP TELEFONO VENDEDOR CREATE OR REPLACE PROCEDURE VOP P ELIMINAR TELF CODVEND VI CODIGO IN CRM TELEFONO VENDEDOR TLV CODIGO VENDEDOR 56TYPE DELETE FROM CRM TELEFONO VENDEDOR WHERE CODIGO VENDEDOR VI CODIGO END VOP P ELIMINAR TELF CODVEND CREATE
27. RETURN VO FECHA CONSTRUIDA END FUNCION CALCULAR PRORRATEADO FUNCTION VOP CALCULAR VI FECHA INICIO CONTRATO IN VARCHAR2 VI FECHA INICIO CICLO VARCHAR2 VI FECHA FIN CICLO IN VARCHARe2 VI TARIFA BASICA IN NUMBER 126 VO VALOR PRORRATEADO OUT NUMBER RETURN NUMBER IS VL VALOR PRORRATEADO NUMBER VL NUM DIAS CICLO NUMBER VL NUM DIAS RESTANTES NUMBER VL FECHA INICIO CONTRATO DATE VL FECHA INICIO CICLO DATE VL FECHA FIN CICLO DATE BEGIN VL VALOR PRORRATEADO 0 VL NUM DIAS 5 0 VL FECHA INICIO CONTRATO TO DATE VI FECHA INICIO CONTRATO VL FECHA INICIO CICLO TO DATE VI FECHA INICIO CICLO VL FECHA FIN CICLO TO DATE VI FECHA FIN CICLO FECHA INICIO CONTRATO BETWEEN VL FECHA INICIO CICLO AND VL FECHA FIN CICLO THEN VL NUM DIAS CICLO VL FECHA FIN CICLO VL FECHA INICIO CICLO DBMS OUTPUT PUT LINE VL NUM DIAS CICLO VL NUM DIAS RESTANTES VL FECHA FIN CICLO VL FECHA INICIO CONTRATO DBMS OUTPUT PUT LINE VL NUM DIAS RESTANTES VL VALOR PRORRATEADO VI TARIFA BASICA ROUND VL NUM DIAS RESTANTES VL NUM DIAS 4 END IF VO VALOR PRORRATEADO ROUND VL VALOR PRORRATEADO 2 RETURN VO VALOR PRORRATEADO END FUNCION CONTRATO CICLO ANTERIOR FUNCTION VOP_F_CONTRATO_CICLO_ANTERIOR VI COD CONTRATO IN CRM CONTRATO VO R
28. SEC PRECIO SERV PRECIO SERV SEC ESTADO VI ESTADO WHERE SEC_COD_CONTRATO VI_COD_CONTRATO AND SEC CODCLIENTE VI_CODCLIENTE AND SEC CODIGO SERV VI CODIGO SERV END IF 149 ELSE VOP_P_INSERTAR_SERV_CONT VI_COD_CONTRATO VI_CODCLIENTE VI_CODIGO_SERV VI_SEC_FECHA_ACTIVACION VI SEC FECHA FINAL VI PRECIO SERV END IF END VOP P ACTUALIZAR SERV CONT end K REGISTRA CONTRATO 150 1 9 RowSets utilizados en el m dulo de ventas operacionales En el m dulo de Ventas Operacionales se utilizan Rowsets que est n relacionados con DataProviders del mismo nombre Estos Rowsets contienen sentencias de SQL que permiten obtener registros de toda la tabla o utilizando filtros e incluso pueden recibir par metros que son enviados desde la aplicaci n Java El resultado de las sentencias SQL es almacenado en los DataProviders para ser manipulados desde el programa RowSet crm vop telefono vendedorRowSet Tabla CRM VOP TELEFONO VENDEDOR Clase mantenimientoVendedor mantenimientoTelefonoVendedor edicionContrato SELECT a TLV CODIGO TLV CODIGO a TLV DESCRIPCION TLV DESCRIPCION a TLV CODIGO VENDEDOR TLV CODIGO VENDEDOR a TLV CODIGO TIPO TLF TLV CODIGO TIPO TLF APELLIDOS EMP APELLIDOS d TPT DESCRIPCION TPT DESCRIPCION CRM VOP TELEFONO VENDEDOR a CRM VOP VENDEDOR b CRM ADM EMPLEADOS c CRM ADM TIPO TELEFONO d a TLV CODIGO VENDEDOR b VEN CODIGO a TLV CODIGO TIPO TLF2d TPT CODIGO
29. SERV 20 VL COM 0 VL COM ROTACION 0 VL COM RANGO VTAS 0 VL COM INCENTIVO 0 116 SELECT MAX PRM_DIA_COMISIONA INTO VL_DIA_COMISIONA FROM CRM ADM PARAMETROS VL FECHA2 TO DATE TO CHAR VL DIA COMISIONA TO CHAR SYSDATE MON TO CHAR SYSDATE YYYY SELECT PAR PRM VALOR SERV MIN VIP INTO VL VALOR MIN SERV FROM CRM ADM PARAMETROS PAR VL COD CANAL VEND NVL VOP F CANAL VENDEDOR VI COD VENDEDOR VL COD CANAL VEND 000 VL COM SERV NVL VOP CALCULAR COM SERV VI COD VENDEDOR VL VALOR SERV VL COM SERV 0 VL COM CANAL NVL VOP F CALCULAR COM CANAL VI COD VENDEDOR VL COD CANAL VEND VL CO M CANAL 0 VL COM ROTACION CALCULAR COM ROT VI COD VENDEDOR VL COM ROTACION 0 VL COM RANGO VTAS CALCULAR COM RV VI COD VENDEDOR M VL COM RANGO 0 VL COM INCENTIVO NVL VOP CALCULAR COM RV VI COD VENDEDOR A VL COM RANGO VTAS 0 IF UPPER VI COM SERVICIO TRUE THEN VL COMISION VL COMISION VL COM SERV END IF IF UPPER VI COM CANAL TRUE THEN VL COMISION VL COMISION VL COM CANAL END IF IF UPPER VI COM ROTACION TRUE THEN VL COMISION VL COMISION VL COM ROTACION END IF 117 IF UPPER VI COM RANGO VTAS TRUE THEN VL COMISION VL COM RANGO VTAS END IF IF UPPER VI COM THEN VL COMISION VL COM INCENTIVO END
30. VI VALOR COM INCENTIVO IN CRM COMISION MULTA CMS VALOR COM PROCEDURE VOP_P_OBTENER_COMISION VI COD VENDEDOR IN CRM VENDEDOR VEN VI COM ROTACION IN VARCHAR2 VI COM SERVICIO IN VARCHAR2 VI COM IN VARCHARe2 VI COM CANAL IN VARCHAR2 VI COM RANGO VTAS IN VARCHAR2 end VOP K COMISIONAR 102 CREATE OR REPLACE PACKAGE BODY VOP_K_COMISIONAR IS FUNCTION AND PROCEDURE IMPLEMENTATIONS FUNCION OBTENER SECUENCIAL COMISIONES MULTAS FUNCTION VOP_F_NUM_SECUENCIAL_CMS VO_CODIGO_CMS OUT CRM_VOP_COMISION_MULTA CMS_COD_COMISIONES TYPE RETURN CRM_VOP_COMISION_MULTA CMS_COD_COMISIONES TYPE IS VL_CODIGO_CMS NUMBER BEGIN VL_CODIGO_CMS 0 SELECT NVL MAX CMS_COD_COMISIONES 0 INTO VL CODIGO CMS FROM CRM VOP COMISION MULTA IF VL CODIGO CMS IS NULL THEN VL CODIGO CMS 0 END IF VL CODIGO CMS s VL CODIGO CMS 1 VO CODIGO CMS TO CHAR VL CODIGO CMS RETURN VO CODIGO CMS END FUNCION COMISION SERVICIO FUNCTION CALCULAR COM SERV VI CODIGO VENDEDOR IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI VALOR SERV CRM ADM PARAMETROS PRM VALOR SERV MIN VO VALOR COMISION OUT CRM_VOP_VENTA VTS_VALOR9 TYPE RETURN CRM VENTA VTS VALOR9 TYPE AS VL PORC COM CRM ADM PARAMETROS PRM PORC COMISION SERVICIO 6TYPE VL TOTAL CRM VENTA VTS VL
31. VI VALOR SERVICIO IN CRM VOP DET SOLICITUD DSL VALOR IS VL NUM ITEM CRM DET SOLICITUD DSL NUM BEGIN VL NUM ITEM 0 SELECT NVL MAX DSL_NUM_ITEM 0 INTO VL NUM ITEM FROM CRM VOP DET SOLICITUD WHERE DSL NUM SOLICITUD VI NUM SOLICITUD IF VL NUM ITEM IS NULL THEN VL NUM ITEM 0 END IF VL NUM ITEM VL NUM ITEM 1 INSERT INTO CRM VOP DET SOLICITUD DSL NUM SOLICITUD DSL NUM ITEM DSL COD SERVICIO DSL CANTIDAD SERVICIO DSL VALOR SERVICIO VALUES VI NUM SOLICITUD TO CHAR VL NUM ITEM VI COD SERVICIO VI CANTIDAD SERVICIO VI VALOR SERVICIO END VOP_P_INSERTAR_DET_SOLICITUD 90 1 8 2 26 Procedimiento VOP_P_INSERTAR_PROSPECTO El siguiente procedimiento inserta los datos de un nuevo prospecto a la tabla CRM VOP PROSPECTO donde el c digo genera secuencialmente y el tipo de persona ingresada puede ser natural o jur dica S lo para las personas naturales se registra sexo fecha de nacimiento estado civil y pasaporte ste ltimo no es obligatorio En el caso de personas jur dicas se recibe datos de tipo de cliente jur dico y representante legal Los campos Nombres Apellidos y C dula cumplen doble funcionalidad para las personas naturales los datos que se registran son los indicados por sus nombres pero en el caso de personas jur dicas se registra el nombre comercial raz n social y n mero de RUC respectivamente
32. WHERE RNV COD RANGO VENTAS VI COD RANGO VENTAS END VOP P ACTUALIZAR RANGO VENTAS 74 1 8 2 6 Procedimiento VOP P ACTUALIZAR TELF VEND El siguiente procedimiento actualiza los datos del tel fono del vendedor seleccionado correspondiente a la tabla CRM VOP TELEFONO VENDEDOR CREATE OR REPLACE PROCEDURE VOP P ACTUALIZAR TELF VEND VI CODIGO IN CRM VOP TELEFONO VENDEDOR TLV VI DESCRIPCION IN CRM TELEFONO VENDEDOR TLV VI CODIGO VENDEDOR IN CRM TELEFONO VENDEDOR TLV CODIGO VI CODIGO TIPO TLF IN CRM VOP TELEFONO VENDEDOR TLV CODIGO IS BEGIN UPDATE CRM VOP TELEFONO VENDEDOR SET TLV CODIGO VI CODIGO DESCRIPCI N DESCRIPCION CODIGO VENDEDOR VI CODIGO VENDEDOR CODIGO TIPO TLF VI CODIGO TIPO TLF WHERE TLV CODIGO VI CODIGO END VOP P ACTUALIZAR TELF VEND 75 1 8 2 7 Procedimiento VOP P ACTUALIZAR TIPO VENDEDOR El siguiente procedimiento actualiza los datos del tipo de vendedor seleccionado correspondiente a la tabla CRM VOP TIPO VENDEDOR CREATE OR REPLACE PROCEDURE VOP P ACTUALIZAR TIPO VENDEDOR VI COD TIPO VENDEDOR IN CRM VOP TIPO VENDEDOR TIV COD TIPO VI DESCRIPCION TIPO VENDEDOR IN CRM TIPO VENDEDOR TIV DESCRIPCION TIPO IS BEGIN UPDATE CRM VOP TIPO VENDEDOR SE
33. 1 DATE VL FECHA2 DATE VL DIA COMISIONA NUMBER 2 VL DIA INICIO NUMBER 2 VL MES INICIO NUMBER 2 VL MES VARCHAR2 3 VL INICIO NUMBER 3 4 103 BEGIN SELECT PRM_PORC_COMISION_SERVICIO INTO VL PORC COM FROM CRM ADM PARAMETROS SELECT PRM DIA COMISIONA INTO VL DIA COMISIONA FROM CRM ADM PARAMETROS VL 2 TO DATE TO CHAR VL DIA COMISIONA TO CHAR SYSDATE MON CHAR SYSDATE YYYY SELECT TO NUMBER TO CHAR VL FECHA2 1 DD TO NUMBER TO CHAR VL FECHA2 MM TO NUMBER TO CHAR VL FECHA2 YYYY INTO VL DIA INICIO VL MES INICIO VL INICIO FROM DUAL IF VL MES INICIO 1 0 THEN VL MES INICIO 12 VL INICIO VL INICIO 1 ELSE VL MES INICIO VL MES INICIO 1 END IF VL MES CASE WHEN MES INICIO 1 THEN WHEN MES INICIO 2 THEN FEB WHEN VL MES INICIO 3 THEN MAR WHEN VL MES INICIO 4 THEN APR WHEN VL MES INICIO 5 THEN MAY WHEN VL MES INICIO 6 THEN JUN WHEN MES INICIO 7 THEN JUL WHEN VL MES INICIO 8 THEN AUG WHEN VL MES INICIO 9 THEN WHEN VL MES INICIO 10 THEN WHEN VL MES INICIO 11 THEN NOV WHEN VL MES INICIO 12 THEN DEC END 104 VL_FECHA1 TO DATE TO CHAR VL DIA INICIO VL MESI TO CHAR VL INICIO SELECT SUM SC SEC PRECIO SERV INTO VL TOTAL VTA FROM CRM VOP VENDEDOR VN CRM VOP CONTRATO CLIENTE CC CRM VOP SERV CONT SC WHERE VN VEN CODIGO
34. 72 73 74 75 76 77 78 78 79 79 80 80 81 81 82 82 83 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 8 2 21 8 2 22 8 2 23 8 2 24 8 2 25 8 2 26 8 2 27 8 2 28 8 2 29 8 2 30 8 2 32 8 2 33 8 2 34 Procedimiento vop_p_ eliminar _oferta_serc Procedimiento vop_p_ insertar_canal Procedimiento vop_p_ insertar _ciclo Procedimiento vop p insertar cliente Procedimiento vop p insertar det solicitud Procedimiento p insertar prospecto Procedimiento vop p insertar rango ventas Procedimiento vop p insertar telf vend Procedimiento vop p insertar tipo vendedor Procedimiento vop p insertar vendedor Procedimiento vop p insertar visitas Procedimiento vop p registrar pago Procedimiento vop p insertar oferta serv 8 3 Paquetes almacenados 8 3 1 Paquete para c lculo de comisiones 8 3 2 Paquete para facturaci n 8 3 3 Paquete para registrar contratos 9 Rowsets utilizados 150 83 84 85 86 89 90 91 92 93 95 96 98 99 100 100 118 134 MANUAL T CNICO 1 Introducci n El presente manual ha sido elaborado con el prop sito de facilitar al programador las tareas de mantenimiento del m dulo as como el control de cambios y versiones Las explicaciones dadas abarcan todo el desarrollo de la programaci n comenzando por las herramientas recomendadas la c
35. CONT IS SELECT SC SEC COD CONTRATO 50 5 CODIGO SERV FROM CRM CONTRATO CLIENTE CC CRM SERV CONT SC WHERE CODCONTRATO SC SEC COD CONTRATO AND CODCLIENTE SC SEC CODCLIENTE AND COD CONTRATO VL COD VENTA CRM VOP VENTA VTS CODIGO VL VALOR CRM VENTA VTS VALOR 6TYPE VL SECUENCIA CRM VENT VEND SERV VVS SECUENCIA 6TYPE BEGIN VL COD VENTA NVL VOP GENERA CODIGO VENTA VL COD 0 VL VALOR NVL VOP OBTENER VALOR VTA VI COD CONTRATO VL VALOR 0 146 VOP_P_INSERTAR_VENTA VL_COD_VENTA VI_COD_CONTRATO VI_CODIGO_CANAL VI CODIGO FORMA PAGO VI CODIGO AGENCIA VL VALOR VI FECHA FOR C IN CL_SERV_CONT LOOP VL SECUENCIA NVL VOP_F_SEQ_VVS VL_COD_VENTA VL_SECUENCIA 0 VOP_P_INSERTAR_VENT_VEND_SERV VL_COD_VENTA VL_SECUENCIA C SEC_CODIGO_SERV END LOOP END VOP_P_REGISTRAR_VENTA PROCEDURE VOP_P_ACTUALIZAR_CONTRATO VI COD CONTRATO IN CRM CONTRATO VI CODCLIENTE INCRM_VOP_CONTRATO_CLIENTE CTC_CODCLIENTE TYPE VI FECINICIO IN CRM CONTRATO CLIENTE CTC VI FEC CADUCIDAD IN CRM CONTRATO VI FEC CONTRATO IN CRM CONTRATO FECHA VI FEC RECISION IN CRM
36. El siguiente procedimiento elimina los datos del canal seleccionado correspondiente a la tabla CRM VOP CANAL CREATE OR REPLACE PROCEDURE VOP P ELIMINAR CANAL VI CODIGO IN CRM CANAL CNL CODIGO 6TYPE IS BEGIN DELETE FROM CRM VOP CANAL WHERE CODIGO VI CODIGO END VOP P ELIMINAR CANAL 79 1 8 2 12 Procedimiento VOP_P_ELIMINAR_CICLO El siguiente procedimiento elimina los datos del ciclo de facturaci n seleccionado correspondiente a la tabla CRM_VOP_CICLO_FACT CREATE OR REPLACE PROCEDURE VOP_P_ELIMINAR_CICLO VI CODIGO IN CRM_VOP_CICLO_FACT CIF_CODIGO TYPE IS BEGIN DELETE FROM CRM VOP CICLO FACT WHERE CODIGO VI CODIGO END VOP P ELIMINAR CICLO 1 8 2 13 Procedimiento VOP P ELIMINAR COMI CODVEND El siguiente procedimiento elimina los datos de la comisi n de un vendedor determinado correspondiente a la tabla CRM VOP COMISION MULTA CREATE OR REPLACE PROCEDURE VOP P ELIMINAR COMI CODVEND VI CODIGO IN CRM VOP MULTA CMS COD VENDEDOR 6TYPE IS BEGIN DELETE FROM CRM VOP COMISION MULTA WHERE CMS COD VENDEDOR VI CODIGO END VOP P ELIMINAR COMI CODVEND 80 1 8 2 14 Procedimiento VOP_P_ELIMINAR_OFERTA El siguiente procedimiento elimina los datos de la oferta seleccionada correspondiente a la tabla CRM_VOP_OFERTA CREATE OR REPLACE PROCEDURE VOP_P_ELIMINAR_OFERTA VI COD OFERTA IN CRM_VOP_OFERTA OFR_COD_OFERTA TYPE IS BEGIN DELETE FROM CRM
37. Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos CRM VOP VENTA Transaccional Descripci n Descripci n de Campos o FK VTS CODIGO VENTA Number C digo de venta VTS CODIDO Number CONTRATO VTS_CODIGO_CANAL C digo del contrato C digo del canal il C digo respectivo de la I forma de pago il E E VTS_CODIGO_AGENCIA C digo de agencia Valor de la venta VTS_VALOR VTS FECHA Fecha de realizaci n de la venta Nulo 39 M dulo de Ventas Operacionales SISTEMA INTEGRA CRM Fecha disefio Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Carrera de Ingenier a de Sistemas Computacionales Nombre de Tabla Base de Datos CRM_VOP_VENT_VEND_SERV cam Transaccional Descripci n Descripci n de VVS CODIGO VENTA Secuencial por cada VVS SECUENCIA Number servicio registrado en una venta VVS CODIGO SERVICIO C digo de servicio P gina 1 1 Autor Grupo 2 40 SISTEMA INTEGRA CRM VERSION 1 0 M dulo de Ventas Operacionales P gina 1 1 Fecha dise o Fecha ltima actualizaci n Diciembre 2006 2007 Universidad de Guayaquil Carrera de Ingenier a de Sistemas Computacionales Nombre de Tabla Base de Datos Tipo CRM COMISION MULTA
38. OR PROCEDURE VOP P ELIMINAR TELF VENDEDOR VI CODIGO IN CRM TELEFONO VENDEDOR TLV CODIGO 6TYPE IS BEGIN DELETE FROM CRM VOP TELEFONO VENDEDOR WHERE CODIGO VI CODIGO END VOP P ELIMINAR TELF VENDEDOR 82 1 8 2 18 Procedimiento VOP P ELIMINAR TIPO VEND El siguiente procedimiento elimina los datos del tipo de vendedor seleccionado correspondiente a la tabla CRM VOP TIPO VENDEDOR CREATE OR REPLACE PROCEDURE VOP P ELIMINAR TIPO VEND VI COD TIPO VENDEDOR IN CRM VOP TIPO VENDEDOR TIV COD TIPO DELETE FROM CRM VOP TIPO VENDEDOR WHERE COD TIPO VENDEDOR VI COD TIPO VENDEDOR END VOP P ELIMINAR TIPO VEND 1 8 2 19 Procedimiento VOP P ELIMINAR VENDEDOR El siguiente procedimiento elimina los datos del vendedor seleccionado correspondiente a la tabla CRM VOP VENDEDOR CREATE OR PROCEDURE VOP P ELIMINAR VENDEDOR VI CODIGO IN CRM VENDEDOR VEN CODIGO 6TYPE IS BEGIN DELETE FROM CRM VOP VENDEDOR WHERE VEN CODIGO VI CODIGO END VOP P ELIMINAR VENDEDOR 83 1 8 2 20 Procedimiento VOP_P_ELIMINAR_VISIT_CODVEND El siguiente procedimiento elimina los datos de la visita asignada a un vendedor seleccionado correspondiente a la tabla CRM_VOP_VISITAS CREATE OR REPLACE PROCEDURE VOP_P_ELIMINAR_VISIT_CODVEND VI CODIGO IN CRM_VOP_VISITAS VST_CODIGO_VENDEDOR TYPE IS BEGIN DELETE FROM CRM VOP VISITAS WHERE VST CODIGO
39. SERVICIOS RowSet crm adm estado civilRowSet 154 Tabla CRM ADM ESTADO CIVIL Clase mantenimientoVendedor edicionProspecto SELECT FROM CRM CRM ADM ESTADO CIVIL RowSet crm adm departamentosRowSet Tabla CRM ADM DEPARTAMENTOS Clase mantenimientoVendedor SELECT FROM CRM CRM ADM DEPARTAMENTOS RowSet crm sco clientesRowSet Tabla CRM SCO CLIENTES Clase edicionVisitas edicionSolicitud edicionContrato consultaSolicitudes SELECT CLI CODIGO a CLI ESTADO ESTADO b CLN NOMBRES b CLN APELLIDOS AS APELLIDOS FROM CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE NATURAL b WHERE CODIGO b CLN ID AND a CLI_ESTADO A UNION SELECT CLI CODIGO a CLI ESTADO ESTADO b CLJ NOMB COM b CLJ RAZON AS APELLIDOS FROM CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE JURIDICO b WHERE CODIGO b CLJ ID AND ESTADO A 155 RowSet crm adm agenciasRowSet Tabla CRM ADM AGENCIAS Clase mantenimientoVendedor edicionContrato consultaVentas SELECT FROM CRM CRM ADM AGENCIAS RowSet crm mko itemsRowSet1 Tabla CRM MKO ITEMS Clase mantenimientoOfertas edicionSolicitud SELECT CODIGO DESCRIPCION P PRE VALOR MAX P PRE FECHAVIGENCIA PRE FECHA VIGENCIA CRM CRM ITEMS I CRM MKO PRECIOS P CODIGO P ITE CODIGO ESTFACT2 P PRE_ESTADO A SRV_CODIGO GROUP BY LITE CODIGO DESCRIPCION P PRE VALOR
40. VENDEDOR VI CODIGO END VOP P ELIMINAR VISIT CODVEND 1 8 2 21 Procedimiento VOP P ELIMINAR OFERTA SERV El siguiente procedimiento elimina los datos de los servicios que pertenecen a una oferta determinada CREATE OR REPLACE PROCEDURE VOP P ELIMINAR OFERTA SERV VI COD OFERTA IN CRM OFERTA SERVICIO OSR COD DELETE FROM CRM OFERTA SERVICIO WHERE OSR COD OFERTA VI COD OFERTA END VOP P ELIMINAR OFERTA SERV 84 1 8 2 22 Procedimiento VOP_P_INSERTAR_CANAL El siguiente procedimiento inserta los datos de un nuevo canal a la tabla CRM_VOP_CANAL donde el c digo es generado secuencialmente CREATE OR REPLACE PROCEDURE VOP_P_INSERTAR_CANAL VI DESCRIPCION IN CRM_VOP_CANAL CNL_DESCRIPCIONL TYPE VI TIPO CANAL CRM CANAL CNL TIPO _CANAL TYPE VI PORC COMISION CANAL IN CRM VOP CANAL CNL PORC IS VL CODIGO CRM_VOP_CANAL CNL_CODIGO TYPE BEGIN SELECT MAX CNL CODIGO INTO VL CODIGO FROM CRM VOP CANAL IF VL CODIGO IS NULL THEN VL 0 END IF VL CODIGO VL CODIGO 1 INSERT INTO CRM VOP CANAL CNL CODIGO DESCRIPCIONL CNL TIPO CANAL CNL PORC COMISION CANAL VALUES TO CHAR VL CODIGO VI DESCRIPCION VI TIPO CANAL VI PORC COMISION CANAL END VOP_P_INSERTAR_CANAL 1 8 2 23 Procedimiento VOP_P_INSERTAR_CICLO 85 El siguiente procedimiento inserta los datos de un nuevo c
41. VL TOTAL VTA FROM CRM VOP VENDEDOR VN CRM VOP CONTRATO CLIENTE CC CRM VENTA VT WHERE VN VEN CODIGO VI CODIGO AND VN VEN CODIGO CC CTC COD VENDEDOR AND CC CTC CODCONTRATO VT VTS CODIGO CONTRATO AND CC CTC INICIO BETWEEN VL AND VL FECHA2 AND CC CTC FECHA RECISION IS NOT NULL VO VALOR MULTA VL PORC MULTA VL TOTAL VTA 100 RETURN VO VALOR MULTA END VOP F CALCULAR MULTA PROCEDURE INSERTAR COMISION MULTA VI COD COMISIONES CRM COMISION MULTA CMS COD 5 VI COD VENDEDOR IN CRM COMISION MULTA CMS COD VI DESCRIPCION IN CRM COMISION MULTA CMS 114 VI_VALOR_COMISIONES IN CRM_VOP_COMISION_MULTA CMS_VALOR_COMISIONES TYPE VI FECHA COMISIONES IN CRM COMISION MULTA CMS FECHA VI VALOR MULTA IN CRM COMISION MULTA CMS VALOR VALOR CANAL CRM COMISION MULTA CMS VALOR COM VI VALOR COM SERVICIO CRM COMISION MULTA CMS VALOR COM VI VALOR COM ROTACION IN CRM COMISION MULTA CMS VALOR COM VI VALOR COM INCENTIVO IN CRM COMISION MULTA CMS VALOR COM IS BEGIN INSERT INTO CRM COMISION MULTA CMS COD COMISIONES CMS COD VENDEDOR CMS DESCRIPCION
42. datos LONG or LONG RAW Ud Puede designar la misma columna o combinaci n de columnas como un foreign key y un primary key o unique key Para el nombrado de las claves for neas se deber n anteponer prefijos del M dulo al que pertenece el objeto otro prefijo es el tipo de constraint FK y el nem nico o descripci n abreviada de la tabla HIJA y luego la tabla PADRE 15 Convenci n ADM_FK_VEND_CANAL 5 3 caracteres para el prefijo del modulo separador 2 caracteres para el prefijo del tipo de restricci n constraint separador 10 caracteres para la descripci n de la tabla HIJA Ej USUA de Usuarios 10 caracteres para la descripci n de la tabla PADRE Ej EMPL de Empleados 1 2 1 3 Indices Los ndices tienen antepuesto prefijos antes del nombre del mismo otro perfijo adicional es la letra de Indice y a continuaci n la descripci n del mismo Si es el caso de un Primary Key Foreign Key Unique Key el nombre del indice toma relaci n al nombre del constraint y sino al nombre del indice toma el de la tabla y columnas que van ser indizadas En el caso de foreign keys en la que se establece una relaci n de referencia a un PK de una tabla padre los nombres del ndice deber n tomar el mismo est ndar del Foreign key Estos nombres deber n ser abreviados m ximo 30 caracteres incluyendo prefijos Recordar que el constraint de Primary key crea autom ticamente un ndice nico con igual nombre del c
43. relaci n 1 8 PL SQL 1 8 1 Funciones almacenadas 1 8 1 1 funci n vop f insertar cab solicitud 1 8 1 2 funci n vop f insertar oferta 1 8 1 3 funci n vop f verificar cedula ruc 21 22 22 22 23 24 25 26 28 29 31 32 33 36 61 62 63 63 63 65 66 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 8 1 4 funci n vop f verificar fecha nac 8 2 Procedimientos almacenados 8 2 1 Procedimiento vop p actualizar canal 8 2 2 Procedimiento vop p actualizar ciclo 8 2 3 Procedimiento vop p actualizar oferta 8 2 4 Procedimiento vop p actualizar prospecto 8 2 5 Procedimiento vop p actualizar rango vtas 8 2 6 Procedimiento vop p actualizar telf vend 8 2 7 Procedimiento vop p actualizar tipo vendedor 8 2 8 Procedimiento vop p actualizar vendedor 8 2 9 Procedimiento vop p actualizar oferta serv 8 2 10 Procedimiento vop p actualizar visita 8 2 11 Procedimiento vop p eliminar canal 8 2 12 Procedimiento vop p eliminar ciclo 8 2 13 Procedimiento vop p eliminar comi cod vend 8 2 14 Procedimiento vop p eliminar oferta 8 2 15 Procedimiento vop p eliminar _ prospecto 8 2 16 Procedimiento vop p eliminar rango 8 2 17 Procedimiento vop p eliminar telf codvend 8 2 18 Procedimiento vop p eliminar tipo vend 8 2 19 Procedimiento vop p eliminar vendedor 8 2 20 Procedimiento vop p eliminar visit codvend 68 69 69 70 71
44. toString Cabecera del reporte pagina drawString REPORTE DE COMISIONES 200 50 if IblVendedor pagina drawString Vendedor nombreVendedor 10 90 Jelse pagina drawString Vendedor Todos 10 90 if txtFechaMin getText null amp amp txtFechaMax getText null pagina drawString Fecha desde fechaMin hasta fechaMax 10 100 Encabezado de la tabla pagina drawString Valor 10 fila pagina drawString Fecha 70 fila pagina drawString Valor multa 130 fila pagina drawString Valor com canal 210 fila pagina drawString Valor com servicio 310 fila pagina drawString Valor com rotacion 410 fila pagina drawString Valor com incentivo 500 fila blHayRegistros crm_vop_comision_multaDataProvider cursorFirst while blHayRegistros a new Integer cont toString aRowKey crm_vop_comision_multaDataProvider getRowKey a valor Float parseFloat crm_vop_comision_multaDataProvider getValue CMS_VALOR_COMISIONES toString fecha crm_vop_comision_multaDataProvider getValue CMS_FECHA_COMISIONES toString valor_multa Float parseFloat crm_vop_comision_multaDataProvider getValue CMS_VALOR_COMISIONES toString valor_com_canal Float parseFloat crm_vop_comision_multaDataProvider getValue CMS_VALOR_COMISIONES toString valor_com_servicio Float parseFloat crm_vop_comision_multaDataProvider getValue CMS_VALOR_COMISIONES
45. 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP TIPO VENDEDOR CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK FK Nulo C digo del tipo de 1 COD TIPO VENDEDOR Varchar2 2 vendedor X Identifica el detalle DESCRIPCION por cada tipo de TIPO VENDEDOR Varchar2 50 Vendedor 32 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha disefio Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP _ TELEFONO VENDEDOR CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK Nulo 1 TLV CODIGO Number 10 C digo del Vendedor y C digo del tipo de 2 TLV DESCRIPCION Number 15 Vendedor C digo que identifica 3 TLV CODIGO VENDEDOR Varchar2 10 de ventas X C digo que identifica 4 TLV CODIGO TIPO TLF Varchar2 2 X 53 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1
46. 1 83 GHz Intel Dual Core 1 Gbyte 450 MB 300Mb requerido para la instalaci n Mac OS X 10 3 4 10 4 Mac OS X 10 4 5 1 4 2 05 for 10 3 1 4 2 09 for 10 4 1 5 0 05 for 10 4 5 Safari 1 2 1 Mozilla 1 6 Safari 2 minimo for OS 10 4 5 Caracter sticas y beneficios Sun Java Studio Creator es un ambiente de desarrollo web visual f cil de utilizar para la plataforma Java Permite crear visualmente aplicaciones web basadas en los est ndares y portlets utilizando JavaServer Faces La integraci n con fuentes de datos heterog neas como bases de datos relacionales JavaBeans empresariales y servicios web es simple Muchas caracter sticas muy convenientes tambi n han sido incluidas Java Studio Creator 2 esta construido en NetBeans 4 1 e incluye caracter sticas como un nuevo grupo de componentes JavaServer Faces components soporte para crear portlets JSR 168 acceso simple a bases de datos un modelo de aplicaci n streamlined y muchas cosas mas 1 2 Base de datos 4 La base de datos utilizada para este proyecto ha sido definida con el nombre de CRM 4 Se debe crear un usuario En este caso tambi n se lo ha denominado CRM 4 Se utilizan dos tablespaces CRM_DAT se utiliza para las tablas y CRM_IDX para los ndices 4 Una vez realizados todos los pasos anteriores es posible ejecutar el script de creaci n de las tablas 1 2 1 Est ndares de dise o de base de datos Dentro de estos est ndares de dise o utilizaremos prefi
47. A VTS VALOR 6TYPE FUNCTION CALCULAR COM RW VI COD VEND IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI TIPO CALCULO IN VARCHAR2 VO COMISION RV OUT CRM VENDEDOR VEN RETURN CRM_VOP_VENDEDOR VEN_COMISIONES TYPE FUNCTION VOP F CANAL VENDEDOR VI COD VEND IN CRM VOP VENDEDOR VEN CODIGO 6TYPE VO COD CANAL OUT CRM VENDEDOR VEN COD RETURN CRM VOP VENDEDOR VEN COD CANAL 6TYPE 101 FUNCTION VOP_F_CALCULAR_MULTA VI CODIGO CRM VENDEDOR VEN CODIGO 6TYPE VO VALOR MULTA OUT CRM VENTA VTS VALOR 6TYPE RETURN CRM VOP VENTA VTS VALOR 6TYPE PROCEDURE VOP P INSERTAR COMISION MULTA VI COD COMISIONES IN CRM COMISION MULTA CMS COD 5 VI COD VENDEDOR IN CRM COMISION MULTA CMS COD VI DESCRIPCION IN CRM COMISION MULTA CMS VI VALOR COMISIONES IN CRM COMISION MULTA CMS VALOR VI FECHA COMISIONES IN CRM COMISION MULTA CMS FECHA VI VALOR MULTA IN CRM VOP COMISION MULTA CMS VALOR VI VALOR COM CANAL IN CRM COMISION MULTA CMS VALOR COM VI VALOR COM SERVICIO IN CRM COMISION MULTA CMS VALOR COM VI VALOR COM ROTACION CRM COMISION MULTA CMS VALOR COM
48. AD TO CHAR VL DIA 2 0 RETURN VO FECHA CADUCA END OBTENER FECHA CADUCIDAD FUNCTION INSERTAR VI CODCLIENTE INCRM_VOP_CONTRATO_CLIENTE CTC_CODCLIENTE9 TYPE VI FECINICIO IN CRM CONTRATO VI CADUCIDAD IN CRM CONTRATO VI FEC CONTRATO IN CRM CONTRATO FECHA VI COD VENDEDOR IN CRM CONTRATO CLIENTE CTC COD VI COD FORMA PAGO IN CRM VOP CONTRATO CLIENTE CTC COD FORMA VI TIPO CONTRATO IN CRM CONTRATO CLIENTE CTC TIPO VI CODIGO CICLO IN CRM CONTRATO CLIENTE CTC CODIGO VO CODCONTRATO OUT CRM VOP CONTRATO JRETURN CRM CONTRATO IS VL_CODCONTRATO NUMBER BEGIN SELECT CODCONTRATO INTO CODCONTRATO FROM CRM CONTRATO CLIENTE IF VL CODCONTRATO IS NULL THEN VL 0 END IF VL CODCONTRATO 1 INSERT INTO CRM VOP CONTRATO CLIENTE CTC_CODCONTRATO CTC_CODCLIENTE CTC_FEC_INICIO CTC_FEC_CADUCIDAD CTC_FECHA_MIN_CONTRATO CTC_COD_VENDEDOR CTC_COD_FORMA_PAGO CTC_TIPO_CONTRATO CTC_CODIGO_CICLO
49. AGO IN CRM VENTA VTS CODIGO FORMA VI CODIGO AGENCIA IN CRM VENTA VTS CODIGO VI VALOR INCRM_VOP_VENTA VTS_VALORY TYPE VI FECHA INCRM VENTA VTS 5 BEGIN INSERT INTO CRM_VOP_VENTA VTS_CODIGO_VENTA VTS_CODIGO_CONTRATO VTS_CODIGO_CANAL VTS_CODIGO_FORMA_PAGO VTS_CODIGO_AGENCIA VTS_VALOR VTS_FECHA VALUES VI CODIGO VI COD CONTRATO VI CODIGO CANAL VI CODIGO FORMA PAGO VI CODIGO AGENCIA VI VALOR VI FECHA END VOP_P_INSERTAR_VENTA PROCEDURE VOP_P_INSERTAR_VENT_VEND_SERV VI COD VENTA INCRM_VOP_VENT_VEND_SERV VVS_CODIGO VI SECUENCIA IN CRM VENT VEND SERV VVS VI CODIGO SERVICIO IN CRM VENT VEND SERV VVS CODIGO 145 INSERT INTO CRM_VOP_VENT_VEND_SERV VVS_CODIGO_VENTA VVS_SECUENCIA VVS_CODIGO_SERVICIO VALUES VI_COD_VENTA VI_SECUENCIA VI CODIGO SERVICIO END P INSERTAR VENT VEND SERV PROCEDURE P REGISTRAR VENTA VI COD CONTRATO IN CRM VENTA VTS CODIGO VI CODIGO CANAL IN CRM VENTA VTS CODIGO VI CODIGO FORMA PAGO IN CRM VENTA VTS CODIGO FORMA VI CODIGO AGENCIA IN CRM VENTA VTS CODIGO AGENCIA TYPE VI INCRM VENTA VTS IS CURSOR CL SERV
50. CHA SE RECIBE COMO PARAMETRO VL PORC MULTA CRM ADM PARAMETROS PRM PORC VL TOTAL VTA CRM VENTA VTS VL FECHA1 DATE VL FECHA2 DATE VL DIA COMISIONA NUMBER 2 VL DIA INICIO 2 VL MES INICIO 2 VL MES VARCHARZ2 3 VL ANIO INICIO 4 BEGIN SELECT PRM PORC MULTA INTO VL PORC MULTA FROM CRM ADM PARAMETROS SELECT PRM DIA COMISIONA INTO VL DIA COMISIONA FROM CRM ADM PARAMETROS VL 2 TO DATE TO CHAR VL DIA COMISIONA TO CHAR SYSDATE MON CHAR SYSDATE YYYY SELECT TO NUMBER TO CHAR VL FECHA2 1 DD NUMBER TO CHAR VL FECHA2 MM TO NUMBER TO CHAR VL FECHA2 YYYY INTO VL DIA INICIO VL MES INICIO VL INICIO FROM DUAL IF VL MES INICIO 1 0 THEN VL MES INICIO 12 VL INICIO VL INICIO 1 ELSE VL MES INICIO VL MES INICIO 1 END IF 113 VL_MES CASE WHEN VL MES INICIO 1 THEN JAN WHEN VL MES INICIO 2 THEN FEB WHEN VL MES INICIO 3 THEN MAR WHEN VL MES INICIO 4 THEN APR WHEN VL MES INICIO 5 THEN MAY WHEN VL MES INICIO 6 THEN JUN WHEN VL MES INICIO 7 THEN JUL WHEN VL MES INICIO 8 THEN AUG WHEN VL MES INICIO 9 THEN SEP WHEN VL MES INICIO 10 THEN OCT WHEN VL MES INICIO 11 THEN NOV WHEN VL MES INICIO 12 THEN DEC END VL FECHA TO CHAR VL DIA INICIO VL MESI TO CHAR VL INICIO SELECT SUM VT VTS VALOR INTO
51. CLIENTE JURIDICO b CS CSL COD CLIENTE a CLI CODIGO CS CSL COD CLIENTE a CLI CODIGO a CLI CODIGO b CLJ ID CSL NUM SOLICITUD gt CSL NUM SOLICITUD lt CSL FECHA EMISION gt CSL FECHA EMISION lt CSL COD CLIENTE CSL COD CLIENTE lt 163 RowSet crm vop contrato clienteRowSet Tabla CRM VOP CONTRATO CLIENTE Clase edicionContrato SELECT a ctc_codcontrato TO CHAR a ctc fec inicio DD MM YYY Y as ctc fec inicio TO CHAR a ctc fec caducidad DD MM YYY Y as ctc fec caducidad CHAR a ctc fecha min contrato DD MM YYY Y as ctc fecha min contrato TO CHAR a ctc fecha recision DD MM YYYY as ctc fecha recision a ctc_codcliente f cln_nombres f cln apellidos as cliente cod vendedor nombres apellidos as vendedor a ctc tipo contrato a ctc codigo ciclo d cif descripcion cod forma pago g frp descripcion CRM CRM VOP CONTRATO CLIENTE a CRM CRM VOP VENDEDOR b CRM CRM SCO CLIENTES c CRM CRM VOP CICLO FACT d CRM CRM ADM EMPLEADOS e CRM CRM SCO CLIENTE NATURAL f CRM CRM ADM FORMAS PAGO g WHERE a ctc cod vendedor b ven codigo and b ven codigo e emp codigo and codcliente c cli codigo and c cli codigo f cln id and a ctc codigo ciclo d cif codigo and a ctc cod forma pago g frp codigo UNION SELECT a ctc_codcontrato TO CHAR a ctc fec inicio DD MM YYY Y as ctc fec inicio CHAR a ctc fec caducidad DD MM YYY Y as ctc fec cadu
52. CLIENTE Number del cliente X 3 CFAC FECHA EMISION Date roche emjsion deda factura Fecha vencimiento 4 CFAC FECHA Date dela factura Fecha en que 5 CFAC FECHA PAGO Date cancel por completo la factura Valor que el cliente 6 CFAC VALOR ABONO Number 6 2 abona para pagar la factura Determina el estado de la factura si sta ha sido cancelada 7 CFAC ESTADO Varchar2 1 C si hay alg n abono A o si est pendiente P de pago 45 8 CFAC_SUBTOTAL Number 6 2 Subtotal de la Factura 9 CFAC_IVA Number 6 2 Monto IVA de la factura 10 CFAC ICE Number 6 2 Monto ICE de la factura Valor de recargo en la factura 11 CFAC_RECARGO Number 6 2 producto del calculo del inter s por mora 12 CFAC DESCUENTO Number 6 2 Valor de descuento en la factura 13 TOTAL Number 10 2 Valor total de la Factura 14 OBSERVACION Varchar2 30 Glosa de observaci n referente a la factura emitida 46 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP DET FACTURA CRM Transaccional Descripci n Descripci n de Campos Nombre Ti
53. CM new cConsultarMenu oCM LimpiarArbol treeMenu treeMenu oCM CargarMenu treeMenu getVOPSessionBean1 getCrmModulo getVOPSessionBean 1 getCrmCod Usu 1 4 2 M todo prerender Se invoca al ejecutarse una p gina y luego de cada evento lanzado por un bot n Utilizado para enviar valores a los rowsets que reciben par metros public void if txtCedula getText null try getVOPSessionBean1 getCrm cab facturaRowSet setlnt 1 0 crm vop cab facturaDataProvider refresh Exception e info Error 1 4 3 M todo destroy Utilizado por el IDE de Java para cerrar los DataProviders utilizados public void destroy crm vop cab facturaDataProvider close 23 1 4 4 C digo de clase Conexi n La clase conexi n es utilzada por las clases DatosVop y FuncionesVop para los accesos a la base de datos mediante los procedimientos funciones y paquetes de PL SQL package crm vop import java sql import javax naming import javax sq public class Conexion public Connection getConexion Connection oCon null DataSource oDs InitialContext ic try new InitialContext DataSource ic lookup jdbc crm oCon oDs getConnection catch NamingException ne ne printStackTrace catch SQLException se se printStackTrace return oCon public void cerrarConexion Connection pCon
54. COD TIPO VI COD RANGO VENTAS IN CRM VENDEDOR VEN COD RANGO VI COD CANAL IN CRM VOP VENDEDOR VEN COD VI COMISIONES IN CRM_VOP_VENDEDOR VEN_COMISIONES TYPE VI ESTADO INCRM_VOP_VENDEDOR VEN_ESTADO TYPE VL CODIGO CRM_VOP_VENDEDOR VEN_CODIGO TYPE BEGIN INSERT INTO CRM VOP VENDEDOR VEN CODIGO VEN COD TIPO VENDEDOR VEN COD RANGO VENTAS VEN COD CANAL VEN COMISIONES VEN ESTADO VALUES TO CHAR VL CODIGO VI CODIGO VI COD TIPO VENDEDOR VI COD RANGO VENTAS VI COD CANAL VI COMISIONES VI ESTADO END VOP P INSERTAR VENDEDOR 96 1 8 2 31 Procedimiento VOP P INSERTAR VISITAS El siguiente procedimiento inserta los datos de una nueva visita para un vendedor seleccionado a la tabla CRM VOP VISITAS donde los c digos de visita y control son generados secuencialmente seg n el caso El par metro vi operaci n recibe N si desde el programa fue invocado el bot n Nueva visita o P si se escogi Pr xima visita En el caso de una nueva visita se genera un nuevo c digo para id visita y el campo vst control inicia con 1 Cuando se registra una pr xima visita significa que a partir de un id visita se va a insertar otro registro con el mismo n mero de id visita pero se incrementa vst control Esto se realiza con la finalidad de registrar informaci n de una visita adicional realizada por el mismo motivo anterior
55. CREATE OR REPLACE PROCEDURE VOP_P_INSERTAR_PROSPECTO VI PROSPECTO IN CRM_VOP_PROSPECTO PRO_TIPO_PROSPECTO TYPE VI NOMBRES IN CRM_VOP_PROSPECTO PRO_NOMBRES TYPE VI APELLIDOS IN CRM_VOP_PROSPECTO PRO_APELLIDOS TYPE VI CEDULA IN CRM PROSPECTO PRO VI PASAPORTE INCRM_VOP_PROSPECTO PRO_PASAPORTE TYPE VI_SEXO INCRM_VOP_PROSPECTO PRO_SEXO TYPE VI ESTADO CIVIL IN CRM VOP PROSPECTO PRO ESTADO VI FECHA NAC IN CRM VOP PROSPECTO PRO FEC ACTIVIDAD IN CRM PROSPECTO PRO VI NACIONALIDAD IN CRM VOP PROSPECTO PRO CODIGO VI ESTADO IN CRM VOP PROSPECTO PRO VI TIPO CLIENTE JURIDICO IN CRM VOP PROSPECTO PRO TIPO CLIENTE VI REP LEGAL IN CRM PROSPECTO PRO IS VL CODIGO PROSPECTO CRM VOP PROSPECTO PRO CODIGO BEGIN SELECT MAX PRO CODIGO PROSPECTO INTO VL CODIGO PROSPECTO FROM CRM VOP PROSPECTO IF VL CODIGO PROSPECTO IS NULL THEN VL CODIGO PROSPECTO 0 END IF VL CODIGO CODIGO PROSPECTO 41 INSERT INTO CRM VOP PROSPECTO PRO CODIGO PROSPECTO PRO TIPO PROSPECTO PRO NOMBRES PRO APELLIDOS PRO CEDULA PRO PASAPORTE PRO SEXO PRO ESTADO CIVIL PRO FEC NAC PRO ACTIVIDAD PRO CODIGO NAC PRO ESTADO PRO TIPO CLIENTE JURIDICO PRO REP LEG VALUES
56. Clase edicionContrato SELECT FROM CRM CRM VOP TIPO BAJA RowSet crm vop oferta servicioRowSet Tabla CRM VOP OFERTA SERVICIO Clase mantenimientoOfertas SELECT ALL OFE OSR NUM ITEM OFE OSR COD OFERTA OFE OSR COD ITEM OFE OSR PRECIO ITEM DESCRIPCION CRM CRM VOP OFERTA SERVICIO OFE CRM CRM MKO ITEMS IT OFE OSR COD ITEM IT ITE CODIGO OFE OSR COD OFERTA 165 RowSet crm vop ventaRowSet Tabla CRM VOP VENTA Clase consultaVentas SELECT VTS CODIGO VENTA VTS CODIGO CONTRATO VTS CODIGO CANAL VTS CODIGO FORMA PAGO VTS CODIGO AGENCIA VTS VALOR TO CHAR VTS FECHA YYYY MM DD VTS FECHA CNL CODIGO CNL_DESCRIPCIONL FRP_CODIGO FRP_DESCRIPCION AGE_CODIGO AGE_DESCRIPCION VEN_CODIGO CTC_COD_VENDEDOR CRM CRM_VOP_VENTA CRM CRM_VOP_CANAL CRM CRM_ADM_FORMAS_PAGO CRM CRM_ADM_AGENCIAS CRM CRM_VOP_VENDEDOR CRM CRM_VOP_CONTRATO_CLIENTE VTS_CODIGO_CANAL CNL_CODIGO VTS_CODIGO_FORMA_PAGO FRP_CODIGO VTS_CODIGO_AGENCIA AGE_CODIGO VEN_CODIGO CTC_COD_VENDEDOR CTC_CODCONTRATO VTS CODIGO CONTRATO CODIGO LIKE 2 VTS CODIGO AGENCIA gt VTS CODIGO AGENCIA lt VTS FECHA gt VTS FECHA VEN ESTADO lt gt 166 RowSet crm vop cab factura Tabla CRM VOP CAB FACTURA Clase pagosOnline SELECT NUM FACTURA CFAC COD CLIENTE CFAC TOTAL CFAC OBSERVACION CFAC ESTADO CLI CODIGO 1 CLN CEDULA FROM CRM CRM FACTURA CRM CRM SCO CLIEN
57. DIA_INICIO_CICLO T VL_MES VL_ANIO VL_FECHA_INICIO CICLO VL_FECHA_FIN_CICLO VOP_F_CONSTRUYE_FECHA VL_DIA_FIN_CICLO F VL_MES VL_ANIO VL_FECHA_FIN_CICL O V_RECARGO VOP_F_CALCULAR_PORRATEADO C CTC_FEC_INICIO VL_FECHA_INICIO_CICLO VL_FECHA_FIN_CICLO 132 SUBTOTAL RECARGO END IF IF V ANT lt gt CODCONTRATO THEN NUM FACTURA VOP NUM SECUENCIAL FACTURA V NUM FACTURA V SUBTOTAL NVL VOP CALCULAR SUBTOTAL CODCLIENTE C CTC COD CONTRATO V SUBTOTAL 0 V MONIVA NVL VOP CALCULAR IVA V SUBTOTAL V MONIVA 0 V MONICE NVL VOP CALCULAR ICE V SUBTOTAL V 0 V RECARGO V RECARGO NVL VOP CALCULAR _ CODCLIENTE V RECARGO 0 V_TOTAL V_SUBTOTAL V_MONIVA V_MONICE V_RECARGO V_OBSERVACION FACT No CHAR V NUM FACTURAJ DEL MES CHAR SYSDATE YYYY INSERT CAB INSERT INTO CRM_VOP_CAB_FACTURA CFAC_NUM_FACTURA CFAC_COD_CLIENTE CFAC FECHA EMISION CFAC FECHA VENCIMIENTO CFAC VALOR ABONO CFAC ESTADO CFAC SUBTOTAL CFAC IVA CFAC ICE CFAC RECARGO DESCUENTO CFAC TOTAL CFAC OBSERVACION VALUES V NUM FACTURA CODCLIENTE SYSDATE 133 SYSDATE 20 0 00 P V SUBTOTAL V MONIVA V MONICE RECARGO 0 00 V TOTAL OBSERVACION END IF INSERT DET V_NUM_DETALLE NVL VOP_F_NU
58. E JURIDICO VI TIPO CLIENTE JURIDICO PRO REP LEG VI LEGAL WHERE PRO CODIGO PROSPECTO VI CODIGO PROSPECTO END P ACTUALIZAR PROSPECTO 73 1 8 2 5 Procedimiento VOP_P_ACTUALIZAR_RANGO_VENTAS El siguiente procedimiento actualiza los datos del rango de ventas seleccionado correspondiente a la tabla CRM_VOP_RANGO_VENTAS CREATE OR REPLACE PROCEDURE VOP_P_ACTUALIZAR_RANGO_VENTAS VI COD RANGO VENTAS IN CRM RANGO COD RANGO VI LIMITE INFERIOR CRM RANGO VENTAS RNV LIMITE VI LIMITE SUPERIOR IN CRM RANGO VENTAS RNV LIMITE VI PORCENTAJE COMISION IN CRM RANGO VENTAS RNV PORCENTAJE VI FECHA INICIAL RANGO IN CRM RANGO FECHA INICIAL VI FECHA FINAL RANGO IN CRM RANGO VENTAS RNV FECHA VI TIPO META IN CRM RANGO VENTAS RNV VI DESCRIPCION IN CRM VOP RANGO VENTAS RNV IS BEGIN UPDATE CRM VOP RANGO VENTAS SET RNV LIMITE INFERIOR VI LIMITE INFERIOR RNV LIMITE SUPERIOR VI LIMITE SUPERIOR RNV PORCENTAJE COMISION VI PORCENTAJE COMISION RNV FECHA INICIAL RANGO VI FECHA INICIAL RANGO RNV FECHA FINAL RANGO VI FECHA FINAL RANGO RNV TIPO META VI TIPO RNV DESCRIPCION VI DESCRIPCION
59. EM IN CRM OFERTA SERVICIO OSR NUM VI COD OFERTA IN CRM OFERTA SERVICIO OSR COD VI COD ITEM IN CRM OFERTA SERVICIO OSR COD VI PRECIO ITEM IN CRM OFERTA SERVICIO OSR PRECIO IS BEGIN UPDATE CRM VOP OFERTA SERVICIO SET OSR COD OFERTA VI COD OFERTA OSR COD ITEM VI COD ITEM OSR PRECIO ITEM VI PRECIO ITEM WHERE OSR NUM ITEM VI NUM ITEM OSR COD OFERTA VI COD OFERTA END VOP P ACTUALIZAR OFERTA SERV 78 1 8 2 10 Procedimiento P ACTUALIZAR VISITA El siguiente procedimiento actualiza los datos de la visita seleccionada correspondiente a la tabla CRM_VOP_VISITAS CREATE OR REPLACE PROCEDURE VOP_P_ACTUALIZAR_VISITA CONTROL IN CRM VOP VISITAS VST VI ID VISITA IN CRM VOP VISITAS VST ID VI CODIGO CLIENTE IN CRM VISITAS VST CODIGO VI FECHA VISITA CRM VISITAS VST FECHA VI ESTADO INCRM_VOP_VISITAS VST_ESTADO TYPE VI OBSERVACION INCRM_VOP_VISITAS VST_OBSERVACION TYPE IS BEGIN UPDATE CRM_VOP_VISITAS SET VST FECHA VISITA VI FECHA VISITA VST ESTADO VI ESTADO VST OBSERVACION VI OBSERVACION WHERE CONTROL VST CONTROL AND VI ID VISITA VST ID VISITA AND VI CODIGO CLIENTE VST CODIGO CLIENTE END VOP P ACTUALIZAR VISITA 1 8 2 11 Procedimiento VOP P ELIMINAR CANAL
60. EMS ITE VO PRECIO OUT CRM PRECIOS PRE RETURN CRM VENTA VTS IS VL FECHA VIGENCIA CRM PRECIOS PRE 139 BEGIN VO_PRECIO 0 SELECT NVL P PRE_VALOR 0 MAX P PRE_FECHAVIGENCIA INTO VO PRECIO VL FECHA VIGENCIA FROM CRM ITEMS 1 CRM PRECIOS P WHERE CODIGO P ITE CODIGO AND LITE CODIGO VI CODIGO ITEM GROUP BY VALOR 0 IF VO PRECIO IS NULL THEN VO_PRECIO 0 END IF RETURN VO PRECIO END VOP F OBTENER PRECIO FUNCTION OBTENER FECHA VI FECHA INICIO CRM CONTRATO CLIENTE CTC VO FECHA MINIMA OUT RETURN VARCHAR2 IS VL NUM MIN CRM ADM PARAMETROS PRM MES CAMBIO VL DIA INICIO 2 VL MES INICIO 2 VL MES NUMBER 2 VL INICIO NUMBER 4 BEGIN VL MES 0 SELECT PRM MES CAMBIO CONTRATO INTO VL NUM MIN FROM CRM ADM PARAMETROS SELECT TO NUMBER TO CHAR VI FECHA INICIO DD NUMBER TO CHAR VI FECHA INICIO MM NUMBER TO CHAR VI FECHA INICIO YYYY INTO VL DIA INICIO VL MES INICIO VL INICIO 140 FROM DUAL IF VL_MES_INICIO VL_NUM_MIN gt 12 THEN VL INICIO VL INICIO 1 VL MES INICIO 12 VL MES INICIO VL MES MINIMO VL NUM MIN VL MES INICIO ELSE VL MES M
61. ENDEDOR TLV CODIGO TIPO TLF VALUES VL CODIGO VI DESCRIPCION VI CODIGO VENDEDOR VI CODIGO TIPO TLF END VOP_P_INSERTAR_TELF_VEND 94 1 8 2 29 Procedimiento VOP_P_INSERTAR_TIPO_VENDEDOR El siguiente procedimiento inserta los datos de un nuevo tipo de vendedor a la tabla CRM_VOP_TIPO_VENDEDOR donde el c digo es generado secuencialmente CREATE OR REPLACE PROCEDURE VOP P INSERTAR TIPO VENDEDOR VI DESCRIPCION TIPO VENDEDOR IN CRM TIPO VENDEDOR TIV DESCRIPCION TIPO IS VL COD TIPO VENDEDOR CRM TIPO VENDEDOR TIV COD TIPO BEGIN SELECT COD TIPO VENDEDOR INTO VL COD TIPO VENDEDOR FROM CRM VOP TIPO VENDEDOR IF VL COD TIPO VENDEDOR IS NULL THEN VL COD TIPO VENDEDOR 0 END IF VL COD TIPO VENDEDOR VL COD TIPO VENDEDOR 1 INSERT INTO CRM TIPO VENDEDOR COD TIPO VENDEDOR TIV DESCRIPCION TIPO VENDEDOR VALUES TO CHAR VL COD TIPO VENDEDOR VI DESCRIPCION TIPO VENDEDOR END VOP P INSERTAR TIPO VENDEDOR 95 1 8 2 30 Procedimiento VOP_P_INSERTAR_VENDEDOR El siguiente procedimiento inserta los datos de un nuevo vendedor a la tabla CRM_VOP_VENDEDOR donde el c digo del vendedor es igual al c digo que tiene en la tabla CRM ADM EMPLEADOS CREATE OR REPLACE PROCEDURE VOP P INSERTAR VENDEDOR VI CODIGO IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI COD TIPO VENDEDOR IN CRM VENDEDOR VEN
62. ERT INTO CRM_SCO_CLIENTES CLI_CODIGO CLI_PERSONA CLI_ACTIVIDAD CLI_TIPO CLI_ESTADO CLI_NOSERVICIO CLI CODIGO NAC VALUES VL COD CLIENTE VL TIPO PERSONA VI ACTIVIDAD VI TIPO CLIENTE 0 VI_NACIONALIDAD IF TIPO PERSONA N THEN VL PASAPORTE VI PASAPORTE IF VL PASAPORTE IS NULL OR VL PASAPORTE THEN VL END IF INSERT INTO CRM SCO CLIENTE NATURAL CLN ID CLN NOMBRES CLN APELLIDOS CLN CEDULA CLN PASAPORTE CLN SEXO CLN ESTADO CIVIL CLN FEC NAC VALUES VL COD CLIENTE VI NOMBRES VI APELLIDOS CEDULA VL PASAPORTE VI SEXO VI ESTADO CIVIL VI FEC NAC ELSE 87 INSERT INTO CRM SCO CLIENTE JURIDICO CLJ ID CLJ TIPO CLJ RUC CLJ RAZON CLJ NOMB COM CLJ REP LEG VALUES VL COD CLIENTE VI TIPO CLIENTE JURIDICO CEDULA VI APELLIDOS VI NOMBRES VI REP LEGAL END IF END VOP P INSERTAR CLIENTE 89 1 8 2 25 Procedimiento VOP_P_INSERTAR_DET_SOLICITUD El siguiente procedimiento inserta los datos del detalle de solicitud a la tabla CRM_VOP_DET_SOLICITUD donde el c digo es generado secuencialmente CREATE OR REPLACE PROCEDURE VOP_P_INSERTAR_DET_SOLICITUD VI_NUM_SOLICITUD IN CRM_VOP_DET_SOLICITUD DSL_NUM_SOLICITUD TYPE VI COD SERVICIO IN CRM_VOP_DET_SOLICITUD DSL_COD_SERVICIO9 TYPE VI CANTIDAD SERVICIO IN CRM VOP DET SOLICITUD DSL CANTIDAD
63. ESPUESTA OUT VARCHAR2 RETURN 2 IS VL RESPUESTA VARCHARZ2 2 VL DIA INICIO CICLO NUMBER VL DIA FIN CICLO NUMBER 127 VL_MES_CHAR VARCHAR2 2 VL ANIO CHAR VARCHAR2 4 VL MES NUMBER ANIO NUMBER VL MES ANT NUMBER VL ANIO ANT NUMBER VL FECHA INICIO CICLO ANT DATE VL FECHA FIN CICLO ANT DATE VL FECHA INICIO CICLO ACT DATE VL FECHA FIN CICLO ACT DATE VL FECHA CONTRATO DATE BEGIN VL RESPUESTA z Obtener dia inicio fin del ciclo SELECT CF CIF DIA INICIO CICLO CF CIF DIA FIN CICLO INTO VL DIA INICIO CICLO VL DIA FIN CICLO FROM CRM VOP CICLO FACT CF CRM VOP CONTRATO CLIENTE CC WHERE CF CIF CODIGO CC CTC CODIGO CICLO AND CODCONTRATO sVI COD CONTRATO Obtener fecha de inicio del contrato SELECT CC CTC FEC INICIO INTO VL FECHA CONTRATO FROM CRM VOP CONTRATO CLIENTE CC WHERE CODCONTRATO VI COD CONTRATO Obtener fecha inicio fin ciclo anterior y actual SELECT CHAR SYSDATE MM TO CHAR SYSDATE YYYY INTO VL MES CHAR VL ANIO CHAR FROM DUAL VL MES TO NUMBER VL MES CHAR VL NUMBER VL CHAR IF VL MES 1 0 THEN VL MES ANT 12 VL ANT VL ANIO 1 ELSE VL MES ANT VL 8 1 128 VL_ANIO_ANT VL_ANIO END IF VL_FECHA_INICIO_CICLO_ACT VOP_F_CONSTRUYE_FECHA VL_DIA_INICIO_CICLO T VL_MES VL_ANIO VL_FECHA_INICIO CICLO ACT VL FECHA FIN CICLO ACT VOP CONSTRUYE FECHA VL DIA FIN CICLO F VL MES
64. FOR D IN CU CLIENTES LOOP VOP P FACTURAR D CLI CODIGO END LOOP END PROCEDIMIENTO PRINCIPAL procedure VOP P FACTURAR VI CODIGO CLIENTE IN CRM SCO CLIENTES CLI_CODIGO TYPE CURSOR PARA OBTENER LOS CONTRATOS VIGENTES TANTO EN LA DURACI N DEL CONTRATO COMO PARA SUS SERVICIOS EN L SIEMPRE Y CUANDO QUE LOS SERVICIOS NO SELE HAYAN DADO DE BAJA NI HAYAN RESCINDIDO SU CONTRATO CURSOR CU CONTRATO IS SELECT CODCLIENTE 130 CO CTC CODCONTRATO FEC INICIO CODIGO SC SEC PRECIO SERV FROM CRM SCO CLIENTES CL CRM VOP CONTRATO CLIENTE CO CRM VOP SERV CONT SC CRM MKO ITEMS IT WHERE CL CLI CODIGO CO CTC_CODCLIENTE AND CO CTC CODCONTRATO COD CONTRATO AND CO CTC CODCLIENTE SC SEC_CODCLIENTE AND SC SEC CODIGO SERV CODIGO AND CL CLI CODIGO VI CODIGO CLIENTE AND SYSDATE BETWEEN CO CTC FEC INICIO AND CO CTC FEC CADUCIDAD AND SYSDATE BETWEEN SC SEC FECHA ACTIVACION AND SC SEC FECHA FINAL CO CTC FECHA RECISION IS NULL AND SC SEC COD TIPO BAJA IS NULL ORDER BY CO CTC_CODCONTRATO V ANT CODCONT CRM CONTRATO NUM FACTURA CRM FACTURA CFAC NUM V NUM DETALLE DET FACTURA DFAC NUM V SUBTOTAL CAB FACTURA CFAC SUBTOTAL9STYPE V V
65. HAR VL FECHA2 YYYY INTO VL DIA INICIO VL MES INICIO VL INICIO FROM DUAL IF VL MES INICIO 1 0 THEN VL MES INICIO 12 VL INICIO VL INICIO 1 ELSE VL MES INICIO VL MES INICIO 1 END IF VL MES CASE WHEN VL MES INICIO 1 THEN JAN WHEN MES INICIO 2 THEN FEB WHEN VL MES INICIO 3 THEN MAR WHEN VL MES INICIO 4 THEN APR WHEN VL MES INICIO 5 THEN MAY WHEN VL MES INICIO 6 THEN JUN WHEN VL MES INICIO 7 THEN JUL WHEN VL MES INICIO 8 THEN AUG WHEN VL MES INICIO 9 THEN 106 WHEN VL_MES_INICIO 10 THEN OCT WHEN VL_MES_INICIO 11 THEN NOV WHEN VL MES INICIO 12 THEN END VL FECHA TO CHAR VL DIA INICIO VL MESI TO CHAR VL INICIO SELECT SUM VT VTS INTO VL TOTAL VTA FROM CRM VOP VENDEDOR VN CRM VOP CONTRATO CLIENTE CC CRM VENTA VT CRM VOP CANAL CN WHERE VN VEN CODIGO VI CODIGO VENDEDOR AND VN VEN CODIGO CC CTC COD VENDEDOR AND CC CTC CODCONTRATO VT VTS CODIGO CONTRATO AND CN CNL CODIGO VI CODIGO CANAL AND CC CTC FECHA RECISION IS NULL AND VT VTS FECHA BETWEEN VL FECHA AND VL FECHA2 VO VALOR COMISION VL TOTAL VTA VL PORC COM 100 RETURN VO VALOR COMISION END CALCULAR COM CANAL FUNCION COMISION X ROTACION FUNCTION CALCULAR COM ROT VI CODIGO VENDEDOR IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VO VALOR COMISION OUT CRM VENTA VTS VALOR 6TYPE
66. I COD VEND IF VO COD CANAL IS NULL THEN VO COD CANAL END IF RETURN VO COD CANAL END CANAL VENDEDOR FUNCION COMISION RANGO VENTAS FUNCTION CALCULAR COM RW VI COD VEND IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI TIPO CALCULO IN VARCHAR2 VO COMISION OUT CRM VENDEDOR VEN RETURN CRM_VOP_VENDEDOR VEN_COMISIONES TYPE IS CURSOR CL RANGO VENTAS IS SELECT FROM CRM VOP RANGO VENTAS VL PORC COMISION CRM VOP RANGO VENTAS RNV PORCENTAJE VL TOTAL VTAS VEND CRM_VOP_VENTA VTS_VALOR TYPE VL FECHA1 DATE VL FECHA2 DATE VL DIA COMISIONA NUMBER 2 VL DIA INICIO NUMBER 2 VL MES INICIO NUMBER 2 110 VL_MES VARCHAR 3 VL ANIO INICIO NUMBER 4 BEGIN SELECT PRM DIA COMISIONA INTO VL DIA COMISIONA FROM CRM ADM PARAMETROS IF VI TIPO CALCULO M THEN IF VI TIPO CALCULO LO NUMBER TO CHAR VL FECHA2 YYYY INTO VL DIA INICIO VL MES INICIO VL INICIO FROM DUAL IF VL MES INICIO 1 0 THEN VL MES INICIO 12 VL_ANIO_INICIO VL_ANIO_INICIO 1 ELSE VL_MES_INICIO VL_MES_INICIO 1 END IF VL_MES CASE WHEN VL MES INICIO 1 THEN JAN WHEN MES INICIO 2 THEN FEB WHEN VL MES INICIO 3 THEN WHEN VL MES INICIO 4 THEN APR WHEN VL MES INICIO 5 THEN MAY WHEN VL MES INICIO 6 THEN JUN WHEN VL MES 7 THEN JUL WHEN VL MES INICIO 8 THEN AUG WHEN VL MES INICIO 9 THEN
67. IF VL MULTA CALCULAR MULTA VI COD VENDEDOR VL MULTA 0 ACTUALIZAR LA COMISI N AL VENDEDOR UPDATE CRM VENDEDOR SET VEN COMISIONES VL COMISION VL MULTA WHERE VEN CODIGO VI COD VENDEDOR INSERTAR EN LA TABLA COMISION MULTA VL CODIGO CMS VOP NUM SECUENCIAL CMS VL CODIGO CMS VOP P INSERTAR COMISION MULTA LPAD VL CODIGO 5 8 0 VI COD VENDEDOR COMIS CHAR SYSDATE MON VL COMISION VL FECHA2 VL MULTA VL COM CANAL VL COM SERV VL COM ROTACION VL COM INCENTIVO END VOP P OBTENER COMISION end VOP K COMISIONAR 118 1 8 3 2 Paquete para facturaci n CREATE OR REPLACE PACKAGE VOP_K_FACTURAR IS FUNCTION VOP_F_EXISTE_CLIENTECONTRATO VI_CODIGO IN CRM_SCO_CLIENTES CLI_CODIGO TYPE ESTADO OUT BOOLEAN RETURN BOOLEAN FUNCTION VOP_F_NUM_SECUENCIAL_FACTURA VO_NUMFACTURA OUT CRM FACTURA CFAC NUM RETURN CRM FACTURA CFAC NUM FUNCTION VOP F NUM SECUENCIAL DETALLE VI NUMFACTURA IN CRM FACTURA CFAC NUM VO SEQDETALLE OUT CRM DET FACTURA DFAC NUM RETURN CRM VOP DET FACTURA DFAC NUM function VOP F CALCULAR VI SUBTOTAL IN CRM VOP CAB FACTURA CFAC SUBTOTAL 6TYPE VO IVA OUT CRM VOP FACTURA CFAC return CRM CAB
68. INIMO VL MES INICIO VL NUM MIN END IF IF VL MES 2 AND VL gt 28 THEN VL DIA 28 END IF VO FECHA CHAR VL MES MINIMO 2 0 LPAD TO CHAR VL DIA 2 0 RETURN VO FECHA MINIMA END OBTENER FECHA MINIMA FUNCTION OBTENER FECHA CADUCIDAD VI FECHA INICIO CRM CONTRATO CLIENTE CTC VO FECHA CADUCA OUT VARCHAR2 RETURN VARCHAR2 IS VL NUM CADUCA CRM ADM PARAMETROS PRM MESES CADUCA VL DIA INICIO 2 VL MES INICIO 2 VL MES CADUCA 2 VL ANIO INICIO NUMBER 4 BEGIN VL MES CADUCA 0 SELECT PRM MESES CADUCA SERVICIO INTO VL NUM CADUCA FROM CRM ADM PARAMETROS SELECT TO NUMBER TO CHAR VI FECHA TO NUMBER TO CHAR VI FECHA TO NUMBER TO CHAR VI FECHA INICIO YYYY INTO VL DIA INICIO 141 VL_MES_INICIO VL_ANIO_INICIO FROM DUAL IF VL_MES_INICIO VL_NUM_CADUCA gt 12 THEN VL INICIO VL 1 VL MES INICIO 12 VL MES INICIO VL MES CADUCA VL NUM CADUCA VL MES INICIO ELSE VL MES CADUCA VL MES INICIO VL NUM CADUCA END IF IF VL MES CADUCA 2 AND VL DIA gt 28 THEN VL DIA INICIO 28 END IF VO FECHA CADUCA TO CHAR VL INICIO ILPAD TO CHAR VL MES CADUCA 2 0 ILP
69. M CRM VOP VISITAS V CRM CRM VOP VENDEDOR VE CRM CRM ADM EMPLEADOS E CRM CRM CANAL C CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE JURIDICO b V VST CODIGO VENDEDOR VE VEN CODIGO V VST CODIGO CLIENTE a CLI CODIGO V VST CODIGO CANAL C CNL CODIGO VE VEN CODIGO E EMP CODIGO AND CODIGO b CLJ ID ORDERBY VST ID VISITA RowSet Tabla Clase SELECT ORDER BY RowSet Tabla Clase 157 crm_vop_prospectoRowSet CRM_VOP_PROSPECTO edicionProspectos PRO_CODIGO_PROSPECTO PRO_NOMBRES PRO_APELLIDOS PRO_CEDULA PRO_PASAPORTE PRO_SEXO PRO_ESTADO_CIVIL E ETC_DESCRIPCION TO CHAR PRO FEC NAC DD MM YYYY PRO FEC NAC PRO ACTIVIDAD A ACT_DESCRIPCION PRO_ESTADO PRO_TIPO_PROSPECTO DECODE PRO_TIPO_PROSPECTO 1 Natural 2 Jun355dico DESC_TIPO_PROSPECTO T TCL_DESCRIPCION PRO_CODIGO_NAC N NAC_DESCRIPCION P PRO_TIPO_CLIENTE_JURIDICO P PRO_REP_LEG CRM_SCO_ACTIVIDAD A CRM_SCO_TIPO_CLIENTE T CRM_ADM_NACIONALIDAD N CRM CRM_VOP_PROSPECTO P LEFT OUTER JOIN CRM_ADM_ESTADO_CIVIL E ON P PRO_ESTADO_CIVIL E ETC_CODIGO P PRO_ACTIVIDAD A ACT_ID P PRO PROSPECTO T TCL ID P PRO CODIGO N NAC CODIGO P PRO ESTADO PRO CODIGO PROSPECTO crm mko itemsRowSet CRM MKO ITEMS mantenimientoOfertas edicionSolicitud edicionContrato SELECT FROM CRM CRM MKO SERVICIOS 158 RowSet crm sco clientes2RowSet Tabla CRM SCO CLIENTES Clase edicionSolicitud
70. M VOP RANGO VENTAS COD RANGO VENTAS IS NULL THEN VL COD RANGO VENTAS 0 END IF VL COD RANGO VENTAS VL COD RANGO VENTAS 1 INSERT INTO CRM VOP RANGO VENTAS RNV COD RANGO VENTAS RNV LIMITE INFERIOR RNV LIMITE SUPERIOR RNV PORCENTAJE COMISION RNV FECHA INICIAL RANGO RNV FECHA FINAL RANGO RNV TIPO META RNV DESCRIPCION VALUES TO CHAR VL COD RANGO VENTAS VI LIMITE INFERIOR VI LIMITE SUPERIOR VI PORCENTAJE COMISION VI FECHA INICIAL RANGO VI FECHA FINAL RANGO VI TIPO META VI DESCRIPCION END VOP P INSERTAR RANGO VENTAS 93 1 8 2 28 Procedimiento VOP_P_INSERTAR_TELF_VEND El siguiente procedimiento inserta los datos de un nuevo tel fono del vendedor seleccionado a la tabla CRM VOP TELEFONO VENDEDOR donde el c digo es generado secuencialmente CREATE OR PROCEDURE VOP P INSERTAR TELF VEND VI DESCRIPCION IN CRM TELEFONO VENDEDOR TLV VI CODIGO VENDEDOR IN CRM TELEFONO VENDEDOR TLV CODIGO VI CODIGO TIPO TLF IN CRM TELEFONO VENDEDOR TLV CODIGO TIPO TLF 6TYPE IS VL CODIGO CRM TELEFONO VENDEDOR TLV CODIGO 6TYPE BEGIN SELECT MAX TLV CODIGO INTO VL CODIGO FROM CRM VOP TELEFONO VENDEDOR IF VL CODIGO IS NULL THEN VL 0 END IF VL CODIGO VL CODIGO 1 INSERT INTO CRM TELEFONO VENDEDOR TLV CODIGO TLV DESCRIPCION CODIGO V
71. M_SECUENCIAL_DETALLE V_NUM_FACTURA V_NUM_D ETALLE INSERT INTO CRM DET FACTURA DFAC NUM FACTURA DFAC NUM ITEM DFAC COD SERVICIO DFAC CANTIDAD SERVICIO DFAC VALOR SERVICIO VALUES V NUM FACTURA V NUM DETALLE C ITE CODIGO 1 C SEC_PRECIO_SERV V_VALOR_SERVICIO V_ANT_CODCONT C CTC_CODCONTRATO END IF END LOOP end end VOP_K_FACTURAR 134 1 8 3 3 Paquete para registrar contratos CREATE OR REPLACE PACKAGE VOP_K_REGISTRA_CONTRATO IS Author Created 13 03 2007 22 12 23 Purpose FUNCTION VOP_F_GENERA_CODIGO_VENTA VO_COD_VTA OUT CRM_VOP_VENTA VTS_CODIGO_VENTA TYPE RETURN CRM VOP VENTA VTS CODIGO FUNCTION VOP F OBTENER VALOR VTA VI COD CONTRATO IN CRM CONTRATO VO VALOR OUT CRM VENTA VTS RETURN CRM VOP VENTA VTS VALOR 6TYPE FUNCTION VOP F SEQ VVS VI COD VENTA IN CRM VENT VEND SERV VVS CODIGO VO SECUENCIA OUT CRM VENT VEND SERV VVS RETURN CRM VOP VENT VEND SERV VVS SECUENCIA 6TYPE FUNCTION VOP F OBTENER PRECIO VI CODIGO ITEM IN CRM ITEMS ITE VO PRECIO OUT CRM PRECIOS PRE RETURN CRM VOP VENTA VTS VALOR 6TYPE FUNCTION VOP F OBTENER FECHA MINIMA VI FECHA INICIO IN CRM VOP CONTRATO CLIENTE CTC
72. O RESULTADO CORRECTO ELSE VO RESULTADO INCORRECTO END IF RETURN VO RESULTADO END VOP F VERIFICAR FECHA NAC 69 1 8 2 Procedimientos almacenados 1 8 2 1 Procedimiento ACTUALIZAR CANAL El siguiente procedimiento actualiza los datos del canal seleccionado correspondiente a la tabla CRM_VOP_CANAL CREATE OR REPLACE PROCEDURE VOP P ACTUALIZAR CANAL VI CODIGO INCRM_VOP_CANAL CNL_CODIGO TYPE VI DESCRIPCION IN CRM_VOP_CANAL CNL_DESCRIPCIONL TYPE VI TIPO CANAL CRM CANAL CNL TIPO VI PORC COMISION IN CRM CANAL CNL PORC IS BEGIN UPDATE CRM VOP CANAL SET DESCRIPCIONL VI DESCRIPCION TIPO CANAL VI TIPO CANAL PORC COMISION CANAL VI PORC COMISION WHERE CNL CODIGO VI CODIGO END VOP P ACTUALIZAR CANAL 70 1 8 2 2 Procedimiento VOP_P_ACTUALIZAR_CICLO El siguiente procedimiento actualiza los datos del ciclo seleccionado correspondiente a la tabla CRM_VOP_CICLO_FACT CREATE OR REPLACE PROCEDURE VOP_P_ACTUALIZAR_CICLO VI CODIGO IN CRM VOP CICLO VI DESCRIPCION INCRM_VOP_CICLO_FACT CIF_DESCRIPCION TYPE VI DIA INICIO CICLO IN CRM CICLO DIA INICIO VI DIA FIN INCRM VOP CICLO FACT CIF DIA VI DIA INICIO IN CRM CICLO DIA INICIO
73. OD VENDEDOR Varchar2 6 atendi al cliente X que firma el contrato C digo de la 8 COD FORMA PAGO Varchar2 3 forma de pago que utilizar el cliente 9 CTC TIPO CONTRATO Varcharz 10 Define el tipo de contrato Fecha en que el cliente decide 10 CODIGO CICLO Number dejar de usar el X servicio 37 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP SERV CONT CRM Transaccional Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK FK Nulo 1 SEC COD CONTRATO Number C digo de contrato cliente 2 SEC CODCLIENTE Number C digo del cliente X X 3 SEC CODIGO SERV Number contratado 4 SEC FECHA ACTIVACION Date Pacha de activacion del servicio Fecha final de 5 SEC FECHA FINAL Date disponibilidad del servicio SEC_PRECIO_SERV 6 Number Espec fica el precio por servicio Espec fica el estado 7 SEC_ESTADO Varchar2 1 del servicio contrato 38 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0
74. PLEADOS Clase mantenimientoTelefonoVendedor mantenimientoVendedor SELECT EMP CODIGO EMP NOMBRESJ EMP APELLIDOS AS EMPLEADO EMP CEDULA EMP NOMBRES EMP APELLIDOS TO CHAR EMP FECHA NACIMIENTO DD MM YY Y Y EMP FECHA NACIMIENTO ESTADO CIVIL EMP DOMICILIO EMP TELEFONO EMP CELULAR EMP SEXO EMP EMAIL EMP COD PROFESION EMP COD AGENCIA EMP COD DEPARTAMENTO EMP COD CARGO EMP JEFE EMP SUELDO CRM CRM ADM EMPLEADOS EMP CODIGO SELECT VEN CODIGO FROM CRM CRM VOP VENDEDOR 162 RowSet crm vop cab solicitudRowSet Tabla CRM VOP CAB SOLICITUD Clase consultaSolicitudes SELECT CSL NUM SOLICITUD CSL COD CLIENTE b CLN NOMBRES APELLIDOS AS APELLIDOS TO CHAR CSL FECHA EMISION YYYY MM DD CSL FECHA EMISION CSL SUBTOTAL SOLICITUD CSL IVA CSL ICE CSL TOTAL SOLICITUD FROM CRM CRM VOP CAB SOLICITUD CS CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE NATURAL b WHERE CS CSL COD CLIENTE a CLI CODIGO AND CODIGO b CLN ID AND CSL NUM SOLICITUD AND CSL NUM SOLICITUD lt AND CSL FECHA EMISION gt AND CSL FECHA EMISION lt AND CSL COD CLIENTE AND CSL COD CLIENTE lt UNION SELECT CSL NUM SOLICITUD CSL COD CLIENTE b CLJ NOMB COM b CLJ RAZON AS APELLIDOS TO CHAR CSL FECHA EMISION YYYY MM DD CSL FECHA EMISION CSL SUBTOTAL SOLICITUD CSL IVA CSL ICE CSL TOTAL SOLICITUD CRM CRM VOP CAB SOLICITUD CS CRM CRM SCO CLIENTES a CRM CRM SCO
75. R VI CODIGO CANAL VI FECHA ASIGNACION VI FECHA VISITA VI ESTADO VI OBSERVACION END VOP P INSERTAR VISITAS 97 98 1 8 2 32 Procedimiento VOP_P_REGISTRAR_PAGO El siguiente procedimiento permite registrar el valor y la fecha de las facturas que son ingresadas al sistema mediante la carga de un archivo plano proveniente de una entidad bancaria CREATE OR REPLACE PROCEDURE VOP_P_REGISTRAR_PAGO VI NUM FACTURA IN VI COD CLIENTE IN CRM VOP FACTURA CFAC COD VI FECHA PAGO IN CRM VOP FACTURA CFAC FECHA UPDATE CRM VOP CAB FACTURA SET CFAC ESTADO CFAC VALOR ABONO CFAC TOTAL CFAC FECHA PAGO VI FECHA PAGO WHERE CFAC NUM FACTURA VI NUM FACTURA AND CFAC COD CLIENTE VI COD CLIENTE END VOP P REGISTRAR PAGO 99 1 8 2 33 Procedimiento VOP_P_INSERTAR_OFERTA_SERVICIO El siguiente procedimiento permite registrar los servicios que pertenecen a una oferta utilizando el c digo que tiene en la tabla CRM_VOP_OFERTA y generando c digos para los n meros de item CREATE OR REPLACE PROCEDURE VOP_P_INSERTAR_OFERTA_SERVICIO VI COD OFERTA INCRM_VOP_OFERTA_SERVICIO OSR_COD_OFERTA TYPE VI COD ITEM IN CRM VOP OFERTA SERVICIO OSR COD VI PRECIO ITEM IN CRM VOP OFERTA SERVICIO OSR PRECIO IS VL NUM ITEM CRM VOP OFERTA SERVICIO OSR NUM
76. R VI CEDULA RUC l 1 1 IF MOD 2 1 THEN RESULT RESULT2 VL NUM ELSE AUX VL_NUM 2 IF VL_NUM 2 gt 10 THEN AUX AUX 9 END IF RESULT1 RESULT1 AUX END IF END LOOP WHILE RESULT1 RESULT2 gt ACUM LOOP ACUM ACUM 10 END LOOP 67 IF VI TIPO PERSONA 1 THEN VL TIPO PERSONA z N ELSE VL TIPO PERSONA J END IF PERSONA N THEN IF LENGTH VL_CEDULA_RUC 10 THEN IF ACUM RESULT1 RESULT2 TO NUMBER SUBSTR VI CEDULA RUC 10 1 THEN VO RESULTADO CORRECTO ELSE VO RESULTADO END IF ELSE VO RESULTADO INCORRECTO END IF END IF IF VL PERSONA N AND RESULTADO INCORRECTO OR VL PERSONA J THEN IF LENGTH VL CEDULA 13 THEN IF ACUM RESULT1 RESULT2 NUMBER SUBSTR VI CEDULA RUC 10 1 AND SUBSTR VI CEDULA RUC 11 3 001 THEN VO RESULTADO CORRECTO ELSE VO RESULTADO INCORRECTO END IF ELSE VO RESULTADO INCORRECTO END IF END IF RETURN VO RESULTADO END VOP F VERIFICAR CEDULA RUC 68 1 8 1 4 Funci n VOP_F_VERIFICAR_FECHA_NAC La siguiente funci n verifica la fecha de nacimiento devolviendo CORRECTO si la persona es mayor a 18 a os o INCORRECTO si es menor CREATE OR REPLACE FUNCTION VOP_F_VERIFICAR_FECHA_NAC VI FECHA IN DATE VO RESULTADO OUT VARCHAR2 JRETURN VARCHARZ2 IS BEGIN IF MONTHS BETWEEN SYSDATE VI FECHA gt 216 THEN V
77. RETURN CRM VENTA VTS VALOR 6TYPE AS CURSOR CL VISTA IS SELECT FROM CRM VOP V ROTACION VL PORC COM CRM ADM PARAMETROS PRM PORC COMISION VL TOTAL CRM_VOP_VENTA VTS_VALOR TYPE VL TOTAL SERV CRM VOP VENTA VTS VL 1 DATE VL FECHA2 DATE VL DIA COMISIONA NUMBER 2 VL DIA INICIO NUMBER 2 107 VL_MES_INICIO NUMBER 2 VL_MES VARCHARZ2 3 VL_ANIO_INICIO NUMBER 4 VL_TOTAL_SERVICIOS NUMBER VL_PORC_VENDIDO NUMBER BEGIN SELECT PRM_PORC_COMISION_ROTACION INTO VL PORC COM FROM CRM ADM PARAMETROS SELECT PRM DIA COMISIONA INTO VL DIA COMISIONA FROM CRM ADM PARAMETROS VL 2 TO DATE TO CHAR VL DIA COMISIONA TO CHAR SYSDATE MON CHAR SYSDATE YYYY VL_FECHA1 FECHA 28 SELECT TO NUMBER TO CHAR VL FECHA2 1 DD TO NUMBER TO CHAR VL FECHA2 MM TO NUMBER TO CHAR VL FECHA2 YYYY INTO VL DIA INICIO VL MES INICIO FROM DUAL IF VL MES INICIO 1 0 THEN VL MES INICIO 12 VL INICIO VL INICIO 1 ELSE VL MES INICIO VL MES INICIO 1 END IF VL_MES CASE WHEN VL_MES_INICIO 1 THEN WHEN MES INICIO 2 THEN FEB WHEN VL MES INICIO 3 THEN WHEN VL MES INICIO 4 THEN APR WHEN VL MES INICIO 5 THEN MAY 108 WHEN VL_MES_INICIO 6 THEN JUN WHEN VL_MES_INICIO 7 THEN JUL WHEN VL_MES_INICIO 8 THEN AUG WHEN VL_MES
78. RM VOP SERV CONT SEC VI CODIGO SERV IN CRM SERV CONT SEC CODIGO VI SEC FECHA ACTIVACION IN CRM SERV CONT SEC FECHA VI SEC FECHA FINAL IN CRM VOP SERV CONT SEC FECHA 1 VI PRECIO SERV IN CRM SERV CONT SEC PRECIO VI ESTADO IN CRM SERV CONT SEC VI COD TIPO BAJA IN CRM SERV CONT SEC COD TIPO 148 VL_NUM_REGISTROS NUMBER VL_CONTADOR NUMBER BEGIN SELECT COUNT INTO VL NUM REGISTROS FROM CRM VOP SERV CONT WHERE SEC COD CONTRATO COD CONTRATO AND SEC CODCLIENTE VI CODCLIENTE AND SEC CODIGO SERV VI CODIGO SERV IF VL NUM REGISTROS gt 0 THEN IF VI COD TIPO BAJA IS NOT NULL OR VI COD TIPO lt gt 0 THEN UPDATE CRM VOP SERV CONT SET SEC CODCLIENTE VI CODCLIENTE SEC CODIGO SERV VI CODIGO SERV SEC FECHA ACTIVACION VI SEC FECHA SEC FECHA VI SEC FECHA SEC PRECIO SERV PRECIO SERV SEC ESTADO VI ESTADO SEC COD TIPO BAJA VI COD TIPO BAJA WHERE SEC COD CONTRATO VI COD CONTRATO AND SEC CODCLIENTE VI CODCLIENTE AND SEC CODIGO SERV VI CODIGO SERV ELSE UPDATE CRM VOP SERV CONT SET SEC CODCLIENTE VI_CODCLIENTE SEC CODIGO SERV VI CODIGO SERV SEC FECHA ACTIVACION VI SEC FECHA SEC FECHA VI SEC FECHA
79. RTA CRM OFERTA OFR COD BEGIN SELECT MAX OFR COD OFERTA INTO VL COD OFERTA FROM CRM VOP OFERTA IF VL COD OFERTA IS NULL THEN VL COD OFERTA 0 END IF VL COD OFERTA VL COD OFERTA 1 INSERT INTO CRM VOP OFERTA OFR COD OFERTA OFR DESCRIPCION OFERTA OFR MES INICIAL OFR MES FINAL OFR DESCUENTO OFR TOTAL VALUES VL COD OFERTA VI DESCRIPCION OFERTA VI MES INICIAL VI MES FINAL VI DESCUENTO VI TOTAL VO_COD_OFERTA VL_COD_OFERTA RETURN VO_COD_OFERTA END VOP F INSERTAR OFERTA 66 1 8 1 3 Funci n VOP_F_VERIFICAR_CEDULA_RUC La siguiente funci n verifica c dula y ruc del cliente dependiendo del tipo de cliente sea persona natural o jur dica Para persona natural valida la c dula o ruc y para la persona jur dica valida el ruc correspondiente y retorna CORRECTO cuando el n mero de c dula ruc sean v lidos o INCORRECTO cuando el n mero de c dula ruc sea inv lido CREATE OR REPLACE FUNCTION VOP_F_VERIFICAR_CEDULA_RUC VI_CEDULA_RUC IN VARCHAR2 VI TIPO PERSONA IN CRM PROSPECTO PRO TIPO VO RESULTADO OUT VARCHAR2 JRETURN VARCHAR2 IS VL NUM NUMBER RESULT1 NUMBER RESULT2 NUMBER NUMBER ACUM NUMBER AUX NUMBER VL CEDULA VARCHAR2 16 VL TIPO PERSONA VARCHAR2 1 BEGIN RESULT 0 RESULT 0 ACUM 0 VL CEDULA TRIM VI CEDULA FOR IN 0 8 LOOP VL NUM TO NUMBER SUBST
80. S VALOR MULTA CRM CRM VOP COMISION MULTA CMS VALOR COM CANAL CRM CRM VOP COMISION MULTA CMS VALOR COM SERVICIO CRM CRM VOP COMISION MULTA CMS VALOR COM ROTACION CRM CRM VOP COMISION MULTA CMS VALOR COM INCENTIVO CRM CRM VOP COMISION MULTA USUARIO INGRESO CRM CRM VOP COMISION MULTA FECHA INGRESO CRM CRM VOP COMISION MULTA TERMINAL INGRESO CRM CRM VOP COMISION MULTA USUARIO MODIFICACION CRM CRM VOP COMISION MULTA FECHA MODIFICACION CRM CRM VOP COMISION MULTA TERMINAL MODIFICACION CRM CRM VOP COMISION MULTA CRM CRM VOP VENDEDOR CRM CRM VOP COMISION MULTA CMS COD VENDEDOR LIKE CMS FECHA COMISIONES gt CMS FECHA COMISIONES lt CMS COD VENDEDOR VEN CODIGOAND VEN ESTADO lt gt 160 RowSet crm det solicitudRowSet1 Tabla CRM VOP DET SOLICITUD Clase edicionSolicitud consultaSolicitudes SELECT DSL NUM SOLICITUD DSL NUM ITEM DSL COD SERVICIO ITE DESCRIPCION DSL CANTIDAD SERVICIO DSL VALOR SERVICIO DSL CANTIDAD SERVICIO DSL VALOR SERVICIO AS SUBTOTAL CRM CRM VOP DET SOLICITUD D CRM CRM ITEMS I DSL NUM SOLICITUD DSL COD SERVICIO ITE CODIGO RowSet crm adm formas pagoRowSet Tabla CRM ADM FORMAS PAGO Clase edicionContrato SELECT i FROM CRM CRM_ADM_FORMAS_PAGO RowSet crm sco tipo clienteRowSet Tabla CRM SCO TIPO CLIENTE Clase edicionVisitas edicionProspecto SELECT FROM CRM CRM SCO TIPO CLIENTE 161 RowSet crm adm empleadosRowSet1 Tabla CRM ADM EM
81. SELECT CODIGO CODIGO b CLN NOMBRES bL CLN APELLIDOS AS APELLIDOS FROM CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE NATURAL b WHERE a CLI CODIGO b CLN ID AND a CLI_ESTADO A UNION SELECT CODIGO CODIGO b CLJ NOMB COM b CLJ_RAZON AS APELLIDOS FROM CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE JURIDICO b WHERE a CLI CODIGO b CLJ ID AND a CLI ESTADO A RowSet crm vop det solicitudRowSet Tabla CRM VOP DET SOLICITUD Clase edicionSolicitud SELECT DSL NUM SOLICITUD DSL NUM ITEM DSL COD SERVICIO ITE DESCRIPCION DSL CANTIDAD SERVICIO DSL VALOR SERVICIO DSL CANTIDAD SERVICIO DSL VALOR SERVICIO AS SUBTOTAL FROM CRM CRM VOP DET SOLICITUD D CRM CRM ITEMS I WHERE DSL NUM ITEM AND DSL COD SERVICIO ITE CODIGO ORDER BY DSL NUM SOLICITUD RowSet crm adm nacionalidadRowSet Tabla CRM ADM NACIONALIDAD Clase edicionProspecto SELECT FROM CRM CRM ADM NACIONALIDAD 159 RowSet crm adm cargosRowSet Tabla CRM ADM CARGOS Clase mantenimientoVendedor SELECT FROM CRM CRM ADM CARGOS RowSet crm vop comision multaRowSet Tabla CRM VOP COMISION MULTA Clase consultaComisiones SELECT ALL CRM CRM MULTA CMS COD COMISIONES CRM CRM VOP COMISION MULTA CMS COD VENDEDOR CRM CRM VOP COMISION MULTA CMS DESCRIPCION CRM CRM VOP COMISION MULTA CMS VALOR COMISIONES TO CHAR CMS FECHA COMISIONES YYYY MM DD CMS FECHA COMISIONES CRM CRM VOP COMISION MULTA CM
82. SELECT FROM CRM CRM_SCO_TIPO_CLIENTE_JURIDICO RowSet crm vop tipo vendedorRowSet Tabla CRM VOP TIPO VENDEDOR Clase MantenimientoTipoVendedor mantenimientoVendedor SELECT CRM CRM_VOP_TIPO_VENDEDOR ORDER BY COD TIPO VENDEDOR RowSet crm vop rango ventasRowSet Tabla CRM VOP RANGO VENTAS Clase mantenimientoRango mantenimientoVendedor SELECT RNV COD RANGO VENTAS RNV LIMITE INFERIOR RNV LIMITE SUPERIOR RNV PORCENTAJE COMISION RNV DESCRIPCION TO CHAR RNV FECHA INICIAL RANGO DD MM Y YY Y RNV FECHA INICIAL RANGO TO CHAR RNV FECHA FINAL RANGO DD MM YY YY RNV FECHA FINAL RANGO RNV TIPO META FROM CRM CRM VOP RANGO VENTAS ORDER BY RNV COD RANGO VENTAS RowSet crm vop ofertaRowSet 153 Tabla CRM_VOP_OFERTA Clase mantenimientoOfertas SELECT OFR COD OFERTA OFR DESCRIPCION OFERTA OFR MES INICIAL OFR MES FINAL OFR DESCUENTO OFR TOTAL FROM CRM CRM VOP OFERTA ORDER BY COD OFERTA RowSet crm vop ciclo factRowSet Tabla CRM VOP CICLO FACT Clase mantenimientoCicloFact edicionContrato SELECT FROM CRM CRM_VOP_CICLO_FACT ORDER BY CIF_CODIGO RowSet crm adm empleadosRowSet Tabla CRM ADM EMPLEADOS Clase mantenimientoVendedor SELECT e EMP_NOMBRES APELLIDOS as nombres completos e FROM CRM EMPLEADOS e RowSet crm mko serviciosRowSet Tabla CRM MKO SERVICIOS Clase edicionContrato SELECT FROM CRM CRM MKO
83. T TIV COD TIPO VENDEDOR VI COD TIPO VENDEDOR TIV DESCRIPCION TIPO VENDEDOR VI DESCRIPCION TIPO VENDEDOR WHERE TIV COD TIPO VENDEDOR VI COD TIPO VENDEDOR END VOP P ACTUALIZAR TIPO VENDEDOR 76 1 8 2 8 Procedimiento VOP P ACTUALIZAR VENDEDOR El siguiente procedimiento actualiza los datos del vendedor seleccionado correspondiente a la tabla CRM VOP VENDEDOR CREATE OR PROCEDURE VOP P ACTUALIZAR VENDEDOR VI CODIGO IN CRM_VOP_VENDEDOR VEN_CODIGO TYPE VI COD TIPO VENDEDOR IN CRM VENDEDOR VEN COD TIPO VI COD RANGO VENTAS IN CRM VOP VENDEDOR VEN COD RANGO VI COD CANAL CRM VENDEDOR VEN COD CANAL 6TYPE VI COMISIONES IN CRM_VOP_VENDEDOR VEN_COMISIONES TYPE VI ESTADO INCRM_VOP_VENDEDOR VEN_ESTADO TYPE IS BEGIN UPDATE CRM VENDEDOR SET VEN CODIGO VI CODIGO VEN COD TIPO VENDEDOR VI COD TIPO VENDEDOR VEN COD RANGO VENTAS COD RANGO VENTAS VEN COD CANAL VI COD CANAL VEN COMISIONES VI COMISIONES VEN ESTADO VI ESTADO WHERE VEN CODIGO VI CODIGO END VOP P ACTUALIZAR VENDEDOR 77 1 8 2 9 Procedimiento VOP P ACTUALIZAR OFERTA SERV El siguiente procedimiento permite registrar los servicios que pertenecen a una oferta utilizando el c digo que tiene en la tabla CRM VOP OFERTA y generando c digos para los n meros de item CREATE OR REPLACE PROCEDURE VOP P ACTUALIZAR OFERTA SERV VI NUM IT
84. TA OUT CRM_VOP_VENTA VTS_CODIGO_VENTA TYPE RETURN CRM_VOP_VENTA VTS_CODIGO_VENTA TYPE IS BEGIN VO COD VTA 0 SELECT NVL MAX VTS CODIGO VENTA 0 INTO VO COD VTA FROM CRM VOP VENTA IF VO COD VTA IS NULL THEN VO COD VTA 0 END IF VO COD VTA SVO COD 1 RETURN VO COD VTA END VOP F GENERA CODIGO VENTA FUNCTION OBTENER VALOR VTA VI COD CONTRATO IN CRM CONTRATO VO VALOR OUT CRM_VOP_VENTA VTS_VALORY TYPE RETURN CRM_VOP_VENTA VTS_VALOR9 TYPE IS BEGIN VO VALOR 0 138 SELECT NVL SUM SC SEC_PRECIO_SERV 0 INTO VO_VALOR FROM CRM_VOP_CONTRATO_CLIENTE CC CRM_VOP_SERV_CONT SC WHERE CC CTC_CODCONTRATO SC SEC_COD_CONTRATO AND CC CTC_CODCLIENTE SC SEC_CODCLIENTE IF VO VALOR IS NULL THEN VO VALOR 0 END IF RETURN VO VALOR END VOP F OBTENER VALOR VTA FUNCTION VOP F SEQ VVS VI COD VENTA IN CRM VOP VENT VEND SERV VVS CODIGO VO SECUENCIA OUT CRM VOP VENT VEND SERV VVS RETURN CRM VENT VEND SERV VVS IS BEGIN VO SECUENCIA 0 SELECT NVL MAX VS VVS_SECUENCIA 0 INTO VO SECUENCIA FROM CRM VENT VEND SERV VS WHERE VS VVS CODIGO VENTA VI COD VENTA IF VO SECUENCIA IS NULL THEN VO SECUENCIA 0 END IF VO_SECUENCIA VO_SECUENCIA 1 RETURN VO_ SECUENCIA END VOP F SEQ VVS FUNCTION VOP F OBTENER PRECIO VI CODIGO ITEM IN CRM IT
85. TES CRM CRM SCO CLIENTE NATURAL WHERE CFAC ESTADO lt gt C AND CFAC COD CLIENTE CLI CODIGO AND CLI CODIGO CLN ID AND CLN CEDULA OR CLN PASAPORTE UNION SELECT NUM FACTURA CFAC COD CLIENTE CFAC TOTAL CFAC OBSERVACION CFAC ESTADO CLI CODIGO CLJ ID CLJ RUC FROM CRM CRM FACTURA CRM CRM 500 CLIENTES CRM CRM SCO CLIENTE JURIDICO WHERE CFAC ESTADO lt gt C AND CFAC COD CLIENTE CODIGO AND CLI CODIGO CLJ ID AND
86. TURAL y en caso de ser cliente jur dico se insertar n en CRM SCO CLIENTE JURIDICO y el c digo generado secuencialmente CREATE OR REPLACE PROCEDURE VOP P INSERTAR VI TIPO CLIENTE CRM PROSPECTO PRO TIPO VI NOMBRES IN CRM PROSPECTO PRO VI APELLIDOS IN CRM VOP PROSPECTO PRO VI CEDULA IN CRM VOP PROSPECTO PRO VI PASAPORTE INCRM_VOP_PROSPECTO PRO_PASAPORTE TYPE VI SEXO IN CRM PROSPECTO PRO VI ESTADO CIVIL IN CRM VOP PROSPECTO PRO ESTADO VI IN CRM PROSPECTO PRO VI_ACTIVIDAD INCRM_VOP_PROSPECTO PRO_ACTIVIDAD TYPE VI ESTADO IN CRM VOP PROSPECTO PRO VI NACIONALIDAD CRM VOP PROSPECTO PRO CODIGO VI TIPO CLIENTE JURIDICO IN CRM VOP PROSPECTO PRO TIPO CLIENTE JURIDICO9 STYPE VI REP LEGAL IN CRM PROSPECTO PRO IS VL COD CLIENTE CRM PROSPECTO PRO CODIGO VL TIPO PERSONA VARCHAR2 1 VL PASAPORTE CRM_VOP_PROSPECTO PRO_PASAPORTE9 TYPE BEGIN SELECT MAX CLI CODIGO INTO VL COD CLIENTE FROM CRM SCO CLIENTES IF VL COD CLIENTE IS NULL THEN VL COD CLIENTE 0 END IF VL COD CLIENTE VL COD CLIENTE 1 IF VI TIPO CLIENTE 1 THEN VL PERSONA z N ELSE VL TIPO PERSONA J END IF INS
87. UM SOLICITUD9STYPE RETURN CRM VOP SOLICITUD CSL NUM SOLICITUD9STYPE IS VL NUM SOLICITUD CRM SOLICITUD CSL NUM BEGIN SELECT MAX CSL NUM SOLICITUD INTO VL NUM SOLICITUD FROM CRM VOP CAB SOLICITUD IF VL NUM SOLICITUD IS NULL THEN VL NUM SOLICITUD 0 END IF VL NUM SOLICITUD VL NUM SOLICITUD 1 INSERT INTO CRM_VOP_CAB_SOLICITUD CSL_NUM_SOLICITUD CSL_COD_CLIENTE CSL_FECHA_EMISION CSL_SUBTOTAL_SOLICITUD CSL_IVA CSL_ICE CSL_TOTAL_SOLICITUD VALUES VL_NUM_SOLICITUD VI COD CLIENTE VI FECHA EMISION VI SUBTOTAL SOLICITUD VI IVA VI ICE VI TOTAL SOLICITUD VO NUM SOLICITUD VL NUM SOLICITUD RETURN VO NUM SOLICITUD END INSERTAR SOLICITUD 64 65 1 8 1 2 Funci n VOP F INSERTAR OFERTA La siguiente funci n inserta los datos de ofertas retornando el c digo para utilizarlo en la inserci n de los datos de los servicios que contiene dicha oferta CREATE OR REPLACE FUNCTION INSERTAR OFERTA VI DESCRIPCION OFERTA IN CRM OFERTA OFR DESCRIPCION VI MES INICIAL IN CRM VOP OFERTA OFR MES INICIAL9STYPE VI MES FINAL IN CRM VOP OFERTA OFR MES 1 VI DESCUENTO IN CRM_VOP_OFERTA OFR_DESCUENTO TYPE VI TOTAL IN CRM_VOP_OFERTA OFR_TOTAL TYPE VO COD OFERTA OUT CRM VOP OFERTA OFR COD RETURN CRM VOP OFERTA OFR COD IS VL COD OFE
88. UNIVERSIDAD DE GUAYAQUIL Facultad de Ciencias Matem ticas y F sicas Carrera de Ingenier a en Sistemas Computacionales Desarrollo del M dulo de Ventas Operacionales para un E CRM TESIS DE GRADO Previo a la Obtenci n del T tulo de INGENIERO EN SISTEMAS COMPUTACIONALES Autor es SILVANA CAROLINA PAREDES VANEGAS MIGUEL SALOM N CARVAJAL D VALOS VANESSA MARGARITA GARC A PICO GUAYAQUIL ECUADOR A o 2006 2007 AGRADECIMIENTO A mis padres por su apoyo incondicional a las personas que aportaron con sus ideas y a todos quienes colaboraron para llevar a cabo este proyecto Silvana Paredes DEDICATORIA Dedico esta obra a mis padres quienes han sido mis principales maestros desde la infancia Silvana Paredes AGRADECIMIENTO A mi Sra Madre Mar a Luisa D valos G mez A mi Sr Padre Miguel Salom n Carvajal Becerra Divinos seres que me dieron la vida y grandes maestros que tengo de toda la vida y gracias a su apoyo y coraje forjaron mi car cter y esp ritu de salir adelante Miguel S Carvajal D valos DEDICATORIA El esfuerzo entregado en esta obra le ofrezco a Dios cuya bendici n me ha permitido conseguir este logro el mismo que lo dedico a mis padres hermanos maestros amigos compa eros y dem s personas que creyeron en mis habilidades y aportaron su granito de arena para conseguir este triunfo Miguel S Carvajal D valos AGRADECIMIENTO Agradezco a Dios que su infini
89. V DESCRIPCION Varchar2 20 informaci n del rango de ventas Identifica el orcentaje de 5 PNY PORCENTAJES Number 2 2 COMISION cancelado al vendedor Identifica la fecha 6 RNV FECHA _ Date en que est INICIAL RANGO asignado el rango de ventas Identifica la fecha 7 ENV RECHA Date G FINAL_RANGO 9 rango de ventas asignado Identifica metas 8 RNV TIPO META Varchar2 1 mensuales anuales 55 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP OFERTA CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK Nulo Identifica el 1 OFR COD OFERTA Varchar2 4 c digo de X oferta disponible Identifica la 2 RONS Varchar2 50 descripci n oferta Identifica la fecha OFR MES INICIAL Number desde que est vigente la oferta Identifica la fecha 4 OFR MES FINAL Number hasta que estar vigente la oferta Identifica el descuento que se 5 DESCUENTO Number 12 2 6 otorgar al cliente seg n la oferta seleccionada Valor q identifica el total a cancelar 6 OFR TOTAL Number 12 2 despu s de realizado el descuento
90. VL ANIO VL FECHA FIN O ACT VL FECHA INICIO CICLO ANT CONSTRUYE FECHA VL DIA INICIO CICLO l VL MES ANT VL ANIO ANT VL HA INICIO CICLO ANT VL FECHA FIN CICLO ANT CONSTRUYE FECHA VL DIA CICLO F VL MES ANT VL ANT VL FECHA CICLO ANT SI EL CONTRATO SE LO FIRMO EN EL CICLO ANTERIOR IF VL FECHA CONTRATO BETWEEN VL FECHA INICIO CICLO ANT AND VL FECHA FIN CICLO ANT THEN VL RESPUESTA z PR EL CONTRATO SE PRORRATEA Y SE LO FACTURA ELSE SI EL CONTRATO SE LO FIRMO EL PRESENTE CICLO IF VL FECHA CONTRATO BETWEEN VL FECHA INICIO CICLO ACT AND VL FECHA FIN CICLO ACT THEN VL RESPUESTA NO EL CONTRATO NO DEBE FACTURARSE SE LO FIRM EN EL PRESENTE CICLO ELSE VL RESPUESTA z SI EL CONTRATO DEBE FACTURARSE NORMALMENTE END IF END IF VO RESPUESTA VL RESPUESTA RETURN VO RESPUESTA END 129 PROCEDIMIENTO PRINCIPAL PARA JOBS procedure VOP P FACTURAR JOB IS CURSOR CU CLIENTES IS SELECT CLI CODIGO a CLI ESTADO ESTADO b CLN NOMBRES APELLIDOS AS APELLIDOS FROM CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE NATURAL b WHERE a CLI CODIGO b CLN ID AND a CLI ESTADO A UNION SELECT CODIGO a CLI ESTADO ESTADO 0 611 NOMB COM b CLJ_RAZON AS APELLIDOS FROM CRM CRM SCO CLIENTES a CRM CRM SCO CLIENTE JURIDICO b WHERE a CLI CODIGO b CLJ ID AND a CLI_ESTADO A BEGIN
91. VO FECHA MINIMA OUT VARCHAR2 RETURN VARCHAR2 FUNCTION OBTENER FECHA CADUCIDAD VI FECHA INICIO IN CRM CONTRATO CLIENTE CTC VO FECHA CADUCA OUT VARCHAR2 RETURN VARCHAR2 135 FUNCTION VOP_F_INSERTAR_CONTRATO VI_CODCLIENTE _ INCRM_VOP_CONTRATO_CLIENTE CTC_CODCLIENTE TYPE VI FECINICIO INCRM_VOP_CONTRATO_CLIENTE CTC_FEC_INICIO TYPE VI FEC CADUCIDAD IN CRM VOP CONTRATO CLIENTE CTC CADUCIDAD96TYPE VI FEC MIN CONTRATO IN CRM CONTRATO CLIENTE CTC FECHA MIN VI COD VENDEDOR IN CRM VOP CONTRATO CLIENTE CTC COD VI COD FORMA PAGO IN CRM CONTRATO CLIENTE CTC COD FORMA VI TIPO CONTRATO CRM CONTRATO CLIENTE CTC TIPO VI CODIGO CICLO IN CRM CONTRATO CLIENTE CTC CODIGO VO CODCONTRATO OUT CRM VOP CONTRATO CODCONTRATO STYPE RETURN CRM VOP CONTRATO PROCEDURE VOP P INSERTAR SERV CONT VI COD CONTRATO CRM SERV CONT SEC COD VI CODCLIENTE IN CRM SERV VI CODIGO SERV IN CRM SERV CONT SEC CODIGO VI SEC FECHA ACTIVACION IN CRM SERV CONT SEC FECHA VI SEC FECHA FINAL IN CRM SERV CONT SEC FECHA FINAL9 6TYPE
92. Visitado P Pendiente C digo de canal Fecha de asignaci n para la visita Fecha en que se realiza la visita VST CODIGO VENDEDOR C digo del vendedor Nulo 58 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o actualizaci n VERSION 1 0 Marzo 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM_VOP_PROSPECTO Referencial Descripci n Descripci n de Campos Nulo PRO_CODIGO_ Number PROSPECTO EROS Number TIPO_PROSPECTO PRO_APELLIDOS Hace referencia al tipo de cliente Identifica los nombres del prospecto Identifica los apellidos del prospecto PRO_PASAPORTE PRO_ESTADO_CIVIL Identifica fecha 9 PROZPEG NAC Data nacimiento del prospecto Identifica el n mero de pasaporte del prospecto Identifica el g nero al que pertenece el prospecto Identifica el estado civil del prospecto Identifica el n mero de FROGEDULA c dula del prospecto B 59 PRO ACTIVIDAD PRO CODIGO NAC PRO ESTADO PRO TIPO CLIENTE JURIDICO PRO REP LEG Number Identifica la actividad mediante el al que se dedica el prospecto Identifica el c digo de nacionalidad del prospecto Identifica el estado del prospecto A Activo l Inactivo Identifica el tipo de cliente jur dico del prospecto Identifica al representante le
93. YPE ESTADO OUT BOOLEAN RETURN BOOLEAN IS V VALOR NUMBER 20 V ESTADO BOOLEAN begin SELECT COUNT INTO V VALOR FROM CRM VOP CONTRATO CLIENTE CO WHERE CO CTC VI CODIGO IF V VALOR 0 THEN V ESTADO TRUE ELSE V ESTADO FALSE END IF RETURN V ESTADO end CALCULAR MONTO IVA function VOP CALCULAR VI SUBTOTAL IN CRM VOP CAB FACTURA CFAC SUBTOTAL 6TYPE VO IVA OUT CRM FACTURA CFAC return CRM FACTURA CFAC is porcentaje CRM ADM PARAMETROS PRM IVA 6TYPE 122 BEGIN VO_IVA 0 SELECT NVL PAR PRM_IVA 0 INTO V PORCENTAJE FROM CRM ADM PARAMETROS PAR IF V PORCENTAJE IS NULL THEN PORCENTAJE 0 END IF VO SUBTOTAL V PORCENTAJE 100 RETURN VO IVA END CALCULAR MONTO ICE FUNCTION VOP_F_CALCULAR_ICE VI SUBTOTAL IN CRM_VOP_CAB_FACTURA CFAC_SUBTOTAL TYPE VO ICE OUT CRM FACTURA CFAC RETURN CRM VOP FACTURA CFAC IS V PORCENTAJE CRM ADM PARAMETROS PRM BEGIN VO 0 SELECT NVL PAR PRM ICE 0 INTO V PORCENTAJE FROM CRM ADM PARAMETROS PAR IF V PORCENTAJE IS NULL THEN V PORCENTAJE 0 END IF VO SUBTOTAL V PORCENTAJE 100 RETURN VO ICE END CALCULAR RECARGO FUNCTION VOP_F_CALCULAR_RECARGO VI COD CLIENTE IN CRM_VOP_CAB_FACTURA CFAC_COD_CLIENTE TYPE VO RECARGO OUT CRM
94. _INICIO 9 THEN WHEN VL_MES_INICIO 10 THEN OCT WHEN VL_MES_INICIO 11 THEN NOV WHEN VL_MES_INICIO 12 THEN DEC END VL FECHA TO CHAR VL DIA INICIO VL MESI TO CHAR VL ANIO INICIO SELECT SUM CANTIDAD INTO VL TOTAL SERVICIOS FROM CRM V VL TOTAL VTA 0 FOR C IN CL VISTA LOOP VL PORC VENDIDO ROUND C CANTIDAD VL TOTAL SERVICIOS 2 100 IF VL PORC VENDIDO 70 THEN SELECT SUM SC SEC PRECIO SERV INTO VL TOTAL VTA SERV FROM CRM VOP VENDEDOR VN CRM VOP CONTRATO CLIENTE CC CRM VOP SERV CONT SC WHERE VN VEN CODIGO VI CODIGO VENDEDOR AND VN VEN CODIGO CC CTC COD VENDEDOR AND CC CTC_CODCONTRATO SC SEC COD CONTRATO AND CC CTC_CODCLIENTE SC SEC_CODCLIENTE AND CC CTC_FECHA_RECISION IS NULL AND CC CTC_FEC_INICIO BETWEEN VL FECHA1 AND VL FECHA2 AND SC SEC CODIGO SERVZC SRV CODIGO IF VL TOTAL SERV IS NULL THEN VL TOTAL VTA SERV 0 END IF VL TOTAL VTA SVL TOTAL VTA VL TOTAL SERV END IF END LOOP 109 VO_VALOR_COMISION VL_TOTAL_VTA VL_PORC_COM 100 RETURN VO_VALOR_COMISION END VOP F CALCULAR COM ROT FUNCION CODIGO CANAL DEL VENDEDOR FUNCTION VOP F CANAL VENDEDOR VI COD VEND IN CRM VOP VENDEDOR VEN CODIGO 6TYPE VO COD CANAL OUT CRM VENDEDOR VEN COD CANAL 6TYPE RETURN CRM VOP VENDEDOR VEN COD CANAL eTYPE IS BEGIN SELECT NVL VE VEN COD 000 INTO VO COD CANAL FROM CRM VOP VENDEDOR VE WHERE VE VEN CODIGO V
95. a columna en una tabla Los valores que se indican en el chequeo del valor de la columna deben ser expl citos y no pueden contener 4 Consultas que hagan referencias a valores en otros registros de otras tablas Llamadas a funciones SYSDATE UID USER USERENV etc Constantes tipo fecha que no son totalmente especificadas Se pueden definir este tipo de constraints con las instrucciones CREATE TABLE o ALTER TABLE Ejemplo CREATE TABLE CRM PROSPECTO PRO CODIGO PROSPECTO NUMBER CONSTRAINT NN CODIGO PROSPECTO NOT NULL PRO SEXO VARCHAR2 1 CONSTRAINT SCO CK PRO ESTADO CHECK PRO SEXO IN F M 3 caracteres para el prefijo del modulo separador 2 caracteres para el prefijo del tipo de restricci n constraint separador 4 5 caracteres la descripci n de la tabla separador _ 4 5 caracteres para la descripci n de la columna 12 Unique Key Constraint El constraint UNIQUE designa una columna o una combinaci n de columnas como clave nica Para satisfacer un constraint UNIQUE no deben existir 2 registros en la tabla que puedan tener el mismo valor para la clave nica Sin embargo la clave nica definida de una sola columna puede contener valores nulos Una columna con clave nica no puede ser de los tipos de datos LONG o LONG RAW Usted no podr designar la misma columna o combinaci n de estas como clave nica y a la vez como clave primaria Si
96. actualiza los datos del prospecto seleccionado correspondiente a la tabla CRM VOP PROSPECTO CREATE OR REPLACE PROCEDURE VOP P ACTUALIZAR PROSPECTO VI CODIGO PROSPECTO IN CRM VOP PROSPECTO PRO CODIGO PROSPECTO TYPE VI TIPO PROSPECTO IN CRM VOP PROSPECTO PRO TIPO VI NOMBRES IN CRM VOP PROSPECTO PRO VI APELLIDOS IN CRM_VOP_PROSPECTO PRO_APELLIDOS TYPE VI_CEDULA IN CRM_VOP_PROSPECTO PRO_CEDULAY TYPE VI PASAPORTE IN VI_SEXO IN CRM_VOP_PROSPECTO PRO_SEXOY TYPE VI ESTADO CIVIL IN CRM VOP PROSPECTO PRO ESTADO CIVILY TYPE VI FECHA IN CRM VOP PROSPECTO PRO FEC VI ACTIVIDAD IN CRM VOP PROSPECTO PRO VI NACIONALIDAD IN CRM VOP PROSPECTO PRO CODIGO VI ESTADO IN CRM VOP PROSPECTO PRO VI TIPO CLIENTE JURIDICO IN CRM VOP PROSPECTO PRO TIPO CLIENTE VI REP LEGAL IN CRM VOP PROSPECTO PRO REP 1 IS BEGIN UPDATE CRM VOP PROSPECTO SET PRO NOMBRES VI NOMBRES PRO APELLIDOS VI APELLIDOS PRO CEDULA VI CEDULA PRO PASAPORTE VI PASAPORTE PRO SEXO VI SEXO PRO ESTADO CIVIL VI ESTADO CIVIL PRO FEC NAC VI FECHA NAC PRO ACTIVIDAD ACTIVIDAD PRO CODIGO NAC VI NACIONALIDAD PRO ESTADO VI ESTADO PRO TIPO PROSPECTO VI TIPO PROSPECTO PRO TIPO CLIENT
97. ci n P Procedimiento Procedure F Funci n Function K Especificaci n del paquete Package Specification K Cuerpo del paquete Package Body Ejemplo ADM_P_ NOMBRE_STORED_PROCEDURE ADM F NOMBRE STORED FUNCTION NOMBRE STORED PACKAGE SPACIFICATION ADM K NOMBRE STORED PACKAGE BODY 1 2 1 7 Variables Se puede declarar variables locales y globales en cualquier trigger comando de item de men subprogramas de usuario PL SQL que cree Se puede usar cualquier item de forma para almacenar un valor como una variable Para definir de variables locales se antepone al nombre de la variable VL En las variables globales se antepone dos puntos y la palabra GLOBAL 1 2 1 8 Par metros de Entrada y Salida Al declarar un par metro deber a indicar el tipo de dato y el modo de acceso dentro de la lista formal de par metros Los par metros pueden ser declarados como tipos VARCHAR2 DATE NUMBER BOOLEAN cualquiera de los tipos de Objetos de Oracle Forms Cuando usted cree una funci n o procedimiento ingrese los tipos de datos despu s del nombre de cada par metro formal Ejemplo PROCEDURE VTA P DATOS CLIENTE VL COD CLI NUMBER FUNCTION SALDO CREDITOS VL CLIENTE VARCHAR2 RETURN BOOLEAN Los modos de acceso de un par metro pueden ser IN por defecto OUT IN OUT Un par metro IN pasa un valor a un subprograma El subprograma 18 puede leer el valor del par met
98. cidad CHAR a ctc fecha min contrato DD MM YYY Y as ctc fecha min contrato TO CHAR a ctc fecha recision DD MM YYYY as ctc fecha recision a ctc_codcliente f clj_razon f clj nomb com as cliente a ctc cod vendedor e emp nombres apellidos as vendedor a ctc tipo contrato a ctc codigo ciclo d cif descripcion a ctc cod forma pago g frp descripcion CRM CRM VOP CONTRATO CLIENTE a CRM CRM VOP VENDEDOR b CRM CRM SCO CLIENTES c CRM CRM VOP CICLO FACT d CRM CRM ADM EMPLEADOS e CRM CRM SCO CLIENTE JURIDICO f CRM CRM ADM FORMAS PAGO g WHERE a ctc cod vendedor b ven codigo and b ven codigo e emp codigo and codcliente c cli codigo and c cli codigo f clj id and a ctc codigo ciclo d cif codigo and a ctc cod forma pago g frp codigo ARNFR RV rtr endeantrata 164 RowSet crm vop serv contRowSet1 Tabla CRM VOP SERV CONT Clase edicionContrato SELECT SC SEC COD CONTRATO SC SEC CODCLIENTE DESCRIPCION SC SEC CODIGO SERV TO CHAR SC SEC FECHA ACTIVACION DD MM Y YY Y SEC FECHA ACTIVACION TO CHAR SC SEC FECHA FINAL DD MM YYY Y SEC FECHA 5 5 PRECIO SERV SC SEC COD TIPO BAJA TB TBJ DESCRIPCION SC SEC ESTADO CRM CRM MKO ITEMS IT CRM CRM VOP SERV CONT SC LEFT OUTER JOIN CRM CRM VOP TIPO BAJA TB ON SC SEC COD TIPO BAJA TB TBJ ID SC SEC CODIGO SERV IT ITE CODIGO SC SEC COD CONTRATO RowSet crm vop tipo bajaRowSet Tabla CRM VOP TIPO BAJA
99. e puede designar la misma columna o combinaci n de columnas como clave primaria y clave for nea a la vez Podemos hacer uso de un constraint de columna en la sintaxis para definir un primary key Convenci n VOP_PK_CANAL 5 3 caracteres para el prefijo del modulo separador on 2 caracteres para el prefijo del tipo de restricci n constraint separador 20 caracteres nombre de la tabla 14 Foreign Key Constraint Restricciones de Integridad Referencial Una restricci n de integridad referencial designa una columna o una combinaci n de columnas como clave for nea y establece una relaci n entre la clave for nea y la clave primaria o la clave nica especificada esta relaci n es llamada la clave referencial En esta relaci n la tabla que contiene la clave for nea es llamada la tabla HIJA y la tabla que contiene su clave primaria o nica referenciada es llamada la tabla PADRE Para poder definir constraints de claves for neas en Oracle se debe tener en cuenta 1 La tabla HIJA y la tabla PADRE deben estar en la misma base de datos 2 El valor de el registro que tiene en la clave for nea debe aparecer con un valor referenciado a la clave primaria del registro de la tabla PADRE El registro en la tabla hija es dicho a depender en la clave referenciada en la tabla padre 3 El valor de una de las columnas que realiza la clave for nea puede ser nulo Una clave for nea no puede ser de tipos de
100. eFormat yyyy MM dd FuncionesVop oFunciones new FuncionesVop if txtCedula getText null txtCedula getText equals bandCedula false if txtPasaporte getText null txtPasaporte getText equals bandPasaporte false if c mbEstadoCivil getSelected null info No existe informaci n de estado civil llexito false if cmbActividad getSelected null info No existe informaci n de actividades llexito false if cmbNacionalidad getSelected null info No existe informaci n de nacionalidad llexito false 27 if tipo_persona equals 1 amp amp llexito if amp amp bandPasaporte llexito false info Debe ingresar N c dula o pasaporte Jelse if bandCedula if isNumberString txtCedula getText toString info El N c dula ruc solo debe contener n meros llexito false if llexito try resultado new String oFunciones verificarCedula txtCedula getText toString 1 Jcatch Exception info Error en la verificaci n de cedula llexito false if resultado equals INCORRECTO info El N mero de c dula o R U C es incorrecto llexito false if pandPasaporte if txtPasaporte getText toString length gt 30 info Se han ingresado txtPasaporte getText toString length caracteres info El pasaporte excede la longitud de 30 caracteres perm
101. en caso de no haberse finiquitado la negociaci n CREATE OR REPLACE PROCEDURE VOP P INSERTAR VISITAS VI ID VISITA IN CRM VOP VISITAS VST ID VI CODIGO CLIENTE IN CRM VISITAS VST CODIGO VI CODIGO VENDEDOR IN CRM VOP VISITAS VST CODIGO VI CODIGO CANAL IN CRM VOP VISITAS VST CODIGO VI FECHA ASIGNACION IN CRM VISITAS VST FECHA 5 VI ESTADO IN CRM_VOP_VISITAS VST_ESTADOY TYPE VI OBSERVACION INCRM_VOP_VISITAS VST_OBSERVACION TYPE VI OPERACION IN VARCHAR2 o P IS VL CONTROL CRM VISITAS VST CONTROL 6TYPE VL ID VISITA CRM VISITAS VST ID BEGIN IF VI OPERACION N THEN SELECT MAX VST ID VISITA INTO VL ID VISITA FROM CRM VOP VISITAS IF VL ID VISITA IS NULL THEN VL ID VISITA 0 END IF VL ID VISITA VL ID VISITA 1 VL CONTROL 1 END IF IF VI OPERACION P THEN VL ID VISITA VI ID VISITA SELECT MAX VST CONTROL INTO VL CONTROL FROM CRM VOP VISITAS WHERE VST ID VISITA VL ID VISITA IF CONTROL IS NULL THEN VL CONTROL 0 END IF VL CONTROL VL CONTROL 1 END IF INSERT INTO CRM VISITAS VST CONTROL VST ID VISITA VST CODIGO CLIENTE VST CODIGO VENDEDOR VST CODIGO CANAL VST FECHA ASIGNACION VST FECHA VISITA VST ESTADO VST OBSERVACION VALUES VL CONTROL VL ID VISITA VI CODIGO CLIENTE VI CODIGO VENDEDO
102. gal de la organizaci n 60 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Marzo 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos CRM_VOP_ ATENCION_LLAMADAS CRM Referencial Descripci n Descripci n de Campos ATL_COD_LLAMADA Varchar2 Identifica el n mero de ATL CI Varchar2 c dula del cliente que realizada llamada Identifica los nombres ATL NOMBRES Varchar2 del cliente que realiza la llamada Identifica los apellidos ATL_APELLIDOS Varchar2 del cliente que realiza la llamada Identifica el motivo de la ATL_OBSERVACION llamada Identifica el c digo del servicio que posee el ATL COD SERVICIO Number cliente Identifica la prioridad de ingreso de llamada por ATL PRIORIDAD Number 2 servicio que tiene el cliente Identifica el n mero de marcaci n IVR Identifica el estado de la 61 1 6 Diagrama de clases Este diagrama de clases simplificado indica las relaciones entre clases correspondientes al m dulo de ventas operacionales sin mostrar los atributos y m todos Para ampliar la informaci n Ver Anexo A 62 1 7 Diagrama e
103. iclo de facturaci n a la tabla CRM_VOP_CICLO_FACT donde el c digo es generado secuencialmente CREATE OR REPLACE PROCEDURE VOP_P_INSERTAR_CICLO VI_DESCRIPCION IN CRM CICLO FACT CIF DESCRIPCION 9STYPE VI DIA INICIO CICLO IN CRM CICLO FACT CIF DIA INICIO VI DIA FIN CICLO IN CRM CICLO FACT CIF DIA FIN VI DIA INICIO FACT IN CRM VOP CICLO FACT CIF DIA INICIO VI DIA FIN FACT INCRM CICLO FACT CIF DIA FIN VI NUM DIAS FACT IN CRM CICLO FACT CIF NUM DIAS IS VL CODIGO CRM CICLO FACT CIF CODIGO 6TYPE BEGIN SELECT MAX CIF CODIGO INTO VL CODIGO FROM CRM VOP CICLO FACT IF VL CODIGO IS NULL THEN VL 0 END IF VL CODIGO sVL CODIGO 1 INSERT INTO CRM VOP CICLO CODIGO CIF DIA INICIO CICLO CIF DIA FIN CICLO DESCRIPCION DIA INICIO FACT DIA FIN FACT CIF NUM DIAS FACT VALUES CODIGO VI DIA INICIO CICLO VI DIA FIN CICLO VI DESCRIPCION VI DIA INICIO FACT VI DIA FIN FACT VI NUM DIAS FACT END P INSERTAR CICLO 1 8 2 24 Procedimiento VOP P INSERTAR CLIENTE 86 El siguiente procedimiento inserta los datos de un prospecto en la tabla CRM_SCO CLIENTES cuando ha sido dado de alta tomando en consideraci n el tipo de cliente Si es cliente es natural se registran los datos correspondientes en la tabla CRM SCO CLIENTE NA
104. igo del ciclo X 2 CIF DIA INICIO CICLO Number 20 08 meo cel 3 DIA FIN CICLO Number 2 0 D a fin del ciclo 4 CIF DESCRIPCION Varchare 40 del D a en que se 5 CIF DIA INICIO FACT Number 2 0 empieza la facturaci n D a final en que 6 DIA FIN FACT Number 2 0 se deja de facturar N mero de d as a 7 NUM DIAS FACT Number 2 0 realizar facturaci n 50 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha disefio Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP VENDEDOR CRM Referencial Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK Nulo 1 VEN CODIGO C digo del Vendedor C digo del tipo de VEN COD 2 TIPO VENDEDOR Varchar2 2 Vendedor X C digo que identifica 3 VEN COD RANGO VENTAS WVarchar2 4 de ventas X C digo que identifica 4 COD CANAL Varchar2 3 X Comisi n a pagar al 5 VEN COMISIONES Number 6 2 vendedor Identifica si el vendedor est 6 VEN ESTADO Varchar2 1 AcActivo 12 In ctivo para realizar ventas 51 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1
105. inar setDisabled true btnActualizar setDisabled true return null La l gica utilizada en este m todo se aplica tambi n para insertar y actualizar con la diferencia que estos dos m todos invocan al m todo local valida graba y s lo si devuelve verdadero se manipulan los datos que ser n ingresados a la base de datos 29 1 4 9 C digo para importar un archivo plano Este m todo obtiene la ruta de un archivo agregado en el control Upload verifica que sea un archivo de texto y que el tama o no exceda de 1 MB Luego lee el archivo y lo subdivide en tokens es decir en las partes que se encuentren entre el delimitador definido en este caso O Cada token corresponde a un campo y se verifica que el tipo de datos sea correcto para finalmente insertar en la base de datos public String btnImportar_action Obtener la ruta UploadedFile uploadedFile UploadedFile fileUpload1 getUploadedFile String texto null String ruta uploadedFile getOriginalName String uploadedFileType uploadedFileType uploadedFile getContentType Long uploadedFileSize new Long uploadedFile getSize boolean true if Integer parselnt uploadedFileSize toString 1024 gt 100 false info El tama o del archivo excede el m ximo permitido if luploadedFileType equals text plain false info Debe enviar un archivo de texto existente if IIExito Leer el archivo
106. itidos llexito false if txtFechaNac getText null txtFechaNac getText equals info Debe registrar la fecha de nacimiento a esta persona natural llexito false Jelse try resultado new String oFunciones verificarFechaNac formatter format txtFechaNac getSelectedDate if txtApellidos getText toString length 60 info Se han ingresado txtCedula getText toString length caracteres info Los apellidos exceden la longitud de 60 caracteres permitidos llexito false return llexito 28 1 4 8 C digo del m todo manejador del evento Action de un bot n Este ejemplo muestra el c digo del bot n Eliminar de la clase mantenimientoCanal Realiza la invocaci n al m todo DML_EliminarCanal de la clase DatosVop para lo cual previamente se ha enviado el c digo de canal al m todo setCodigo de la clase Canal debido a que DML_EliminarCanal obtiene los datos necesarios en este caso el c digo de canal desde la clase correspondiente Finalmente este m todo que ha sido invocado devuelve un mensaje en el que indica si se pudo realizar la operaci n public String btnEliminar_action DatosVop oDatos new DatosVop oDatos oCanal setCodigo txtCodigo getText toString try oDatos DML_EliminarCanal String mensaje oDatos DML_EliminarCanal crm_vop_canalDataProvider refresh info mensaje catch SQLException info Error al eliminar btnElim
107. jos para creaci n de tablas constraints ndices vistas secuencias stored program units variables y par metros de entrada y salida 1 2 4 4 Tablas Los nombres de Tablas est n conformado por Prefijo Nombre Sistema Est compuesto por tres caracteres que identifican al nombre del Sistema Ejemplo CRM Prefijo Nombre M dulo Est compuesto por tres caracteres que identifican al nombre del M dulo Ejemplo VOP Nombre de Tabla Est compuesto hasta 20 caracteres que identifican al nombre de la tabla Ejemplo CANAL Para establecer nombres largos utilizar abreviaturas de hasta 5 caracteres m ximo por cada palabra y un total de hasta 4 palabras o nem nicos estableciendo una sumatoria tope de 30 caracteres por todo el nombre de la tabla As mismo haremos uso del caracter especial UNDER SCORE para separar palabras o nem nicos en un nombre de tabla u otros objetos Ejemplo CRM VOP CAB FACTURA 1 2 1 2 Campos El campo especifica el nombre de una columna de la tabla El nombre del campo debe estar conformado de la siguiente manera Sintaxis PrefijoNombreTabla NombredelCampo Ejemplo CNL_CODIGO 1 2 1 3 Constraints Los constraints pueden ser definidos por diferentes tipos y dependiendo del tipo de restricci n que se desee utilizar Constraint es una restricci n en los valores que puede tomar una o varias columnas de una tabla Existiendo los siguientes tipos de constraints C
108. n embargo si podr designar la misma columna o combinaci n de columnas como clave nica y clave for nea Se puede definir la clave nica en una simple columna o combinaci n de ellas con la sintaxis de un constraint de columna desde una sentrencia CREATE TABLE O ALTER TABLE Convenci n ADM UK DEPT LOC CIU AGE 5 3 caracteres para el prefijo del modulo separador m 2 caracteres para el prefijo del tipo de restricci n constraint separador 4 5 caracteres para la descripci n de la tabla separador 5 3 0 4 caracteres para la descripci n de las columnas utilizando separador 13 Primary Key Constraint El constraint PRIMARY KEY designa una columna o una combinaci n de columnas como el primary key o clave primaria de la tabla Para satisfacer este constraint de PRIMARY KEY las siguientes condiciones deber n ser verdaderas 1 No puede existir m s de un registro en la tabla con los valores de la clave primaria O sea la clave primaria de un registro no la puede tener otro registro es nica 2 La columna o combinaci n de columnas que conforman la clave primaria no deben tener nulos Y estas columnas deben estar definidas como NOT NULL 3 Una tabla s lo puede tener una sola clave primaria Una clave primaria no puede ser de tipos de datos LONG or LONG RAW No se puede designar la misma columna o combinaci n de estas como clave primaria y a la vez como clave nica Sin embargo s
109. ntidad relaci n El diagrama entidad relaci n correspondiente al m dulo de ventas operacionales como es mostrado en la figura del Anexo B contiene las tablas relacionadas con las operaciones de ventas de la empresa informaci n de contratos comisiones Para implementar este m dulo es necesaria la informaci n de otros m dulos tales como Marketing Operacional y Servicio al Cliente Operacional los mismos que proporcionan informaci n relativa a servicios y clientes respectivamente y con el m dulo de Administraci n e Integraci n del CRM que proporcionan las tablas de datos parametrizados para todo el sistema Ver Anexo B 63 1 8 PL SQL 1 8 1 Funciones almacenadas 1 8 1 1 Funci n VOP_F_INSERTAR_CAB_SOLICITUD La siguiente funci n inserta los datos de cabecera de solicitud retornando el c digo para utilizarlo en la inserci n de los datos del detalle de dicha solicitud CREATE OR REPLACE FUNCTION VOP F INSERTAR CAB SOLICITUD VI COD CLIENTE IN CRM SOLICITUD CSL COD VI FECHA EMISION IN CRM SOLICITUD CSL FECHA VI SUBTOTAL SOLICITUD IN CRM VOP CAB SOLICITUD CSL SUBTOTAL VI IVA IN CRM SOLICITUD CSL VI ICE IN CRM VOP SOLICITUD CSL VI TOTAL SOLICITUD IN CRM VOP CAB SOLICITUD CSL TOTAL SOLICITUD9STYPE VO NUM SOLICITUD OUT CRM SOLICITUD CSL N
110. odificaci n de la aplicaci n realizada en Java y en PL SQL y los diagramas tiles para una mejor comprensi n visual y global concerniente a este m dulo Con la finalidad de simplificar la lectura del c digo se han aplicado est ndares que deben ser estrictamente aplicados en los cambios posteriores que se realicen y procurar en lo posible que no sean modificados los nombres de los elementos de base de datos presentados en esta versi n porque pueden ocasionar fallos en las aplicaciones que lo requieran 1 1 Herramientas utilizadas en el m dulo de ventas operacionales Para el desarrollo de este m dulo se requieren herramientas que permitan modelar la capas de datos negocio y presentaci n tal como se describe a continuaci n 4 Sun Java Studio Creator Capa de presentaci n Desarrollo de la interfaz gr fica en ambiente web y clases encargadas de manipular los datos que deben ser enviados y obtenidos de la base de datos 4 PL SQL Capa de negocio Desarrollo de paqueter a funciones y procedimientos almacenados que interact an con la base de datos 4 Oracle 9i Capa de datos Creaci n de usuarios tablas vistas ndices 1 1 1 Sun Java Studio Creator Requisitos del sistema Sistema Operativo Solaris SPARC Platform Componentes Requerimientos CPU UItraSPARC III at 750 MHz velocidad de procesamiento RAM 1GB Espacio en disco 650 MB 1Gb adicional requerido para la instalaci n Sistema Operativo Sola
111. onstraint si se omite el nombre del constraint toma un secuencial SYS_XXXXXX 1 2 1 4 Vistas Las vistas son tablas l gicas que tienen acceso a datos de otras tablas y o vistas est n implementadas por una consulta donde se pueden mostrar datos de diferentes tablas Para la convenci n de nombrado tambi n poseen un prefijo que identifica al sistema seguido del prefijo del m dulo que pertenece m s la letra V Vista y por ltimo el nombre de la vista Ejemplo CRM VOP V ROTACION 16 1 2 1 5 Secuencias Las secuencias son objetos de base de datos que normalmente son propios de un campo o columna Primary Key de tabla estos tambi n deben poseer el un prefijo que identifica al sistema seguido del prefijo del m dulo que pertenece acompa ado de una letra S Secuencia y al ltimo nombre de la secuencia preferiblemente debe tener relaci n con la tabla y el campo o columna que almacenar la generaci n autom tica de este objeto Ejemplo CRM ADM S ACCESOS CODIGO 1 2 1 6 Stored Program Units Son procedimientos funciones o paquetes almacenados de base de datos que incluyen programaci n PL SQL Para los Stored Program Units se utiliza la siguiente sintaxis PrefijoNombreM dulo PrefijoStoredProgramUnits NombreObjeto Prefijo Nombre M dulo Esta compuesto por tres caracteres que identifican el nombre del M dulo Prefijo Stored Program Units Programas almacenados de base de datos Prefijo Descrip
112. onstraints de Integridad Not Null Constraints Check Constraints gt Unique Key Constraints gt Primary Key Constraints Constraints de Integridad Referencial o Relacional 4 Foreign Key Constraints 10 Not Null Constraint Los constraints not null pueden ser definidos en el momento de la creaci n de la tabla o por medio de un comando que altere la estructura de la misma La convenci n de nombrado para este tipo de constraints deber ser la concatenaci n de prefijo del m dulo al que pertenece el objeto m s el prefijo de 2 caracteres del tipo de constraint utilizado NN y una descripci n de la tabla y columna afectada o sobre la que act a la restricci n NOT NULL En ambos caso de sentencias CREATE TABLE o ALTER TABLE no es necesario definir el nombre del constraint not null Pero por unificaci n y estandarizaci n se debe utilizar nombres apropiados para este tipo de constraints seg n el sgte estandart sino Oracle crear un constarint de nombre SYS_XXXXX para estos constraints Ejemplo VOP_NN_CIF_CODIGO 5 3 caracteres para el prefijo del modulo separador amp m 2 caracteres para el prefijo del tipo de restricci n constraint separador 4 5 caracteres para la descripci n de la tabla separador 4 5 caracteres la descripci n de la columna Check Constraint Los constraints check o de chequeo expl citamente define una condici n en los valores posibles de un
113. po Long Descripci n PK Nulo Describe el n mero DFAC NUM FACTURA Number de la factura que X X procede este detalle Valor secuencial por X DFAC NUM ITEM Varchar2 3 factura Describe el c digo del ltem o servicio X contenido en la factura DFAC COD SERVICIO Number Valor de Cantidad DFAC CANTIDAD SERVICIO Number 3 del servicio fact rado Valor total del servicio producto del precio por la cantidad DFAC_VALOR_SERVICIO Number 6 2 47 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Base de Nombre de Tabla Datos Tipo CRM VOP CAB SOLICITUD CRM Transaccional Descripci n Descripci n de Campos No Nombre Tipo _ Long Descripci n PK FK Nulo 1 CSL NUM SOLICITUD Number do eq ur solicitud 2 CSL COD CLIENTE Number Describe el c digo del X cliente 3 FECHA EMISION Date Bd RJ M solicitud CFAC SUBTOTAL _ 4 SOLICITUD Number 6 2 Subtotal de la Solicitud 5 CFAC IVA Number 6 2 Monto IVA de la Solicitud 6 CFAC ICE Number 6 2 Monto ICE de la Solicitud 7 TOTAL Number 10 2 Valor total de la Solicitud SOLICITUD
114. ra una empresa de servicios mejora la atenci n que se brinda a los clientes tanto en calidad como en tiempo debido a que se ofrecen varias v as por medio de las cuales puedan solicitar sus servicios requeridos pueden realizarlo por medio del Call Center sitio web de la empresa o mediante visitas efectuadas en el caso de los clientes VIP De esta manera se pretende crear un v nculo a largo plazo con el cliente garantizando su lealtad al enfocarse en las necesidades que presenten INDICE GENERAL MANUAL T CNICO 1 Introducci n 1 1 Herramientas utilizadas 1 1 1 Sun Java Studio Creator Requisitos 1 2 Base de datos 1 2 1 Est ndares de dise o de base de datos 1 2 1 1 Tablas 1 2 1 2 Campos 1 2 1 3 Ind ces 1 2 1 4 Vistas 1 2 1 5 Secuencias 1 2 1 6 Stored Program Units 1 2 1 7 Variables 1 2 1 8 Par metros de entrada y salida 1 3 Est ndares utilizados en la aplicaci n 1 4 Implementaci n de c digo 1 4 1 C digo de construcci n del men 1 4 2 M todo prerender 1 4 3 M todo destroy 1 4 4 Clase conexi n 1 4 5 C digo para los botones de selecci n 1 4 6 C digo para los controles calendario 1 4 7 M todo valida_graba 1 4 8 C digo del m todo manejador del evento Action 1 4 9 C digo para importar un archivo plano 1 4 10 Clase manejadora de los datos de canal 1 4 11 C digo para imprimir reportes 1 4 12 Clase Valida N meros 1 5 Diccionario de datos 1 6 Diagrama de clases 1 7 Diagrama entidad
115. ris 9 4 04 OS Solaris 10 OS Incluido el m s reciente parche J2SE para Sun Navegador de Sun soporta Mozilla 1 7 Soporte Sistema Operativo Solaris x86 Platform Edition Componentes Requerimientos CPU Intel Pentium 4 o equivalente a 1 GHz velocidad procesamiento RAM 1GB Espacio en disco 750 MB 1Gb adicional requerido para la instalaci n Sistema Operativo Solaris 9 4 04 OS Solaris 10 OS Incluido el m s reciente parche J2SE para Sun Navegador de Sun soporta Mozilla 1 7 Soporte Plataforma Microsoft Windows Componentes Requerimientos CPU Intel Pentium 4 o equivalente a 1 Ghz de velocidad de procesamiento RAM 1GB Espacio en disco 650 MB 300Mb adicional requerido para la instalaci n Sistema Operativo Windows 2000 Professional Edition Service Pack 4 Windows XP Professional and Home Editions Service Pack 2 Windows Server 2003 Navegador de Internet Explorer 5 5 Service Pack 2 Windows 2000 Soporte Internet Explorer 6 Service Pack 2 Windows XP Plataforma Linux Componentes CPU RAM Espacio en disco Sistema Operativo Navegador de Soporte Requerimientos Intel Pentium 4 o equivalente a 1 Ghz de velocidad de procesamiento 1GB 750 MB 300Mb requerido para la instalaci n Red Hat Enterprise Linux 3 At least Firefox 1 0 4 Apple Macintosh Platform Componentes CPU RAM Espacio en disco Sistema Operativo M quina Virtual de Java Navegador de Soporte Requerimientos 1 Ghz PowerPC G4
116. ro de entrada IN pero no se puede escribir sobre este valor Un par metro de entrada actual puede ser una constante variable inicializada o expresi n Un par metro de salida OUT retorna un valor desde un subprograma Un par metro actual de salida puede ser solo variable local y el programa asignar a un valor a la variable Un par metro de entrada y salida IN OUT pasa un valor a un subprograma y retorna un valor desde el subprograma A estas variables por lo tanto si se les puede asignar un valor pero no es requerido Ejemplo PROCEDURE VTA P DATOS CLIENTE VL COD CLI Dentro de la definici n de un procedimiento se puede utilizar variables de IN OUT IN OUT para el efecto citamos un ejemplo 1 3 Est ndares utilizados en la aplicaci n Para construir la interfaz gr fica de la aplicaci n se utilizan los siguientes est ndares en los controles utilizados Elemento Prefijo Ejemplo Caja de texto txt txtDescripcion Texto est tico txt txtCodigo Bot n btn btnNuevo Bot n de selecci n cmb cmbVendedor Casillas de verificaci n chk chkVendedor Mensaje mensaje mensaje De acuerdo con la funcionalidad que tiene cada p gina se clasifican en los siguientes Tipo Prefijo Ejemplo Edici n edicion edicionContratos Mantenimiento mantenimiento mantenimientoCanal Consultas consulta consultaComisiones Procesos proceso procesoFacturacion
117. s datos Para insertar valores se otorga a los atributos de la clase correspondiente los valores que se ingresaron desde la interfaz utilizando los m todos set Al realizar actualizaciones previamente se debe extraer los datos de una fila usando los m todos get package crm vop public class Canal private String cod_canal private String desc_canal private String tipo_canal private float porcentaje_canal public void setCodigo String pCodCanal cod_canal pCodCanal public String getCodigo 4 return cod canal public void setDescripcion String pDescCanal desc canal pDescCanal public String getDescripcion 1 return desc canal public void setTipoCanal String pTipoCanal canal pTipoCanal public String getTipoCanal return tipo canal public void setPorcentaje float pPorcentaje porcentaje canal pPorcentaje public float getPorcentaje return porcentaje canal 32 1 4 11 C digo para imprimir reportes El siguiente c digo permite imprimir reportes de comisiones con los datos mostrados en pantalla luego de realizar una consulta Se muestra el cuadro de di logo de la impresora y se env a cada uno de los datos con la sentencia drawString que recibe la cadena a imprimir la columna y la fila public String btnlmprimir action TODO Procesar la acci n de clic de bot n El valor de devoluci n es un nombre de caso de navegaci n en el que un valor n
118. ta bondad y amor me permite cumplir mis metas A mis padres por su apoyo incondicional esfuerzo y confianza que han puesto en mi A todos por qui nes ha sido posible obtener mi t tulo universitario A todos Gracias Vanessa Garc a Pico DEDICATORIA A mis padres por su apoyo comprensi n y paciencia Que Dios los bendiga hoy y siempre Vanessa Garc a Pico TRIBUNAL DE GRADUACI N DECLARACI N EXPRESA La autor a de la tesis de grado corresponde exclusivamente al suscrito s perteneciendo a la Universidad de Guayaquil los derechos que generen la aplicaci n de la misma Reglamento de Graduaci n la Carrera de Ingenier a en sistemas Computacionales Art 26 10 RESUMEN El M dulo de Ventas Operacionales permite realizar las operaciones involucradas en el proceso de venta recepci n de solicitudes de clientes emisi n de facturas establecimiento de contrato entre el cliente y la empresa el otorgamiento o denegaci n de cr ditos a los clientes de acuerdo con su historial y el registro de los pagos que deben realizar los clientes en el per odo establecido Permite administrar al personal del rea de ventas asignar las comisiones de acuerdo con las pol ticas de la empresa emitir reportes mensuales para su respectivo pago Dentro de las actividades diarias de los asesores de ventas se maneja la asignaci n del cronograma de visitas que deben realizar a los clientes VIP La aplicaci n de un CRM pa
119. te set java util Calendar MILLISECOND 0 date add java util Calendar YEAR 100 return date getTime private Date maxCalDate public Date getMaxCalDate java util Calendar date GregorianCalendar getInstance date set java util Calendar HOUR_OF_DAY 0 date add java util Calendar YEAR 2 maxCalDate date getTime return maxCalDate Enlazar las propiedades del control como se indica a continuaci n Propiedad Valor minDate minCalDate maxDate maxCalDate Y colocar en el m todo prerender el siguiente c digo public void prerender minCalDate getMinCalDate 26 1 4 7 M todo valida_graba Cada clase que realiza inserciones y actualizaciones contiene un m todo valida_graba que es invocado antes de realizar las dos operaciones de datos mencionadas Si devuelve verdadero se considera que los datos son v lidos y pueden ser grabados En este m todo se realizan las siguientes validaciones Que se ingresen los datos obligatorios 4 Que cada control contenga el tipo de datos correspondiente 4 Que los controles descriptivos contengan menos de la longitud m xima permitida por la base de datos 4 Que la c dula o RUC sean v lidos 4 Que se registren solo los clientes mayores de 18 a os private boolean valida graba boolean llexito true boolean bandCedula true boolean bandPasaporte true String resultado SimpleDateFormat formatter new SimpleDat
120. try BufferedReader entrada new BufferedReader new FileReader ruta StringBuffer bufer 2 new StringBuffer while texto entrada readLine null bufer append texto texto bufer toString Jcatch IOException io info Error DatosVop oDatos new DatosVop String separador String numFactura null String codCliente null String fechaPago null int c 0 StringTokenizer st new StringTokenizer texto separador if Is hasMoreTokens info El archivo no es v lido Obtener datos de los campos while st hasMoreTokens C if c 1 numFactura st nextToken if isNumeric numFactura Datos oCabFact setNumeroFactura Integer parselnt numFactura Jelse info El archivo no es v lido break if c 2 codCliente st nextToken if isNumeric numFactura oDatos oCabFact setCodCliente Integer parselnt codCliente Jelse info El archivo no es v lido break if c 3 fechaPago st nextToken String fecha fechaPago substring 0 4 techaPago substring 4 6 fechaPago substring 6 oDatos oCabFact setFechaPago fecha try oDatos DML_ActualizarFactura info Factura numFactura grabada Jcatch SQLException se info Error al Actualizar c 0 return null 30 31 1 4 10 Clase manejadora de los datos de Canal Cada una de las tablas contienen clases que permiten manipular su
121. u contrato PRM_MES_ Number CAMBIO_CONTRATO PRM_PORC_ N mibei CUOTA1_CREDITO Porcentaje m nimo de la primera cuota al establecer forma de pago a cr dito Porcentaje de inter s por mora a PRM_INTERES_MORA Number 4 2 cobrar a los clientes que adeudan Especifica el 7 PRM MESES Number 2 n mero de meses CADUCA SERVICIO en que va a caducar el servicio 43 PRM_DIAS_CADUCA_FACTURA PRM_VALOR_SERV_ MIN_VIP PRM_PORC_ COMISION_SERVICIO PRM_PORC_ COMISION_ROTACION Number Especifica el n mero de meses en que la factura generada debe caducar Valor m nimo del servicio para pagar comisi n al vendedor que realice la venta Porcentaje a pagar a los vendedores que vendan un Servicio con valor mayor al establecido para comisionar Porcentaje a pagar a los vendedores que vendan servicios de menor rotaci n 44 M dulo de Ventas Operacionales SISTEMA INTEGRA P gina 1 1 CRM Fecha dise o Fecha ltima actualizaci n VERSION 1 0 Diciembre 2006 Febrero 2007 Universidad de Guayaquil Autor Carrera de Ingenier a de Sistemas Computacionales Grupo 2 Nombre de Tabla Base de Datos Tipo CRM VOP CAB FACTURA CRM Transaccional Descripci n Descripci n de Campos No Nombre Tipo Long Descripci n PK FK Nulo Describe el n mero 1 CFAC_NUM_FACTURA Number de la fra X Describe el c digo 2 CFAC COD
122. ulo devolver la misma p gina Font fuente new Font Dialog Font PLAIN 10 PrintJob pj Graphics pagina pj Toolkit getDefaultToolkit getPrintJob new Frame SCAT null recorrer el provider de vendedor boolean blHayRegistros crm vendedorDataProvider cursorFirst String a null RowKey aRowKey null int cont 0 String codVendedor String nombreVendedor null while blHayRegistros a new Integer cont toString aRowKey crm_vop_vendedorDataProvider getRowKey a codVendedor crm vop vendedorDataProvider getValue ven codigo toString if codVendedor equals cmbVendedor getSelected toString nombreVendedor crm vendedorDataProvider getValue emp apellidos toString blHayRegistros crm_vop_vendedorDataProvider cursorNext cont boolean blVendedor false if chkVendedor getValue null blVendedor Boolean parseBoolean chkVendedor getValue toString try pagina pj getGraphics pagina setFont fuente pagina setColor Color black blHayRegistros true float valor float valor multa float valor com canal float valor com servicio float valor com rotacion float valor com incentivo String fecha int fila 130 cont 1 String fechaMin null String fechaMaxenull 39 if txtFechaMin getText null fechaMin txtFechaMin getText toString Jelse if txtFechaMax getText null fechaMax txtFechaMax getText
Download Pdf Manuals
Related Search
Related Contents
V7 S17PS T15 Jingle - Tema Telecomunicazioni フリーマーケットシステム BoConcept Model 6150 Assembly Instruction MANUAL DE INSTRUCCIONES Protector de Segmento ASI atelier autour de l`agence française de developpement (afd) USER MANUAL 取扱説明書 - ESSENCE User Manual Copyright © All rights reserved.
Failed to retrieve file