El botón de Especiales establece los tipos en función del procedimiento SAD_AplicaEspeciales() almacenado en el external.prg
procedure SAD_AplicaEspeciales()
local ldFEC,llFES,llFDS
llFDS = .F.
ldFEC = LISTA.fec_equ
if empty(ldFEC)
ldFEC = LISTA.fecha
endif
&& Se comprueban los festivos
llFES = SAD_Festivo(ldFEC)
if (alltrim(LISTA2.Estado) == «NO»)
&& Modifico el tipo de servicio en LISTA
if empty(LISTA.tipo) .OR. (LISTA.tipo == «F»)
replace LISTA.tipo with iif(llFES,»F»,»») in «LISTA»
endif
else
&& Modifico el tipo de servicio en LISTA y SERVICIO
if empty(LISTA.tipo) .OR. (LISTA.tipo == «F»)
replace LISTA.tipo with iif(llFES,»F»,»») in «LISTA»
indexseek(LISTA.codigo,.T.,»SERVICIO»,»CODIGO»)
replace SERVICIO.tipo with LISTA.tipo in «SERVICIO»
endif
endif
&& Se establecen como fin de semana todos los servicios que se realicen a partir de las 14:00 del sabado y todo el domingo.
if inlist(dow(ldFEC),7,1)
if (dow(ldFEC) = 7)
ldFDS = FWEF_HoraEnRango(LISTA.hfin,»14:00″,»23:59″)
else
ldFDS = .T.
endif
if ldFDS
if (alltrim(LISTA2.Estado) == «NO»)
replace LISTA.tipo with «W» in «LISTA»
else
replace LISTA.tipo with «W» in «LISTA»
indexseek(LISTA.codigo,.T.,»SERVICIO»,»CODIGO»)
replace SERVICIO.tipo with LISTA.tipo in «SERVICIO»
endif
endif
endif
endproc
El botón de Festivos cambia su etiqueta por Especiales
Nuevo Botón de Festivos en generación automática de Servicios en Base a Servicios Anteriores
Mejoras en el tratamiento de los servicios por tipo en el external
Nuevo tipo de servicio
Ahora el resumen de seguimiento social del usuario detalla los horarios por días .lu_, ._ma, ._mi, etc…
Ahora por defecto en la ventana de informes de gerencia no aparecen los botones […] para que aparezcan hay que hacer doble clic sobre cualquier parte vacía del formulario
Nuevo formulario de consultas de servicios en modo SOLO LECTURA que permite filtrar los servicios mostrados por usuario
Ahora estando en modo consulta es posible localizar usuarios introduciendo directamente su código en el campo correspondiente.
Ahora se pregunta al facturar si se desean imprimir/previsualizar o no todas las facturas generadas
Se soluciona un problema con el CCC al pasar a CSB
Se externaliza la rutina de asignación de campos al fichero CSB
Se añade un nuevo botón de exportación a EXCEL de las facturas seleccionadas en el reprocesador automático.
Se añade una nueva rutina para el recálculo/reprocesado de los documentos de facturación automática a external.prg
procedure SAD_UPI(tcTIP,tcCOD,tdFI,tdFF,tcALIAS)
local lcSQL,lnU,lnP,lnI
lnU = 0
lnP = 0
lnI = 0
do case
case (tcTIP == «USUARIOS»)
if indexseek(tcCOD,.T.,»USUARIO»,»CODIGO»)
lnP = USUARIO.imp_u
lnU = &tcALIAS..horas
lnI = lnU * lnP
replace &tcALIAS..precio with lnP ,;
&tcALIAS..importe with lnI in (tcALIAS)
endif
case (tcTIP == «AUXILIARES»)
case (tcTIP == «SERVICIOS»)
case (tcTIP == «TIP.USU.»)
endcase
endproc
Nuevo listado para mostrar servicios asignados a cada usuario (por servicio)
Nuevo listado para mostrar servicios asignados a cada usuario (por usuario)
—
Nuevo listado para mostrar excepciones/incidencias por zona
Nuevas excepciones APB alta procedente de baja temporal
CTI cambio de titularidad
OTR Otras excepciones / incidencias
Solucionados problemas en las búsquedas de excepciones
Adaptado el formulario de excepciones a la búsqueda con códigos de usuarios.
Nuevo listado con información de seguimiento social para el usuario.
Existe una nueva función llamada SAD_IncidenciasUsuario(tcUSU,tdFI,tdFF,tnRES) que devuelve una lista de las excepciones que afectan a un usuario en un periodo de fechas concreto
Ahora las horas teoricas de usuarios, tienen en cuenta los días festivos, salvo para los usuarios con una D en .CIP
Nuevas excepciones SIN, INI, FIN y VAR (sin servicio, inicio del servicio, fin del servicio y variación del servicio)
solamente SIN es una excepción que afecta a los servicios, las otras se han creado únicamente con propósitos informativos…
Nuevas funciones para el tratamiento de las horas teoricas asignadas a los usuarios.
Se ha añadido una nueva ventana de introducción de servicios de forma directa para todo un mes (centrandose en las horas):
Cuando se crean servicios en esta pantalla el auxiliar,las tareas,precios y kilómetros se toman de forma automática de servicios anteriores a ese usuario (buscando primero en la lista de temporales y después en el fichero de definitivos), de no existir, quedarán en blanco.
Los usuarios se muestran ordenados por fecha de alta y alfabéticamente, no se mostrarán los usuarios de baja para el mes mostrado (aunque esos usuarios tuviesen servicios, en el periodo mostrado)
Los servicios en negrita hacen referencia a servicios de tipo/estado SI (servicios ya generados)
Poner a cero las horas de un servicio lo borrará de la LISTA de no realizados o de SERVICIOS según su estado sea SI o NO. Lo mismo sucede con las modificaciones de horas, etc.
El tipo del servicio se establecerá a través de la rutina habitual definida en external de forma automática.
Se han añadido accesos directos por F3 a facturación masiva (FAM), consulta de facturas (FAC) y recibos (REC)
Ahora las auxiliares mostradas en el HISTORIAL se ordenan de forma que primero se muestran alfabeticamente las que no tienen fecha de baja y después las que tienen fecha de baja
Ahora junto a un nombre descriptivo de EXCEPCIÓN es posible indicar una ZONA, esta zona no afecta a la excepción, no confundir con la zona que solicitan ciertas excepciones por ejemplo dias festivos. ESTA ZONA ES OPCIONAL Y PURAMENTE DESCRIPTIVA.
Ahora al facturar desde facturacion masiva, la forma de pago del usuario se copia en la factura.
Se añade una nueva pantalla para la gestión de festivos mediante calendario y la rutina SAD_Festivo(tdFEC,tcZON).
Se añade la columna importe al formulario de facturación masiva
Se añade la posibilidad de filtrar por forma de cobro pago en REMESAS
Se añade la columna forma de cobro pago al GRID de remesas
Ahora al remesar una Factura su estado cambia automáticamente a Remesado
Se ha añadido un nuevo estado a las facturas «REMESADO»
Se ha incluido una tercera línea de importes asociados al servicio, en principio destinada a costes adicionales como seguridad social.
Los importes acumulados en esta línea se configuran en rutina SAD_CosteServicio(tcTIP,tcAUX,tcCUR) del fichero external.prg
Por defecto se esta utilizando el campo Importe_SS de la ficha del auxiliar.
HAY CAMBIOS EN LAS ESTRUCTURAS DE DATOS, DEBE ACTUALIZARSE EL DATA
HAY UNA RUTINA NUEVA SAD_CosteServicio(tcTIP,tcAUX,tcCUR) QUE DEBE SER AÑADIDA AL FICHERO EXTERNAL.PRG:
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&
&& Determina otros costes de un SERVICIO en función de sus tarifas y del tipo de servicio actual
&& (generalmente estos costes van asociados a la ficha del servicio)
&&
&& Parámetros (recibidos)
&&
&& tcTIP: (OPCIONAL) tipo de servicio (por defecto » = normal)
&& tcAUX: (OPCIONAL) tcAUX si se indica un auxiliar se hará un posicionamiento en tcCUR, de lo contrario se tomara el registro actual
&& tcCUR: (OPCIONAL) cursor de auxiliar, por defecto ser ‘AUXILIAR’
&&
&& Devolverá el coste correspondiente
&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
function SAD_CosteServicio(tcTIP,tcAUX,tcCUR)
local lnTAR
tcTIP = iif(empty(tcTIP),»»,tcTIP)
tcCUR = iif(empty(tcCUR),»AUXILIAR»,tcCUR)
tcAUX = iif(empty(tcAUX),&tcCUR..codigo,tcAUX)
lnTAR = 0
if (tcAUX <> &tcCUR..codigo)
if indexseek(tcAUX,.T.,tcCUR,»CODIGO»)
lnTAR = &tcCUR..importe_ss
endif
else
lnTAR = &tcCUR..importe_ss
endif
return lnTAR
endfunc
Ahora se aplican las tarifas (en función del tipo del servicio)
Primero se aplican las tarifas de los servicios incluidos en el servicio (si hay varios se incluirá la más alta).
Si el usuario/auxiliar tiene tarifas asociadas, estas prevalecerán sobre las del servicio en si.
Se añade el campo kilometros a cada servicio
Añadida «RENTA PER CAPITA» a las listas de salarios/ingresos
Añadido segundo campo de ingresos y segundo campo de salario
Elminiada expansion de memo en las notas de historiales
Solucionado un problema con el cambio de tipo en servicios no realizados
Añadido mensaje de fuera de intervalo para los serviciso introducidos desde introducción automática
Ahora el campo horas max. semanales de la ficha del auxiliar se autocalcula en funciónde las horas diarias
Se ha añadido un nuevo informe a los ya existentes en listados y estadísticas
Se implementa la posibilidad de introducir una expresión SQL en el fichero de texto paralelo al formato
Se añade la opción de exportación a XML
Se ha añadido el campo FCobro al sistema de impresión de FACTURAS
Ahora al facturar si en el campo dir_env (del usuario/auxiliar) hay datos serán enviados esos datos a la factura en lugar de los habituales
Los campos alternativos de envío también han sido añadidos a la tabla de usuarios/beneficiarios
Nuevo campo fcobro en la tabla (y en el formulario) de facturas
VERSION DIA. 26.09.2007
Para imprimir las remesas se tienen los siguientes campos en la tabla REM:
REM.NOM Nombre
REM.NIF Nif
REM.FEC Fecha de cargo
REM.BAN Banco
REM.CCC ccc
REM.NUM Número total de efectos
REM.TOT Importe total de los efectos seleccionados