⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pfibprops.pas

📁 FIBPlus is a component suite intended for work with InterBase. It is direct, fast and flexible Inter
💻 PAS
字号:
{***************************************************************}
{ FIBPlus - component library for direct access to Firebird and }
{ InterBase databases                                           }
{                                                               }
{    FIBPlus is based in part on the product                    }
{    Free IB Components, written by Gregory H. Deatz for        }
{    Hoagland, Longo, Moran, Dunst & Doukas Company.            }
{    mailto:gdeatz@hlmdd.com                                    }
{                                                               }
{    Copyright (c) 1998-2007 Devrace Ltd.                       }
{    Written by Serge Buzadzhy (buzz@devrace.com)               }
{                                                               }
{ ------------------------------------------------------------- }
{    FIBPlus home page: http://www.fibplus.com/                 }
{    FIBPlus support  : http://www.devrace.com/support/         }
{ ------------------------------------------------------------- }
{                                                               }
{  Please see the file License.txt for full license information }
{***************************************************************}


unit pFIBProps;

interface

{$I FIBPlus.inc}
{$J+}
uses
   Classes,SysUtils,DB;

type
  
  TKindOnOperation     =(koBefore,koAfter);
  TpFIBExistObject     =(eoYes,eoNo,eoUnknown);

  TpPrepareOption=
   (pfSetRequiredFields,pfSetReadOnlyFields,pfImportDefaultValues,
    psUseBooleanField,psUseGuidField,psSQLINT64ToBCD,psApplyRepositary,psGetOrderInfo,
    psAskRecordCount,psCanEditComputedFields,psSetEmptyStrToNull,psSupportUnicodeBlobs,
    psUseLargeIntField
   );
  TpPrepareOptions=set of TpPrepareOption;

  TpFIBDsOption=
   (poTrimCharFields,poRefreshAfterPost,
     poRefreshDeletedRecord, poStartTransaction,poAutoFormatFields,poProtectedEdit,
     poUseSelectForLock,  poKeepSorting,
   {$IFDEF OBSOLETE_PROPS}
     poAllowChangeSqls,
   {$ENDIF}     
     poPersistentSorting,poVisibleRecno,poNoForceIsNull,poFetchAll,poFreeHandlesAfterClose
     ,poCacheCalcFields,poRefreshAfterDelete
   );
  TpFIBDsOptions= set of TpFIBDsOption;


  TpFIBQueryOption =(qoStartTransaction,qoAutoCommit,qoTrimCharFields,qoNoForceIsNull,
   qoFreeHandleAfterExecute);
  TpFIBQueryOptions=set of TpFIBQueryOption;

  TDetailCondition=(dcForceOpen,dcIgnoreMasterClose,dcForceMasterRefresh,
   dcWaitEndMasterScroll
  );

  TDetailConditions= set of TDetailCondition;
  TFieldOriginRule =(forNoRule,forTableAndFieldName,forClientFieldName,forTableAliasAndFieldName);

  TSQLs = class(TPersistent)
  private
   FOwner     :TComponent;
   function  GetSelectSQL:TStrings;
   procedure SetSelectSQL(Value:TStrings);
   function  GetInsertSQL:TStrings;
   procedure SetInsertSQL(Value:TStrings);
   function  GetUpdateSQL:TStrings;
   procedure SetUpdateSQL(Value:TStrings);
   function  GetDeleteSQL:TStrings;
   procedure SetDeleteSQL(Value:TStrings);
   function  GetRefreshSQL:TStrings;
   procedure SetRefreshSQL(Value:TStrings);
  public
   constructor Create(Owner:TComponent);
   property    Owner:TComponent read FOwner;
  published
   property SelectSQL:TStrings read  GetSelectSQL write SetSelectSQL;
   property UpdateSQL:TStrings read  GetUpdateSQL write SetUpdateSQL;
   property DeleteSQL:TStrings read  GetDeleteSQL write SetDeleteSQL;
   property InsertSQL:TStrings read  GetInsertSQL write SetInsertSQL;
   property RefreshSQL:TStrings read GetRefreshSQL write SetRefreshSQL;
  end;

  TFormatFields = class(TPersistent)
  private
    FOwner  :TComponent;
    FDisplayFormatDateTime:string;
    FDisplayFormatDate    :string;
    FDisplayFormatTime    :string;
    FDisplayFormatNumeric :string;
    FEditFormatNumeric    :string;
    function StoreDfDt:boolean;
    function StoreDfN:boolean;
    function StoreEfN:boolean;
    function StoreDfD:boolean;
    function StoreDfT:boolean;
  protected
    procedure   AssignTo(Dest: TPersistent);override;
  public
    constructor Create(aOwner  :TComponent);
  published
    property DateTimeDisplayFormat:string read FDisplayFormatDateTime
                                   write FDisplayFormatDateTime  stored  StoreDfDt ;
    property NumericDisplayFormat :string read FDisplayFormatNumeric
                                   write FDisplayFormatNumeric   stored  StoreDfN ;
    property NumericEditFormat    :string read FEditFormatNumeric
                                   write FEditFormatNumeric     stored  StoreEfN ;
    property DisplayFormatDate:string read FDisplayFormatDate
                               write FDisplayFormatDate  stored StoreDfD;
    property DisplayFormatTime:string read FDisplayFormatTime
                               write FDisplayFormatTime stored StoreDfT;
  end;

  TWhenGetGenID=(wgNever,wgOnNewRecord,wgBeforePost);

  TAutoUpdateOptions= class (TPersistent)
  private
   FOwner     :TComponent;
   FUpdateTableName:string;
   FKeyFieldList   :TStrings;
   FKeyFields      :string; //扬桉铌 觌

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -