Diferencia entre revisiones de «Subir Planillas Web»
De Wiki
(→Año y mes retro) |
|||
Línea 1: | Línea 1: | ||
+ | |||
+ | !!!1Importante hay q cambiar el script htdocs/sitios/sitiodgp/planilla_web/subir_planillas.pl | ||
+ | q hizo martin para q borre r1 r2 y r3 de haberes_temp antes de incorporar los dbfs | ||
+ | esto es para evitar subir datos duplicados a la base final | ||
+ | |||
==Archivos Necesarios== | ==Archivos Necesarios== | ||
===Origen de datos=== | ===Origen de datos=== |
Revisión del 16:49 2 feb 2012
!!!1Importante hay q cambiar el script htdocs/sitios/sitiodgp/planilla_web/subir_planillas.pl
q hizo martin para q borre r1 r2 y r3 de haberes_temp antes de incorporar los dbfs esto es para evitar subir datos duplicados a la base final
Contenido
Archivos Necesarios
Origen de datos
recibo1.DBF recibo2.DBF recibo3.DBF
Estos deben ser los del mes a procesar. Lo mejor es tomarlos de donde se imprimen los recibos Ejemplo T:\reportes\recibos\datos\201008 donde T ==> \\dgpxeon\transacciones-pampa
Destino Temporal
Lo que se hace es copiarlos a una carpeta local para trabajarlos
Ejemplo: C:\RECIB\0810
Limpieza
Se hace con VFP6 o cualquier editos de dfbs
recibo1
Debemos eliminar la liquidación duplicada 950 que es la /8
recibo2
Eliminar columnas
f_baja f_perm recibo rec_barra anti_anios anti_meses
¿Cómo Eliminar Columnas?
use c:\"ubicacion" brows modify structure ó alter table recibo2 drop column f_baja alter table recibo2 drop column f_perm alter table recibo2 drop column recibo alter table recibo2 drop column rec_barra alter table recibo2 drop column anti_anios alter table recibo2 drop column anti_meses
Control de datos erroneros
Numeros de recibos en 0
replace all nro_recibo with 1 for nro_recibo=0
tot_reten en NULL (deberias ser cero)
brow for isnull(tot_reten) brow for empty(tot_reten)
en horas dedic no debe haber campos vacios o nulos brow for empty(hs_dedica) brow for isnull(hs_dedica)
en dias_retro idem horas_dedic
- no encontre como preguntarq este vacio, x q si pregunto por empty() me trae tambien los q valen cero
recibo3
Eliminar columnas
codc_uacad
alter table recibo3 drop column codc_uacad
Control de datos erroneros
Año y mes retro
selec * from recibo3 where ano_retro=9999 and mes_retro=99
select recibo3 replace ano_retro with 0, mes_retro with 0 for ano_retro=9999 replace ano_retro with 0, mes_retro with 0 for mes_retro=99
Nro de renglon
replace all nro_renglo with 1 for nro_renglo=0
Nro de recibo
replace all nro_recibo with 1 for nro_recibo=0
Registros sin datos
brow for isnull(nro_liqui)
Novedad 1 erroneo
en novedad1 debe haber campos vacios o nulos
brow for empty(novedad1) brow for isnull(novedad1)
Nro de renglon erroneo
en renglon debe haber campos vacios o nulos
brow for empty(nro_renglo) brow for isnull(nro_renglo)
Nro recibo erroneo
en recibo debe haber campos vacios o nulos
brow for empty(nro_recibo) brow for isnull(nro_recibo)
Destino Final de los DBFS
Conexion
Conectarse por ftp a 200.16.30.9 usuario dgp clave *****
Copia
copiarlos a /htdocs/sitios/sitiodgp/planilla_web/recibos/ Importante el nombre debe ser recibo1.DBF (nombre en minuscula, extension en mayuscula)
Vaciar la base
Esto se puede hacer desde phpPgAdmin
Conexion
entrar a http://www.dgp.unc.edu.ar/Pg/ usuario: dgppostgres pass: ******
Elegir Bd
Entrar a la base haberes_temp
Vaciado
vaciar las tablas recibo1 recibo2 recibo3 Luego hacer limpieza full analyse (selectall/limpiar->execute)
Ejecucion del script
Conexion
Conectarse Via ssh a 200.16.30.9 usuario dgp clave ***** Ahora me logueo como root
Ejecucion
cd htdocs/sitios/sitiodgp/planilla_web/ ./subir_planillas.pl Esto carga las tablas recibo1,recibo2 y recibo3 de la base haberes_temp
Bajada y subida
Una vez que se cargaron las tablas en habers_temp
Loguearse como postgres
siempre via ssh lo mejor es hacerse root su pass:***** y luego hacerse postgres su postgres
dump de la base haberers_temp
cd /usr/bin/pg_dump -d haberes_temp > ./haberes0810_final.sql
levantado del dump a la base haberes
cd /usr/bin/psql haberes < ./haberes0810_final.sql
Creditos
El script de conversion de dbfs a postgres fue desarrollado por Martin Villalba