Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   un Registrio que empiece de 1 cada mes!! (https://www.clubdelphi.com/foros/showthread.php?t=53393)

Yun-i 20-02-2008 02:03:59

un Registrio que empiece de 1 cada mes!!
 
Hola tenia tiempod e no pasar por aqui, bueno, primero que nada agradezco
por sus comentarios y pido una disculpa por no conocer algunas politicas del foro, ahora se que cualquier duda por pequeña que sea se deve poner en un nuevo hilo o buscar alguno ya existente :o.


Bunoe el motivo de este hilo es el siguiente:

Estoy trabajando con delphi 6, tengo una tabla (SQL Server) con tres campos Fecha, Nombre y Numero solo quiero que cada mes el campo numero empiece de uno(1), teniendo el historial de los que ya tengo para posteriosres consultas o reportes.

Se me han ocurrido comparar las fechas del ultimo registros con la actual pero no se i sea una buena idea y tampoko se como hacerlo.

Espero su ayuda

GRACIAS :)

rafita 20-02-2008 12:22:16

Hola compañero,

se me ocurre que para buscar el último número que has utilizado puedes hacer un

SELECT Max(Numero) FROM Tabla WHERE Fecha BETWEN primerdia_mes-año AND últimodia-mes-año

después le sumas 1, y ya tienes el siguiente,

Un saludo, y suerte

Yun-i 20-02-2008 23:31:57

gracias
 
Gracias por responder tu solucion me ayudo mucho pero ahora estoy en algo:

Código Delphi [-]
ADOQyNoEv.Close;
ADOQyNoEv.SQL.Clear;
ADOQyNoEv.SQL.Add('select max(numero)from SIES_NombreEvento');
ADOQyNoEv.SQL.Add('where fecha between :a and :b');
ADOQyNoEv.Parameters.ParamByName('a').Value:=datetimepicker1.Date;
ADOQyNoEv.Parameters.ParamByName('b').Value:= //aqui debe ir el mismo mes y año
// de datatimepicker.data de arriba pero con el ultimo dia del mes
ADOQyNoEv.Open;

como poder decirle que sea el mimo mes y año pero el ultimo dia :confused:
creo que hay algo de delphi de dateutiles pero no se cual metodo me sirva me imagino que el DayOfTheMoth
pero nunca lo he usado

Gracias por tu ayuda :) muchas gracias en verdad gracias!!!!

rafita 21-02-2008 09:39:59

Hola,

prueba algo así

Código:

var FechaDesde, FechaHasta : TDateTime;
    Dia, Mes, Ano : Word;

...

DecodeDate(DateTimePicker1.Date, Ano, Mes, Dia);
// primer día
FechaDesde:=ReCodeDate(Ano, Mes, 1);
// último día
FechaHasta:=ReCodeDate(Ano, Mes, DaysInMonth(DateTimePicker1.Date));


Un saludo,

Yun-i 21-02-2008 17:24:06

Ok
 
Gracias voy a probar y despues pongo como me fue

saludos :)

Yun-i 21-02-2008 17:44:26

Ya intente pero resulta que es mas o menos lo que ya habia intentado
con la funcion DaysInMonth, yo no sabia con exactitud los parametros que recibe, pero al parecer falta algun parametro por que cuando lo compilo marca este error:

Cita:

error not enough actual parameters
Código Delphi [-]
DecodeDate(DateTimePicker1.Date, Ano, Mes, Dia);
FechaDesde:=ReCodeDate(Ano, Mes, 1);//aqui marca ese error
// y si lo pongo como  comentario y compilo tambien marca error en la linea de abajo
FechaHasta:=ReCodeDate(Ano, Mes, DaysInMonth(DateTimePicker1.Date));//aqui


Como te de digo se me hace que falta algun parametro por ahi pero no se cual:confused:

Gracias por tu ayuda rafita :)

Yun-i 21-02-2008 18:03:28

creo que va la date asi ya compila

Código Delphi [-]
FechaDesde:=ReCodeDate(date,Ano, Mes, 1);
FechaHasta:=ReCodeDate(date,Ano, Mes, DaysInMonth (DateTimePicker1.Date));


jejeje

Ya Corrio y funciona a la perfección jejeje Gracias Por tu ayuda rafita el credito es tuyo jejee
un saludo

Yun-i 21-02-2008 19:40:09

no todo funciona a la perfeccion :( resulta que todo lo ase bien
excepto en el mes de febrero si el año no es biciesto

no lo puede serrr :mad: bueno tal vez tu sepas cual es el error ya probe con esto
Código Delphi [-]
 
echaDesde:=ReCodeDate(datetimepicker3.Date,Ano, Mes, 1);
// último día
FechaHasta:=ReCodeDate(datetimepicker3.Date,Ano, Mes, DaysInMonth(DateTimePicker1.Date));// en ves de date , 
//datetimepicker3.data pero al parecer eso no tiene nada que ver

Gracias de todas formas ya vamos por menos :(

Yun-i 21-02-2008 20:09:45

que burro jejeje el error era de logica. jejejej

Rastreando me di cuanta estaba usado el datatimepicker3 para jalar la fecha pero abajo para saber los dias del mes lo sacada de datatimepicker1 :p

bueo la cosa que do asi

Código Delphi [-]
 
FechaDesde:=ReCodeDate(datetimepicker3.Date,Ano, Mes, 1);
// último día
FechaHasta:=ReCodeDate(datetimepicker3.Date,Ano, Mes, DaysInMonth(DateTimePicker3.Date));// jeje yo tenia: 
//datetimepicker1.Date como se ve en el post de arriba


bueno misterio resueltoo jejej gracias:rolleyes:


La franja horaria es GMT +2. Ahora son las 00:46:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi