Reporte para planilla
Publicado por Jesús (1 intervención) el 08/11/2007 12:35:55
Hola, les agradecería mucho si es que me ayudan en éste pequeño problemita que tengo;
resulta que estoy haciendo un sistema que emitirá un reporte que equivale a decir una planilla. Bien sucede q mas o menos pienso darle ésta forma:
CODIGO - FECHA1 - FECHA 2 - FECHA 3 - FECHA4 -CANTIDAD - TOTAL_A_PAGAR.
Debo de resaltar que bajo los campos fecha1, fecha2, fecha3,...irá la cantidad de trabajo que realizan diario cada miembro del personal, yq ue se sumará las cantidades y su total de trabajo en la semana se ubique en el campo CANTIDAD, por su puesto el total a pagar dependerá de un precio por tipo de trabajo. Ah...debe de saber que los campo fecha variarán; por asi decirlo, si es que se trabajA solamente tres días en la semana deben aparecer tres campos FECHA, y una cosa más por política de la empresa debe de dejarse un día de trabajo por cobrar la sema a siguiente; mas o menos si trabajan de lunes a viernes; la planilla debe de salir los pagos del día lunes hasta el jueves; lo que implica que la siguiente semana deberá salir en la planilla el trabajo de viernes y los días siguintes
POR EJEMPLO:
AQUI TOMO POR CASO LA SEMANA DE 05 DE NOVIEMBRE AL 09 DE NOVIEMBRE, PERO SÓLO SE PAGARÁ HASTA EL JUEVES 08 DE NOVIEMBRE.
CAMPOS del reporte A EMITIR:
CODIGO - 05/11/2007-06/11/2007-07/11/2007-08/11/2007-CANTIDAD-TOTAL_PAGAR
001 10.2 20.3 15.6 19.8 65.9 52.72
COMO VERÁ LAS CANTIDADES que están bajos los campos fechas son kilogramos(unidades de peso en Perú), y la cantidad es la suma de éstos pesos. Para hallar el total simplemete es por S/. 0.80 que tambien lo incluyo en una tabla de acuerdo al tipo de trabajo. Pero es caso aparte.
Lo dicho; para la siguiente semana se requerirá un reporte más queincluya las nuevas cantidades de trabajo con uss respectivas fechas y la fecha que quedó sin pagar (viernes 09/11/2007)
Bueno ya llevo dos formas de hacerlo; por Visual Basic genero la "vista previa" a través de un DATA GRID pero mi problema es sacarlo por impresora.
aqui mi código que saca los datos que le mencioné en el ejemplo:
SQL = "TRANSFORM SUM(PLANILLA_PERSONAL.CANT_KGS) AS KGS SELECT PLANILLA_PERSONAL.ID AS CODIGO, SUM (PLANILLA_PERSONAL.CANT_KGS) AS [TOTAL_EN _KGS],SUM (TOTAL_PAGAR) AS [PAGO_TOTAL] FROM PLANILLA_PERSONAL, PERSONAL WHERE " & _
"FECHA Between " & _
"# " + FECHA_INICIAL + " # And # " + FECHA_FINAL + " #" & _
"AND PLANILLA_PERSONAL.ID=PERSONAL.ID AND PLANILLA_PERSONAL.ID_PROCESO = '60101'" & _
"GROUP BY PLANILLA_PERSONAL.ID, PERSONAL.NOMBRES PIVOT Format([FECHA],'DD/MM/YYYY')"
el ID_PROCESO que se ve, es el tipo de trabajo que entrará al reporte. Son tres tipos de trabajo.
Lo traté de hacer con DataReport y DataEnviroment pero no puedo. DataReport sin DataEnviroment obtengo resultados pero me incluye toda la semana, y cuando solo deseo dos días o tres me sale error.
Por favor les pido que me ayuden en el desarrollo de ésta aplicación.
Muchas gracias de antemano.
Jechams
resulta que estoy haciendo un sistema que emitirá un reporte que equivale a decir una planilla. Bien sucede q mas o menos pienso darle ésta forma:
CODIGO - FECHA1 - FECHA 2 - FECHA 3 - FECHA4 -CANTIDAD - TOTAL_A_PAGAR.
Debo de resaltar que bajo los campos fecha1, fecha2, fecha3,...irá la cantidad de trabajo que realizan diario cada miembro del personal, yq ue se sumará las cantidades y su total de trabajo en la semana se ubique en el campo CANTIDAD, por su puesto el total a pagar dependerá de un precio por tipo de trabajo. Ah...debe de saber que los campo fecha variarán; por asi decirlo, si es que se trabajA solamente tres días en la semana deben aparecer tres campos FECHA, y una cosa más por política de la empresa debe de dejarse un día de trabajo por cobrar la sema a siguiente; mas o menos si trabajan de lunes a viernes; la planilla debe de salir los pagos del día lunes hasta el jueves; lo que implica que la siguiente semana deberá salir en la planilla el trabajo de viernes y los días siguintes
POR EJEMPLO:
AQUI TOMO POR CASO LA SEMANA DE 05 DE NOVIEMBRE AL 09 DE NOVIEMBRE, PERO SÓLO SE PAGARÁ HASTA EL JUEVES 08 DE NOVIEMBRE.
CAMPOS del reporte A EMITIR:
CODIGO - 05/11/2007-06/11/2007-07/11/2007-08/11/2007-CANTIDAD-TOTAL_PAGAR
001 10.2 20.3 15.6 19.8 65.9 52.72
COMO VERÁ LAS CANTIDADES que están bajos los campos fechas son kilogramos(unidades de peso en Perú), y la cantidad es la suma de éstos pesos. Para hallar el total simplemete es por S/. 0.80 que tambien lo incluyo en una tabla de acuerdo al tipo de trabajo. Pero es caso aparte.
Lo dicho; para la siguiente semana se requerirá un reporte más queincluya las nuevas cantidades de trabajo con uss respectivas fechas y la fecha que quedó sin pagar (viernes 09/11/2007)
Bueno ya llevo dos formas de hacerlo; por Visual Basic genero la "vista previa" a través de un DATA GRID pero mi problema es sacarlo por impresora.
aqui mi código que saca los datos que le mencioné en el ejemplo:
SQL = "TRANSFORM SUM(PLANILLA_PERSONAL.CANT_KGS) AS KGS SELECT PLANILLA_PERSONAL.ID AS CODIGO, SUM (PLANILLA_PERSONAL.CANT_KGS) AS [TOTAL_EN _KGS],SUM (TOTAL_PAGAR) AS [PAGO_TOTAL] FROM PLANILLA_PERSONAL, PERSONAL WHERE " & _
"FECHA Between " & _
"# " + FECHA_INICIAL + " # And # " + FECHA_FINAL + " #" & _
"AND PLANILLA_PERSONAL.ID=PERSONAL.ID AND PLANILLA_PERSONAL.ID_PROCESO = '60101'" & _
"GROUP BY PLANILLA_PERSONAL.ID, PERSONAL.NOMBRES PIVOT Format([FECHA],'DD/MM/YYYY')"
el ID_PROCESO que se ve, es el tipo de trabajo que entrará al reporte. Son tres tipos de trabajo.
Lo traté de hacer con DataReport y DataEnviroment pero no puedo. DataReport sin DataEnviroment obtengo resultados pero me incluye toda la semana, y cuando solo deseo dos días o tres me sale error.
Por favor les pido que me ayuden en el desarrollo de ésta aplicación.
Muchas gracias de antemano.
Jechams
Valora esta pregunta


0