Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2009-11

Más dudas

93 messages · 20 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Fredy Gonzales
to Ismael L. Donis García: Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son…

Te recomiendo que visites la pagina de silivo clecio, el tiene muchos ejemplos de Zeos con Firebird y parece que tiene algo de lo que buscas.

http://sites.google.com/site/silvioprogbs/downloads

Saludos.

FG

Earlier message 25 lines
----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 10:15 AM Subject: [Lazarus-es] M�s dudas Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son las que se sobran. 1.- Como ejecutar procedimientos almacenados de select, insert y update con firebird? Digo de los 3 porque no se si se ejecutan de diferentes formas, en VB se ejecutan de una sola forma: conexi�n.Execute "nombre_del_procedimiento('parametros',....)", , adCmdStoredProc 2.- Como optener en nombre de la Pc cliente tanto en windows como linux? Puede ser a traves de un componente que ya tenga esa funci�n o atraves de una funci�n espec�fica. GRACIAS ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ------------------------------------------------------------------------------

Reply by email

Claudio Romero
to Ismael L. Donis García: Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son…
Por ej: con este procedimiento (Ejecutas INSERT, DELETE, u STORED
PROCEDURE, o EXECUTE BLOCK) Usa SQLDB
procedure EjecutaSql(consulta:string;IBexecSql:TIBConnection);
var SQLQuery1:TSQLQuery;SQLTransaction1:TSQLTransaction;
begin
	try
	    SQLQuery1:=TSQLQuery.Create(nil);
    	SQLTransaction1:=TSQLTransaction.Create(nil);
        SQLTransaction1.DataBase:=IBexecSql;
        SQLQuery1.UsePrimaryKeyAsKey:=false;
        SQLQuery1.Transaction:=SQLTransaction1;
        //
        SQLQuery1.SQL.add(consulta);
        try
  		    SQLTransaction1.StartTransaction;
    		SQLQuery1.ExecSQL;
            SQLTransaction1.Commit;
        except on e:exception do
           	begin
            	SQLTransaction1.Rollback;
            	mensajeExcepcion('procedure EjecutaSql'+#13+'Error al
ejecutar: '+#13+consulta+#13+e.message);
			end;
        end;
	finally
    	SQLTransaction1.free;
	    SQLQuery1.free;
	end;
end;
//puedes llamarlo asi
    sentencia:='EXECUTE PROCEDURE
PAGO_FACTURA('+GclaveFactura+','+DBEtoco.text+','+Gfecha+',1,'+origen+')';
    EjecutaSql(sentencia,IBConnection1);
//En Firebird es asi EXECUTE PROCEDURE PAGO_FACTURA(CLAVE_FACT, TOCO,
FECPAGO, VENPAGO1, ORIGEN)

Saludos

Reply by email

Ismael L. Donis García

Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son las que se sobran.

1.- Como ejecutar procedimientos almacenados de select, insert y update con firebird? Digo de los 3 porque no se si se ejecutan de diferentes formas, en VB se ejecutan de una sola forma:

conexi�n.Execute "nombre_del_procedimiento('parametros',....)", , adCmdStoredProc

2.- Como optener en nombre de la Pc cliente tanto en windows como linux? Puede ser a traves de un componente que ya tenga esa funci�n o atraves de una funci�n espec�fica.

GRACIAS
=========
�� ISMAEL ��
=========
PD: No tengo acceso a Internet
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091124/c3659430/attachment.html>

Reply by email

Claudio Romero
to Ismael L. Donis Garc?a: 1 Mill�n de gracias. Has explicado superbien. GRACIAS Reiteradas ========= ��…

mE OLVIDE
HAY UN mensajeExcepcion
SOLO ES UNA RUTINA QUE muestra el mensaje, y graba en un archivo log el error. Puedes Poner un ShowMessage, o lo que quieras.

2009/11/24 Ismael L. Donis Garc?a <ismael en citricos.co.cu>:

Show quoted text 67 lines
1 Mill�n de gracias. Has explicado superbien. GRACIAS Reiteradas ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 08:55 Asunto: Re: [Lazarus-es] M�s dudas Por ej: con este procedimiento (Ejecutas INSERT, DELETE, u STORED PROCEDURE, o EXECUTE BLOCK) Usa SQLDB procedure EjecutaSql(consulta:string;IBexecSql:TIBConnection); var SQLQuery1:TSQLQuery;SQLTransaction1:TSQLTransaction; begin try SQLQuery1:=TSQLQuery.Create(nil); SQLTransaction1:=TSQLTransaction.Create(nil); SQLTransaction1.DataBase:=IBexecSql; SQLQuery1.UsePrimaryKeyAsKey:=false; SQLQuery1.Transaction:=SQLTransaction1; // SQLQuery1.SQL.add(consulta); try SQLTransaction1.StartTransaction; SQLQuery1.ExecSQL; SQLTransaction1.Commit; except on e:exception do begin SQLTransaction1.Rollback; mensajeExcepcion('procedure EjecutaSql'+#13+'Error al ejecutar: '+#13+consulta+#13+e.message); end; end; finally SQLTransaction1.free; SQLQuery1.free; end; end; //puedes llamarlo asi sentencia:='EXECUTE PROCEDURE PAGO_FACTURA('+GclaveFactura+','+DBEtoco.text+','+Gfecha+',1,'+origen+')'; EjecutaSql(sentencia,IBConnection1); //En Firebird es asi EXECUTE PROCEDURE PAGO_FACTURA(CLAVE_FACT, TOCO, FECPAGO, VENPAGO1, ORIGEN) Saludos _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Fredy Gonzales
to Ismael L. Donis García: No le�ste debajo de la firma. Gracias de todos modos. ========= �� ISMAEL ��…

Jaja, disculpa, a veces no leo ni las letras chiquitas de los documentos de los bancos.

Ok para otra sera.

FG

Earlier message 54 lines
----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 2:46 PM Subject: Re: [Lazarus-es] M�s dudas No le�ste debajo de la firma. Gracias de todos modos. ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ----- Mensaje original ----- De: Fredy Gonzales Para: Spanish version of Lazarus List Enviado: martes, 24 de noviembre de 2009 08:50 Asunto: Re: [Lazarus-es] M�s dudas Te recomiendo que visites la pagina de silivo clecio, el tiene muchos ejemplos de Zeos con Firebird y parece que tiene algo de lo que buscas. http://sites.google.com/site/silvioprogbs/downloads Saludos. FG ----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 10:15 AM Subject: [Lazarus-es] M�s dudas Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son las que se sobran. 1.- Como ejecutar procedimientos almacenados de select, insert y update con firebird? Digo de los 3 porque no se si se ejecutan de diferentes formas, en VB se ejecutan de una sola forma: conexi�n.Execute "nombre_del_procedimiento('parametros',....)", , adCmdStoredProc 2.- Como optener en nombre de la Pc cliente tanto en windows como linux? Puede ser a traves de un componente que ya tenga esa funci�n o atraves de una funci�n espec�fica. GRACIAS ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet --------------------------------------------------------------------------

Reply by email

Ismael L. Donis Garc?a
to Claudio Romero: Por ej: con este procedimiento (Ejecutas INSERT, DELETE, u STORED PROCEDURE, o EXECUTE…

1 Mill�n de gracias.

Has explicado superbien.

GRACIAS Reiteradas
=========
�� ISMAEL ��
=========

Earlier message 47 lines
----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 08:55 Asunto: Re: [Lazarus-es] M�s dudas Por ej: con este procedimiento (Ejecutas INSERT, DELETE, u STORED PROCEDURE, o EXECUTE BLOCK) Usa SQLDB procedure EjecutaSql(consulta:string;IBexecSql:TIBConnection); var SQLQuery1:TSQLQuery;SQLTransaction1:TSQLTransaction; begin try SQLQuery1:=TSQLQuery.Create(nil); SQLTransaction1:=TSQLTransaction.Create(nil); SQLTransaction1.DataBase:=IBexecSql; SQLQuery1.UsePrimaryKeyAsKey:=false; SQLQuery1.Transaction:=SQLTransaction1; // SQLQuery1.SQL.add(consulta); try SQLTransaction1.StartTransaction; SQLQuery1.ExecSQL; SQLTransaction1.Commit; except on e:exception do begin SQLTransaction1.Rollback; mensajeExcepcion('procedure EjecutaSql'+#13+'Error al ejecutar: '+#13+consulta+#13+e.message); end; end; finally SQLTransaction1.free; SQLQuery1.free; end; end; //puedes llamarlo asi sentencia:='EXECUTE PROCEDURE PAGO_FACTURA('+GclaveFactura+','+DBEtoco.text+','+Gfecha+',1,'+origen+')'; EjecutaSql(sentencia,IBConnection1); //En Firebird es asi EXECUTE PROCEDURE PAGO_FACTURA(CLAVE_FACT, TOCO, FECPAGO, VENPAGO1, ORIGEN) Saludos

Reply by email

Ismael L. Donis García
to Fredy Gonzales: Te recomiendo que visites la pagina de silivo clecio, el tiene muchos ejemplos de Zeos…

No le�ste debajo de la firma.

Gracias de todos modos.
=========
�� ISMAEL ��
=========
PD: No tengo acceso a Internet

Earlier message 39 lines
----- Mensaje original ----- De: Fredy Gonzales Para: Spanish version of Lazarus List Enviado: martes, 24 de noviembre de 2009 08:50 Asunto: Re: [Lazarus-es] M�s dudas Te recomiendo que visites la pagina de silivo clecio, el tiene muchos ejemplos de Zeos con Firebird y parece que tiene algo de lo que buscas. http://sites.google.com/site/silvioprogbs/downloads Saludos. FG ----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 10:15 AM Subject: [Lazarus-es] M�s dudas Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son las que se sobran. 1.- Como ejecutar procedimientos almacenados de select, insert y update con firebird? Digo de los 3 porque no se si se ejecutan de diferentes formas, en VB se ejecutan de una sola forma: conexi�n.Execute "nombre_del_procedimiento('parametros',....)", , adCmdStoredProc 2.- Como optener en nombre de la Pc cliente tanto en windows como linux? Puede ser a traves de un componente que ya tenga esa funci�n o atraves de una funci�n espec�fica. GRACIAS ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ----------------------------------------------------------------------------

Reply by email

Claudio Romero
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas)

Grabo estos datos:
usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto

Si quieres buscar el nombre de la maquina, creo que debes hacer una
funcion para Windows, y otra para Linux.
En Windows obtener el nombre de la pc (funcionaba en Delphi)
function GetComputerName : String;
var
   pcComputer : PChar;
   dwCSize    : DWORD;
begin
   dwCSize := MAX_COMPUTERNAME_LENGTH + 1;
   GetMem( pcComputer, dwCSize );
   try
      if Windows.GetComputerName( pcComputer, dwCSize ) then
         Result := pcComputer;
   finally
      FreeMem( pcComputer );
   end;
end;

En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto.

Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente).

Saludos

Reply by email

Ismael L. Donis García
to Fredy Gonzales: Jaja, disculpa, a veces no leo ni las letras chiquitas de los documentos de los bancos.…

No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n.

Por casualidad nadie sabe como obtener el nombre de la PC.

Es que los sistemas deben guardar en un registro de incidencias las operaciones realizadas por los clientes y dentro de los datos a guardar est� el nombre de la PC desde donde se origin� la operaci�n.

Eso se hace para un mayor control de las operaciones, no es un capricho mi� sino que me lo exigen.

Lo m�s dif�cil es que quiero que funcione en Linux y Windows.

GRACIAS Reiteradas
=========
�� ISMAEL ��
=========
PD: No tengo acceso a Internet

Earlier message 66 lines
----- Mensaje original ----- De: Fredy Gonzales Para: Spanish version of Lazarus List Enviado: martes, 24 de noviembre de 2009 01:26 Asunto: Re: [Lazarus-es] M�s dudas Jaja, disculpa, a veces no leo ni las letras chiquitas de los documentos de los bancos. Ok para otra sera. FG ----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 2:46 PM Subject: Re: [Lazarus-es] M�s dudas No le�ste debajo de la firma. Gracias de todos modos. ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ----- Mensaje original ----- De: Fredy Gonzales Para: Spanish version of Lazarus List Enviado: martes, 24 de noviembre de 2009 08:50 Asunto: Re: [Lazarus-es] M�s dudas Te recomiendo que visites la pagina de silivo clecio, el tiene muchos ejemplos de Zeos con Firebird y parece que tiene algo de lo que buscas. http://sites.google.com/site/silvioprogbs/downloads Saludos. FG ----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 10:15 AM Subject: [Lazarus-es] M�s dudas Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son las que se sobran. 1.- Como ejecutar procedimientos almacenados de select, insert y update con firebird? Digo de los 3 porque no se si se ejecutan de diferentes formas, en VB se ejecutan de una sola forma: conexi�n.Execute "nombre_del_procedimiento('parametros',....)", , adCmdStoredProc 2.- Como optener en nombre de la Pc cliente tanto en windows como linux? Puede ser a traves de un componente que ya tenga esa funci�n o atraves de una funci�n espec�fica. GRACIAS ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ------------------------------------------------------------------------

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García

El IP te lo pueden cambiar de todos modos de igual forma y me dicen el nombre para que sea m�s legible.

No se como obtienes el IP remoto y el proceso remoto en Firebird, no veo funciones para ello.

Saludos reiterados
=========
�� ISMAEL ��
=========

Earlier message 44 lines
----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255

Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n

Trat� de poner:

Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long

Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n.

Saludos reiterados
=========
�� ISMAEL ��
=========

Earlier message 44 lines
----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Juan Carlos
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Para Windows puedes utilizar esto:

function ComputerName: string;
var
  AComputerName: string;
  Size: Cardinal;
begin
  Size := 15;
  SetLength(AComputerName, Size);
  FillChar(PChar(AComputerName)^, 15, 0);
  if GetComputerName(PAnsiChar(AComputerName), Size) then
    Result := Trim(AComputerName);
end;
Earlier message 89 lines
----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 12:37 PM Subject: Re: [Lazarus-es] M�s dudas No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie sabe como obtener el nombre de la PC. Es que los sistemas deben guardar en un registro de incidencias las operaciones realizadas por los clientes y dentro de los datos a guardar est� el nombre de la PC desde donde se origin� la operaci�n. Eso se hace para un mayor control de las operaciones, no es un capricho mi� sino que me lo exigen. Lo m�s dif�cil es que quiero que funcione en Linux y Windows. GRACIAS Reiteradas ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ----- Mensaje original ----- De: Fredy Gonzales Para: Spanish version of Lazarus List Enviado: martes, 24 de noviembre de 2009 01:26 Asunto: Re: [Lazarus-es] M�s dudas Jaja, disculpa, a veces no leo ni las letras chiquitas de los documentos de los bancos. Ok para otra sera. FG ----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 2:46 PM Subject: Re: [Lazarus-es] M�s dudas No le�ste debajo de la firma. Gracias de todos modos. ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ----- Mensaje original ----- De: Fredy Gonzales Para: Spanish version of Lazarus List Enviado: martes, 24 de noviembre de 2009 08:50 Asunto: Re: [Lazarus-es] M�s dudas Te recomiendo que visites la pagina de silivo clecio, el tiene muchos ejemplos de Zeos con Firebird y parece que tiene algo de lo que buscas. http://sites.google.com/site/silvioprogbs/downloads Saludos. FG ----- Original Message ----- From: Ismael L. Donis Garc�a To: Spanish version of Lazarus List Sent: Tuesday, November 24, 2009 10:15 AM Subject: [Lazarus-es] M�s dudas Disculpen tantas preguntas, pero como estoy comenzando en este lenguajes mis dudas son las que se sobran. 1.- Como ejecutar procedimientos almacenados de select, insert y update con firebird? Digo de los 3 porque no se si se ejecutan de diferentes formas, en VB se ejecutan de una sola forma: conexi�n.Execute "nombre_del_procedimiento('parametros',....)", , adCmdStoredProc 2.- Como optener en nombre de la Pc cliente tanto en windows como linux? Puede ser a traves de un componente que ya tenga esa funci�n o atraves de una funci�n espec�fica. GRACIAS ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet ----------------------------------------------------------------------

Reply by email

Javier Jait
to Ismael L. Donis Garc?a: Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso…

Probaste agregar uses Windows;??

En el Lazarus est� definida as�:

function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external
'kernel32' name 'GetComputerNameA';

Saludos
Javier

Earlier message 69 lines
-----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Claudio Romero
to Javier Jait

Bueno en Firebird (funciona en Firebird >=2.1) creas la tabla.

CREATE TABLE LOG_INGRESOS_SALIDAS
(
CODIGO Integer NOT NULL,
USUARIO Varchar(31),
ROL Varchar(31),
FECHA Date,
HORA Time,
ACCION Char(1),
CONECCION Integer,
IP_REMOTO Varchar(253),
PROCESO_REMOTO Varchar(253),
PRIMARY KEY (CODIGO)
);

El generador donde almacena el valor del campo clave (lo hace flamerobin) si quieres campo clave.
CREATE GENERATOR GEN_LOG_INGRESOS_SALIDAS_ID;

El trigger para el campo clave.(lo hace flamerobin automaticamente) si quieres campo clave.
SET TERM ^ ;
CREATE TRIGGER LOG_INGRESOS_SALIDAS_BI FOR LOG_INGRESOS_SALIDAS ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN

  IF (NEW.CODIGO IS NULL) THEN
    NEW.CODIGO = GEN_ID(GEN_LOG_INGRESOS_SALIDAS_ID, 1);

END^
SET TERM ; ^

El trigger cuando se conecta algun usuario.
SET TERM ^ ;
CREATE TRIGGER AL_CONECTAR ACTIVE
ON CONNECT POSITION 0
AS
declare variable IP_remoto varchar(253);
declare variable proceso_remoto varchar(253);
BEGIN
for select m.MON$REMOTE_ADDRESS,m.MON$REMOTE_PROCESS from MON$ATTACHMENTS m where m.MON$ATTACHMENT_ID = CURRENT_CONNECTION into :IP_remotO,:proceso_remoto
do
insert into LOG_INGRESOS_SALIDAS(usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto)
values(current_user, current_date, current_time,
'I',current_connection,current_role,:IP_remotO,:proceso_remoto); END^
SET TERM ; ^

El trigger cuando se desconecta
SET TERM ^ ;
CREATE TRIGGER AL_DESCONECTAR ACTIVE
ON DISCONNECT POSITION 0
AS

begin
insert into LOG_INGRESOS_SALIDAS(usuario, fecha, hora, accion,rol,coneccion)
values(current_user, current_date, current_time,
'S',current_role,current_connection);
END^
SET TERM ; ^

El ip es del paquete que se conecta al servidor de SQL, si tienes un router en el medio, vas a obtener el ip del router.

Saludos.

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Claudio ha sido de gran ayuda esto, pero como dices tiene un gran problema, y es que siempre entonces tendr�a el IP del router y no el de la PC cliente.

De todos modos me es explicado una cosa para mi muy importante. Solo faltar�a ver si era posible obtener el IP de la PC y no el del router.

Saludos Cordiales
=========
�� ISMAEL ��
=========

Earlier message 80 lines
----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 06:04 Asunto: Re: [Lazarus-es] M?s dudas Bueno en Firebird (funciona en Firebird >=2.1) creas la tabla. CREATE TABLE LOG_INGRESOS_SALIDAS ( CODIGO Integer NOT NULL, USUARIO Varchar(31), ROL Varchar(31), FECHA Date, HORA Time, ACCION Char(1), CONECCION Integer, IP_REMOTO Varchar(253), PROCESO_REMOTO Varchar(253), PRIMARY KEY (CODIGO) ); El generador donde almacena el valor del campo clave (lo hace flamerobin) si quieres campo clave. CREATE GENERATOR GEN_LOG_INGRESOS_SALIDAS_ID; El trigger para el campo clave.(lo hace flamerobin automaticamente) si quieres campo clave. SET TERM ^ ; CREATE TRIGGER LOG_INGRESOS_SALIDAS_BI FOR LOG_INGRESOS_SALIDAS ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.CODIGO IS NULL) THEN NEW.CODIGO = GEN_ID(GEN_LOG_INGRESOS_SALIDAS_ID, 1); END^ SET TERM ; ^ El trigger cuando se conecta algun usuario. SET TERM ^ ; CREATE TRIGGER AL_CONECTAR ACTIVE ON CONNECT POSITION 0 AS declare variable IP_remoto varchar(253); declare variable proceso_remoto varchar(253); BEGIN for select m.MON$REMOTE_ADDRESS,m.MON$REMOTE_PROCESS from MON$ATTACHMENTS m where m.MON$ATTACHMENT_ID = CURRENT_CONNECTION into :IP_remotO,:proceso_remoto do insert into LOG_INGRESOS_SALIDAS(usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto) values(current_user, current_date, current_time, 'I',current_connection,current_role,:IP_remotO,:proceso_remoto); END^ SET TERM ; ^ El trigger cuando se desconecta SET TERM ^ ; CREATE TRIGGER AL_DESCONECTAR ACTIVE ON DISCONNECT POSITION 0 AS begin insert into LOG_INGRESOS_SALIDAS(usuario, fecha, hora, accion,rol,coneccion) values(current_user, current_date, current_time, 'S',current_role,current_connection); END^ SET TERM ; ^ El ip es del paquete que se conecta al servidor de SQL, si tienes un router en el medio, vas a obtener el ip del router. Saludos.

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Me da error me dice que no reconoce a: LPSTR, LPDWORD, WINBOOL y otros errores m�s.

Y le pongo:

function GetComputerName(lpBuffer: PChar; nSize: DWORD):DWORD; external:
'kernel32' name 'GetComputerNameA';
Y me da el error:
udtmmp.pas(30,68) Error: Fields cannot appear after a method or property
definition, start a new visibility section first
udtmmp.pas(30,89) Error: Error in type definition
udtmmp.pas(30,89) Fatal: Syntax error, ";" expected but "identifier NAME"
found

Saludos
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 87 lines
----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 05:09 Asunto: Re: [Lazarus-es] M?s dudas Probaste agregar uses Windows;?? En el Lazarus est� definida as�: function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetComputerNameA'; Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…
Pongo:
    function GetComputerName(lpBuffer: PChar; nSize: DWORD):DWORD; stdcall;
external 'kernel32.dll' name 'GetComputerNameA';
Y me da el error:
udtmmp.pas(30,77) Error: Fields cannot appear after a method or property
definition, start a new visibility section first
udtmmp.pas(30,86) Fatal: Syntax error, ":" expected but "const string" found

Saludos reiterados
=========
�� ISMAEL ��
=========

Earlier message 87 lines
----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 05:09 Asunto: Re: [Lazarus-es] M?s dudas Probaste agregar uses Windows;?? En el Lazarus est� definida as�: function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetComputerNameA'; Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Javier Jait
to Ismael L. Donis Garc?a

Probaste usando la funci�n "GetComputerName" que viene declarada en lazarus?

Yo hice una prueba, y funcion� bien.

Este es la prueba.
-------
unit Unit1;

{$mode objfpc}{$H+}
interface

uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,

  StdCtrls, Windows;
type
  { TForm1 }
  TForm1 = class(TForm)
       Button1: TButton;
       procedure Button1Click(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;
var
  Form1: TForm1;
implementation

{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
var
   pcComputer : PChar;
   dwCSize    : DWORD;
   a : String;
begin
   dwCSize := MAX_COMPUTERNAME_LENGTH + 1;
   GetMem( pcComputer, dwCSize );
   try
      GetComputerName( pcComputer, dwCSize );
      a:=pcComputer;
   finally
      FreeMem( pcComputer );
   end;
     ShowMessage (a);
end;
initialization
  {$I unit1.lrs}
end.
------------------

Fijate que ten�s que agregar el uses Windows, para que funcione, sino no reconoce la funci�n.
Tambi�n te aclaro que lo estoy compilando en Windows XP.

Saludos
Javier

Earlier message 106 lines
-----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Mi�rcoles, 25 de Noviembre de 2009 13:01 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Pongo: function GetComputerName(lpBuffer: PChar; nSize: DWORD):DWORD; stdcall; external 'kernel32.dll' name 'GetComputerNameA'; Y me da el error: udtmmp.pas(30,77) Error: Fields cannot appear after a method or property definition, start a new visibility section first udtmmp.pas(30,86) Fatal: Syntax error, ":" expected but "const string" found Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 05:09 Asunto: Re: [Lazarus-es] M?s dudas Probaste agregar uses Windows;?? En el Lazarus est� definida as�: function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetComputerNameA'; Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Perfecto. 1 mill�n de gracias.

Ahora abr�a que ver si esa referencia da error en LINUX, tengo debian 5 instalado pero no he podido instalar lazarus sobre �l aun por problemas con las dependencias.

Saludos
=========
�� ISMAEL ��
=========

Earlier message 184 lines
----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 25 de noviembre de 2009 10:13 Asunto: Re: [Lazarus-es] M?s dudas Probaste usando la funci�n "GetComputerName" que viene declarada en lazarus? Yo hice una prueba, y funcion� bien. Este es la prueba. ------- unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, Windows; type { TForm1 } TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation { TForm1 } procedure TForm1.Button1Click(Sender: TObject); var pcComputer : PChar; dwCSize : DWORD; a : String; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try GetComputerName( pcComputer, dwCSize ); a:=pcComputer; finally FreeMem( pcComputer ); end; ShowMessage (a); end; initialization {$I unit1.lrs} end. ------------------ Fijate que ten�s que agregar el uses Windows, para que funcione, sino no reconoce la funci�n. Tambi�n te aclaro que lo estoy compilando en Windows XP. Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Mi�rcoles, 25 de Noviembre de 2009 13:01 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Pongo: function GetComputerName(lpBuffer: PChar; nSize: DWORD):DWORD; stdcall; external 'kernel32.dll' name 'GetComputerNameA'; Y me da el error: udtmmp.pas(30,77) Error: Fields cannot appear after a method or property definition, start a new visibility section first udtmmp.pas(30,86) Fatal: Syntax error, ":" expected but "const string" found Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 05:09 Asunto: Re: [Lazarus-es] M?s dudas Probaste agregar uses Windows;?? En el Lazarus est� definida as�: function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetComputerNameA'; Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Javier Jait
to Ismael L. Donis Garc?a

En cualquier caso podr�as hacer una compilaci�n condicional.

Por ejemplo:

uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls
{$IFDEF Windows}
, Windows
{$ENDIF}

   ;

En el caso del Click.

{$IFDEF Windows}
   GetComputerName (...)
{$ELSE}
   // Procedimiento para conseguir el nombre de la PC en Linux
{$ENDIF}

Saludos

Earlier message 200 lines
-----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Mi�rcoles, 25 de Noviembre de 2009 14:57 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Perfecto. 1 mill�n de gracias. Ahora abr�a que ver si esa referencia da error en LINUX, tengo debian 5 instalado pero no he podido instalar lazarus sobre �l aun por problemas con las dependencias. Saludos ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 25 de noviembre de 2009 10:13 Asunto: Re: [Lazarus-es] M?s dudas Probaste usando la funci�n "GetComputerName" que viene declarada en lazarus? Yo hice una prueba, y funcion� bien. Este es la prueba. ------- unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, Windows; type { TForm1 } TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation { TForm1 } procedure TForm1.Button1Click(Sender: TObject); var pcComputer : PChar; dwCSize : DWORD; a : String; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try GetComputerName( pcComputer, dwCSize ); a:=pcComputer; finally FreeMem( pcComputer ); end; ShowMessage (a); end; initialization {$I unit1.lrs} end. ------------------ Fijate que ten�s que agregar el uses Windows, para que funcione, sino no reconoce la funci�n. Tambi�n te aclaro que lo estoy compilando en Windows XP. Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Mi�rcoles, 25 de Noviembre de 2009 13:01 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Pongo: function GetComputerName(lpBuffer: PChar; nSize: DWORD):DWORD; stdcall; external 'kernel32.dll' name 'GetComputerNameA'; Y me da el error: udtmmp.pas(30,77) Error: Fields cannot appear after a method or property definition, start a new visibility section first udtmmp.pas(30,86) Fatal: Syntax error, ":" expected but "const string" found Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 05:09 Asunto: Re: [Lazarus-es] M?s dudas Probaste agregar uses Windows;?? En el Lazarus est� definida as�: function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetComputerNameA'; Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Que bien, lo de abajo si lo sab�a y utilizaba, pero lo de arriba en las declaraciones no.

Gracias reiteradas
=========
�� ISMAEL ��
=========

Earlier message 231 lines
----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 25 de noviembre de 2009 12:05 Asunto: Re: [Lazarus-es] M?s dudas En cualquier caso podr�as hacer una compilaci�n condicional. Por ejemplo: uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls {$IFDEF Windows} , Windows {$ENDIF} ; En el caso del Click. {$IFDEF Windows} GetComputerName (...) {$ELSE} // Procedimiento para conseguir el nombre de la PC en Linux {$ENDIF} Saludos -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Mi�rcoles, 25 de Noviembre de 2009 14:57 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Perfecto. 1 mill�n de gracias. Ahora abr�a que ver si esa referencia da error en LINUX, tengo debian 5 instalado pero no he podido instalar lazarus sobre �l aun por problemas con las dependencias. Saludos ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 25 de noviembre de 2009 10:13 Asunto: Re: [Lazarus-es] M?s dudas Probaste usando la funci�n "GetComputerName" que viene declarada en lazarus? Yo hice una prueba, y funcion� bien. Este es la prueba. ------- unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, Windows; type { TForm1 } TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation { TForm1 } procedure TForm1.Button1Click(Sender: TObject); var pcComputer : PChar; dwCSize : DWORD; a : String; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try GetComputerName( pcComputer, dwCSize ); a:=pcComputer; finally FreeMem( pcComputer ); end; ShowMessage (a); end; initialization {$I unit1.lrs} end. ------------------ Fijate que ten�s que agregar el uses Windows, para que funcione, sino no reconoce la funci�n. Tambi�n te aclaro que lo estoy compilando en Windows XP. Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Mi�rcoles, 25 de Noviembre de 2009 13:01 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Pongo: function GetComputerName(lpBuffer: PChar; nSize: DWORD):DWORD; stdcall; external 'kernel32.dll' name 'GetComputerNameA'; Y me da el error: udtmmp.pas(30,77) Error: Fields cannot appear after a method or property definition, start a new visibility section first udtmmp.pas(30,86) Fatal: Syntax error, ":" expected but "const string" found Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Javier Jait" <javierjait en yahoo.com> Para: "'Spanish version of Lazarus List'" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 05:09 Asunto: Re: [Lazarus-es] M?s dudas Probaste agregar uses Windows;?? En el Lazarus est� definida as�: function GetComputerName(lpBuffer:LPSTR; nSize:LPDWORD):WINBOOL; external 'kernel32' name 'GetComputerNameA'; Saludos Javier -----Mensaje original----- De: Ismael L. Donis Garc?a [mailto:ismael en citricos.co.cu] Enviado el: Martes, 24 de Noviembre de 2009 19:31 Para: Spanish version of Lazarus List Asunto: Re: [Lazarus-es] M?s dudas Me pide el valor de MAX_COMPUTERNAME_LENGTH aunque para mi entender debe ser 255 Y pienso que GetMem debe ser una funci�n que tampoco tengo, al igual que Windows.GetComputerName para lo cual pienso que debe haver alguna declaraci�n Trat� de poner: Function GetComputerName Lib 'kernel32' Alias 'GetComputerNameA' (lpBuffer: String, nSize: Long): Long Pero me di� error. Adem�s de no saber bien donde ubicar la declaraci�n. Saludos reiterados ========= �� ISMAEL �� ========= ----- Mensaje original ----- De: "Claudio Romero" <clauslack en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 24 de noviembre de 2009 01:56 Asunto: Re: [Lazarus-es] M�s dudas Yo realizo algo parecido pero, utilizo los usuarios del Servidor Firebird (o del que sea) y grabo los ingresos y salidas al servidor de Base de datos con trigger(muy sencillo) Incluso los que ingresan con un navegador (con p�ginas din�micas) Grabo estos datos: usuario, fecha, hora, accion,coneccion,rol,IP_remoto,proceso_remoto Si quieres buscar el nombre de la maquina, creo que debes hacer una funcion para Windows, y otra para Linux. En Windows obtener el nombre de la pc (funcionaba en Delphi) function GetComputerName : String; var pcComputer : PChar; dwCSize : DWORD; begin dwCSize := MAX_COMPUTERNAME_LENGTH + 1; GetMem( pcComputer, dwCSize ); try if Windows.GetComputerName( pcComputer, dwCSize ) then Result := pcComputer; finally FreeMem( pcComputer ); end; end; En linux, esta el comando hostname, ifconfig y otros mas (podrias usar TProcess) No se si fpc tiene funciones para esto. Pero me parece que con 2 trigers en la base es mas limpio, y transparente. Lo otro es mas complicado de programar (ademas que te pueden cambiar el nombre de la pc tranquilamente). Saludos

Reply by email

Raistware
to Ismael L. Donis Garc?a: declaro var strfiledest, fileini : string; rename(strfiledest, fileini); Y cuando pongo…

Ismael L. Donis Garc?a escribi�:

Show quoted text 28 lines
declaro var strfiledest, fileini : string; rename(strfiledest, fileini); Y cuando pongo la funci�n rename me pide que la variable fileini sea del tipo CHAR, sin embargo la ayuda de la funcion dice: Synopsis: Rename file on disk Declaration: procedure Rename(var f: File;const s: String) procedure Rename(var f: File;p: PChar) procedure Rename(var f: File;c: Char) procedure Rename(var t: Text;const s: String) procedure Rename(var t: Text;p: PChar) procedure Rename(var t: Text;c: Char) Como podr�a solucionar dicho error? Las variables tienen por ejemplo por valor a: strfiledest := c:\datos\prueba.txt2; fileini := c:\datos\prueba.txt;
uses SysUtils;
...
RenameFile(nombreOriginal, nombreDestino);

Para no tener acceso a internet, est�s siempre bien conectado.

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…
declaro
var
   strfiledest, fileini : string;
 rename(strfiledest, fileini);

Y cuando pongo la funci�n rename me pide que la variable fileini sea del tipo CHAR, sin embargo la ayuda de la funcion dice:

Synopsis: Rename file on disk

Declaration: procedure

Rename(var f: File;const s: String)
procedure Rename(var f: File;p: PChar)
procedure Rename(var f: File;c: Char)
procedure Rename(var t: Text;const s: String)
procedure Rename(var t: Text;p: PChar)
procedure Rename(var t: Text;c: Char)

Como podr�a solucionar dicho error?

Las variables tienen por ejemplo por valor a:

strfiledest := c:\datos\prueba.txt2;
fileini := c:\datos\prueba.txt;

GRACIAS
=========
�� ISMAEL ��
=========
PD: No tengo acceso a Internet

Reply by email

Paola Bruccoleri
to Ismael L. Donis Garc?a

Ismael L. Donis Garc?a escribi�:

Show quoted text 6 lines
Como podr�a verificar si el valor de un campo es nulo? Para los diferentes tipos de campos, texto, fecha y num�ricos; aunque pienso que el m�todo sea el mismo.

siempre he usado en otros lenguajes una funci�n llamada empty, pero aca veo que no existe, por tanto, con los strings pregunto por si es = ''

o sea
if var = '' then...

byeeeeeeeeee

Reply by email

Fjbr.
to Paola Bruccoleri

... Si te refieres a algo a un TField o alguno de sus derivados, mira por la propiedad IsNull

El 30 de noviembre de 2009 19:57, Paola Bruccoleri < pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 24 lines
Ismael L. Donis Garc?a escribi�: Como podr�a verificar si el valor de un campo es nulo? > > Para los diferentes tipos de campos, texto, fecha y num�ricos; aunque > pienso que el m�todo sea el mismo. > > > siempre he usado en otros lenguajes una funci�n llamada empty, pero aca veo que no existe, por tanto, con los strings pregunto por si es = '' o sea if var = '' then... byeeeeeeeeee _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
------- Fjbr25. ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091130/345ef756/attachment.html>

Reply by email

JoshyFun
to Paola Bruccoleri: Ismael L. Donis Garc?a escribi�: siempre he usado en otros lenguajes una funci�n…

Hello Paola,

you wrote
> Como podr�a verificar si el valor de un campo es nulo? > Para los diferentes tipos de campos, texto, fecha y num�ricos; aunque pienso > que el m�todo sea el mismo.

PB> siempre he usado en otros lenguajes una funci�n llamada empty, pero aca PB> veo que no existe, por tanto, con los strings pregunto por si es = '' PB> o sea
PB> if var = '' then...

Prueba con

if Field.FieldByName('MiCampo').Value = NULL then ....

o bien usando "IsNull".

Best regards, JoshyFun

Reply by email

Paola Bruccoleri
to JoshyFun

JoshyFun escribi�:

Show quoted text 20 lines
Hello Paola, Monday, November 30, 2009, 7:57:19 PM, you wrote: >> Como podr�a verificar si el valor de un campo es nulo? >> Para los diferentes tipos de campos, texto, fecha y num�ricos; aunque pienso >> que el m�todo sea el mismo. >> PB> siempre he usado en otros lenguajes una funci�n llamada empty, pero aca PB> veo que no existe, por tanto, con los strings pregunto por si es = '' PB> o sea PB> if var = '' then... Prueba con if Field.FieldByName('MiCampo').Value = NULL then .... o bien usando "IsNull".

ok, gracias por todo!!
byeeeeeeee

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Ok gracias. Probar�
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 32 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: lunes, 30 de noviembre de 2009 03:35 Asunto: Re: [Lazarus-es] Validar campo Hello Paola, Monday, November 30, 2009, 7:57:19 PM, you wrote: >> Como podr�a verificar si el valor de un campo es nulo? >> Para los diferentes tipos de campos, texto, fecha y num�ricos; aunque >> pienso >> que el m�todo sea el mismo. PB> siempre he usado en otros lenguajes una funci�n llamada empty, pero aca PB> veo que no existe, por tanto, con los strings pregunto por si es = '' PB> o sea PB> if var = '' then... Prueba con if Field.FieldByName('MiCampo').Value = NULL then .... o bien usando "IsNull". -- Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = ISO8859_1

Cuando realizo una consulta con el FlameRobin se ven perfecto los datos, pero cuando realizo la misma consulta con Lazarus 0.9.29 + FPC 2.3.1 usando: TIBConnection + TSQLTransaction + TSQLQuery + TDBGrid los datos en el TDBGrid no salen visualizados de la forma correcta.

Por ejemplo donde deb�a aparecer Pi�a aparece Pi?a y donde deber�a aparecer Ecol�gica aparece Ecol?gica

Con Visual Basic 6 + ODBC las consultas aparecen perfecto.

Como podr�a solucionar dicho problema en Lazarus?

GRACIAS
=========
�� ISMAEL ��
=========
PD: No tengo acceso a Internet.

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Como borrar un record usando TSQLQuery trato de hacer lo siguiente y da error, no se como decir que borre el record donde est� parado el cursor.

 while not SQLQuery1.EOF do
    begin
      if not SQLQuery2.Locate('mprima', SQLQuery1.FieldValues['mprima'], [])
then
          SQLQuery1.Delete; // esto da error
      SQLQuery1.Next;
    end;

GRACIAS
=========
�� ISMAEL ��
=========

Reply by email

Walter Mesón
to Ismael L. Donis Garc?a: Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = ISO8859_1…

Hola Ismael...

Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = ISO8859_1

Yo tuve un problema parecido y lo que pude lograr hacerlo ver como quer�a era poniendo el Charset=NONE, no s� si fu� la soluci�n correcta, pero al menos por ahora me sirvi�.Tambien prob� con Carset=ISO8859_3 y andaba pero algunos utilitarios no me permit�an leer la tabla que tuviera en sus registros letra tales como "�" o "�, �, �, �, �" o "�", por ejemplo...

Saludos. * Walter * Visit� http://porlavueltadenelsonyfabri.blogspot.com ------------ pr�xima parte ------------ A non-text attachment was scrubbed... Name: wmeson.vcf Type: text/x-vcard Size: 163 bytes Desc: no disponible URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091201/d3ee0c69/attachment.vcf>

Reply by email

JoshyFun
to Ismael L. Donis Garc?a: Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = ISO8859_1…

Hello Ismael,

Tuesday, December 1, 2009, 5:32:30 PM, you wrote:

ILDGa> Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = ILDGa> ISO8859_1
ILDGa> Cuando realizo una consulta con el FlameRobin se ven perfecto los datos, ILDGa> pero cuando realizo la misma consulta con Lazarus 0.9.29 + FPC 2.3.1 usando: ILDGa> TIBConnection + TSQLTransaction + TSQLQuery + TDBGrid los datos en el ILDGa> TDBGrid no salen visualizados de la forma correcta. ILDGa> Por ejemplo donde deb�a aparecer Pi�a aparece Pi?a y donde deber�a aparecer ILDGa> Ecol�gica aparece Ecol?gica
ILDGa> Con Visual Basic 6 + ODBC las consultas aparecen perfecto. ILDGa> Como podr�a solucionar dicho problema en Lazarus?

Lazarus es Unicode (UTF-8), VisualBasic 6, Delphi, etc son ANSI, por lo tanto ya que tu charset es 8851-1 debes decirle que tu conexi�n ha de ser unicode utf-8, as� que en el connection:

SQLConnection.CharSet='UTF-8';
Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a: Como borrar un record usando TSQLQuery trato de hacer lo siguiente y da error, no se como…

Hello Ismael,

Tuesday, December 1, 2009, 6:20:36 PM, you wrote:

ILDGa> Como borrar un record usando TSQLQuery trato de hacer lo siguiente y da ILDGa> error, no se como decir que borre el record donde est� parado el cursor. ILDGa> while not SQLQuery1.EOF do
ILDGa> begin
ILDGa> if not SQLQuery2.Locate('mprima',
ILDGa> SQLQuery1.FieldValues['mprima'], [])
ILDGa> then
ILDGa> SQLQuery1.Delete; // esto da error ILDGa> SQLQuery1.Next;
ILDGa> end;

Eso depende del Select que hayas hecho, el resultado de un select puede ser "updatable" o "fixed/readonly". Para que sea "updatable" el select debe de afectar a una tabla s�lo y entre lo campos disponibles debe de estar la "primary key". Si haces joins o similares esta ser� readonly ya que no hay forma de saber exactamente como realizar los borrados. Supongo que tu caso ser� el segundo ya que te da un error, as� que la "soluci�n" ser�a algo como:

while not Query1.eof do begin
  if Query1.FieldByName('Borrable').asBoolen=true then begin
    Query2:=TSQLQuery.Create(.......);
    Query2.connection,transaction,etc=lo que sea;
    Query2.SQL.Text='DELETE FROM TABLA WHERE Clave=:IDCLAVE';
    Query2.Params.ParamByName('IDCLAVE').asInteger=Query1.FieldByName('ID').asInteger;
    Query2.ExecSQL;
    FreeAndNIL(Query2);
  end;
  Query1.Next;
end;

Esto tambi�n lo puedes solucionar creando un SQLDelete en Query1, con un contenido:

Query1.DeleteSQL.SQL.Text='DELETE FROM TABLA WHERE Clave=:ID';

Y entonces funcionar�a tu sistema, pero creo que esto falla en la versi�n 2.4.0 del compilador si borras m�s de un registro sin hacer un commit justo despu�s de borrar, lo que hace que tu Query1 deje de ser v�lido y tengas que volver a empezar desde el principio.

Si usas la versi�n trunk del compilador esto function, o sea, la 2.5.1.

Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Si ya lo hab�a probado y funciona, se me olvid� comentar, pero mi duda es la siguiente.

No puedo cambiar del tipo de charset de las BD ya que son muchas y tengo muchos sistemas corriendo sobre Visual Basic 6, ahora el decir que el charset = utf8 en las conexiones de Lazarus tengo las siguientes dudas:

1.- No me traer� problemas en la BD al ser esta realmente ISO8859_1 la configuraci�n de la BD y no UTF8.
2.- Estos datos se ver�an correctamente despu�s con los soft de Visual Basic y con FlameRobin con configuraci�n ISO8859_1.
3.- Para que es la definici�n del TIBConnection si realmente no le puedes poner la que tiene la base de datos? Esto no un fallo de dicho componente? 4.- Existe otro componente para manejar conexiones m�s �ptimo que TIBConnection para trabajar con Firebird?

Saludos reiterados y perdonen tantas interrogantes. =========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 39 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 01 de diciembre de 2009 12:11 Asunto: Re: [Lazarus-es] Error al leer charset ISO8859_1 en Firebird 2.1.3con Lazarus Hello Ismael, Tuesday, December 1, 2009, 5:32:30 PM, you wrote: ILDGa> Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = ILDGa> ISO8859_1 ILDGa> Cuando realizo una consulta con el FlameRobin se ven perfecto los datos, ILDGa> pero cuando realizo la misma consulta con Lazarus 0.9.29 + FPC 2.3.1 usando: ILDGa> TIBConnection + TSQLTransaction + TSQLQuery + TDBGrid los datos en el ILDGa> TDBGrid no salen visualizados de la forma correcta. ILDGa> Por ejemplo donde deb�a aparecer Pi�a aparece Pi?a y donde deber�a aparecer ILDGa> Ecol�gica aparece Ecol?gica ILDGa> Con Visual Basic 6 + ODBC las consultas aparecen perfecto. ILDGa> Como podr�a solucionar dicho problema en Lazarus? Lazarus es Unicode (UTF-8), VisualBasic 6, Delphi, etc son ANSI, por lo tanto ya que tu charset es 8851-1 debes decirle que tu conexi�n ha de ser unicode utf-8, as� que en el connection: SQLConnection.CharSet='UTF-8'; -- Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Me faltaba tambi�n el post, es que estoy acostumbrado a visual basic que cuando dices delete borra y aqu� marca para ser borrado, es m�s parecido a dbase con delete y pack.

Gracias reiteradas, uso FPC 2.3.1. El que viene impl�cito con la instalaci�n.
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 63 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 01 de diciembre de 2009 12:20 Asunto: Re: [Lazarus-es] Como borrar recordset usando TSQLQuery Hello Ismael, Tuesday, December 1, 2009, 6:20:36 PM, you wrote: ILDGa> Como borrar un record usando TSQLQuery trato de hacer lo siguiente y da ILDGa> error, no se como decir que borre el record donde est� parado el cursor. ILDGa> while not SQLQuery1.EOF do ILDGa> begin ILDGa> if not SQLQuery2.Locate('mprima', ILDGa> SQLQuery1.FieldValues['mprima'], []) ILDGa> then ILDGa> SQLQuery1.Delete; // esto da error ILDGa> SQLQuery1.Next; ILDGa> end; Eso depende del Select que hayas hecho, el resultado de un select puede ser "updatable" o "fixed/readonly". Para que sea "updatable" el select debe de afectar a una tabla s�lo y entre lo campos disponibles debe de estar la "primary key". Si haces joins o similares esta ser� readonly ya que no hay forma de saber exactamente como realizar los borrados. Supongo que tu caso ser� el segundo ya que te da un error, as� que la "soluci�n" ser�a algo como: while not Query1.eof do begin if Query1.FieldByName('Borrable').asBoolen=true then begin Query2:=TSQLQuery.Create(.......); Query2.connection,transaction,etc=lo que sea; Query2.SQL.Text='DELETE FROM TABLA WHERE Clave=:IDCLAVE'; Query2.Params.ParamByName('IDCLAVE').asInteger=Query1.FieldByName('ID').asInteger; Query2.ExecSQL; FreeAndNIL(Query2); end; Query1.Next; end; Esto tambi�n lo puedes solucionar creando un SQLDelete en Query1, con un contenido: Query1.DeleteSQL.SQL.Text='DELETE FROM TABLA WHERE Clave=:ID'; Y entonces funcionar�a tu sistema, pero creo que esto falla en la versi�n 2.4.0 del compilador si borras m�s de un registro sin hacer un commit justo despu�s de borrar, lo que hace que tu Query1 deje de ser v�lido y tengas que volver a empezar desde el principio. Si usas la versi�n trunk del compilador esto function, o sea, la 2.5.1. -- Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

No, nunca debes usar charset = none ya que tendr�as problemas si despu�s la quieres convertir.

Saludos
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 33 lines
----- Mensaje original ----- De: "Walter Mes�n" <wmeson en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 01 de diciembre de 2009 11:41 Asunto: Re: [Lazarus-es] Error al leer charset ISO8859_1 en Firebird 2.1.3 con Lazarus Hola Ismael... > Tengo todas mis bases de datos las tengo con Firebird 2.1.3 con CharSet = > ISO8859_1 Yo tuve un problema parecido y lo que pude lograr hacerlo ver como quer�a era poniendo el Charset=NONE, no s� si fu� la soluci�n correcta, pero al menos por ahora me sirvi�.Tambien prob� con Carset=ISO8859_3 y andaba pero algunos utilitarios no me permit�an leer la tabla que tuviera en sus registros letra tales como "�" o "�, �, �, �, �" o "�", por ejemplo... -- Saludos. * Walter * Visit� http://porlavueltadenelsonyfabri.blogspot.com --------------------------------------------------------------------------------

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

JoshyFun definitivamente debe ser como dices un problema de FPC 2.3.1, por lo que hice lo que me planteabas cuesti�n que ya hab�a pensado, pero que no quer�a hacer porque tengo que volver a realizar la consulta para volver a cargarla con los datos actualizados.

Al final el programa original qued�: (ya que he tomado la opci�n de un programa de prueba donde pruebo antes de consultar dado la cantidad de dudas y problemas que voy presentando)

      while not dtm.sqldto.EOF do
        begin
          if not dtm.sqlcla.Locate('entidad',
dtm.sqldto.FieldValues['entidad'], []) then
            begin
              sqlstr := 'delete from mpdatge where mpdatge.entidad=''' +
dtm.sqldto.FieldValues['entidad'] + '')';
              dtm.rsup(strsql);  // Esto es un funci�n que tengo
implementada para INSERT, UPDATE y DELETE
            end;
          dtm.sqldto.Next;
        end;
      strsql := 'select * from mpdatge';
      dtm.rsdto(strsql, true, true); // Esto es un funci�n implementada para
SELECT o CLOSE QUERY

GRACIAS por todo
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 63 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: martes, 01 de diciembre de 2009 12:20 Asunto: Re: [Lazarus-es] Como borrar recordset usando TSQLQuery Hello Ismael, Tuesday, December 1, 2009, 6:20:36 PM, you wrote: ILDGa> Como borrar un record usando TSQLQuery trato de hacer lo siguiente y da ILDGa> error, no se como decir que borre el record donde est� parado el cursor. ILDGa> while not SQLQuery1.EOF do ILDGa> begin ILDGa> if not SQLQuery2.Locate('mprima', ILDGa> SQLQuery1.FieldValues['mprima'], []) ILDGa> then ILDGa> SQLQuery1.Delete; // esto da error ILDGa> SQLQuery1.Next; ILDGa> end; Eso depende del Select que hayas hecho, el resultado de un select puede ser "updatable" o "fixed/readonly". Para que sea "updatable" el select debe de afectar a una tabla s�lo y entre lo campos disponibles debe de estar la "primary key". Si haces joins o similares esta ser� readonly ya que no hay forma de saber exactamente como realizar los borrados. Supongo que tu caso ser� el segundo ya que te da un error, as� que la "soluci�n" ser�a algo como: while not Query1.eof do begin if Query1.FieldByName('Borrable').asBoolen=true then begin Query2:=TSQLQuery.Create(.......); Query2.connection,transaction,etc=lo que sea; Query2.SQL.Text='DELETE FROM TABLA WHERE Clave=:IDCLAVE'; Query2.Params.ParamByName('IDCLAVE').asInteger=Query1.FieldByName('ID').asInteger; Query2.ExecSQL; FreeAndNIL(Query2); end; Query1.Next; end; Esto tambi�n lo puedes solucionar creando un SQLDelete en Query1, con un contenido: Query1.DeleteSQL.SQL.Text='DELETE FROM TABLA WHERE Clave=:ID'; Y entonces funcionar�a tu sistema, pero creo que esto falla en la versi�n 2.4.0 del compilador si borras m�s de un registro sin hacer un commit justo despu�s de borrar, lo que hace que tu Query1 deje de ser v�lido y tengas que volver a empezar desde el principio. Si usas la versi�n trunk del compilador esto function, o sea, la 2.5.1. -- Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a: Si ya lo hab�a probado y funciona, se me olvid� comentar, pero mi duda es la…

Hello Ismael,

Tuesday, December 1, 2009, 8:40:51 PM, you wrote:

ILDGa> Si ya lo hab�a probado y funciona, se me olvid� ILDGa> comentar, pero mi duda es la
ILDGa> siguiente.
ILDGa> No puedo cambiar del tipo de charset de las BD ya que son muchas y tengo ILDGa> muchos sistemas corriendo sobre Visual Basic 6, ahora el decir que el ILDGa> charset = utf8 en las conexiones de Lazarus tengo las siguientes dudas: ILDGa> 1.- No me traer� problemas en la BD al ser esta realmente ISO8859_1 la ILDGa> configuraci�n de la BD y no UTF8.

No deber�a (todo hay que probarlo). Lo que pasa es que est�s entendiendo mal lo que hace el "charset". Este indica en que "idioma" se va a realizar la transferencia de datos entre firebird y la aplicaci�n, esto es (resumiendo):

1) NONE : No hay conversi�n de ning�n tipo, la aplicaci�n recibe los datos tal y como est�n almacenados en la base de datos. Si un campo es ISO8559-1 recibir�s un 8559-1, si es un ASCII, pues ASCII, si es otra cosa, pues otra cosa.
2) ISO8559-1 (win1252) : La informaci�n de todos los campos se recibir� en ISO8559-1, si el campo contiene alg�n car�cter no disponible en ISO8559-1 se producir� una excepci�n ya que se producir�a p�rdida de informaci�n.

3) UTF-8 : Toda la informaci�n de campos ser� recibida en UTF-8, esto es, si un campo est� definido como ISO8559-1 ser� convertido a UTF-8 y enviado a la aplicaci�n.

Por supuesto, la conversi�n es bidireccional, si envias en UTF-8 algo que no se puede almacenar en un campo ISO8559-1 se producir� la excepci�n igualmente.

Si estableces una "conversaci�n" con la DB en ISO8559-1 tendr�s que definirle una funci�n "convert" (que no s� como se hace la verdad) para que cuando entregue las strings a los componentes visuales lo haga en UTF-8 que es lo que necesita Lazarus para mostrar en pantalla.

ILDGa> 2.- Estos datos se ver�an correctamente despu�s con los soft de Visual Basic ILDGa> y con FlameRobin con configuraci�n ISO8859_1.

Deber�an...

ILDGa> 3.- Para que es la definici�n del TIBConnection si realmente no le puedes ILDGa> poner la que tiene la base de datos? Esto no un fallo de dicho componente?

No, es un fallo de "concepto" por tu parte (sin ofender).

ILDGa> 4.- Existe otro componente para manejar conexiones m�s �ptimo que ILDGa> TIBConnection para trabajar con Firebird?

Hmmm... quiz� Zeos, pero me parece muy embarullado. Zeos necesita urgentemente una limipieza de c�digo y redefinici�n de estructura interna (desde mi punto de vista).

Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a: JoshyFun definitivamente debe ser como dices un problema de FPC 2.3.1, por lo que hice lo…

Hello Ismael,

Tuesday, December 1, 2009, 11:08:29 PM, you wrote:

ILDGa> Al final el programa original qued�: (ya que he tomado la opci�n de un ILDGa> programa de prueba donde pruebo antes de consultar dado la cantidad de dudas ILDGa> y problemas que voy presentando)

ILDGa> while not dtm.sqldto.EOF do
ILDGa> begin
ILDGa> if not dtm.sqlcla.Locate('entidad', ILDGa> dtm.sqldto.FieldValues['entidad'], []) then ILDGa> begin
ILDGa> sqlstr := 'delete from mpdatge where mpdatge.entidad=''' + ILDGa> dtm.sqldto.FieldValues['entidad'] + '')';

Usa params, mo esto que a la larga trae problemas en un 99% de los casos.

sqlstr := 'delete from mpdatge where mpdatge.entidad=:ENTIDAD';
ILDGa>               dtm.rsup(strsql);  // Esto es un funci�n que tengo
ILDGa> implementada para INSERT, UPDATE y DELETE
ILDGa>             end;
ILDGa>           dtm.sqldto.Next;
ILDGa>         end;
ILDGa>       strsql := 'select * from mpdatge';
ILDGa>       dtm.rsdto(strsql, true, true); // Esto es un funci�n implementada para
ILDGa> SELECT o CLOSE QUERY

Esto no parece muy "SQL-Aware", vamos que parece que esa operaci�n se puede realizar toda con s�lo una sentencia SQL y que todo lo haga el servidor.

Best regards, JoshyFun

Reply by email

Paola Bruccoleri
to JoshyFun: ILDGa> Si ya lo hab�a probado y funciona, se me olvid� ILDGa> comentar, pero mi duda…

JoshyFun escribi�:

Show quoted text 23 lines
No deber�a (todo hay que probarlo). Lo que pasa es que est�s entendiendo mal lo que hace el "charset". Este indica en que "idioma" se va a realizar la transferencia de datos entre firebird y la aplicaci�n, esto es (resumiendo): 1) NONE : No hay conversi�n de ning�n tipo, la aplicaci�n recibe los datos tal y como est�n almacenados en la base de datos. Si un campo es ISO8559-1 recibir�s un 8559-1, si es un ASCII, pues ASCII, si es otra cosa, pues otra cosa. 2) ISO8559-1 (win1252) : La informaci�n de todos los campos se recibir� en ISO8559-1, si el campo contiene alg�n car�cter no disponible en ISO8559-1 se producir� una excepci�n ya que se producir�a p�rdida de informaci�n. 3) UTF-8 : Toda la informaci�n de campos ser� recibida en UTF-8, esto es, si un campo est� definido como ISO8559-1 ser� convertido a UTF-8 y enviado a la aplicaci�n. Por supuesto, la conversi�n es bidireccional, si envias en UTF-8 algo que no se puede almacenar en un campo ISO8559-1 se producir� la excepci�n igualmente.

Hola Joshy..
siguiendo este hilo, me puse a hacer pruebas creando una nueva base de datos firebird 2.1, usando IBExpert.
Si la creo con el charset UTF8, agrego una tabla cualquiera (campos codigo, nombre) y le agrego datos, NO me permite ingresar nombres con tildes.
Ahora, si creo la base de datos dejando el charset en NONE, creo una tabla cualquiera y la cargo con datos, no tengo problemas con tildes. Supongo que con el character ser 8859-1 no habr� problemas.. entonces, cuando creo una bd, que charset ser�a el que me causar�a luego menos problemas con los clientes que use?
chauuuuuuuuu

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Tienes 100 de raz�n, no hab�a pensado en ello, es que todav�a me quedan rasgos de la programaci�n procedural.

Saludos
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 51 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 02 de diciembre de 2009 06:13 Asunto: Re: [Lazarus-es] Como borrar recordset usando TSQLQuery Hello Ismael, Tuesday, December 1, 2009, 11:08:29 PM, you wrote: ILDGa> Al final el programa original qued�: (ya que he tomado la opci�n de un ILDGa> programa de prueba donde pruebo antes de consultar dado la cantidad de dudas ILDGa> y problemas que voy presentando) ILDGa> while not dtm.sqldto.EOF do ILDGa> begin ILDGa> if not dtm.sqlcla.Locate('entidad', ILDGa> dtm.sqldto.FieldValues['entidad'], []) then ILDGa> begin ILDGa> sqlstr := 'delete from mpdatge where mpdatge.entidad=''' + ILDGa> dtm.sqldto.FieldValues['entidad'] + '')'; Usa params, mo esto que a la larga trae problemas en un 99% de los casos. sqlstr := 'delete from mpdatge where mpdatge.entidad=:ENTIDAD'; ILDGa> dtm.rsup(strsql); // Esto es un funci�n que tengo ILDGa> implementada para INSERT, UPDATE y DELETE ILDGa> end; ILDGa> dtm.sqldto.Next; ILDGa> end; ILDGa> strsql := 'select * from mpdatge'; ILDGa> dtm.rsdto(strsql, true, true); // Esto es un funci�n implementada para ILDGa> SELECT o CLOSE QUERY Esto no parece muy "SQL-Aware", vamos que parece que esa operaci�n se puede realizar toda con s�lo una sentencia SQL y que todo lo haga el servidor. -- Best regards, JoshyFun

Reply by email

JoshyFun
to Paola Bruccoleri: JoshyFun escribi�: Hola Joshy.. siguiendo este hilo, me puse a hacer pruebas creando…

Hello Paola,

Wednesday, December 2, 2009, 2:53:07 PM, you wrote:

PB> Hola Joshy..
PB> siguiendo este hilo, me puse a hacer pruebas creando una nueva base de PB> datos firebird 2.1, usando IBExpert.
PB> Si la creo con el charset UTF8, agrego una tabla cualquiera (campos PB> codigo, nombre) y le agrego datos, NO me permite ingresar nombres con PB> tildes.

El problema es que no has descrito como lo haces, me explico, � C�mo abre IBExpert la conexi�n con Firebird ? Si el charset del campo es UTF-8 (ojo, cada car�cter ocupa 3 bytes en la base de datos) pero IBExpert abre la conexi�n en ISO8559-1 entonces se produce el "problema".

PB> Ahora, si creo la base de datos dejando el charset en NONE, creo una PB> tabla cualquiera y la cargo con datos, no tengo problemas con tildes.

No deber�as, pero el "problema" es que no funcionar�n ni UPPERCASE, ni ordenaci�n alfab�tica ni nada de ese tipo. Bueno, funcionar� la ordenaci�n (creo) pero por orden ASCII, o sea, que en vez de:

PruebA
Prueba
PruebC

Ordenar�

PruebA
PruebC
Prueba

PB> Supongo que con el character ser 8859-1 no habr� problemas.. PB> entonces, cuando creo una bd, que charset ser�a el que me causar�a luego PB> menos problemas con los clientes que use?

El que menos problemas te generar� depende de lo que vayas a meter dentro. Si la base de datos s�lo almacenar� textos ISO8559-1 entonces ese ser� el mejor, pero si la base necesitar� campos internacionales para griego por ejemplo, o ruso, necesitas que sea Unicode. La conexi�n para que sea todo directo con Lazarus tendr�s que abrirla en UTF-8 para que los datos recibidos sean compatibles con los controles visuales directamente.

Los campos UTF-8 lo malo que tienen es que ocupan 3 bytes por caracter, o sea, el triple, lo bueno, que da igual en qu� idioma escribas, hasta la ordenaci�n es buena en casi todos los idiomas (algunos necesitan una ordenaci�n en UTF-8 especial, pero son los menos, la mayor�a s�lo tienen una letra fuera de su posici�n correcta, ya que por ejemplo en Espa�ol � ser�a ordenado al lado de las otra I mientras que en Turco ir�a al final creo recordar).

Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Para mi no he tenido problemas con visual basic 6 usando charset ISO8859_1, lo cual te permite todo eso, uso esa colecci�n con COLLATE ES_ES_CI_AI para que no diferencie entre may�sculas y min�sculas y las letras acentuadas de la no acentuadas.

Con esa configuraci�n nunca he tenido problemas ni con servidores Windows, ni con servidores Debian, pero repito usando Visual Basic 6 Service Pack 6

Ahora aunque antes no le respond� a JoshyFun no estoy de acuerdo con su ponto de vista de que la propiedad CharSet del componente TIBConnection est� bien implementada ya que yo implemento una propiedad para poderle pasar valores y si el valor siempre va a ser UTF8 sin importar la configuraci�n de la base de datos para que est� entonces dicha propiedad, si en todo caso tuviera 2 propiedades CharSet, una para mostrar los datos y la otra para leer los datos, entonces la cosa fuera diferente porque en una pondr�as UTF8 que ser�a con la configuraci�n que se mostrar�an los datos y en la otra pondr�as la que tiene la base de datos, por lo que el componente entonces tendr�a que tener un procedimiento implementado encargado de realizar las conversiones tanto a la hora de consultar los datos como a la hora de actualizar los mismos.

Y espero que con este comentario no se ofenda JoshyFun ya que es mi simple opini�n, y aunque soy un especialista, no lo soy en Object Pascal en s�, sino en otros lenguajes.

Saludos afectuosos a todos
=========
�� ISMAEL ��
=========

Earlier message 48 lines
----- Mensaje original ----- De: "Paola Bruccoleri" <pbruccoleri en adinet.com.uy> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 02 de diciembre de 2009 07:53 Asunto: Re: [Lazarus-es] Error al leer charset ISO8859_1 en Firebird 2.1.3con Lazarus JoshyFun escribi�: > No deber�a (todo hay que probarlo). Lo que pasa es que est�s > entendiendo mal lo que hace el "charset". Este indica en que "idioma" > se va a realizar la transferencia de datos entre firebird y la > aplicaci�n, esto es (resumiendo): > > 1) NONE : No hay conversi�n de ning�n tipo, la aplicaci�n recibe los > datos tal y como est�n almacenados en la base de datos. Si un campo es > ISO8559-1 recibir�s un 8559-1, si es un ASCII, pues ASCII, si es otra > cosa, pues otra cosa. > 2) ISO8559-1 (win1252) : La informaci�n de todos los campos se > recibir� en ISO8559-1, si el campo contiene alg�n car�cter no > disponible en ISO8559-1 se producir� una excepci�n ya que se > producir�a p�rdida de informaci�n. > > 3) UTF-8 : Toda la informaci�n de campos ser� recibida en UTF-8, esto > es, si un campo est� definido como ISO8559-1 ser� convertido a UTF-8 y > enviado a la aplicaci�n. > > Por supuesto, la conversi�n es bidireccional, si envias en UTF-8 algo > que no se puede almacenar en un campo ISO8559-1 se producir� la > excepci�n igualmente. > > Hola Joshy.. siguiendo este hilo, me puse a hacer pruebas creando una nueva base de datos firebird 2.1, usando IBExpert. Si la creo con el charset UTF8, agrego una tabla cualquiera (campos codigo, nombre) y le agrego datos, NO me permite ingresar nombres con tildes. Ahora, si creo la base de datos dejando el charset en NONE, creo una tabla cualquiera y la cargo con datos, no tengo problemas con tildes. Supongo que con el character ser 8859-1 no habr� problemas.. entonces, cuando creo una bd, que charset ser�a el que me causar�a luego menos problemas con los clientes que use? chauuuuuuuuu

Reply by email

Paola Bruccoleri
to JoshyFun: PB> Hola Joshy.. PB> siguiendo este hilo, me puse a hacer pruebas creando una nueva base…

JoshyFun escribi�:

Show quoted text 9 lines
Los campos UTF-8 lo malo que tienen es que ocupan 3 bytes por caracter, o sea, el triple, lo bueno, que da igual en qu� idioma escribas, hasta la ordenaci�n es buena en casi todos los idiomas (algunos necesitan una ordenaci�n en UTF-8 especial, pero son los menos, la mayor�a s�lo tienen una letra fuera de su posici�n correcta, ya que por ejemplo en Espa�ol � ser�a ordenado al lado de las otra I mientras que en Turco ir�a al final creo recordar).

ok, muchas gracias!!!
despues me fije que en el ibexpert, en las preferencias dec�a defalut charset = none..
supongo que hace referencia a c�mo se comunica con las tablas y no a que valor aparece por defecto cuando la creas..
byeeeeeeeeeeeee

Reply by email

Ismael L. Donis García
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Ampliando un poco m�s.

Sin dudas el mejor es UTF8 el cual te permite todo tipo de car�cter.

Problema:
No todos los conectores lo permitir por ser este relativamente nuevo.

Soluci�n:
Implementar en C tu propia clase de conexi�n, cuesti�n esta que no todos estamos dispuestos a realizar ya que es mejor utilizar las existentes.

Ahora respecto a la norma europea ISO8859 la misma tiene especificaciones para muchos tipos de idiomas, y a la ves cada una de ellas tiene tambi�n especificaciones.

Por ejemplo en Firebird la subnorma ISO8859_1 tiene collation DA_DA
collation DE_DE
collation EN_UK
collation EN_US
collation ES_ES
collation PT_BR
collation PT_PT
collation FR_FR talvez se me quede alguna m�s

Por lo que yo puedo tenerla ISO8859_1 y usarla con los diferentes idiomas establecidos en el collate

Pero adem�s de la ISO8859_1 est�n las

ISO8859_1
......
ISO8859_1 3

Saludos reiterados
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 66 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 02 de diciembre de 2009 09:39 Asunto: Re: [Lazarus-es] Error al leer charset ISO8859_1 en Firebird2.1.3con Lazarus Hello Paola, Wednesday, December 2, 2009, 2:53:07 PM, you wrote: PB> Hola Joshy.. PB> siguiendo este hilo, me puse a hacer pruebas creando una nueva base de PB> datos firebird 2.1, usando IBExpert. PB> Si la creo con el charset UTF8, agrego una tabla cualquiera (campos PB> codigo, nombre) y le agrego datos, NO me permite ingresar nombres con PB> tildes. El problema es que no has descrito como lo haces, me explico, � C�mo abre IBExpert la conexi�n con Firebird ? Si el charset del campo es UTF-8 (ojo, cada car�cter ocupa 3 bytes en la base de datos) pero IBExpert abre la conexi�n en ISO8559-1 entonces se produce el "problema". PB> Ahora, si creo la base de datos dejando el charset en NONE, creo una PB> tabla cualquiera y la cargo con datos, no tengo problemas con tildes. No deber�as, pero el "problema" es que no funcionar�n ni UPPERCASE, ni ordenaci�n alfab�tica ni nada de ese tipo. Bueno, funcionar� la ordenaci�n (creo) pero por orden ASCII, o sea, que en vez de: PruebA Prueba PruebC Ordenar� PruebA PruebC Prueba PB> Supongo que con el character ser 8859-1 no habr� problemas.. PB> entonces, cuando creo una bd, que charset ser�a el que me causar�a luego PB> menos problemas con los clientes que use? El que menos problemas te generar� depende de lo que vayas a meter dentro. Si la base de datos s�lo almacenar� textos ISO8559-1 entonces ese ser� el mejor, pero si la base necesitar� campos internacionales para griego por ejemplo, o ruso, necesitas que sea Unicode. La conexi�n para que sea todo directo con Lazarus tendr�s que abrirla en UTF-8 para que los datos recibidos sean compatibles con los controles visuales directamente. Los campos UTF-8 lo malo que tienen es que ocupan 3 bytes por caracter, o sea, el triple, lo bueno, que da igual en qu� idioma escribas, hasta la ordenaci�n es buena en casi todos los idiomas (algunos necesitan una ordenaci�n en UTF-8 especial, pero son los menos, la mayor�a s�lo tienen una letra fuera de su posici�n correcta, ya que por ejemplo en Espa�ol � ser�a ordenado al lado de las otra I mientras que en Turco ir�a al final creo recordar). -- Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a: Para mi no he tenido problemas con visual basic 6 usando charset ISO8859_1, lo cual te…

Hello Ismael,

Wednesday, December 2, 2009, 6:43:51 PM, you wrote:

ILDGa> Con esa configuraci�n nunca he tenido problemas ni con servidores Windows, ILDGa> ni con servidores Debian, pero repito usando Visual Basic 6 Service Pack 6

Normal :) Ni yo cuando no usaba Unicode para nada :) Claro que cuando me apareciron los datos en ruso tuve que tirar la base de datos (bueno la parche� para ir tirando, encapsulando a mano UTF8 en ISO8559-1... un asco).

ILDGa> Ahora aunque antes no le respond� a JoshyFun no estoy de acuerdo con su ILDGa> ponto de vista de que la propiedad CharSet del ILDGa> componente TIBConnection est�

Bien... No problemo...

ILDGa> la base de datos para que est� entonces dicha propiedad, si en todo caso ILDGa> tuviera 2 propiedades CharSet, una para mostrar los datos y la otra para ILDGa> leer los datos, entonces la cosa fuera diferente porque en una pondr�as UTF8 ILDGa> que ser�a con la configuraci�n que se mostrar�an los datos y en la otra ILDGa> pondr�as la que tiene la base de datos, por lo que el componente entonces ILDGa> tendr�a que tener un procedimiento implementado encargado de realizar las ILDGa> conversiones tanto a la hora de consultar los datos como a la hora de ILDGa> actualizar los mismos.

Es que lo que haces al poner el charset al IBConnection is justo eso :) Supongamos la base de datos m�s sencilla del mundo, con una tabla llamada tabla y un campo llamado campo de tipo "string". Nuestra aplicaci�n es en VB6 ISO8559-1 aunque m�s correcto ser�a decir VB6 ANSI ya que si la aplicaci�n corre en un Windows ruso ser�a "VB6 Win1251" y los acentos, las � y todo eso no habr�a forma de hacerlos funcionar. Nuestra base de datos tiene el "campo" definido como Win1252 o ISO8559-1 que es lo mismo. Veamos como viajan los datos:

---Grabaci�n---
Pantalla -> (ANSI) -> Aplicaci�n -> (ANSI) -> Firebird -> (8859-1) -> Tabla -> Campo ---Lectura-----
Campo -> Tabla -> (8859-1) -> Firebird -> (ANSI) -> Aplicaci�n -> (ANSI) -> Pantalla

Ahora supongamos un Lazarus con charset en IBConnection en UTF8

---Grabaci�n---
Pantalla -> (UTF8) -> Aplicaci�n -> (UTF8) -> Firebird -> (8859-1) -> Tabla -> Campo ---Lectura-----
Campo -> Tabla -> (8859-1) -> Firebird -> (UTF8) -> Aplicaci�n -> (UTF8) -> Pantalla

Ahora supongamos un Lazarus con charset en IBConnection en ISO8559-1

---Grabaci�n---
Pantalla -> (UTF8) -> Aplicaci�n -> (8859-1*) -> Firebird -> (8859-1) -> Tabla -> Campo ---Lectura-----
Campo -> Tabla -> (8859-1) -> Firebird -> (8859-1) -> Aplicaci�n -> (UTF8*) -> Pantalla

Las casillas marcadas con un '*' son conversiones que tiene que hacer la aplicaci�n manualmente para que los datos se puedan entregar correctamente al otro extremo del flujo de datos.

Recapitulando, el charset del IBConnection no define los datos de la base de datos, esta puede tener campos en ISO8559-1, otros en Unicode y otros en ASCII, lo �nico que define es el formato en que la aplicaci�n enviar� y recibir� datos desde y hacia el server de firebird.

ILDGa> Y espero que con este comentario no se ofenda JoshyFun ya que es mi simple ILDGa> opini�n, y aunque soy un especialista, no lo soy en Object Pascal en s�, ILDGa> sino en otros lenguajes.

Me voy a enfadar much�simo, tanto que voy a buscar donde vives en Google Maps :) :) :) Si uno no puede tener una opini�n diferente a otro mal vamos, lo que estopea las conversaciones son las formas; mientras estas sean correctas siempre se llegar� a algo :)

Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis García: Ampliando un poco m�s. Sin dudas el mejor es UTF8 el cual te permite todo tipo de…

Hello Ismael,

Wednesday, December 2, 2009, 7:04:03 PM, you wrote:

ILDG> Problema:
ILDG> No todos los conectores lo permitir por ser este relativamente nuevo.

Hmmmm... que conector no soporta UTF-8 o UTF-16 ? Me imagino que Paradox o dBase no, pero el resto...

ILDG> Soluci�n:
ILDG> Implementar en C tu propia clase de conexi�n, cuesti�n ILDG> esta que no todos estamos dispuestos a realizar ya que es mejor ILDG> utilizar las existentes.

Por qu� en C ?

ILDG> Ahora respecto a la norma europea ISO8859 la misma tiene ILDG> especificaciones para muchos tipos de idiomas, y a la ves cada ILDG> una de ellas tiene tambi�n especificaciones.

La ISO8559-1 es una y s�lo una, lo que muestras abajo con "collates" o lo que es lo mismo, preferencias de caracteres. La ISO8859-1 define que valor absoluto tiene cada letra y su representaci�n gr�fica, pero no su comportamiento, por ejemplo no dice que #49 es igual a la representaci�n gr�fica "1" pero no nos dice que es un n�mero, ni que va antes del "2" en una ordenaci�n.

ILDG> Por ejemplo en Firebird la subnorma ISO8859_1 tiene ILDG> collation DA_DA
ILDG> collation DE_DE
ILDG> collation EN_UK
ILDG> collation EN_US
ILDG> collation ES_ES
ILDG> collation PT_BR
ILDG> collation PT_PT
ILDG> collation FR_FR talvez se me quede alguna m�s

Te quedan todas las que quieras :) Los Collation no son standard 100%, de hecho podr�a tener una para mi que ser�a "ES_ES_GL" = "Espa�a, Espa�ol, Galicia" en el que la "�" en vez de ir justo despu�s de la "i" fuera justo despu�s de la "y" por que me gusta m�s :) De hecho hay varios collation "XX_KG" que es "Klingon" :)

ILDG> Por lo que yo puedo tenerla ISO8859_1 y usarla con los ILDG> diferentes idiomas establecidos en el collate ILDG> Pero adem�s de la ISO8859_1 est�n las
ILDG> ISO8859_1
ILDG> ......
ILDG> ISO8859_1 3

Y muchas m�s...

Aqu� tienes unas pocas:

http://www-01.ibm.com/software/globalization/cp/cp_cpgid.jsp

http://msdn.microsoft.com/en-us/library/dd317756%28VS.85%29.aspx

http://web.archive.org/web/20040225223721/http://www.sharmahd.com/tm/codepages.html

Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Te expuse el caso de Firebird que es la base de datos que hab�amos hablado, de antemano se que los collate no son est�ndares, sino especificaciones de Firebird.

Adem�s mencion� ISO8859_1, no ISO8559_1 y WIN1251 ISO8859_1 ya que WIN1251 no soporta � ni acentos ya que es el est�ndar americano pero el ISO8859_1 si.

Se de antemano que idioma ruso no soportar� ISO8859_1, por eso dije que el UTF8 lo soporta todo, por eso uno escoge el que deseemos el que le permita trabajar de acuerdo a sus necesidades, en mi caso no har� nada ni para los rusos, ni para lo chinos.

Solo le trataba de dar una explicaci�n mayor a Paola y decirle que nunca debe usar CharSet = NONE, ya que eso le puede traer problemas en un futuro si quiere convertir la base de datos posteriormente a un conjunto de caracteres determinado.

Saludos afectuosos
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 75 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 02 de diciembre de 2009 12:41 Asunto: Re: [Lazarus-es] Error al leer charset ISO8859_1 enFirebird2.1.3con Lazarus Hello Ismael, Wednesday, December 2, 2009, 7:04:03 PM, you wrote: ILDG> Problema: ILDG> No todos los conectores lo permitir por ser este relativamente nuevo. Hmmmm... que conector no soporta UTF-8 o UTF-16 ? Me imagino que Paradox o dBase no, pero el resto... ILDG> Soluci�n: ILDG> Implementar en C tu propia clase de conexi�n, cuesti�n ILDG> esta que no todos estamos dispuestos a realizar ya que es mejor ILDG> utilizar las existentes. Por qu� en C ? ILDG> Ahora respecto a la norma europea ISO8859 la misma tiene ILDG> especificaciones para muchos tipos de idiomas, y a la ves cada ILDG> una de ellas tiene tambi�n especificaciones. La ISO8559-1 es una y s�lo una, lo que muestras abajo con "collates" o lo que es lo mismo, preferencias de caracteres. La ISO8859-1 define que valor absoluto tiene cada letra y su representaci�n gr�fica, pero no su comportamiento, por ejemplo no dice que #49 es igual a la representaci�n gr�fica "1" pero no nos dice que es un n�mero, ni que va antes del "2" en una ordenaci�n. ILDG> Por ejemplo en Firebird la subnorma ISO8859_1 tiene ILDG> collation DA_DA ILDG> collation DE_DE ILDG> collation EN_UK ILDG> collation EN_US ILDG> collation ES_ES ILDG> collation PT_BR ILDG> collation PT_PT ILDG> collation FR_FR talvez se me quede alguna m�s Te quedan todas las que quieras :) Los Collation no son standard 100%, de hecho podr�a tener una para mi que ser�a "ES_ES_GL" = "Espa�a, Espa�ol, Galicia" en el que la "�" en vez de ir justo despu�s de la "i" fuera justo despu�s de la "y" por que me gusta m�s :) De hecho hay varios collation "XX_KG" que es "Klingon" :) ILDG> Por lo que yo puedo tenerla ISO8859_1 y usarla con los ILDG> diferentes idiomas establecidos en el collate ILDG> Pero adem�s de la ISO8859_1 est�n las ILDG> ISO8859_1 ILDG> ...... ILDG> ISO8859_1 3 Y muchas m�s... Aqu� tienes unas pocas: http://www-01.ibm.com/software/globalization/cp/cp_cpgid.jsp http://msdn.microsoft.com/en-us/library/dd317756%28VS.85%29.aspx http://web.archive.org/web/20040225223721/http://www.sharmahd.com/tm/codepages.html -- Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a

Hello Ismael,

Wednesday, December 2, 2009, 9:59:42 PM, you wrote:

ILDGa> Adem�s mencion� ISO8859_1, no ISO8559_1 y WIN1251 ISO8859_1 ya que ILDGa> WIN1251 no soporta � ni acentos ya que es el est�ndar americano pero el ILDGa> ISO8859_1 si.

Creo que mis lios con los n�meros ISO ha quedado m�s que patente :) 8859-1 era al que me refer�a, y el Win1252, no el 1251 :( Se que son diferentes, pero la confusi�n es tal que mi Firebird 1.5 me lo hace todo en Win1252 por defecto.

ILDGa> Solo le trataba de dar una explicaci�n mayor a Paola y decirle que nunca ILDGa> debe usar CharSet = NONE, ya que eso le puede traer problemas en un futuro ILDGa> si quiere convertir la base de datos posteriormente a un conjunto de ILDGa> caracteres determinado.

Lo cual me parece perfectamente correcto :)

Best regards, JoshyFun

Reply by email

Raistware
to Ismael L. Donis Garc?a

Ismael L. Donis Garc?a escribi�:

Show quoted text 7 lines
Existe alguna funci�n que me devuelva el car�cter de un n�mero de tipo string Prob� CHR pero no me devuelve la cadena de por ejemplo: chr(149)
No he entendido bien tu pregunta, pero tienes las siguientes:
var
  numero : integer;
  cadena : string;
  caracter: char;
begin
  cadena :=  IntToStr(numero);
  caracter := chr(numero);
  numero := Val(cadena);

Para preguntas b�sicas de este tipo, de uso del lenguaje y no de utilizaci�n o problemas de Lazarus, por favor mirad antes en google o en vuestro buscador favorito, sin ir mas lejos he encontrado esta p�gina en una b�squeda r�pida: http://delphibasics.co.uk/ Saludos

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

No tengo acceso a Internet, pero ninguna de las que env�as funciona.

Habr� Microsoft Word y teclea Alt + 149

Despu�s prueba con:

showmessage(char(149));
showmessage(chr(149));
showmessage(IntToStr(149));

Y ver�s que ninguna da el resultado de Alt+149, y yo lo que quiero es una funci�n que me de ese resultado, soy analfabeto pero no burro.

En Visual Basic 6 existe la funci�n Asc

Saludos
=========
�� ISMAEL ��
=========

Earlier message 33 lines
----- Mensaje original ----- De: "Raistware" <raistware en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: mi�rcoles, 09 de diciembre de 2009 01:35 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Ismael L. Donis Garc?a escribi�: > Existe alguna funci�n que me devuelva el car�cter de un n�mero de tipo > string > > Prob� CHR pero no me devuelve la cadena de por ejemplo: > > chr(149) > No he entendido bien tu pregunta, pero tienes las siguientes: var numero : integer; cadena : string; caracter: char; begin cadena := IntToStr(numero); caracter := chr(numero); numero := Val(cadena); Para preguntas b�sicas de este tipo, de uso del lenguaje y no de utilizaci�n o problemas de Lazarus, por favor mirad antes en google o en vuestro buscador favorito, sin ir mas lejos he encontrado esta p�gina en una b�squeda r�pida: http://delphibasics.co.uk/ Saludos

Reply by email

JoshyFun
to Ismael L. Donis Garc?a

Hello Ismael,

Wednesday, December 9, 2009, 3:33:23 PM, you wrote:

ILDGa> No tengo acceso a Internet, pero ninguna de las que env�as funciona. ILDGa> Habr� Microsoft Word y teclea Alt + 149
ILDGa> Despu�s prueba con:
ILDGa> showmessage(char(149));
ILDGa> showmessage(chr(149));
ILDGa> showmessage(IntToStr(149));
ILDGa> Y ver�s que ninguna da el resultado de Alt+149, y yo lo que quiero es una ILDGa> funci�n que me de ese resultado, soy analfabeto pero no burro. ILDGa> En Visual Basic 6 existe la funci�n Asc

El problema aqu� es justo el inverso de otros casos, lo que ves en pantalla tiene que ser UTF-8 para que lo veas bien (lo que esperas ver). ShowMessage(AnsiToUTF8(Char(149))).

VB6 es ANSI en casi todo lo que hace, por eso "las cosas no son iguales" en lo referente a como codificas los caracteres superiores a ASCII 127.

El esfuerzo de empezar a trabajar con UTF-8 o UTF-16 es muy recompensado a la larga, ten encuenta que los sistemas y lenguajes huyen despavoridos del ANSI por sus terribles limitaciones y pronto (como pasa ya parcialmente en Lazarus) trabajar con las strings en ANSI ser� m�s complicado que hacerlo en UTF-8 o UTF-16 directamente (de hecho WinNT es UTF-16 al completo, y las funciones ANSI, las acabadas en "A" tienen conversiones entrantes y salientes, de ANSI -> UTF-16 -> ANSI).

Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

De esa forma funciona pero no devuelve lo mismo.

Si quiere mira en pantalla para que veas: los c�digos por ejemplo de 148, 149 y 156

El problema que tengo es que tengo aplicaciones corriendo en Visual Basic 6 y ahora no logro crear la funci�n que me devuelva lo mismo con Lazarus, ya que AnsiToUTF8(Char(149)) Asc(149). Y esto me trae el embrollo de no poder atacar la misma base de datos con aplicaciones realizadas en los diferentes lenguajes, cuesti�n esta que es imprescindible para mi hasta que no migre todas las aplicaciones, que de hecho son bastantes. Esto sin contar mi conocimiento nulo de Lazarus o Delphi y por consiguiente el retrazo que esto trae en la migraci�n.

Por lo que veo tendr� que rehacer la funci�n en VB6

Saludos reiterados
=========
�� ISMAEL ��
=========

Earlier message 45 lines
----- 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 09:45 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Hello Ismael, Wednesday, December 9, 2009, 3:33:23 PM, you wrote: ILDGa> No tengo acceso a Internet, pero ninguna de las que env�as funciona. ILDGa> Habr� Microsoft Word y teclea Alt + 149 ILDGa> Despu�s prueba con: ILDGa> showmessage(char(149)); ILDGa> showmessage(chr(149)); ILDGa> showmessage(IntToStr(149)); ILDGa> Y ver�s que ninguna da el resultado de Alt+149, y yo lo que quiero es una ILDGa> funci�n que me de ese resultado, soy analfabeto pero no burro. ILDGa> En Visual Basic 6 existe la funci�n Asc El problema aqu� es justo el inverso de otros casos, lo que ves en pantalla tiene que ser UTF-8 para que lo veas bien (lo que esperas ver). ShowMessage(AnsiToUTF8(Char(149))). VB6 es ANSI en casi todo lo que hace, por eso "las cosas no son iguales" en lo referente a como codificas los caracteres superiores a ASCII 127. El esfuerzo de empezar a trabajar con UTF-8 o UTF-16 es muy recompensado a la larga, ten encuenta que los sistemas y lenguajes huyen despavoridos del ANSI por sus terribles limitaciones y pronto (como pasa ya parcialmente en Lazarus) trabajar con las strings en ANSI ser� m�s complicado que hacerlo en UTF-8 o UTF-16 directamente (de hecho WinNT es UTF-16 al completo, y las funciones ANSI, las acabadas en "A" tienen conversiones entrantes y salientes, de ANSI -> UTF-16 -> ANSI). -- Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a

Hello Ismael,

Wednesday, December 9, 2009, 6:34:53 PM, you wrote:

ILDGa> De esa forma funciona pero no devuelve lo mismo. ILDGa> Si quiere mira en pantalla para que veas: los c�digos por ejemplo de 148, ILDGa> 149 y 156

Aqu� podemos vernos con varios problemas que se quedan ocultos entre la mara�a de conversiones y codepages.

ILDGa> El problema que tengo es que tengo aplicaciones ILDGa> corriendo en Visual Basic 6
ILDGa> y ahora no logro crear la funci�n que me devuelva lo mismo con Lazarus, ya

Lo que podr�as hacer por ejemplo es poner una cadena de ejemplo como origen de datos, otra cadena con el resultado que da VB6 y cualquiera de nosotros puede intentar realizar una funci�n que haga la conversi�n que tu esperas. Pero tenemos que daber de donde vienen los datos y en que codificaci�n. Por ejemplo si vienen de un textbox en Lazarus estos vendr�n en UTF-8, pero si vienen de la base de datos vendr�n en ANSI (ya que as� las tienes dise�adas creo).

ILDGa> que AnsiToUTF8(Char(149)) Asc(149). Y esto me trae el embrollo de no

Eso no puede ser lo mismo nunca :) Asc(149) eso es de VB no ? Si es as� char(149)=asc(149) ya que un "char" no tiene codificaci�n de ning�n tipo, un char es un byte que se usa en cadenas de texto.

Si quieres poner las funciones en VB6 (yo programaba en VB6, hace tiempo pero creo que recordar� como iba) e intento hacer lo mismo en Pascal.

Resumiendo el problema, las strings que le envias a lazarus (ojo, lazarus no es freepascal) deben ir en UTF-8, y el contestar� con UTF-8 tambi�n. Si lo que quieres es trabajar con ANSI (que es lo que veo que necesitas) siempre que leas algo de un textbox, de un memo, o de cualquier sitio tendr�s que convertir de UTF-8 a ANSI antes de hacer nada, y al rev�s si quieres enviarlo a los controles visuales.

FreePascal no es UTF-8 si no ANSI, por lo tanto las funciones que no son visuales (son de freepascal) trabajan en ANSI, como los nombres de ficheros y alguna cosa m�s.

Otras funciones de freepascal como RightStr, LeftStr, etc, trabajan en ANSI pero se pueden usar en UTF-8 en muchos casos, pero hay que tener cuidado porque en UTF-8 lo caracteres no tienen por qu� ocupar un 1 byte, si no que pueden ocupar hasta 4 dependiendo del caracter que sea. As� esto:

p:=pos(Cadena,'a');
r:=LeftStr(Cadena,p);

es perfectamente v�lido, esto:

p:=pos(Cadena,'�');
r:=LeftStr(Cadena,p);

no lo es, ya que en UTF-8 '�' son 2 bytes o 2 chars y el resultado puede no ser el deseado.

ILDGa> poder atacar la misma base de datos con aplicaciones realizadas en los ILDGa> diferentes lenguajes, cuesti�n esta que es ILDGa> imprescindible para mi hasta que
ILDGa> no migre todas las aplicaciones, que de hecho son bastantes. Esto sin contar ILDGa> mi conocimiento nulo de Lazarus o Delphi y por ILDGa> consiguiente el retrazo que
ILDGa> esto trae en la migraci�n.

Es comprensible, uno no va a cambiar una base de datos que funciona, por lo menos por ahora.

ILDGa> Por lo que veo tendr� que rehacer la funci�n en VB6

Todo lo que puede hacer VB6 lo puede hacer Lazarus, al reves no.

PD: Por cierto, a lo del MaskEdit no te he contestado por que desconozco totalmente el tema y no quiero dar ideas falsas.

Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Perdona que halla demorado tanto en contestar, ya que analic� bien el contenido de tu mensaje, donde das una explicaci�n bien exacta de lo que hay que realizar.

Despu�s de analizar lo que has expuesto logr� realizar la funci�n de conversi�n que realiza el Visual Basic 6. Tuve que convertir los datos que le paso a la funci�n de UTF8 para ANSI, realizar todas las operaciones y para devolver los datos tuve que reconvertir de nuevo de ANSI a UTF8, como bien los explicas, obteniendo el resultado correcto, �sea.

UTF8 to ANSI -> Operaciones -> ANSI to UTF8 -> salida

1 Mill�n de Gracias Reiteradas

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

Otra cosa existe una forma de saber el primer y �ltimo d�a de un mes, algo as� como las siguientes funciones en Visual Basic

DateSerial(2009, 12, 1) = 01/12/2009
DateSerial(2009, 13, 0) = 31/12/2009

Saludos Cordiales
=========
�� ISMAEL ��
=========

Earlier message 97 lines
----- 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 12:36 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Hello Ismael, Wednesday, December 9, 2009, 6:34:53 PM, you wrote: ILDGa> De esa forma funciona pero no devuelve lo mismo. ILDGa> Si quiere mira en pantalla para que veas: los c�digos por ejemplo de 148, ILDGa> 149 y 156 Aqu� podemos vernos con varios problemas que se quedan ocultos entre la mara�a de conversiones y codepages. ILDGa> El problema que tengo es que tengo aplicaciones ILDGa> corriendo en Visual Basic 6 ILDGa> y ahora no logro crear la funci�n que me devuelva lo mismo con Lazarus, ya Lo que podr�as hacer por ejemplo es poner una cadena de ejemplo como origen de datos, otra cadena con el resultado que da VB6 y cualquiera de nosotros puede intentar realizar una funci�n que haga la conversi�n que tu esperas. Pero tenemos que daber de donde vienen los datos y en que codificaci�n. Por ejemplo si vienen de un textbox en Lazarus estos vendr�n en UTF-8, pero si vienen de la base de datos vendr�n en ANSI (ya que as� las tienes dise�adas creo). ILDGa> que AnsiToUTF8(Char(149)) Asc(149). Y esto me trae el embrollo de no Eso no puede ser lo mismo nunca :) Asc(149) eso es de VB no ? Si es as� char(149)=asc(149) ya que un "char" no tiene codificaci�n de ning�n tipo, un char es un byte que se usa en cadenas de texto. Si quieres poner las funciones en VB6 (yo programaba en VB6, hace tiempo pero creo que recordar� como iba) e intento hacer lo mismo en Pascal. Resumiendo el problema, las strings que le envias a lazarus (ojo, lazarus no es freepascal) deben ir en UTF-8, y el contestar� con UTF-8 tambi�n. Si lo que quieres es trabajar con ANSI (que es lo que veo que necesitas) siempre que leas algo de un textbox, de un memo, o de cualquier sitio tendr�s que convertir de UTF-8 a ANSI antes de hacer nada, y al rev�s si quieres enviarlo a los controles visuales. FreePascal no es UTF-8 si no ANSI, por lo tanto las funciones que no son visuales (son de freepascal) trabajan en ANSI, como los nombres de ficheros y alguna cosa m�s. Otras funciones de freepascal como RightStr, LeftStr, etc, trabajan en ANSI pero se pueden usar en UTF-8 en muchos casos, pero hay que tener cuidado porque en UTF-8 lo caracteres no tienen por qu� ocupar un 1 byte, si no que pueden ocupar hasta 4 dependiendo del caracter que sea. As� esto: p:=pos(Cadena,'a'); r:=LeftStr(Cadena,p); es perfectamente v�lido, esto: p:=pos(Cadena,'�'); r:=LeftStr(Cadena,p); no lo es, ya que en UTF-8 '�' son 2 bytes o 2 chars y el resultado puede no ser el deseado. ILDGa> poder atacar la misma base de datos con aplicaciones realizadas en los ILDGa> diferentes lenguajes, cuesti�n esta que es ILDGa> imprescindible para mi hasta que ILDGa> no migre todas las aplicaciones, que de hecho son bastantes. Esto sin contar ILDGa> mi conocimiento nulo de Lazarus o Delphi y por ILDGa> consiguiente el retrazo que ILDGa> esto trae en la migraci�n. Es comprensible, uno no va a cambiar una base de datos que funciona, por lo menos por ahora. ILDGa> Por lo que veo tendr� que rehacer la funci�n en VB6 Todo lo que puede hacer VB6 lo puede hacer Lazarus, al reves no. PD: Por cierto, a lo del MaskEdit no te he contestado por que desconozco totalmente el tema y no quiero dar ideas falsas. -- Best regards, JoshyFun

Reply by email

JoshyFun
to Ismael L. Donis Garc?a

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

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

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 ��
=========

Earlier message 85 lines
----- 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

Reply by email

JoshyFun
to Ismael L. Donis Garc?a

Hello Ismael,

Thursday, December 10, 2009, 3:22:38 PM, you wrote:

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

No tengo problema, te valdr�a como un 7ZIP multiparte ? Quiz� un RAR multiparte ? Alg�n otro formato ? un ZIP troceado con Hacha ?

Quieres 1 email cada dia o varios por dia ? Ponme un "plan de trabajo" e ir� enviando lo que necesites.

Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Cuando pongo en uso la unit DateUtil me da el siguiente error:

unit1.pas(9,32) Fatal: Can't find unit DateUtil used by Unit1

Y si no la pongo en uso me da este otro:

unit1.pas(42,24) Error: Identifier not found "EndOfMonth"

Saludos reiterados
=========
�� ISMAEL ��
=========

Earlier message 85 lines
----- 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

Reply by email

JoshyFun
to franmate en gmail.com

Hello franmate,

Thursday, December 10, 2009, 4:53:59 PM, you wrote:

fgc> JoshyFun: �Podr�as facilitar un link para descargar esos manuales? ( fgc> si est�n disponibles en internet )

Los ha publicado alguien hace unas semanas en la mailing de lazarus en ingl�s, pero ya no recuerdo donde estaba el mensaje, as� que los empaqueto y los subo a megaupload o algo para el que los quiera coger, pondr� el link por aqu�. Yo los uso con el lhelp integrado de lazarus como "help local" de modo que no hay que abrir el navegador para buscar ayuda contextual.

Best regards, JoshyFun

Reply by email

franmate en gmail.com
to JoshyFun

Ok , muchas gracias

El d�a 10 de diciembre de 2009 17:20, JoshyFun <joshyfun en gmail.com> escribi�:

Show quoted text 24 lines
Hello franmate, Thursday, December 10, 2009, 4:53:59 PM, you wrote: fgc> JoshyFun: �Podr�as facilitar un link para descargar esos manuales? ( fgc> si est�n disponibles en internet ) Los ha publicado alguien hace unas semanas en la mailing de lazarus en ingl�s, pero ya no recuerdo donde estaba el mensaje, as� que los empaqueto y los subo a megaupload o algo para el que los quiera coger, pondr� el link por aqu�. Yo los uso con el lhelp integrado de lazarus como "help local" de modo que no hay que abrir el navegador para buscar ayuda contextual. -- Best regards, �JoshyFun _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Jesus Reyes
to Ismael L. Donis Garc?a: Cuando pongo en uso la unit DateUtil me da el siguiente error: unit1.pas(9,32) Fatal:…

--- El jue 10-dic-09, Ismael L. Donis Garc?a <ismael en citricos.co.cu> escribi�:

Show quoted text 18 lines
De:: Ismael L. Donis Garc?a <ismael en citricos.co.cu> Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena A: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Fecha: jueves 10 de diciembre de 2009, 9:41 Cuando pongo en uso la unit DateUtil me da el siguiente error: unit1.pas(9,32) Fatal: Can't find unit DateUtil used by Unit1 Y si no la pongo en uso me da este otro: unit1.pas(42,24) Error: Identifier not found "EndOfMonth" Saludos reiterados ========= �� ISMAEL �� =========

es DateUtils, no DateUtil.

Si se trata de un tema diferente al original del "Funci�n para convertir n�mero a cadena" es mejor crear un nuevo mensaje, no veo la necesidad de perpetuar el hilo de la conversacion si �ste ha divergido, �no creen?

Saludos.

Jesus Reyes A.

Encuentra las mejores recetas en Yahoo! Cocina.
http://mx.mujer.yahoo.com/cocina/

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Un 7ZIP o un RAR, me es mejor el rar, pero creo que cualquiera de los 2 sirve.

Ahora otra pregunta como lo integras al Help de Lazarus?

GRACIAS
=========
�� ISMAEL ��
=========

Earlier message 33 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: jueves, 10 de diciembre de 2009 09:33 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Hello Ismael, Thursday, December 10, 2009, 3:22:38 PM, you wrote: ILDGa> Muchas gracias reiteradas, me ser�a de gran utilidad dichos manuales, pero ILDGa> para que me lo puedas enviar por e-mail tendr�as que fraccionarlos en trozos ILDGa> de 500kb ya que mi conexi�n es por moden lo que te causar�a alguna molestia ILDGa> al tener que enviar tantos mensajes. Si te es posible estar�a agradecido una ILDGa> vez m�s. No tengo problema, te valdr�a como un 7ZIP multiparte ? Quiz� un RAR multiparte ? Alg�n otro formato ? un ZIP troceado con Hacha ? Quieres 1 email cada dia o varios por dia ? Ponme un "plan de trabajo" e ir� enviando lo que necesites. -- Best regards, JoshyFun

Reply by email

Javier Villarroya
to Jesus Reyes: --- El jue 10-dic-09, Ismael L. Donis Garc?a <ismael en citricos.co.cu> escribi�: es…
Jesus Reyes wrote 5 lines
es DateUtils, no DateUtil. Si se trata de un tema diferente al original del "Funci�n para convertir n�mero a cadena" es mejor crear un nuevo mensaje, no veo la necesidad de perpetuar el hilo de la conversacion si �ste ha divergido, �no creen?

+1

Show quoted text 13 lines
Saludos. Jesus Reyes A. Encuentra las mejores recetas en Yahoo! Cocina. http://mx.mujer.yahoo.com/cocina/ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Ismael L. Donis Garc?a
to Jesus Reyes: --- El jue 10-dic-09, Ismael L. Donis Garc?a <ismael en citricos.co.cu> escribi�: es…

Lo que pasa es que le estaba respondiendo un mensaje sobre aqu�l tema y a la ves al final hice otra pregunta, por eso lo del asunto.

Muchas gracias, al final lo resolv� de la siguiente forma:

if TryStrToDate(txtmes.Text,dtmfecha) then
    begin
       sql := ... formatdatetime('yyyy/mm/dd',EndOfTheMonth(dtmfecha)) ...
       ...
    end

Saludos
=========
�� ISMAEL ��
=========

Earlier message 47 lines
----- Mensaje original ----- De: "Jesus Reyes" <jesusrmx en yahoo.com.mx> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: jueves, 10 de diciembre de 2009 11:41 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena --- El jue 10-dic-09, Ismael L. Donis Garc?a <ismael en citricos.co.cu> escribi�: > De:: Ismael L. Donis Garc?a <ismael en citricos.co.cu> > Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena > A: "Spanish version of Lazarus List" > <lazarus-es en lists.lazarus.freepascal.org> > Fecha: jueves 10 de diciembre de 2009, 9:41 > Cuando pongo en uso la unit DateUtil > me da el siguiente error: > > unit1.pas(9,32) Fatal: Can't find unit DateUtil used by > Unit1 > > Y si no la pongo en uso me da este otro: > > unit1.pas(42,24) Error: Identifier not found "EndOfMonth" > > Saludos reiterados > ========= > �� ISMAEL �� > ========= es DateUtils, no DateUtil. Si se trata de un tema diferente al original del "Funci�n para convertir n�mero a cadena" es mejor crear un nuevo mensaje, no veo la necesidad de perpetuar el hilo de la conversacion si �ste ha divergido, �no creen? Saludos. Jesus Reyes A. Encuentra las mejores recetas en Yahoo! Cocina. http://mx.mujer.yahoo.com/cocina/

Reply by email

Raistware
to Ismael L. Donis Garc?a: Un 7ZIP o un RAR, me es mejor el rar, pero creo que cualquiera de los 2 sirve. Ahora otra…

Definitivamente me doy de baja de la lista.

Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las consultas que se estan planteando, y para el 0,01% restante, no me compensa el recibir tanto spam.

Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo el tiempo en estas cosas.

Reply by email

franmate en gmail.com
to Raistware

Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la nueva vida. Los mortales seguiremos por aqu�.

El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> escribi�:

Show quoted text 16 lines
Definitivamente me doy de baja de la lista. Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las consultas que se estan planteando, y para el 0,01% restante, no me compensa el recibir tanto spam. Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo el tiempo en estas cosas. _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Jose Antonio Cuello
to franmate en gmail.com

No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas. Si se contin�an enviando tantos mails la lista pasa de ser una herramienta �til a ser spam y adem�s tambi�n tiene raz�n respecto al tiempo que se tiene que dedicar en leer mensajes que no aportan nada.

Por otro lado no me parece motivo de alegr�a que alguien desee darse de baja ... cuanta m�s gente mejor calidad de respuesta (supuestamente). Entiendo que todos necesitamos ayuda en alg�n momento pero es necesario dedicar un poco de tiempo a leer y buscar, se aprende mucho. Respecto a no tener internet pues no tengo problema en dar un mail privado y ayudar de manera personal o cualquier otro que lo desee pero saturar la lista con conceptos b�sicos de programaci�n no creo que sea lo mejor para todos.

Espero se me tenga en cuenta como una opini�n personal y no se piense en que no deseo ayudar a mejorar el entorno del Lazarus. Un saludo a todos.

franmate en gmail.com escribi�:

Show quoted text 29 lines
Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la nueva vida. Los mortales seguiremos por aqu�. El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> escribi�: > Definitivamente me doy de baja de la lista. > > Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en > el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component > code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las > consultas que se estan planteando, y para el 0,01% restante, no me compensa > el recibir tanto spam. > > Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo > el tiempo en estas cosas. > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > > _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

franmate en gmail.com
to Jose Antonio Cuello

Hola,

Mi correo anterior era bastante ir�nico, no pretend�a ofender. Una respuesta correcta desde el principio ser�a pedir que las dudas b�sicas se plantearan en los foros y no en la lista. Dar a entender que algunas personas "ensuciamos" la lista me parece poco respetuoso.

El d�a 11 de diciembre de 2009 10:45, Jose Antonio Cuello <josea en artextrading.com> escribi�:

Show quoted text 62 lines
No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas. Si se contin�an enviando tantos mails la lista pasa de ser una herramienta �til a ser spam y adem�s tambi�n tiene raz�n respecto al tiempo que se tiene que dedicar en leer mensajes que no aportan nada. Por otro lado no me parece motivo de alegr�a que alguien desee darse de baja ... cuanta m�s gente mejor calidad de respuesta (supuestamente). Entiendo que todos necesitamos ayuda en alg�n momento pero es necesario dedicar un poco de tiempo a leer y buscar, se aprende mucho. Respecto a no tener internet pues no tengo problema en dar un mail privado y ayudar de manera personal o cualquier otro que lo desee pero saturar la lista con conceptos b�sicos de programaci�n no creo que sea lo mejor para todos. Espero se me tenga en cuenta como una opini�n personal y no se piense en que no deseo ayudar a mejorar el entorno del Lazarus. Un saludo a todos. franmate en gmail.com escribi�: > > Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en > cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la > nueva vida. Los mortales seguiremos por aqu�. > > El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> > escribi�: > >> >> Definitivamente me doy de baja de la lista. >> >> Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, >> en >> el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR >> (component >> code repositories, si no recuerdo mal) resuelven practicamente el 99,99% >> las >> consultas que se estan planteando, y para el 0,01% restante, no me >> compensa >> el recibir tanto spam. >> >> Mis disculpas a quien le moleste este mensaje, pero no puedo estar >> perdiendo >> el tiempo en estas cosas. >> >> _______________________________________________ >> Lazarus-es mailing list >> Lazarus-es en lists.lazarus.freepascal.org >> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es >> >> > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

Giuseppe Luigi Punzi
to Jose Antonio Cuello: No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas.…

Hola a todos, lista...

El vie, 11-12-2009 a las 10:45 +0100, Jose Antonio Cuello escribi�:

Show quoted text 35 lines
No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas. Si se contin�an enviando tantos mails la lista pasa de ser una herramienta �til a ser spam y adem�s tambi�n tiene raz�n respecto al tiempo que se tiene que dedicar en leer mensajes que no aportan nada. Por otro lado no me parece motivo de alegr�a que alguien desee darse de baja ... cuanta m�s gente mejor calidad de respuesta (supuestamente). Entiendo que todos necesitamos ayuda en alg�n momento pero es necesario dedicar un poco de tiempo a leer y buscar, se aprende mucho. Respecto a no tener internet pues no tengo problema en dar un mail privado y ayudar de manera personal o cualquier otro que lo desee pero saturar la lista con conceptos b�sicos de programaci�n no creo que sea lo mejor para todos. Espero se me tenga en cuenta como una opini�n personal y no se piense en que no deseo ayudar a mejorar el entorno del Lazarus. Un saludo a todos. franmate en gmail.com escribi�: > Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en > cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la > nueva vida. Los mortales seguiremos por aqu�. > > El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> escribi�: > >> Definitivamente me doy de baja de la lista. >> >> Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en >> el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component >> code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las >> consultas que se estan planteando, y para el 0,01% restante, no me compensa >> el recibir tanto spam. >> >> Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo >> el tiempo en estas cosas.

Eso supongo que ya es opini�n de cada uno. Actualmente no estoy usando Lazarus, pero mi pasi�n por Delphi, hace que quiera estar al tanto de lo que se cuece, aunque no lea todos los mails.

Puede ser, que las personas que est�n preguntando ciertas cosas, no tengan constancia por ejemplo de donde obtener ayuda. Lazarus, no tiene la inmensa ayuda que en su momento conoc� con Delphi 1 a golpe de F1 (ni tampoco estaban los recursos que hay en internet). En esos casos, un mail comentando donde poder obtenerla, no est� de m�s. Cuidado, que no s� si en su momento se ha hecho, es un comentario gen�rico.

M�s que la gente pregunte cosas b�sicas (porque todos hemos sido novatos), me resultar�a mucho m�s grave, no contestarle, aunque sea una breve contestaci�n, y apuntar a la ayuda (que es descargable para su uso offline). Igual que veo fuera de lugar, enviar un mail, diciendo que "me desubscribo de la lista, porque no me compensa", que otra persona tambi�n podr�a decir "me desubscribo de la lista, porque mis dudas son muy complicadas, y la gente no est� al nivel". Porque para esos casos, activas el modo digest (resumen), recibes un s�lo mail y lees los que te interesen, te desubscribes directamente, o envias un mail, con otras palabras, comentando con la lista la situaci�n, y si habr�a alguna manera de solventar ese problemilla. Las listas de correo no son para obtener soporte gratuito. Sino para tener una mini comunidad de gente, donde todos colaboran y comparten conocimientos. A veces ir�n dudas f�ciles y otras dif�ciles, es lo que hay.

Por poner un ejemplo, en la lista de Windev, pregunt� por una funci�n para generar n�meros de series. Claro que me podr�an haber mandado a paseo, y decirme que me la haga yo, pero, si alguien ya sabe la respuesta, y la quiere compartir, no est� de m�s, poder aprender de ello, y mientras, poder centrarme en puntos m�s importantes del desarrollo. Es muy com�n en mi, preguntar cosas, que no necesito ahora mismo, pero necesitar�, para poder tenerlas a mano llegado el momento, ya que puede que alguien, se halla tropezado con lo mismo, y lo tenga resuelto, y as� yo no perder el tiempo.

En fin, es s�lo mi opini�n, que no tiene por qu� ser compartida por los dem�s, obviamente.
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091211/35613c11/attachment.html>

Reply by email

Javier Villarroya
to Jose Antonio Cuello: No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas.…

El 11/12/2009 10:45, Jose Antonio Cuello escribi�:

Show quoted text 5 lines
No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas. Si se contin�an enviando tantos mails la lista pasa de ser una herramienta �til a ser spam y adem�s tambi�n tiene raz�n respecto al tiempo que se tiene que dedicar en leer mensajes que no aportan nada.

Pienso que con un poco de Netiquette[1] se solucionan la mayor�a de problemas, en este caso por ejemplo : para un tema nuevo, un correo nuevo y solo con leer el asunto del correo ya sabes si te interesa o no.

[1] http://es.wikipedia.org/wiki/Netiquette

Reply by email

Paola Bruccoleri
to franmate en gmail.com: Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en cuanto a…

franmate en gmail.com escribi�:

Show quoted text 17 lines
Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la nueva vida. Los mortales seguiremos por aqu�. El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> escribi�: > Definitivamente me doy de baja de la lista. > > Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en > el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component > code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las > consultas que se estan planteando, y para el 0,01% restante, no me compensa > el recibir tanto spam. > > Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo > el tiempo en estas cosas. >

desde hace un buen tiempo no escribo.. s�lo se me escap� un correo el otro d�a por distra�da..
Tom� la decisi�n de leer y no escribir, y cuando lo hago, lo hago en forma personal, porque sinceramente, no es una lista donde me siente muy c�moda que digamos. NUNCA he visto tanta soberbia y de la forma que responden algunos... y no soy nada novata en estar en listas de programaci�n de diferentes lenguajes y niveles... s� bien c�mo se manejan las cosas...
Hasta he pensado en seguir o no adelante usando este proyecto, porque en estos proyectos de software libre, se valora mucho una comunidad abierta, de compartir conocimientos, etc y ac� veo todo como muy muy muy "elitista".. no s� c�mo definirlo...
OJO, aclaro la invalorable ayuda de muchos que escriben por ac�, que no los nombro a todos por no olvidarme de alguno.. y de todas las respuestas que dan, las guardo porque me sirven para futuras ocasiones.. pero siempre son los mismos.. !!!! �a los otros tambi�n les molestan ciertos mensajes?
No quiero que tomen a mal esto, s�lo que comparo esto con otras "comunidades" de este tipo donde se pregunta y comparte de todo.. y el clima es totalmente diferente.
Y que se hagan preguntas de novatos, no significa que seas novato y no estudies... muchas veces no es que alguien sea harag�n, es simplemente porque a veces demor�s una tarde buscando un detalle, cuando quiz�s una simple respuesta te ahorr� mucho tiempo y pudistes seguir adelante.. Todos somos libres de estar o no aqu�... y al que no le sirva, que se desuscriba.. d�nde est� el problema?
Bueno, y aqu� doy por terminado este hilo...
Saludos

Reply by email

Bruno Reato
to Paola Bruccoleri

La verdad que la pregunta cuando la le� me pareci� que se pod�a encontrar facilmente la respuesta googleando un rato ya que es algo muy com�n en pascal, pero tampoco me parece que sea tan grave como para darse de baja de una lista por "�spam?" (aunque no se pueda definir como spam). A mi no me molesta para nada porque utilizando un poco de "sentido com�n" y "filtros del outlook" redirijo todos los mensajes de lazarus a otra carpeta para no mezclarlos con otros correos. Por lo tanto, a mi no me molesta si envian la cantidad de mensajes que quieran.

El d�a 11/12/09, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�:

Show quoted text 69 lines
franmate en gmail.com escribi�: > Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en > cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la > nueva vida. Los mortales seguiremos por aqu�. > > El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> > escribi�: > > >> Definitivamente me doy de baja de la lista. >> >> Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, >> en >> el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR >> (component >> code repositories, si no recuerdo mal) resuelven practicamente el 99,99% >> las >> consultas que se estan planteando, y para el 0,01% restante, no me >> compensa >> el recibir tanto spam. >> >> Mis disculpas a quien le moleste este mensaje, pero no puedo estar >> perdiendo >> el tiempo en estas cosas. >> >> > desde hace un buen tiempo no escribo.. s�lo se me escap� un correo el otro d�a por distra�da.. Tom� la decisi�n de leer y no escribir, y cuando lo hago, lo hago en forma personal, porque sinceramente, no es una lista donde me siente muy c�moda que digamos. NUNCA he visto tanta soberbia y de la forma que responden algunos... y no soy nada novata en estar en listas de programaci�n de diferentes lenguajes y niveles... s� bien c�mo se manejan las cosas... Hasta he pensado en seguir o no adelante usando este proyecto, porque en estos proyectos de software libre, se valora mucho una comunidad abierta, de compartir conocimientos, etc y ac� veo todo como muy muy muy "elitista".. no s� c�mo definirlo... OJO, aclaro la invalorable ayuda de muchos que escriben por ac�, que no los nombro a todos por no olvidarme de alguno.. y de todas las respuestas que dan, las guardo porque me sirven para futuras ocasiones.. pero siempre son los mismos.. !!!! �a los otros tambi�n les molestan ciertos mensajes? No quiero que tomen a mal esto, s�lo que comparo esto con otras "comunidades" de este tipo donde se pregunta y comparte de todo.. y el clima es totalmente diferente. Y que se hagan preguntas de novatos, no significa que seas novato y no estudies... muchas veces no es que alguien sea harag�n, es simplemente porque a veces demor�s una tarde buscando un detalle, cuando quiz�s una simple respuesta te ahorr� mucho tiempo y pudistes seguir adelante.. Todos somos libres de estar o no aqu�... y al que no le sirva, que se desuscriba.. d�nde est� el problema? Bueno, y aqu� doy por terminado este hilo... Saludos _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091211/6368613e/attachment.html>

Reply by email

Ismael L. Donis García
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

No pensaba contestar al tema, pero me creo en el deber de hacer ya que a partir de mi se origin� el debate.

Estoy 100% de acuerdo con Paola, yo estoy subscrito a varias listas y ninguna presenta est�s caracter�sticas de arrogancia de algunos listeros, en ellas las cosas se comparten sin miramiento llegando al punto de pasar hasta procedimientos completos, aun sin ser soft libre.

Yo creo verdaderamente que el que no quiera compartir sus conocimientos por muy simples que estos sean, no deber�an estar en una lista de discusi�n de un soft libre, ya que si es libre se sobre entiende que la comunidad que lo conforma est� dispuesta a difundir todo respecto a su uso y funcionamiento. Y m�s una siendo un soft que cuando tu lo instalas no instala ayuda alguna de forma local, sino que todo lo remite a la web donde no todos tenemos acceso.

Adem�s d�jenme repetirles que no todos tienen acceso a Internet y por tanto no pueden consultar por esa v�a, cuesti�n esta que los obliga a usar m�s la lista para consultar las dudas, y m�s aun si se est�n iniciando en este lenguaje, ya que aunque la programaci�n es muy semejante entre los diferentes lenguajes la sintaxis y las funciones var�an entre los mismos.

En mi caso particular no tengo acceso a Internet cuesti�n esta que ya la he comentado en varios e-mail, por tal motivo no puedo buscar por esa v�a. Y aunque no lo crean ya llevo m�s de 15 a�os en el mundo de la programaci�n y tengo varios soft regados por todo el pa�s, sin embargo lo que he podido realizar con Lazarus en un mes de prueba lo hago sin mucho apuro en un d�a de trabajo en Visual Basic, ahora preguntaran entonces el porque de la migraci�n, pues muy f�cil Lazarus es libre y multiplataforma, aspectos estos que no lo son en Visual Basic.

Saludos cordiales a todos.
=========
�� ISMAEL ��
=========

Earlier message 52 lines
----- Mensaje original ----- De: Bruno Reato Para: Spanish version of Lazarus List Enviado: viernes, 11 de diciembre de 2009 07:23 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena La verdad que la pregunta cuando la le� me pareci� que se pod�a encontrar facilmente la respuesta googleando un rato ya que es algo muy com�n en pascal, pero tampoco me parece que sea tan grave como para darse de baja de una lista por "�spam?" (aunque no se pueda definir como spam). A mi no me molesta para nada porque utilizando un poco de "sentido com�n" y "filtros del outlook" redirijo todos los mensajes de lazarus a otra carpeta para no mezclarlos con otros correos. Por lo tanto, a mi no me molesta si envian la cantidad de mensajes que quieran. El d�a 11/12/09, Paola Bruccoleri <pbruccoleri en adinet.com.uy> escribi�: franmate en gmail.com escribi�: Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la nueva vida. Los mortales seguiremos por aqu�. El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> escribi�: Definitivamente me doy de baja de la lista. Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las consultas que se estan planteando, y para el 0,01% restante, no me compensa el recibir tanto spam. Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo el tiempo en estas cosas. desde hace un buen tiempo no escribo.. s�lo se me escap� un correo el otro d�a por distra�da.. Tom� la decisi�n de leer y no escribir, y cuando lo hago, lo hago en forma personal, porque sinceramente, no es una lista donde me siente muy c�moda que digamos. NUNCA he visto tanta soberbia y de la forma que responden algunos... y no soy nada novata en estar en listas de programaci�n de diferentes lenguajes y niveles... s� bien c�mo se manejan las cosas... Hasta he pensado en seguir o no adelante usando este proyecto, porque en estos proyectos de software libre, se valora mucho una comunidad abierta, de compartir conocimientos, etc y ac� veo todo como muy muy muy "elitista".. no s� c�mo definirlo... OJO, aclaro la invalorable ayuda de muchos que escriben por ac�, que no los nombro a todos por no olvidarme de alguno.. y de todas las respuestas que dan, las guardo porque me sirven para futuras ocasiones.. pero siempre son los mismos.. !!!! �a los otros tambi�n les molestan ciertos mensajes? No quiero que tomen a mal esto, s�lo que comparo esto con otras "comunidades" de este tipo donde se pregunta y comparte de todo.. y el clima es totalmente diferente. Y que se hagan preguntas de novatos, no significa que seas novato y no estudies... muchas veces no es que alguien sea harag�n, es simplemente porque a veces demor�s una tarde buscando un detalle, cuando quiz�s una simple respuesta te ahorr� mucho tiempo y pudistes seguir adelante.. Todos somos libres de estar o no aqu�... y al que no le sirva, que se desuscriba.. d�nde est� el problema? Bueno, y aqu� doy por terminado este hilo... Saludos

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Y los que no tienen acceso al foro por no tener acceso a Internet que hacen, o mejor dicho donde deben realizar sus preguntas?

Saludos cordiales
=========
�� ISMAEL ��
=========

Earlier message 86 lines
----- Mensaje original ----- De: <franmate en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: viernes, 11 de diciembre de 2009 04:47 Asunto: Re: [Lazarus-es] Calidad de mensajes en la lista Hola, Mi correo anterior era bastante ir�nico, no pretend�a ofender. Una respuesta correcta desde el principio ser�a pedir que las dudas b�sicas se plantearan en los foros y no en la lista. Dar a entender que algunas personas "ensuciamos" la lista me parece poco respetuoso. El d�a 11 de diciembre de 2009 10:45, Jose Antonio Cuello <josea en artextrading.com> escribi�: > No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste > las formas. Si se contin�an enviando tantos mails la lista pasa de ser una > herramienta �til a ser spam y adem�s tambi�n tiene raz�n respecto al > tiempo > que se tiene que dedicar en leer mensajes que no aportan nada. > > Por otro lado no me parece motivo de alegr�a que alguien desee darse de > baja > ... cuanta m�s gente mejor calidad de respuesta (supuestamente). Entiendo > que todos necesitamos ayuda en alg�n momento pero es necesario dedicar un > poco de tiempo a leer y buscar, se aprende mucho. Respecto a no tener > internet pues no tengo problema en dar un mail privado y ayudar de manera > personal o cualquier otro que lo desee pero saturar la lista con conceptos > b�sicos de programaci�n no creo que sea lo mejor para todos. > > Espero se me tenga en cuenta como una opini�n personal y no se piense en > que > no deseo ayudar a mejorar el entorno del Lazarus. > Un saludo a todos. > > franmate en gmail.com escribi�: >> >> Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en >> cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la >> nueva vida. Los mortales seguiremos por aqu�. >> >> El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> >> escribi�: >> >>> >>> Definitivamente me doy de baja de la lista. >>> >>> Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, >>> en >>> el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR >>> (component >>> code repositories, si no recuerdo mal) resuelven practicamente el 99,99% >>> las >>> consultas que se estan planteando, y para el 0,01% restante, no me >>> compensa >>> el recibir tanto spam. >>> >>> Mis disculpas a quien le moleste este mensaje, pero no puedo estar >>> perdiendo >>> el tiempo en estas cosas. >>> >>> _______________________________________________ >>> Lazarus-es mailing list >>> Lazarus-es en lists.lazarus.freepascal.org >>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es >>> >>> >> >> _______________________________________________ >> Lazarus-es mailing list >> Lazarus-es en lists.lazarus.freepascal.org >> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es >> > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es >

Reply by email

Hetor S. Ponce
to Ismael L. Donis García: No pensaba contestar al tema, pero me creo en el deber de hacer ya que a partir de mi se…

los conocimientos son para darlos a otros
toda pregunta debe ser bienvenida
si uno quiere, la responde y colabora, sino, no
despues de todo, es una comunidad libre o no?
llevo 25 a�os con pascal y sin embargo sigo valorando mucho los aportes de la lista y de otras personas

gracias

Ismael L. Donis Garc�a escribi�:

Show quoted text 148 lines
No pensaba contestar al tema, pero me creo en el deber de hacer ya que a partir de mi se origin� el debate. Estoy 100% de acuerdo con Paola, yo estoy subscrito a varias listas y ninguna presenta est�s caracter�sticas de arrogancia de algunos listeros, en ellas las cosas se comparten sin miramiento llegando al punto de pasar hasta procedimientos completos, aun sin ser soft libre. Yo creo verdaderamente que el que no quiera compartir sus conocimientos por muy simples que estos sean, no deber�an estar en una lista de discusi�n de un soft libre, ya que si es libre se sobre entiende que la comunidad que lo conforma est� dispuesta a difundir todo respecto a su uso y funcionamiento. Y m�s una siendo un soft que cuando tu lo instalas no instala ayuda alguna de forma local, sino que todo lo remite a la web donde no todos tenemos acceso. Adem�s d�jenme repetirles que no todos tienen acceso a Internet y por tanto no pueden consultar por esa v�a, cuesti�n esta que los obliga a usar m�s la lista para consultar las dudas, y m�s aun si se est�n iniciando en este lenguaje, ya que aunque la programaci�n es muy semejante entre los diferentes lenguajes la sintaxis y las funciones var�an entre los mismos. En mi caso particular no tengo acceso a Internet cuesti�n esta que ya la he comentado en varios e-mail, por tal motivo no puedo buscar por esa v�a. Y aunque no lo crean ya llevo m�s de 15 a�os en el mundo de la programaci�n y tengo varios soft regados por todo el pa�s, sin embargo lo que he podido realizar con Lazarus en un mes de prueba lo hago sin mucho apuro en un d�a de trabajo en Visual Basic, ahora preguntaran entonces el porque de la migraci�n, pues muy f�cil Lazarus es libre y multiplataforma, aspectos estos que no lo son en Visual Basic. Saludos cordiales a todos. ========= �� ISMAEL �� ========= ----- Mensaje original ----- *De:* Bruno Reato <mailto:breato en gmail.com> *Para:* Spanish version of Lazarus List <mailto:lazarus-es en lists.lazarus.freepascal.org> *Enviado:* viernes, 11 de diciembre de 2009 07:23 *Asunto:* Re: [Lazarus-es] Funci?n para convertir n?mero a cadena La verdad que la pregunta cuando la le� me pareci� que se pod�a encontrar facilmente la respuesta googleando un rato ya que es algo muy com�n en pascal, pero tampoco me parece que sea tan grave como para darse de baja de una lista por "�spam?" (aunque no se pueda definir como spam). A mi no me molesta para nada porque utilizando un poco de "sentido com�n" y "filtros del outlook" redirijo todos los mensajes de lazarus a otra carpeta para no mezclarlos con otros correos. Por lo tanto, a mi no me molesta si envian la cantidad de mensajes que quieran. El d�a 11/12/09, *Paola Bruccoleri* <pbruccoleri en adinet.com.uy <mailto:pbruccoleri en adinet.com.uy>> escribi�: franmate en gmail.com <mailto:franmate en gmail.com> escribi�: Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la nueva vida. Los mortales seguiremos por aqu�. El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com <mailto:raistware en gmail.com>> escribi�: Definitivamente me doy de baja de la lista. Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las consultas que se estan planteando, y para el 0,01% restante, no me compensa el recibir tanto spam. Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo el tiempo en estas cosas. desde hace un buen tiempo no escribo.. s�lo se me escap� un correo el otro d�a por distra�da.. Tom� la decisi�n de leer y no escribir, y cuando lo hago, lo hago en forma personal, porque sinceramente, no es una lista donde me siente muy c�moda que digamos. NUNCA he visto tanta soberbia y de la forma que responden algunos... y no soy nada novata en estar en listas de programaci�n de diferentes lenguajes y niveles... s� bien c�mo se manejan las cosas... Hasta he pensado en seguir o no adelante usando este proyecto, porque en estos proyectos de software libre, se valora mucho una comunidad abierta, de compartir conocimientos, etc y ac� veo todo como muy muy muy "elitista".. no s� c�mo definirlo... OJO, aclaro la invalorable ayuda de muchos que escriben por ac�, que no los nombro a todos por no olvidarme de alguno.. y de todas las respuestas que dan, las guardo porque me sirven para futuras ocasiones.. pero siempre son los mismos.. !!!! �a los otros tambi�n les molestan ciertos mensajes? No quiero que tomen a mal esto, s�lo que comparo esto con otras "comunidades" de este tipo donde se pregunta y comparte de todo.. y el clima es totalmente diferente. Y que se hagan preguntas de novatos, no significa que seas novato y no estudies... muchas veces no es que alguien sea harag�n, es simplemente porque a veces demor�s una tarde buscando un detalle, cuando quiz�s una simple respuesta te ahorr� mucho tiempo y pudistes seguir adelante.. Todos somos libres de estar o no aqu�... y al que no le sirva, que se desuscriba.. d�nde est� el problema? Bueno, y aqu� doy por terminado este hilo... Saludos _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org <mailto:Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es ------------------------------------------------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es ------------------------------------------------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091211/bf67ec04/attachment.html>

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Es posible conocer el numero de registros afectados en una transacci�n de INSERT o UPDATE?

Uso los componentes TIBConnevtion, TSQLTransaction y TSQLQuery.

Deseo conocer cuantos registro afecto por ejemplo con:

insert into tabla2 select * from tabla1 where extract(year from tabla1.fecha)=2009
o
update tabla1 set fecha = '2009/12/31' where extract(year from tabla1.fecha)=2009

Uso Lazarus 0.9.29 + FPC 2.3.1

Saludos
=========
�� ISMAEL ��
=========
PD: No tengo acceso a Internet

Reply by email

Horacio Jamilis
to Ismael L. Donis Garc?a

El componente TSQLQuery tiene una propiedad llamada RowsAffected que te debiera dar exactamente lo que pides, luego de ejecutar la instrucci�n SQL con ExecSQL.

Suerte!

Horacio

Ismael L. Donis Garc?a escribi�:

Show quoted text 29 lines
Es posible conocer el numero de registros afectados en una transacci�n de INSERT o UPDATE? Uso los componentes TIBConnevtion, TSQLTransaction y TSQLQuery. Deseo conocer cuantos registro afecto por ejemplo con: insert into tabla2 select * from tabla1 where extract(year from tabla1.fecha)=2009 o update tabla1 set fecha = '2009/12/31' where extract(year from tabla1.fecha)=2009 Uso Lazarus 0.9.29 + FPC 2.3.1 Saludos ========= �� ISMAEL �� ========= PD: No tengo acceso a Internet _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email

JoshyFun
to Ismael L. Donis Garc?a: Es posible conocer el numero de registros afectados en una transacci�n de INSERT o…

Hello Ismael,

Friday, December 11, 2009, 5:52:40 PM, you wrote:

ILDGa> Es posible conocer el numero de registros afectados en una transacci�n de ILDGa> INSERT o UPDATE?

En teor�a en el Query, una vez realizado el ExceSQL la propiedad ChangeCount creo que deber�a contener la cantidad de registros afectados, pero nunca lo he probado, ni estoy seguro 100% de que ese sea su objetivo. Tambi�n puede ser que eso funcione en algunos motores de DB pero no en otros :-?

Best regards, JoshyFun

Reply by email

JoshyFun
to Horacio Jamilis: El componente TSQLQuery tiene una propiedad llamada RowsAffected que te debiera dar…

Hello Horacio,

Friday, December 11, 2009, 5:54:03 PM, you wrote:

HJ> El componente TSQLQuery tiene una propiedad llamada RowsAffected que te HJ> debiera dar exactamente lo que pides, luego de ejecutar la instrucci�n HJ> SQL con ExecSQL.

OOps... RowsAffected, es cierto, me he colado :( El otro son los cambios que est�n en el buffer antes del applyupdates no ?

Best regards, JoshyFun

Reply by email

Horacio Jamilis
to JoshyFun

No tengo ni idea ya que nunca utilic� cached updates :-(

Horacio

JoshyFun escribi�:

Show quoted text 12 lines
Hello Horacio, Friday, December 11, 2009, 5:54:03 PM, you wrote: HJ> El componente TSQLQuery tiene una propiedad llamada RowsAffected que te HJ> debiera dar exactamente lo que pides, luego de ejecutar la instrucci�n HJ> SQL con ExecSQL. OOps... RowsAffected, es cierto, me he colado :( El otro son los cambios que est�n en el buffer antes del applyupdates no ?

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Gracias, eso era exactamente lo que necesitaba.

Saludos
=========
�� ISMAEL ��
=========

Earlier message 49 lines
----- Mensaje original ----- De: "Horacio Jamilis" <hjamilis en pymesoft.com.ar> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: viernes, 11 de diciembre de 2009 10:54 Asunto: Re: [Lazarus-es] Conocer el n?mero de registros afectados en una transaci?n El componente TSQLQuery tiene una propiedad llamada RowsAffected que te debiera dar exactamente lo que pides, luego de ejecutar la instrucci�n SQL con ExecSQL. Suerte! Horacio Ismael L. Donis Garc?a escribi�: > Es posible conocer el numero de registros afectados en una transacci�n de > INSERT o UPDATE? > > Uso los componentes TIBConnevtion, TSQLTransaction y TSQLQuery. > > Deseo conocer cuantos registro afecto por ejemplo con: > > insert into tabla2 select * from tabla1 where extract(year from > tabla1.fecha)=2009 > o > update tabla1 set fecha = '2009/12/31' where extract(year from > tabla1.fecha)=2009 > > Uso Lazarus 0.9.29 + FPC 2.3.1 > > Saludos > ========= > �� ISMAEL �� > ========= > PD: No tengo acceso a Internet > > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > >

Reply by email

Edwin Quijada
to Jose Antonio Cuello: No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas.…

Pues no , no estoy de acuerdo ccon el Sr. Reastware y si se quiere ir que le vaya bonito. No podemos pretender querer restringir la cantidad de preguntas que se hacen aqui solo porque esten las respuesta en otro sitio. Si tomamos ese postulado como correcto ninguna lista exxistiria porque lo mas seguro todo lo que se pregunta en las listas en algun sitio en internet esta.

No creo que lo que se envie aqui sea spam si son muchos correos pues no lo leas todo solo ve lo que te interesa , como se le dice a un novato completo que oyo hablar de Lazarus y se metio en este lio le contestamos con esto>?

Talvez una pregunta tonta no sea contestada por los gurus de aqui pero seguro habra usuarios medios qe se sentiran orgullosos de poder contestar esa pregunta, ejemplo la pregunta de como convertir un ascci a caracter , esa podria catalogarse como pregunta tonta sin embargo miren todo el trafico que genero todo el mundo dando soluciones, eso es una lista y cuando esa persona nueva ve esa ayuda seguro no se va de la lista y se convierte en un evangelizador de este proyecto que necesita muchos.

Si el sr. quiere irse pues bien pero no se puede hablar de calidad de lista solo porque varias personas crean que las preguntas que se hacen no son del nivel que ellos entienden deberia de ser. Como capturaremos nuevos adeptos? Alguno aqui esta en ptra lista como debian o cualquier otro proyecto open-source? , de todas las listas en que estoy,y son muchas, Lazarus es la que tiene el menor trafico y cuando lo tiene, aunque sepa las respuesta, siempre la leo, entonces no se porque ponerla como spam solo creen un filtro y mande los correos de esta lista a una carpeta y veran si de verdad hay tanto trafico como creen.

Creo que la lista es un muy buen recurso y no debe de ser coartado por nadie la libertad de enviar la pregunta que sea solo porque se crea que no "tiene el nivel necesario" no estoy de acuerdo y nunca lo estare y si los mas capacitados en esta lista lo creen asi, como JoshyFun que creo es uno de los mas contribuyentes, pues esta lista y este proyecto estan jo... como proyecto opensource.

Solo es una simple opinion de alguien que en su momento tambien pregunto unas cuantas boberias sin nivel pero pienso en los que vienen detras, y eso que tengo bastante experiecnia en Delphi.

Mis 0.02c

*-------------------------------------------------------* *-Edwin Quijada
*-Developer DataBase
*-JQ Microsistemas

*-Soporte PostgreSQL

*-www.jqmicrosistemas.com
*-809-849-8087
*-------------------------------------------------------*

Show quoted text 59 lines
Date: Fri, 11 Dec 2009 10:45:19 +0100 From: josea en artextrading.com To: lazarus-es en lists.lazarus.freepascal.org Subject: [Lazarus-es] Calidad de mensajes en la lista No es por nada pero Raistware tiene raz�n, aunque a lo mejor no nos guste las formas. Si se contin�an enviando tantos mails la lista pasa de ser una herramienta �til a ser spam y adem�s tambi�n tiene raz�n respecto al tiempo que se tiene que dedicar en leer mensajes que no aportan nada. Por otro lado no me parece motivo de alegr�a que alguien desee darse de baja ... cuanta m�s gente mejor calidad de respuesta (supuestamente). Entiendo que todos necesitamos ayuda en alg�n momento pero es necesario dedicar un poco de tiempo a leer y buscar, se aprende mucho. Respecto a no tener internet pues no tengo problema en dar un mail privado y ayudar de manera personal o cualquier otro que lo desee pero saturar la lista con conceptos b�sicos de programaci�n no creo que sea lo mejor para todos. Espero se me tenga en cuenta como una opini�n personal y no se piense en que no deseo ayudar a mejorar el entorno del Lazarus. Un saludo a todos. franmate en gmail.com escribi�: > Gracias JoshyFun y el resto por la ayuda que brindan en esta lista, en > cuanto a Raistware, espero que tu sabidur�a te ilumine el camino en la > nueva vida. Los mortales seguiremos por aqu�. > > El d�a 11 de diciembre de 2009 08:31, Raistware <raistware en gmail.com> escribi�: > >> Definitivamente me doy de baja de la lista. >> >> Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en >> el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component >> code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las >> consultas que se estan planteando, y para el 0,01% restante, no me compensa >> el recibir tanto spam. >> >> Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo >> el tiempo en estas cosas. >> >> _______________________________________________ >> Lazarus-es mailing list >> Lazarus-es en lists.lazarus.freepascal.org >> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es >> >> > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es > _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

_________________________________________________________________

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091213/0a4ca214/attachment.html>

Reply by email

Edwin Quijada
to Raistware: Definitivamente me doy de baja de la lista. Un poquito de sentido comun y buscar…

Que le vaya bonito y aproveche su tiempo en otra cosa..

*-------------------------------------------------------* *-Edwin Quijada
*-Developer DataBase
*-JQ Microsistemas

*-Soporte PostgreSQL

*-www.jqmicrosistemas.com
*-809-849-8087
*-------------------------------------------------------*

Show quoted text 20 lines
Date: Fri, 11 Dec 2009 08:31:23 +0100 From: raistware en gmail.com To: lazarus-es en lists.lazarus.freepascal.org Subject: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Definitivamente me doy de baja de la lista. Un poquito de sentido comun y buscar documentaci�n en la web de Lazarus, en el archivo de mails de Lazarus, y en las p�ginas de Lazarus -CCR (component code repositories, si no recuerdo mal) resuelven practicamente el 99,99% las consultas que se estan planteando, y para el 0,01% restante, no me compensa el recibir tanto spam. Mis disculpas a quien le moleste este mensaje, pero no puedo estar perdiendo el tiempo en estas cosas. _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

_________________________________________________________________

------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20091213/c7d97859/attachment.html>

Reply by email

JoshyFun
to Edwin Quijada: Pues no , no estoy de acuerdo ccon el Sr. Reastware y si se quiere ir que le vaya bonito.…

Hello Edwin,

Sunday, December 13, 2009, 4:48:30 PM, you wrote:

EQ> Creo que la lista es un muy buen recurso y no debe de ser EQ> coartado por nadie la libertad de enviar la pregunta que sea solo EQ> porque se crea que no "tiene el nivel necesario" no estoy de EQ> acuerdo y nunca lo estare y si los mas capacitados en esta lista EQ> lo creen asi, como JoshyFun que creo es uno de los mas EQ> contribuyentes, pues esta lista y este proyecto estan jo... como EQ> proyecto opensource.

Quiz� no me expres� correctamente, mis palabras fueron algo as� como "la lista adolece de cierto nivel", con ello quer�a decir que en esta lista no suelen tratarse temas de alto calado en el proyecto, tal como hacer "cross-compiling", como salvar diferencias entre las plataformas, etc, pero eso no quiere decir que la lista sea in�til, si lo creyear as� no escribir�a, y me dedicar�a a plantar margaritas en una maceta :)

Best regards, JoshyFun

Reply by email

Jose Antonio Cuello
to Edwin Quijada: Pues no , no estoy de acuerdo ccon el Sr. Reastware y si se quiere ir que le vaya bonito.…

Me expres� mal o no me supe entender. Fui el primero en ofrecerme en ayudar s�lo quise indicar que "abusar" de la facilidad de preguntar a las primeras de cambio no creo que sea bueno ni para la persona (puesto que document�ndose siempre aprendes m�s cosas que la que buscas) ni para la lista ... y adem�s a�ad� que esa es una opini�n muy personal. Yo he sido el primero en preguntar y a buen seguro lo seguir� haciendo ... gracias a Lazarus y al hacedor.

Un saludo.

Edwin Quijada escribi�:

Show quoted text 53 lines
Pues no , no estoy de acuerdo ccon el Sr. Reastware y si se quiere ir que le vaya bonito. No podemos pretender querer restringir la cantidad de preguntas que se hacen aqui solo porque esten las respuesta en otro sitio. Si tomamos ese postulado como correcto ninguna lista exxistiria porque lo mas seguro todo lo que se pregunta en las listas en algun sitio en internet esta. No creo que lo que se envie aqui sea spam si son muchos correos pues no lo leas todo solo ve lo que te interesa , como se le dice a un novato completo que oyo hablar de Lazarus y se metio en este lio le contestamos con esto>? Talvez una pregunta tonta no sea contestada por los gurus de aqui pero seguro habra usuarios medios qe se sentiran orgullosos de poder contestar esa pregunta, ejemplo la pregunta de como convertir un ascci a caracter , esa podria catalogarse como pregunta tonta sin embargo miren todo el trafico que genero todo el mundo dando soluciones, eso es una lista y cuando esa persona nueva ve esa ayuda seguro no se va de la lista y se convierte en un evangelizador de este proyecto que necesita muchos. Si el sr. quiere irse pues bien pero no se puede hablar de calidad de lista solo porque varias personas crean que las preguntas que se hacen no son del nivel que ellos entienden deberia de ser. Como capturaremos nuevos adeptos? Alguno aqui esta en ptra lista como debian o cualquier otro proyecto open-source? , de todas las listas en que estoy,y son muchas, Lazarus es la que tiene el menor trafico y cuando lo tiene, aunque sepa las respuesta, siempre la leo, entonces no se porque ponerla como spam solo creen un filtro y mande los correos de esta lista a una carpeta y veran si de verdad hay tanto trafico como creen. Creo que la lista es un muy buen recurso y no debe de ser coartado por nadie la libertad de enviar la pregunta que sea solo porque se crea que no "tiene el nivel necesario" no estoy de acuerdo y nunca lo estare y si los mas capacitados en esta lista lo creen asi, como JoshyFun que creo es uno de los mas contribuyentes, pues esta lista y este proyecto estan jo... como proyecto opensource. Solo es una simple opinion de alguien que en su momento tambien pregunto unas cuantas boberias sin nivel pero pienso en los que vienen detras, y eso que tengo bastante experiecnia en Delphi. Mis 0.02c *-------------------------------------------------------* *-Edwin Quijada *-Developer DataBase *-JQ Microsistemas *-Soporte PostgreSQL *-www.jqmicrosistemas.com *-809-849-8087 *-------------------------------------------------------*

Reply by email

Horacio Jamilis
to Ismael L. Donis Garc?a: Quiero hacer algo como esto: if rsconfig.FieldByName('mesini').AsDateTime is null then…

Es m�s simple:

if rsconfig.FieldByName('mesini').IsNull then

Suerte

Horacio

El 21/12/2009 16:31, Ismael L. Donis Garc?a escribi�:

Show quoted text 36 lines
Quiero hacer algo como esto: if rsconfig.FieldByName('mesini').AsDateTime is null then Pero no encuentro la forma. GRACIAS ========= �� ISMAEL �� ========= "O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino. ----- Mensaje original ----- De: "JoshyFun"<joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: jueves, 10 de diciembre de 2009 10:20 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Hello franmate, Thursday, December 10, 2009, 4:53:59 PM, you wrote: fgc> JoshyFun: �Podr�as facilitar un link para descargar esos manuales? ( fgc> si est�n disponibles en internet ) Los ha publicado alguien hace unas semanas en la mailing de lazarus en ingl�s, pero ya no recuerdo donde estaba el mensaje, as� que los empaqueto y los subo a megaupload o algo para el que los quiera coger, pondr� el link por aqu�. Yo los uso con el lhelp integrado de lazarus como "help local" de modo que no hay que abrir el navegador para buscar ayuda contextual.

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Quiero hacer algo como esto:

if rsconfig.FieldByName('mesini').AsDateTime is null then

Pero no encuentro la forma.

GRACIAS
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 27 lines
----- Mensaje original ----- De: "JoshyFun" <joshyfun en gmail.com> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: jueves, 10 de diciembre de 2009 10:20 Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena Hello franmate, Thursday, December 10, 2009, 4:53:59 PM, you wrote: fgc> JoshyFun: �Podr�as facilitar un link para descargar esos manuales? ( fgc> si est�n disponibles en internet ) Los ha publicado alguien hace unas semanas en la mailing de lazarus en ingl�s, pero ya no recuerdo donde estaba el mensaje, as� que los empaqueto y los subo a megaupload o algo para el que los quiera coger, pondr� el link por aqu�. Yo los uso con el lhelp integrado de lazarus como "help local" de modo que no hay que abrir el navegador para buscar ayuda contextual. -- Best regards, JoshyFun

Reply by email

Ismael L. Donis Garc?a
to Ismael L. Donis García: No por nada. Eso le pasa a todos, incluso en m�s de una ocasi�n. Por casualidad nadie…

Gracias reiteradas.
=========
�� ISMAEL ��
=========
"O�r o leer sin reflexionar es una ocupaci�n in�til". Confucio (551-479 a. C.); fil�sofo chino.

Earlier message 55 lines
----- Mensaje original ----- De: "Horacio Jamilis" <hjamilis en pymesoft.com.ar> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviado: lunes, 21 de diciembre de 2009 12:54 Asunto: Re: [Lazarus-es] Como saber si el valor de un campo fecha no esnulo. Es m�s simple: if rsconfig.FieldByName('mesini').IsNull then Suerte Horacio El 21/12/2009 16:31, Ismael L. Donis Garc?a escribi�: > Quiero hacer algo como esto: > > if rsconfig.FieldByName('mesini').AsDateTime is null then > > Pero no encuentro la forma. > > GRACIAS > ========= > �� ISMAEL �� > ========= > "O�r o leer sin reflexionar es una ocupaci�n in�til". > Confucio (551-479 a. C.); fil�sofo chino. > > ----- Mensaje original ----- > De: "JoshyFun"<joshyfun en gmail.com> > Para: "Spanish version of Lazarus List" > <lazarus-es en lists.lazarus.freepascal.org> > Enviado: jueves, 10 de diciembre de 2009 10:20 > Asunto: Re: [Lazarus-es] Funci?n para convertir n?mero a cadena > > > Hello franmate, > > Thursday, December 10, 2009, 4:53:59 PM, you wrote: > > fgc> JoshyFun: �Podr�as facilitar un link para descargar esos manuales? ( > fgc> si est�n disponibles en internet ) > > Los ha publicado alguien hace unas semanas en la mailing de lazarus en > ingl�s, pero ya no recuerdo donde estaba el mensaje, as� que los > empaqueto y los subo a megaupload o algo para el que los quiera coger, > pondr� el link por aqu�. Yo los uso con el lhelp integrado de lazarus > como "help local" de modo que no hay que abrir el navegador para > buscar ayuda contextual. > >

Reply by email