Re: [Lazarus] Curved text

2008-12-02 Thread Mattias Gärtner
Zitat von Michael Van Canneyt [EMAIL PROTECTED]:


 Hi,

 Does anyone by any chance have a routine to draw curved text ?

aggpas has. I didn't use it yet with fpimage.


Mattias

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


[Lazarus] multiloglcl does not compile in latest svn

2008-12-02 Thread cc_
As the subject sais ...

Regards,
Leslie___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Curved text

2008-12-02 Thread Michael Van Canneyt


On Tue, 2 Dec 2008, Mattias Gärtner wrote:

 Zitat von Michael Van Canneyt [EMAIL PROTECTED]:
 
 
  Hi,
 
  Does anyone by any chance have a routine to draw curved text ?
 
 aggpas has. I didn't use it yet with fpimage.

Aha. Thanks for the hint, I'll have a look.

Michael.___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


[Lazarus] SQLite database schema has changed

2008-12-02 Thread Andrea Mauri
Dear All,
I have a question regarding SQLite.
I got an error: 'database schema has changed' when I run the following 
code (code 1)  (when I execute the second Insert Query).
If I run the code 2 I don't get the error and the program works fine.
This always happens when I create a Table, then I create a query with 
parameters, then I create another table and then I run the query.
Otherwise (code 2) if I create a table, then I create and run the query 
as a statement without parameters, then I create another table and then 
run the same insert query statement without parameter I don't get the error.
Is it a bug or something related to SQLite? (Same situation, same 
queries and table I don't get any error using Firebird).
Thanks,
Andrea

code1:

  if FileExists('e:\temp\prova.db') then
DeleteFile('e:\temp\prova.db');
  SQLite3Connection1.DatabaseName:= 'e:\temp\prova.db';
  SQLite3Connection1.ExecuteDirect('create table T1 (ID integer not 
null, NOME varchar(200))');
  sqlquery1.SQL.Text:= 'insert into T1 (ID, NOME) values (:ID, :NOME)';
  SQLQuery1.Params.ParamByName('ID').AsInteger:= 1;
  SQLQuery1.Params.ParamByName('NOME').AsString:= 'Andrea';
  SQLQuery1.ExecSQL;
 
 SQLite3Connection1.ExecuteDirect('create table T2 (ID integer not null, 
COGNOME varchar(200))');

  SQLQuery1.Params.ParamByName('ID').AsInteger:= 2;
  SQLQuery1.Params.ParamByName('NOME').AsString:= 'Marco';
  SQLQuery1.ExecSQL;
  SQLTransaction1.CommitRetaining;


code 2:

  if FileExists('e:\temp\prova.db') then
DeleteFile('e:\temp\prova.db');
  SQLite3Connection1.DatabaseName:= 'e:\temp\prova.db';
  SQLite3Connection1.ExecuteDirect('create table T1 (ID integer not 
null, NOME varchar(200))');
  sqlquery1.SQL.Text:= 'insert into T1 (ID, NOME) values (1, ''Andrea'')';
  SQLQuery1.ExecSQL;

  SQLite3Connection1.ExecuteDirect('create table T2 (ID integer not 
null, COGNOME varchar(200))');

  sqlquery1.SQL.Text:= 'insert into T1 (ID, NOME) values (2, ''Pippo'')';
  SQLQuery1.ExecSQL;
  SQLTransaction1.CommitRetaining;




-- 
Dr. Andrea Mauri, PhD
Milano Chemometrics and QSAR Research Group
Department of Environmental Sciences
University of Milano-Bicocca 
P.zza della Scienza, 1
20126 Milano - Italy

Tel: ++39 02 64482801
mailto:[EMAIL PROTECTED]
http://michem.disat.unimib.it/chm/ 

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] MYSQL setup

2008-12-02 Thread Joost van der Sluis
Op dinsdag 02-12-2008 om 20:17 uur [tijdzone +1030], schreef Eric March:
 I am guessing the SQLTransaction1 needs to be set to TRUE before I
 can 
 set the SQLQuery1 properties.  I get (and expected) an error on
 SQLQuery1.

But you expected another error, that's why you dind't read it well. (Or
it's too cryptic)

 SQLQuery1 properties:
 Active = False  True gives error = Transaction of connection not
 set (Expected)

The connection also has a 'transaction' property. You haven't set that
one. In principle this isn't necessary if you set ParseSQL to false, ie:
make it readonly. But that's a different story.

That you can't make a transaction active is because MySQL don't support
transactions. But SQLDB enforce you to use them anyway. They are
useless, but they have to be there.

Joost.



___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Disabling scrollbars

2008-12-02 Thread Felipe Monteiro de Carvalho
I think I found a bug report about this:

http://bugs.freepascal.org/view.php?id=11991

Anyone has hints about the cause? I will investigate this today

-- 
Felipe Monteiro de Carvalho
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Disabling scrollbars

2008-12-02 Thread Felipe Monteiro de Carvalho
On Tue, Dec 2, 2008 at 5:17 AM, Vincent Snijders
[EMAIL PROTECTED] wrote:
 Maybe AutoScroll := false; ?

That was the first thing I tryed. It doesn't work for wince and
doesn't work for carbon.

But it works in Delphi 7, so I have found a bug.

-- 
Felipe Monteiro de Carvalho
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] SQLConnector

2008-12-02 Thread Andrea Mauri
Joost van der Sluis ha scritto:
 Op maandag 01-12-2008 om 16:48 uur [tijdzone +0100], schreef Andrea
 Mauri:
   
 where I can find information about how to use the SQLConnector 
 component? Is it a general object that can be used to connect to 
 different database types (SQLlite, Firebird, MySQL...)?
 

 That's the idea.

   
 I saw the property ConnectorType (string), how can I set it? Is 
 TSQLConnector already usable?
 

 You could try, but if I'm correct there are some fundamental flaws in
 it's design.

 If you need a generic way to connect to several types of databases, just
 use simple code like this:

 var AConn : TSQLConnection;

 begin
   case DBType of
 typeFirebird : Aconn := TSQLIBConnection.Create;
 typeMysql40  : AConn := TMysql40Conn.Create;
 etc..

   
Thanks a lot. I will try it.
Andrea

 Joost.

 ___
 Lazarus mailing list
 Lazarus@lazarus.freepascal.org
 http://www.lazarus.freepascal.org/mailman/listinfo/lazarus

   

-- 
Dr. Andrea Mauri, PhD
Milano Chemometrics and QSAR Research Group
Department of Environmental Sciences
University of Milano-Bicocca 
P.zza della Scienza, 1
20126 Milano - Italy

Tel: ++39 02 64482801
mailto:[EMAIL PROTECTED]
http://michem.disat.unimib.it/chm/ 

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] SQLite database schema has changed

2008-12-02 Thread Andrea Mauri
Thanks Joost.

Joost van der Sluis ha scritto:
 Op dinsdag 02-12-2008 om 12:47 uur [tijdzone +0100], schreef Andrea
 Mauri:
   
 Dear All,
 I have a question regarding SQLite.
 I got an error: 'database schema has changed' when I run the following 
 code (code 1)  (when I execute the second Insert Query).
 

   
 code1:

   if FileExists('e:\temp\prova.db') then
 DeleteFile('e:\temp\prova.db');
   SQLite3Connection1.DatabaseName:= 'e:\temp\prova.db';
   SQLite3Connection1.ExecuteDirect('create table T1 (ID integer not 
 null, NOME varchar(200))');
   sqlquery1.SQL.Text:= 'insert into T1 (ID, NOME) values (:ID, :NOME)';
   SQLQuery1.Params.ParamByName('ID').AsInteger:= 1;
   SQLQuery1.Params.ParamByName('NOME').AsString:= 'Andrea';
   SQLQuery1.ExecSQL;
 

 Here you implecitely prepare the query before it gets executed. This is
 done so that if you run the query again, it's execution will be faster.
 One of the advantages of using parameters.
  
   
  SQLite3Connection1.ExecuteDirect('create table T2 (ID integer not null, 
 COGNOME varchar(200))');
 

 But here you change the definition of the database. Thereafter the
 preparation of the query is not valid anymore. Call sqlquery.unprepare
 to solve the problem.
 Apparently Firebird doesn't mind the change in the definition, because
 it is on a different table. It looks like it that sqlite can not handle
 that.

   
   SQLQuery1.Params.ParamByName('ID').AsInteger:= 2;
   SQLQuery1.Params.ParamByName('NOME').AsString:= 'Marco';
   SQLQuery1.ExecSQL;
   SQLTransaction1.CommitRetaining;
 

 This could be fixed by automatically unpreparing all statements when a
 ddl-statement (create, drop,...) is executed in sqlite. But I prefer not
 to do that, so that you have to do that manually.

 Joost.

 ___
 Lazarus mailing list
 Lazarus@lazarus.freepascal.org
 http://www.lazarus.freepascal.org/mailman/listinfo/lazarus

   

-- 
Dr. Andrea Mauri, PhD
Milano Chemometrics and QSAR Research Group
Department of Environmental Sciences
University of Milano-Bicocca 
P.zza della Scienza, 1
20126 Milano - Italy

Tel: ++39 02 64482801
mailto:[EMAIL PROTECTED]
http://michem.disat.unimib.it/chm/ 

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Disabling scrollbars

2008-12-02 Thread Felipe Monteiro de Carvalho
I think I have found a fix. In TScrollingWinControl.AlignControls

Index: lcl/include/scrollingwincontrol.inc
===
--- lcl/include/scrollingwincontrol.inc (revision 17661)
+++ lcl/include/scrollingwincontrol.inc (working copy)
@@ -62,7 +62,7 @@
   inherited AlignControls(AControl, ARect);
   HorzScrollBar.AutoCalcRange;
   VertScrollBar.AutoCalcRange;
-  if not AutoScroll then
+  if AutoScroll then
 UpdateScrollBars;
 end;

What do you think about the solution? It seams to work in carbon.

From my point of view the older code is wrong because updating the
scrollbars upon control realignment is a behavior of autoscroll.

It would be great if someone with greater knowledge about scrolling
could take a look at this.

-- 
Felipe Monteiro de Carvalho
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread Mattias Gärtner
Zitat von Luca Olivetti [EMAIL PROTECTED]:

 En/na Mattias Gaertner ha escrit:
  On Mon, 01 Dec 2008 14:45:55 +0100
  Luca Olivetti [EMAIL PROTECTED] wrote:
 
  En/na Mattias Gaertner ha escrit:
 
  ;)
  Actually lazarus knows the paths to the packages inside the lazarus
  sources, because they have packager/globallinks/*.lpl files.
  When you setup a second config directory it needs to know the
  outside packages.
  Well, when I switched from svn to 0.9.28, and built it with lazbuild,
  I ended up with components and the lcl from svn instead of 0.9.28.
 
  This happens when you use only one config directory instead of two.

 Well, yes, but had I used a different config directory I would have had
 to manually reinstall the components.

Yes. Two lazarus means more work. And less than twice the work.


 Besides, while switching from svn to a release isn't so common,
 upgrading from one version to the next is.

The installation packages install Lazarus always in the same location. There was
no need yet to auto update paths.
Can you explain what the problem is when upgrading?


Mattias

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] MYSQL setup

2008-12-02 Thread Eric March




Joost van der Sluis wrote:

  Op maandag 01-12-2008 om 16:45 uur [tijdzone +1030], schreef Eric March:
  
  
Tom Lisjac wrote: 


  Hi Eric,

  
  
  
I have followed source advice but can't connect.
Can anyone help and/or is there a manual?


  

  
  
Error: invalid compiler: file
There must be something in my source looking for a compiler in the wrong
place :-(


  
  The errors you're getting in the tutorial example are from some hard
coded paths in the database_try.lpi project file. It's not a problem
with your system. Since Lazarus has changed since the example was
written, it might be easier to start your project with the sqldb
components.

To install sqldb, go to "Package-Open package file", select and
install the lazarus/components/sqldb/sqldblaz.lpk package. After
Lazarus recompiles, you should see a "SQLdb" tab. Drop a Mysql50
(TMySQL50Connection) on a new form. In the object inspector for this
component, enter the hostname (probably localhost), a database (test
or mysql as an example or a database you've already created) and the
username and password for the database or the "root" you set when
installing mysql. At this point, establishing a successful mysql
connection is being able to set the Connected property to true without
an error.

  
  

Thanks heaps for the help.  I Get this far and changing "Connected" to
"True" 
gives the error
"Cannot load MySQL library "libmysqlclient.so. Please check your
installation."

  
  
Maybe we have to improve that error-message even further. You have to
install MySQL to be able to work with it.

So install the mysql-client before you can use it.

On linux it could be that you also have to install the '-dev' package.

Joost

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
  

Thank you all for your patience. I installed the MYSQL Library 
and now can set MySQL50Connection1 to true without an error.
I tested it by entering an invalid database name in the properties 
(contact instead of contacts) and got an expected error. I then 
placed SQLTransaction1 and SQLQuery1 on the form. I presume 
I need to set the properties on SQLTransaction1 before I set 
properties on SQLQuery1. Soo, the situation is 


MySQL50Connection1 properties:
CharSet = blank
Connected = True
DatabaseName = contacts
Dialect = 0
Hostname = localhost
KeepConnection = True
LoginPrompt = False
Name = MySQL50Connection1
Params = (TStrings) = empty
Password = blank
Role = blank
Streamedconnected = True
Tag = 0
*Transaction = blank
UserName = root

*I can change Transaction property to SQLTransaction1 but doesn't make
any difference.



SQLTransaction1 properties:
Action = "">
Active = False (Won't change to true, but does not return any error
when attempted)
 If I blank out the Database property and attempt Active = True 
 get an error Database not assigned.
Database = MySQL50Connection1 (The only drop down option as expected)
Params = (TStringList) which is empty
Tag = 0



I am guessing the SQLTransaction1 needs to be set to TRUE before I can 
set the SQLQuery1 properties. I get (and expected) an error on
SQLQuery1.

SQLQuery1 properties:
Active = False "True" gives error = "Transaction of connection not
set" (Expected)
Database = MySQL50Connection1
DataSource = (blank)
..
..
SQL = select * from people (A table in the contacts db)
StatementType = stSelect
Tag = 0
Transaction = SQLTransaction1

Also, MYSQL details below, in case it helps.

mysql \s
--
mysql Ver 14.12 Distrib 5.0.51a, for debian-linux-gnu (x86_64) using
readline 5.2

Connection id:  98
Current database: contacts
Current user:  [EMAIL PROTECTED]
SSL:   Not in use
Current pager:  stdout
Using outfile:  ''
Using delimiter: ;
Server version:  5.0.51a-3ubuntu5.3 (Ubuntu)
Protocol version: 10
Connection:  Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket:  /var/run/mysqld/mysqld.sock
Uptime:   2 days 38 min 8 sec

Threads: 5 Questions: 10934 Slow queries: 0 Opens: 245 Flush
tables: 1 Open tables: 64 Queries per second avg: 0.062
--

mysql 


TIA
Eric March




___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


[Lazarus] Curved text

2008-12-02 Thread Michael Van Canneyt

Hi,

Does anyone by any chance have a routine to draw curved text ?

Michael.
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Curved text

2008-12-02 Thread Graeme Geldenhuys
2008/12/2 Michael Van Canneyt [EMAIL PROTECTED]:
 aggpas has. I didn't use it yet with fpimage.

 Aha. Thanks for the hint, I'll have a look.

Yes, when in doubt about Graphics and Pascal, look at AggPas. It's a
brilliant graphics framework with very impressive features. The demos
are also very impressive. I've always been interested in creating a
fpGUI backend using AggPas - but there's that old finding the time
issue again. ;-) Maybe I'll delegate the job to clone number 12. And
who said human cloning wouldn't have it's perks! :-)


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread Luca Olivetti
En/na Mattias Gärtner ha escrit:

 The installation packages install Lazarus always in the same location. There 
 was
 no need yet to auto update paths.
 Can you explain what the problem is when upgrading?

To have the extra packages/components installed in the previous version 
available in the new one.
Hey, I already know how to do that by editing the configuration files, 
it's you that's saying that it shouldn't be necessary ;-)

Bye
-- 
Luca Olivetti
Wetron Automatización S.A. http://www.wetron.es/
Tel. +34 93 5883004  Fax +34 93 5883007
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread Hans-Peter Diettrich
Mattias Gaertner schrieb:

 http://wiki.lazarus.freepascal.org/index.php/Getting_Lazarus
 
 This page should be renamed to something like how to get the
 development sources of lazarus. And the other hints should be moved to
 the installation page:
 http://wiki.lazarus.freepascal.org/Installing_Lazarus
 
 There the compilation of the IDE is described.

Thanks, this page seems to match my needs better :-)

In detail the USB drive instructions look very interesting, for having 
Lazarus installed in both the release and trunk versions.

Nonetheless I wonder:

- When I want to have multiple Lazarus installations on the same 
machine, why can't that be done from an existing Lazarus installation? 
Lazarus already can rebuild itself, to include required packages. What 
would be required to use that existing feature to rebuild Lazarus after 
changes to the Lazarus source code? [I already have 2 Lazarus icons on 
my desktop, one for the naked (distributed) version, and one for the 
rebuilt one.]

- Similar for applications, developed with fpc/Lazarus. When I e.g. work 
on PasDoc, I want to have both the official and trunk/branch versions 
available, for reference purposes. I'm absolutely lost (on Linux), how 
the test suites find their corresponding program file.

- Why is a Lazarus installation so different from the installation of 
Windows applications, conforming to the Windows guidelines? The proper 
use of the defined application and user directories would allow for 
multiple (common or user-specific) installations, and more. Please note 
that I understand the advantages of an installation that bypasses common 
Windows policies, but many users would be happy with a standard 
installation, as appropriate for every OS (not only for Windows).

- I'm missing a GUI tool for managing the Lazarus installation(s). The 
intended audience certainly are GUI people, not command line freaks!
I understand that such a tool must be platform specific, to some degree, 
but it might be easier to provide such tools, instead of writing 
detailed command line procedures for the different platforms. If 
somebodey can provide a platform independent skeleton for such a tool, 
I'm willing to add the Windows specific part to it.

DoDi

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread Felipe Monteiro de Carvalho
On Tue, Dec 2, 2008 at 1:29 PM, Hans-Peter Diettrich
[EMAIL PROTECTED] wrote:
 - When I want to have multiple Lazarus installations on the same
 machine

Read this:

http://wiki.lazarus.freepascal.org/Multiple_Lazarus

 - Why is a Lazarus installation so different from the installation of
 Windows applications, conforming to the Windows guidelines?

Why do you think that Lazarus doesn't conform to Windows guidelines?
Can you show a concrete guideline it is breaking?

The only thing I see is that multiple versions share the same
configuration file, but I don't know if this is against any guideline.

Maybe the default configuration directory should contain the lazarus
version in it.

-- 
Felipe Monteiro de Carvalho
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread JoshyFun
Hello Felipe,

Tuesday, December 2, 2008, 5:17:23 PM, you wrote:

FMdC Maybe the default configuration directory should contain the lazarus
FMdC version in it.

I think (as proposed long time ago) that at least in windows (I'm
not used to *nix styles) should ask at some point in the installation
procedure to use the user configuration folder (default) or a
different one, as new releases or trunk version may kill older config
files due changes in the behavior.

-- 
Best regards,
 JoshyFun

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


[Lazarus] real user name

2008-12-02 Thread Andrea Mauri
Hi,
there is a way in order to get the real name of a linux/windows user?
In order to get the login name (linux) I used:
  Result.Name:= GetEnvironmentVariable('USERNAME');
  if Result.Name = '' then
Result.Name:= GetEnvironmentVariable('USER');

I know that in linux I can use libc (getpwuid(fpgetuid)^.pw_gecos) but I 
am trying to avoid use of libc.
Any suggestion?
Andrea
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread JoshyFun
Hello Vincent,

Tuesday, December 2, 2008, 9:28:55 PM, you wrote:

VS JoshyFun schreef:
 different one, as new releases or trunk version may kill older config
 files due changes in the behavior.
 
VS This rather unlikely, because newer Lazarus versions can read older
VS config files.

No, the other way... I'm using in example 0.9.24, and install 0.9.25
in order to test it and evaluate if an upgrade is interesting. Once
installed I run it but some things do not work as expected with my
code so I must still work with 0.9.24 meanwhile I do not fix my
problems to run in 0.9.25, but... Ooops, 0.9.24 is not working as
expected anymore, even the project do not load in 0.9.24 (fortunatly I
backup it before test it with new release), finally I get 0.9.24
working again but installed 0.9.26 and again, same story (you know,
human, the same stone two time...). Finally I found the
--primary-config-path setting and everything is solved for me, but it
does not look as a safe mode, at least from my POV.

-- 
Best regards,
 JoshyFun

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] MYSQL setup

2008-12-02 Thread Eric March




Joost van der Sluis wrote:

  Op dinsdag 02-12-2008 om 20:17 uur [tijdzone +1030], schreef Eric March:
  
  
I am guessing the SQLTransaction1 needs to be set to TRUE before I
can 
set the SQLQuery1 properties.  I get (and expected) an error on
SQLQuery1.

  
  
But you expected another error, that's why you dind't read it well. (Or
it's too cryptic)
  

Aha!
It was way back in MySQL50Connection1 where I had the problem.

  
SQLQuery1 properties:
Active = False  "True" gives error = "Transaction of connection not
set" (Expected)

  
  
The connection also has a 'transaction' property. You haven't set that
one. In principle this isn't necessary if you set ParseSQL to false, ie:
make it readonly. But that's a different story.

That you can't make a transaction active is because MySQL don't support
transactions. But SQLDB enforce you to use them anyway. They are
useless, but they have to be there.

Joost.


  

I have set the connection in MySQL50Connection1to SQLTransaction1
As you point out I still can't set the transaction to True, so I leave
it False.

Now when I set SQLQuery1 to True I get an error
".e...e" is an invalid float

  
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
  

I used to use ADO in Delphi 6, and I don't have enough 
knowledge to follow the help I am being given. Sorry!

on 21/11/08 Tom Lisjac said the steps were:
1 Open a new form .
Drop a Mysql50
(TMySQL50Connection) on a new form. In the object inspector for this
component, enter the hostname (probably localhost), a database (test
or mysql as an example or a database you've already created) and the
username and password for the database or the "root" you set when
installing mysql. At this point, establishing a successful mysql
connection is being able to set the Connected property to true without
an error.

2. Add Transaction and query
The next step is to add TSQLTransaction and TSQLQuery (a TDataset
descendent) to your form and point them to TMySQL50Connection.
TSQLQuery is used to pass DDL or DML sql statements to the database
and return DML result sets. Put your sql statements in the SQL
stringlist and use the ExecSQL method to execute DDL statements or the
open method to return a DML result set. Adding a TDatasource to the
form and pointing it at the TSQLQuery will allow you to use the data
aware components to display the query results.


3. Use the ExecSQL method.
I have added the TDatasource with DataSet property = SQLQuery1.
I don't know where I use the "ExecSQL" method. Should this be on a
button?



I am still at step 2 but don't understand step 3. I can see more 
difficulties looming. Am I following the best path to learn db 
applications in Lazarus?

Thanks
Eric March





___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] SQLite database schema has changed

2008-12-02 Thread Luiz Americo Pereira Camara
Andrea Mauri escreveu:
 Dear All,
 I have a question regarding SQLite.
 I got an error: 'database schema has changed' when I run the following 
 code (code 1)  (when I execute the second Insert Query).
 If I run the code 2 I don't get the error and the program works fine.
 This always happens when I create a Table, then I create a query with 
 parameters, then I create another table and then I run the query.
 Otherwise (code 2) if I create a table, then I create and run the query 
 as a statement without parameters, then I create another table and then 
 run the same insert query statement without parameter I don't get the error.
 Is it a bug or something related to SQLite? (Same situation, same 
 queries and table I don't get any error using Firebird).
 Thanks,
 Andrea

Try to use the function sqlite3_enable_shared_cache with true as 
parameter in the start of your application.

The function declaration:

function sqlite3_enable_shared_cache(Enable: Boolean): LongInt; cdecl; 
external 'sqlite3';

Luiz
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] multiloglcl does not compile in latest svn

2008-12-02 Thread Luiz Americo Pereira Camara
[EMAIL PROTECTED] escreveu:
 As the subject sais ...
  

Try the latest multilog: 
http://code.google.com/p/luipack/source/browse/#svn/trunk/multilog

Luiz
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread Hans-Peter Diettrich
Felipe Monteiro de Carvalho schrieb:

 - Why is a Lazarus installation so different from the installation of
 Windows applications, conforming to the Windows guidelines?
 
 Why do you think that Lazarus doesn't conform to Windows guidelines?

Executable files should reside in the Programs directory (read-only), 
Data in the AppData and UserData directories. Settings should reside in 
the registry.

Not that I (personally) like that separation, but it will make sense to 
administrators.

 Can you show a concrete guideline it is breaking?

Good point - no, I can't just now, most MSDN entries address .NET.

 The only thing I see is that multiple versions share the same
 configuration file, but I don't know if this is against any guideline.
 
 Maybe the default configuration directory should contain the lazarus
 version in it.

I'll try to figure out a viable solution, when I really start working 
with multiple Lazarus versions myself.

DoDi

___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


[Lazarus] Data-aware calendar

2008-12-02 Thread Charl van Jaarsveldt
I would like to use a data aware calendar in my program, but TDBCalendar
seems like it only comes as a big full-s-ze  calendar. I would like
something like the textfield with a calendar button that is data aware. Am I
missing something or does it not exist?

Charl

-- 
See first, think later, then test. But always see first. Otherwise you will
only see what you were expecting. Most scientists forget that. - Douglas
Adams
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] TDataset TDatasource

2008-12-02 Thread Luiz Americo Pereira Camara
Charl van Jaarsveldt escreveu:
 Hi All,
 I have never really gotten into working with the datasets and 
 datasources with Delphi or Lazarus. Can someone perhaps point me to 
 some good online documentation/tutorial (or write a quick summary of 
 you feel like it :-)  ) that can help me get on with this? I have the 
 basics down, in other words, I have a program that can read/write 
 stuff to an sqlite database. I am getting a little confused though 
 when I start thinking about some design considerations. What exactly 
 is the relationship between the TDataset and TDatasource? 

I would recommend to read the Delphi help files about those classes

 Should you have a separate TSQLiteDataset for each use of a table? 

It's not necessary, one TSqliteDataset can have data from more than one 
table or even data from views or joins or whatever SQL allows, but it's 
a recommended approach for those starting with  TDataset/TSqliteDataset.

 (I think I need to implement an onscroll event, but only for one 
 frame.) Any help would be appreciated.

I would recommend using TSqlite3Dataset (sqlite3) instead of 
TSqliteDataset (sqlite2).

Some docs are here: http://www.geocities.com/camara_luiz/documentation.html

Luiz
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] real user name

2008-12-02 Thread Graeme Geldenhuys
On Tue, Dec 2, 2008 at 11:02 PM, Andrea Mauri [EMAIL PROTECTED] wrote:

 there is a way in order to get the real name of a linux/windows user?
 In order to get the login name (linux) I used:
  Result.Name:= GetEnvironmentVariable('USERNAME');
  if Result.Name = '' then
Result.Name:= GetEnvironmentVariable('USER');

That is exactly how we have been using it as well - for the last 4
years. No issues so far.


Regards,
  - Graeme -


___
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus


Re: [Lazarus] Where does Lazarus store/look for global settings/options?

2008-12-02 Thread Luca Olivetti
En/na Felipe Monteiro de Carvalho ha escrit:

 Why do you think that Lazarus doesn't conform to Windows guidelines?
 Can you show a concrete guideline it is breaking?

Not strictly a lazarus problem (it's an fpc one), but for user 
preferences it should use CSIDL_APPDATA, not CSIDL_LOCAL_APPDATA.
At least all other programs I know puts their preferences there.

Bye
-- 
Luca Olivetti
Wetron Automatización S.A. http://www.wetron.es/
Tel. +34 93 5883004  Fax +34 93 5883007
___
Lazarus mailing list
Lazarus@lazarus.freepascal.org
http://www.lazarus.freepascal.org/mailman/listinfo/lazarus