Aufzählung trennen
Hi zusammen
Ich hab folgende Aufzählungs-Typen:
Delphi-Quellcode:
Das funktioniert so nicht. Die Bezeichner der ursprünglichen Typen sind wesentlich kürzer, so dass diese Deklarationen immer eine Zeile beanspruchten und so das Problem nicht auftrat.
TTableEnum =(CreateTblStrassen, CreateTblOrt, CreateTblAdressen, CreateTblUser)+
(CreateTblFile, CreateTblAuthor, CreateTblDocuments); TIndexEnum = (CreateIndexTblAdressen_TblOrt, CreateIndexTblAdressen_TblStrassen, CreateIndexTblUser_TblAdressen, + CreateIndexTblAuthor_TblUser, CreateIndexTblFile_TblDocuments, CreateIndexTblDocuments_TblAuthor); Andrerseits werden die verwendeten Bezeichner gleichzeitig als Prozedurbezeichner verwendet und können deshalb nicht anders als diese geschrieben werden. Als Beispiel:
Delphi-Quellcode:
Execute ruft die jeweiligen Methoden zur Tabellenerzeugung auf (Parameter ASQL):
for i := Low(TTableEnum) to High(TTableEnum) do
begin case TTableEnum of 1: ExecuteSQL(TblDocuments); 2: ExecuteSQL(TblAuthor); 3: ExecuteSQL(TblFile); 4: ExecuteSQL(TblUser); 5: etc... end; end;
Delphi-Quellcode:
Gruss
function TDMLSQLite.ExecuteSQL(ASQL : String) : Boolean;
var ReportList: TStringlist; begin ReportList := TStringlist.Create; try try FDSQLiteConnection.ExecSQL(ASQL); FDSQLiteConnection.GetInfoReport(ReportList); Delbor |
AW: Aufzählung trennen
Etwa so?
Delphi-Quellcode:
Warum hast Du bei der ersten Deklaration vor und hinter dem + schließende und öffnende Klammern, bei der zweiten aber nicht?
TIndexEnum = (CreateIndexTblAdressen_TblOrt, CreateIndexTblAdressen_TblStrassen)
+ (CreateIndexTblUser_TblAdressen, CreateIndexTblAuthor_TblUser, CreateIndexTblFile_TblDocuments) + (CreateIndexTblDocuments_TblAuthor); Wobei ich mich frage, warum überhaupt mit +?
Delphi-Quellcode:
Und: Warum müssen Aufzählungstypen in einer Zeile deklariert werden?
TTableEnum = (CreateTblStrassen, CreateTblOrt, CreateTblAdressen, CreateTblUser,
CreateTblFile, CreateTblAuthor, CreateTblDocuments); TIndexEnum = (CreateIndexTblAdressen_TblOrt, CreateIndexTblAdressen_TblStrassen, CreateIndexTblUser_TblAdressen, CreateIndexTblAuthor_TblUser, CreateIndexTblFile_TblDocuments, CreateIndexTblDocuments_TblAuthor);
Delphi-Quellcode:
Syntaktisch sollte das alles funktionieren, optisch mag's durchaus ein Graus sein ;-)
TTableEnum = (
CreateTblStrassen, CreateTblOrt, CreateTblAdressen, CreateTblUser, CreateTblFile, CreateTblAuthor, CreateTblDocuments ); TIndexEnum = ( CreateIndexTblAdressen_TblOrt, // und hier CreateIndexTblAdressen_TblStrassen, (* können jetzt auch noch *) CreateIndexTblUser_TblAdressen, // beliebig viele Kommentare CreateIndexTblAuthor_TblUser, { und oder Leerzeilen, Leerzeichen zwischen stehen } CreateIndexTblFile_TblDocuments , CreateIndexTblDocuments_TblAuthor ); |
AW: Aufzählung trennen
Hi Delphi.Narium
Zitat:
Zitat:
Wobei ich mich frage, warum überhaupt mit +?
Delphi-Quellcode:
Das funktioniert so einwandfrei.
TTableEnum = (CreateTblStrassen, CreateTblOrt, CreateTblAdressen, CreateTblUser,
CreateTblFile, CreateTblAuthor, CreateTblDocuments); TIndexEnum = (CreateIndexTblAdressen_TblOrt, CreateIndexTblAdressen_TblStrassen, CreateIndexTblUser_TblAdressen, CreateIndexTblAuthor_TblUser, CreateIndexTblFile_TblDocuments, CreateIndexTblDocuments_TblAuthor); Zitat:
Delphi-Quellcode:
Dies hier gefällt mir eigentlich gut und ist mE ausserhalb von Implementation und anderen Deklarationen sehr OK - innerhalb von Implementation ist möglichst grosse Übersicht fast wichtiger
TTableEnum = (
CreateTblStrassen, CreateTblOrt, CreateTblAdressen, CreateTblUser, CreateTblFile, CreateTblAuthor, CreateTblDocuments );
Delphi-Quellcode:
Syntaktisch sollte das alles funktionieren, optisch mag's durchaus ein Graus sein ;-)[/QUOTE]
TIndexEnum = (
CreateIndexTblAdressen_TblOrt, // und hier CreateIndexTblAdressen_TblStrassen, (* können jetzt auch noch *) CreateIndexTblUser_TblAdressen, // beliebig viele Kommentare CreateIndexTblAuthor_TblUser, { und oder Leerzeilen, Leerzeichen zwischen stehen } CreateIndexTblFile_TblDocuments , CreateIndexTblDocuments_TblAuthor ); Mehrzeilige Kommentare haben eigene Zeilen, beginnen meist mit dem Code, ausser wenn dieser Eingerückt ist. Kurze Kommentare sind - mit Abstand/ab rechtem Rand - oft Anhängsel von Codezeilen. Gruss Delbor |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz