Page 1 of 1

Installing the Zeos 7.2 in Delphi XE6

Posted: 23.04.2014, 05:51
by dieletro
I'll Show Changes to be made ​​to the Compile Zeos in Delphi XE6

I made the following changes: :arrow:
  • 1 - In the Packages folder, copy the folder and paste DelphiXE5 with a name DelphiXE6

    2 - DelphiXE6 access the folder and open the file ZeosDbo.groupproj

    3 -Change

    Code: Select all

     {$LIBSUFFIX  '190 '}
    • changed of all the packages for

      Code: Select all

      {$LIBSUFFIX '200'}
If anyone is interested in picking up the files have changed al follows:

4 - Also include the following compiler directive in file Zeos.inc:
  • Code: Select all

    { $IFDEF VER270 } / / Compilation directives for Delphi XE6 - By dieletro
      { $DEFINE VER200BELOW } / / Used in code
      { $DEFINE DELPHI12_UP } / / Used in code
      { $DEFINE DELPHI14_UP } / / Egonhugeist used in my code
      { $DEFINE DELPHI15_UP } / / Used only in zeos.inc
      { $DEFINE DELPHI16_UP } / / Used in code
      { $DEFINE DELPHI17_UP } / / Used in code
      { $DEFINE DELPHI18_UP } / / Used in code
      { $DEFINE DELPHI19_UP}
      { $DEFINE DELPHI20_UP} //Delphi XE6 //By dieletro
      { $DEFINE BDS4_UP } / / Used in code
      { $DEFINE BDS5_UP } / / Used in code
    { $ENDIF }
    
5 - On the File ZAbstractRODataset.pas, file located in src / component folder. Include inside the
-- procedure TZAbstractRODataset.CheckFieldCompatibility (Field: TField; FieldDef: TFieldDef); --
the following directive:

Code: Select all

{ $IFDEF VER270 } / / Delphi XE6 / / By dieletro
  BaseFieldTypes : array [ TFieldType ] of TFieldType = (
    ftUnknown , ftString , ftSmallint , ftInteger , ftWord , ftBoolean , ftFloat ,
    ftCurrency , ftBCD , ftDate , ftTime , ftDateTime , ftBytes , ftVarBytes , ftAutoInc ,
    ftBlob , ftMemo , ftGraphic , ftFmtMemo , ftParadoxOle , ftDBaseOle , ftTypedBinary ,
    ftCursor , ftFixedChar , ftWideString , ftLargeint , ftADT , ftArray , ftReference ,
    ftDataSet , ftOraBlob , ftOraClob , ftVariant , ftInterface , ftIDispatch , ftGuid ,
    ftTimeStamp , ftFMTBcd , ftFixedWideChar , ftWideMemo , ftOraTimeStamp , ftOraInterval ,
    ftLongWord , ftShortint , ftByte , ftExtended , ftConnection , ftParams , ftStream ,
    ftTimeStampOffset , ftObject , ftSingle );
{$ELSE !VER270} //>= D2006
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes,
    ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown,
    ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet,
    ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp, ftFMTBcd,
    ftFixedWideChar,ftWideMemo,ftOraTimeStamp,ftOraInterval);
{ $ENDIF VER270}
6 - Although the File ZAbstractRODataset.pas, you will find the following statement:
********comment on this code as an example.*********

Code: Select all

{
 {$ELSE !VER260} //>= D2005 
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd);
} 
7 - ZAbstractRODataset.pas the file Procedure should look like this:

Code: Select all

procedure TZAbstractRODataset.CheckFieldCompatibility(Field: TField;FieldDef: TFieldDef);
const
{$IFDEF FPC}
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes,
    ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown,
    ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet,
    ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp,
    ftFMTBcd , ftString, ftBlob);
{$ELSE}
{$IFDEF VER180} //D2006
BaseFieldTypes: array[TFieldType] of TFieldType = (
  ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat,
  ftCurrency, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes,
  ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown,
  ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet,
  ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp, ftFMTBcd,
  ftFixedWideChar,ftWideMemo,ftOraTimeStamp,ftOraInterval);
{$ELSE !VER180}
{$IFDEF VER185} //D2007
BaseFieldTypes: array[TFieldType] of TFieldType = (ftUnknown, ftString, ftSmallint, ftInteger, ftWord, // 0..4
  ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, // 5..11
  ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo, // 12..18
  ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString, // 19..24
  ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob, // 25..31
  ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd, // 32..37
  ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval); // 38..41
{$ELSE !VER185}
{$IFDEF VER200}
   BaseFieldTypes: array[TFieldType] of TFieldType = (
      ftUnknown, ftString, ftSmallint, ftInteger, ftWord,
      ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime,
      ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo,
      ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString,
      ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob,
      ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd,
      ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
      ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream);
{$ELSE !VER200}
{$IFDEF VER210}
   BaseFieldTypes: array[TFieldType] of TFieldType = (
      ftUnknown, ftString, ftSmallint, ftInteger, ftWord,
      ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime,
      ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo,
      ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString,
      ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob,
      ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd,
      ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
      ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
      ftTimeStampOffset, ftObject, ftSingle);
{$ELSE !VER210}
{$IFDEF VER220}
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat,  // 0..6
    ftFloat, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes, // 7..13
    ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown, // 14..22
    ftString, ftWideString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet, // 23..29
    ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp, ftFMTBcd, // 30..37
    ftWideString, ftBlob, ftOraTimeStamp, ftOraInterval, //38..41
    ftLongWord, ftInteger, ftInteger, ftExtended, ftConnection, ftParams, ftStream, //42..48
    ftTimeStampOffset, ftObject, ftSingle); // 49..51
{$ELSE !VER220}
{$IFDEF VER230}
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
    ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
    ftTimeStampOffset, ftObject, ftSingle );
{$ELSE !VER230}
{$IFDEF VER240}
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
    ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
    ftTimeStampOffset, ftObject, ftSingle );
{$ELSE !VER240}
{$IFDEF VER250}
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
    ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
    ftTimeStampOffset, ftObject, ftSingle );
{$ELSE !VER250}
{$IFDEF VER260}
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
    ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
    ftTimeStampOffset, ftObject, ftSingle );
{$ELSE !VER260}
{$IFDEF VER270} // Delphi XE6 //By dieletro
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
    ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
    ftTimeStampOffset, ftObject, ftSingle );
{$ELSE !VER270} //>= D2006
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes,
    ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown,
    ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet,
    ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp, ftFMTBcd,
    ftFixedWideChar,ftWideMemo,ftOraTimeStamp,ftOraInterval);
{
 {$ELSE !VER260} //>= D2005 // Este Código está com erro
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd);
}
{$ENDIF VER270}
{$ENDIF VER260}
{$ENDIF VER250}
{$ENDIF VER240}
{$ENDIF VER230}
{$ENDIF VER220}
{$ENDIF VER210}
{$ENDIF VER200}
{$ENDIF VER185}
{$ENDIF VER180}
{$ENDIF FPC}


  CheckTypeSizes = [ftBytes, ftVarBytes, ftBCD, ftReference];

begin
  with Field do
  begin
    if (BaseFieldTypes[DataType] <> BaseFieldTypes[FieldDef.DataType]) then
      DatabaseErrorFmt(SFieldTypeMismatch, [DisplayName,
        FieldTypeNames[DataType], FieldTypeNames[FieldDef.DataType]], Self);
    if (DataType in CheckTypeSizes) and (Size <> FieldDef.Size) then
        DatabaseErrorFmt(SFieldSizeMismatch, [DisplayName, Size,
          FieldDef.Size], Self);
  end;
end;

{$IFDEF WITH_DEPRECATED_EXTRACTFIELDNAME}
  {$WARNINGS OFF}
{$ENDIF}
  • PS. Do not forget to inform the Delphi libraries zeos

8 - With Delphi Open, go to tools / Options / Library menu.

9 - Select your platform.

10 - Click on the Library button patch

11 - Add the path / Zeos 7.2 Alpha \ testing-7.2 \ packages \ DelphiXE6 \ Win32 \ Debug

12 - Add the path / Zeos 7.2 Alpha \ testing-7.2 \ src \ component

13 - Add the path / Zeos 7.2 Alpha \ testing-7.2 \ src \ core

14 - Add the path / Zeos 7.2 Alpha \ testing-7.2 \ src \ dbc

15 - Add the path / Zeos 7.2 Alpha \ testing-7.2 \ src \ parsesql

16 - Add the path / Zeos 7.2 Alpha \ testing-7.2 \ src \ plain

If they want to do the Save time Download the Link below Zeos 7.2, with all the changes:

https://mega.co.nz/#!5RpkQA4B!UrC1-ONJI ... B_RvEiWRnI

By dieletro
E-mail: diegolacerdamenezes@gmail.com

Re: Installing the Zeos 7.2 in Delphi XE6

Posted: 23.04.2014, 09:46
by miab3
@dieletro

Bravo!

As I see modification for current version Zeos7.2:
Zeos7.2-alpha branches_ testing_r3119(3116):
http://svn.code.sf.net/p/zeoslib/code-0 ... sting-7.2/
for Delphi XE6(VER270) was needed only in zeos.inc and ZAbstractRODataset.pas
(and Package for DelphiXE6).

Note for step 5
To compile the versions below D2006 this piece should look like this:

Code: Select all

{$IFDEF VER270} // Delphi XE6 //By dieletro
  BaseFieldTypes: array[TFieldType] of TFieldType = (
    ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat,
    ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc,
    ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary,
    ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid,
    ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo, ftOraTimeStamp, ftOraInterval,
    ftLongWord, ftShortint, ftByte, ftExtended, ftConnection, ftParams, ftStream,
    ftTimeStampOffset, ftObject, ftSingle );
{$ELSE !VER270}
// D7, D2005
  BaseFieldTypes: array[TFieldType] of TFieldType =
   (ftUnknown, ftString, ftSmallint, ftInteger, ftWord,
    ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime,
    ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo,
    ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString,
    ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob,
    ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd);
{$ENDIF VER270}	
Michal

Re: Installing the Zeos 7.2 in Delphi XE6

Posted: 24.04.2014, 00:17
by dieletro
I understand, I will be forced to hand if you need the two following files and
Zeos.inc : https://mega.co.nz/#!ARZzFKRY!ldS0yQCIe ... JPrVjevfA4
ZAbstractRODataset: https://mega.co.nz/#!9VhwGagY!Brl6K6RpJ ... p3F1JMY-N4
:D

Re: Installing the Zeos 7.2 in Delphi XE6

Posted: 03.08.2014, 13:38
by miab3
Version:

Zeos7.2-alpha branches_ testing_r3243:
http://svn.code.sf.net/p/zeoslib/code-0 ... sting-7.2/

has all the necessary modifications for Delphi XE6 and a few corrections.

Michal