PDA

Ver la Versión Completa : un Registrio que empiece de 1 cada mes!!


Yun-i
20-02-2008, 02:03:59
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 por responder tu solucion me ayudo mucho pero ahora estoy en algo:


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í

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
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:

error not enough actual parameters

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


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


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


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: