[Lazarus-es] Funci?n para convertir n?mero a cadena

Ismael L. Donis Garc?a ismael en citricos.co.cu
Jue Dic 10 15:22:38 CET 2009


Muchas gracias reiteradas, me sería de gran utilidad dichos manuales, pero 
para que me lo puedas enviar por e-mail tendrías que fraccionarlos en trozos 
de 500kb ya que mi conexión es por moden lo que te causaría alguna molestia 
al tener que enviar tantos mensajes. Si te es posible estaría agradecido una 
vez más.

Saludos cordiales
=========
¦¦ ISMAEL ¦¦
=========
----- Mensaje original ----- 
De: "JoshyFun" <joshyfun en gmail.com>
Para: "Spanish version of Lazarus List" 
<lazarus-es en lists.lazarus.freepascal.org>
Enviado: miércoles, 09 de diciembre de 2009 05:51
Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena


Hello Ismael,

Wednesday, December 9, 2009, 11:41:14 PM, you wrote:

ILDGa> UTF8 to ANSI -> Operaciones -> ANSI to UTF8 -> salida
ILDGa> 1 Millón de Gracias Reiteradas

Me alegro mucho :)

ILDGa> Sigo pendiente de como saber si una caja de texto o mejor dicho un 
TMaskEdit
ILDGa> tiene un valor fecha verdadero o no. Veré como lo soluciono.

Para saber si una fecha es válida simplemente intenta convertirla a
fecha:

var
  Fecha: TDateTime;
begin
  if not TryStrToDate(txtMaskEdit.Text,Fecha) then begin
    Fecha:=0;
  end;
end;

Necesitarás el "DateUtil" en el uses.

ILDGa> Otra cosa existe una forma de saber el primer y último día de un mes, 
algo
ILDGa> así como las siguientes funciones en Visual Basic
ILDGa> DateSerial(2009, 12, 1)  = 01/12/2009
ILDGa> DateSerial(2009, 13, 0)  = 31/12/2009

DateSerial no recuerdo que hacía, lo siento... pero para operar con
fechas tienes varias funciones. Por ejemplo para saber el primer y
último dia da un mes:

var
  TestDate: TDateTime;
  DiaPrimero:TDateTime;
  DiaUltimo: TDateTime;
  Y,M,D: integer;
begin
  TestDate:=EncodeDateTime(2009,12,10,0,0,0,0);
  //Si queremos "hoy" pues...
  TestDate:=Now;
  //Descomponemos la fecha...
  DecodeDate(TestDate,Y,M,D);
  //Restamos el dia del mes y sumamos 1 (10 - 10 + 1)
  DiaPrimero:=IncDays(TestDate,(D*-1)+1);
  //Sumamos un mes a DiaPrimero, lo que nos dará el
  //primer dia del mes siguiente y le restamos 1.
  DiaUltimo:=IncDay(IncMonth(DiaPrimero),-1);
end;

Esto es una ilustración de lo que se puede hacer, aunque un poco
enrevesada, más fácil y directo sería:

  //Descomponemos la fecha...
  DecodeDate(TestDate,Y,M,D);
  DiaPrimero:=EncodeDate(Y,M,1);
  DiaUltimo:=EndOfMonth(Y,M);

Para este tipo de operaciones tienes IncYear, IncMonth, IncDay,
incHour, incMinute, IncSecond, etc... o cosas como DayOfWeek(),
DayOfYear, DayOfTheMonth, SecondsBetween, SecondsSpan, DaysBetween,
YearsBetween, CompareDate, CompareDateTime, DateTimeToUnix,
EndOfAMonth, etc... Lo que puedes hacer es abrir la unit
"DateUtil.pas" y ver la cantidad de funciones que hay para trabajar
con fechas. O si lo prefieres dispongo de unos .CHM que son los
manuales de freepascal y lazarus para poder ser visionados con el
explorer o similar, pero pesan bastante, unos 12 MB.

-- 
Best regards,
 JoshyFun


_______________________________________________
Lazarus-es mailing list
Lazarus-es en lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es






More information about the Lazarus-es mailing list