![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Obtener fechas especificas
Saludos colegas,
Trabajo en un sistema de Recursos Humanos y Nominas y se me ha pedido crear automaticamente los periodos de pagos los culaes pueden ser mensuales, quincenales o Semanales por tanto necesito crear una funcion que pasandole la fecha o solo el año, me retorne las quincenas de todos los meses del año, las semanas y logico el mes. Para de esta manera insertar la informacion en una tabla. Ej: Año :=2006 Quncenas :=True; Enero 01/01/2006 al 15/01/2006 y 16/01/2006 al 31/012006 Febrero 01/02/2006 al 15/02/2006 y 16/01/2006 al 28/02/2006 lo mismo seria para las semanas.. Cualquier sugerencia, recomendacion o codigo sera bien recibido Les estare sumamente agradecido por su colaboracion Gracias de antemano Delphi 5.0 Windows XP |
#2
|
||||
|
||||
Hola OscarRd
Esto lo haria yo con una sentencia sql en un query y con dos dateTimePicker asi: Coloco dos dateTimePicker en el form y pongo esto, puede ser en un boton: Saludos |
#3
|
|||
|
|||
Mmm no lo que necesita es crear los correspondientes registros de Pagos donde estan sus vencimientos, ya sea semanal..mensual o anual no es asi??
Si usas las ultimas versiones de delphi como el 2005 las rutinas date time tienen muchas funciones que te pueden ayudar. Tengo a mano aca delphi4 y no veo mucha ayuda jeje. Tenes IncMonth que te adiciona a tu fecha la cantidad de meses que le indiques..los format date ..los decode etc. Podrias tener procedimientos distintos ya sea para mes ..semana o quincena, para tener el codigo bien prolijo y obtener las fechas correspondientes e ir creando los registros en la base. Tambien podes convertir las fechas desde el motor..con las funciones que trae y ponerlas desde la misma sentencia insert..(aunque seria medio imposible en algunos casos ja). por ejemplo para quincena sabes que comienza en dia 1 y termina en el ultimo dia del mes: 01/06/2006 al 15/06/2006 16/06/2006 al //ultimo dia del mes// ultimo dia del mes: primerDia:=01/06/2006; primerDiaMesSig:= incMonth(primerDia,1): cantDiaMes:=round(primerDiaMesSig - primerDia); ultimodiaMes:=cantDiaMes/06/2006; claro que esto no funciona si lo pones asi nomas ![]() Espero te sirva..y si tengo tiempo te armo algo si no lo resolviste. salu2222 |
#4
|
|||
|
|||
Gracias Reina, Agradeceria mucho
que me armaras el codigo lo mas que puedas ya que soy Nuevo en Delphi. Gracias de antemano |
#5
|
|||
|
|||
Gracias por tu pronta respuesta
lo que requiero es dividir los 12 meses del año en quincenas mes 2: primera quincena del 1 al 15 mes 2: segunda quincena del 16 al 31 ya probe lo que dijiste pero no me funciona |
#6
|
|||
|
|||
Lo que puse es una idea..asi tal cual lo escribi no funciona...
Si podes pega el codigo de lo qu hiciste y lo miro, ya me estoy yendo pero mañana o mas tarde lo miro! salu22 |
#7
|
||||
|
||||
Hola
La verdad no entiendo bien lo que quieres entonces, porque en mi empresa se cancela la nomina tanto por semana como quincena o incluso mes y puedo ver exactamente lo que se cancelo en la semana X o quincena X del mes X. Sin nungun problema, entonces no entiendo.!=?? Bueno lamento no haber podido ayudarte. Saludos |
#8
|
|||
|
|||
Gracias Caral....si que me ayudaste
En otras palabras lo que quiero es tener una tabla con la siguiente estructura Periodo mes fecha1 fecha2 001 Enero 01/01/2006 15/01/2006 002 Enero 16/01/2006 31/02/206 003 Febrero 01/02/2006 01/15/06 004 Febrero 16/02/2006 28/02/2006 Esto es en el caso de los pagos quincenales |
#9
|
||||
|
||||
Hola
La verdad sigo sin entender. ![]() La nomina quincenal se paga solo las quincenas La nomina Semanal se paga solo las semanas Entonces donde esta el problema, si le indico a mi programa que me de las nominas me las dara en su fecha exacta. Ahora si quieres que el programa defina que ha sido pagado por semana o por quincena o por mes, es tan facil como poner un campo en la tabla que lo defina, S, Q, M. En la consulta pones un edit en el que se verifica que cumpla la condicion osea que el campo FechaDePago que as de incluir en la tabla, sea S, o Q, o M. La verdad siempre con el mismo sistema que te indique, lo veo realmente simple, creo que buscar las nominas exactas como las planteas te va a dar problemas ya que en algunas ocasiones la fecha de pago se puede variar si hay dias feriados u otros, esto es normal en las empresas, para mi te estas complicado la vida, sinceramente el codigo que necesitas es simple. Saludos |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Obtener tiempo entre fechas | YaninaGenia | Oracle | 5 | 04-05-2006 20:46:20 |
función para obtener diferencias entre fechas - Firebird | clanmilano | SQL | 1 | 11-11-2005 13:29:52 |
Las horribles fechas, control de fechas | Huer | OOP | 6 | 18-10-2005 19:11:49 |
Backup de tablas especificas | Marcos | Firebird e Interbase | 2 | 18-02-2005 15:20:16 |
Pintar Celdillas especificas en una grilla | josem | Conexión con bases de datos | 2 | 19-07-2004 20:57:17 |
![]() |
|