FERSAH SCADA

FERSAH SCADA

05357760764

SİSTEM GEREKSİNİMLERİ

FULL HD BİLGİSAYAR
ÖNERİLEN İŞLETİM SİSTEMİ WİNDOWS 10.
MİCROSOFT SQL SERVER 2016 EXPRESS (ÜCRETSİZ İNDİRİLİP YÜKLENEBİLİR.
KEPSERVER VERSİYON 4, 5, 6

unit SVC_SCADA;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, dOPCIntf, dOPCComn, dOPC, ExtCtrls, DB, ADODB,dOPCDlgBrowse,

  flagsmgr, AdvSmoothGauge, ImgList, AdvSmoothMessageDialog,

  StdCtrls, AdvSmoothTouchKeyBoard, DBCtrls, XDBCtrls,

  JvLabel, VrBorder, TeeTools, TeEngine, ComCtrls,

  AdvSmoothToggleButton, VrDigit, VrMatrix, VrJogMeter, VrMeter, Series,

  TeeProcs, Chart, Grids, XDBGrids, VrArrow,

  cxControls, cxContainer, cxEdit, cxTextEdit, cxCurrencyEdit,

  VrEdit, VrControls, VrBlinkLed, dxGDIPlusClasses, JvExComCtrls,

  JvComCtrls,JvExControls, JvGradientHeaderPanel, JvExExtCtrls,

  JvExtComponent, JvPanel, JvButton, JvTransparentButton, jpeg,

  TeePageNumTool, BaseGrid, AdvGrid, AdvCGrid, DBGrids, AdvSmoothListBox,

  AdvSmoothComboBox, TeeBannerTool, JvBmpAnimator, cxMaskEdit, cxSpinEdit,

  cxGraphics, dxStatusBar,DateUtils,ComObj,Math,xlconst,StrUtils,inifiles,

  JvSimIndicator, Mask, JvExMask,

  JvSpin, MMSystem, VrSwitch, VrLeds, JvSimLogic, JvgButton, JvSwitch,

  AdvSmoothTimeLine, DBAdvSmoothTimeLine, cxLookAndFeels,

  cxLookAndFeelPainters, dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint,

  dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide,

  dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle, dxSkinFoggy,

  dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian,

  dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,

  dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,

  dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,

  dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,

  dxSkinOffice2010Silver, dxSkinOffice2013DarkGray, dxSkinOffice2013LightGray,

  dxSkinOffice2013White, dxSkinOffice2016Colorful, dxSkinOffice2016Dark,

  dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,

  dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,

  dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinsDefaultPainters,

  dxSkinValentine, dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark,

  dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint,

  dxSkinXmas2008Blue, VclTee.TeeGDIPlus, System.ImageList, dOPCDA, AdvObj,

  AdvGlassButton, NxGridView6, NxColumns6, NxControls6, NxCustomGrid6,

  NxVirtualGrid6, NxGrid6, NxDBGrid6, dxBarExtItems, dxBar, cxClasses, Vcl.Menus,

  cxLabel, VrLabel, RzLabel, RzPanel, RzBorder, VrRotarySwitch, VrTank,

  VrThermoMeter, VrWheel, VrBanner, VrProgressBar, Vcl.WinXCtrls,

  Vcl.Samples.Gauges, Vcl.Samples.Calendar, VrAngularMeter, VrPowerMeter,

  JvDialogs,ShellApi, JvShape, AdvShapeButton, RzButton, VrButtons,TypInfo,

  JvExStdCtrls, JvShapedButton,SizeControl, CommCtrl, PNGImage, dxImageSlider,

  Vcl.ExtDlgs;

 

type

 

  TSCADA_FRM = class(TForm)

    created_nesne:Tobject;

    clip_nesne:Tobject;

    {yanlışlıkla silersen

    created_nesne:Tobject;

    clip_nesne:Tobject;

    }

    ALARMLAR: TTimer;

    Panel8: TPanel;

    PAGE: TJvPageControl;

    PAGE_4: TTabSheet;

    PAGE_6: TTabSheet;

    PAGE_7: TTabSheet;

    EVENTS: TTabSheet;

    MONITORING: TTabSheet;

    NETWORK: TTabSheet;

    Panel13: TPanel;

    Image8: TImage;

    Panel17: TPanel;

    PAGE_1: TTabSheet;

    PAGE_5: TTabSheet;

    ALARM: TTabSheet;

    opc2: TdOPCServer;

    PAGE_3: TTabSheet;

    LOGIN: TTabSheet;

    AdvSmoothTouchKeyBoard1: TAdvSmoothTouchKeyBoard;

    PAGE9: TJvPageControl;

    STRING_GRID: TTabSheet;

    Panel74: TPanel;

    NormalImageList: TImageList;

    PAGE_2: TTabSheet;

    opc1: TdOPCServer;

    led12: TVrBlinkLed;

    JvPageControl2: TJvPageControl;

    TabSheet4: TTabSheet;

    TabSheet5: TTabSheet;

    Panel88: TPanel;

    Label167: TLabel;

    Edit2: TEdit;

    Edit1: TEdit;

    VrStrEdit138: TVrStrEdit;

    VrStrEdit140: TVrStrEdit;

    TRENDLER: TTimer;

    GORSELLER: TTimer;

    ANLIK_OPC: TdOPCServer;

    BAGLANTI_OPC: TdOPCServer;

    Panel53: TPanel;

    AYARLAR: TJvPageControl;

    ALARM_KAYIT: TTabSheet;

    Panel52: TPanel;

    Label348: TLabel;

    Label349: TLabel;

    Label350: TLabel;

    Label351: TLabel;

    Label352: TLabel;

    Label353: TLabel;

    Label354: TLabel;

    Label355: TLabel;

    Label356: TLabel;

    Label357: TLabel;

    EVENT_NUMBER: TLabel;

    KULLANICILAR: TTabSheet;

    Panel58: TPanel;

    XDBNavigator2: TXDBNavigator;

    XDBGrid4: TXDBGrid;

    JvPanel30: TJvPanel;

    AdvSmoothTouchKeyBoard2: TAdvSmoothTouchKeyBoard;

    Panel96: TPanel;

    Panel1: TPanel;

    Panel2: TPanel;

    Image1: TImage;

    Panel3: TPanel;

    Panel14: TPanel;

    JvTransparentButton4: TJvTransparentButton;

    Panel15: TPanel;

    Panel16: TPanel;

    Panel4: TPanel;

    Panel6: TPanel;

    Panel18: TPanel;

    pending_trip: TVrStrEdit;

    JvPanel11: TJvPanel;

    Panel20: TPanel;

    pending_alarm: TVrStrEdit;

    panell: TJvPanel;

    JvGradientHeaderPanel1: TJvGradientHeaderPanel;

    STATUS_AYARLARI: TTabSheet;

    TRENDS: TTabSheet;

    TRENDS_10M: TTabSheet;

    Panel97: TPanel;

    Label232: TLabel;

    Label234: TLabel;

    Label243: TLabel;

    Label247: TLabel;

    Label252: TLabel;

    KULLANICI_ID: TLabel;

    Panel98: TPanel;

    XDBNavigator1: TXDBNavigator;

    XDBGrid1: TXDBGrid;

    Label230: TLabel;

    Label231: TLabel;

    TRENDS_1H: TTabSheet;

    Panel99: TPanel;

    Label253: TLabel;

    Label254: TLabel;

    Label259: TLabel;

    Label265: TLabel;

    DURUM_NO: TLabel;

    Panel100: TPanel;

    XDBNavigator3: TXDBNavigator;

    XDBGrid2: TXDBGrid;

    Label236: TLabel;

    opc3: TdOPCServer;

    Label248: TLabel;

    Label258: TLabel;

    Label261: TLabel;

    Panel12: TPanel;

    Label4: TLabel;

    XDBNavigator4: TXDBNavigator;

    XDBGrid3: TXDBGrid;

    Panel21: TPanel;

    Label5: TLabel;

    XDBNavigator5: TXDBNavigator;

    XDBGrid5: TXDBGrid;

    Panel22: TPanel;

    Label12: TLabel;

    XDBNavigator6: TXDBNavigator;

    XDBGrid6: TXDBGrid;

    KUMANDA: TTimer;

    DEFAULTS: TTimer;

    suiButton67: TAdvGlassButton;

    suiButton68: TAdvGlassButton;

    suiButton74: TAdvGlassButton;

    suiButton69: TAdvGlassButton;

    suiButton70: TAdvGlassButton;

    suiButton71: TAdvGlassButton;

    suiButton2: TAdvGlassButton;

    suiButton3: TAdvGlassButton;

    suiButton4: TAdvGlassButton;

    suiButton6: TAdvGlassButton;

    suiButton7: TAdvGlassButton;

    suiButton8: TAdvGlassButton;

    suiButton9: TAdvGlassButton;

    suiButton50: TAdvGlassButton;

    suiButton52: TAdvGlassButton;

    suiButton51: TAdvGlassButton;

    suiButton53: TAdvGlassButton;

    suiButton5: TAdvGlassButton;

    suiButton20: TAdvGlassButton;

    suiButton21: TAdvGlassButton;

    suiButton22: TAdvGlassButton;

    suiButton23: TAdvGlassButton;

    suiButton27: TAdvGlassButton;

    suiButton49: TAdvGlassButton;

    suiButton65: TAdvGlassButton;

    suiButton26: TAdvGlassButton;

    suiButton62: TAdvGlassButton;

    suiButton30: TAdvGlassButton;

    suiButton33: TAdvGlassButton;

    EVENT_EVENT: TEdit;

    EVENT_AREA: TEdit;

    EVENT_SOURCE: TEdit;

    EVENT_BIT: TEdit;

    EVENT_TAG: TEdit;

    EVENT_PARIORITY: TEdit;

    EVENT_CLASS: TComboBox;

    EVENT_TYPE: TComboBox;

    EVENT_STAG: TEdit;

    EVENT_SBIT: TEdit;

    NextGrid2: TNextGrid6;

    NxDateColumn62: TNxDateColumn6;

    NxTextColumn9: TNxTextColumn6;

    AD: TEdit;

    SOYAD: TEdit;

    KULLANICI_ADI: TEdit;

    SIFRE: TEdit;

    YETKI_G: TComboBox;

    DURUM_TAG: TEdit;

    DURUM_BIT: TEdit;

    DURUM_AREA: TEdit;

    DURUM_EVENT1: TEdit;

    DURUM1: TEdit;

    DURUM_EVENT2: TEdit;

    DURUM2: TEdit;

    TRENDS_TAG: TEdit;

    TRENDS_10M_TAG: TEdit;

    TRENDS_1H_TAG: TEdit;

    suiImageButton1: TAdvGlassButton;

    suiButton56: TButton;

    suiButton24: TButton;

    suiButton72: TButton;

    suiButton75: TButton;

    suiButton15: TButton;

    suiButton16: TButton;

    suiButton59: TButton;

    NextGrid1: TNextGrid6;

    NxNumberColumn1: TNxNumberColumn6;

    NxTextColumn3: TNxTextColumn6;

    NxTextColumn4: TNxTextColumn6;

    NxTextColumn1: TNxTextColumn6;

    NxReportGridView61: TNxReportGridView6;

    DateColumn1: TNxDateColumn6;

    TextualColumn1: TNxTextColumn6;

    NxReportGridView62: TNxReportGridView6;

    NxTextColumn2: TNxIconColumn6;

    suiButton1: TAdvGlassButton;

    suiButton76: TButton;

    Tmr1: TTimer;

    c: TImageList;

    Panel10: TPanel;

    trip_tarih: TVrStrEdit;

    Label358: TLabel;

    JvPanel1: TJvPanel;

    Panel11: TPanel;

    alarm_tarih: TVrStrEdit;

    Label359: TLabel;

    JvPanel15: TJvPanel;

    AdvGlassButton3: TAdvGlassButton;

    AdvGlassButton4: TAdvGlassButton;

    AdvGlassButton5: TAdvGlassButton;

    AdvGlassButton6: TAdvGlassButton;

    SAYFA_TASARIMI: TTabSheet;

    TabSheet17: TTabSheet;

    dxBarManager1: TdxBarManager;

    dxBarManager1Bar1: TdxBar;

    dxBarManager1Bar2: TdxBar;

    dxBarManager1Bar3: TdxBar;

    dxBarManager1Bar4: TdxBar;

    dxBarManager1Bar5: TdxBar;

    dxBarSubItem1: TdxBarSubItem;

    dxBarSubItem2: TdxBarSubItem;

    dxBarSubItem3: TdxBarSubItem;

    dxBarSubItem4: TdxBarSubItem;

    dxBarSubItem5: TdxBarSubItem;

    dxBarSubItem6: TdxBarSubItem;

    dxBarSubItem7: TdxBarSubItem;

    dxBarButton1: TdxBarLargeButton;

    btnNew: TdxBarLargeButton;

    btnOpen: TdxBarLargeButton;

    btnSave: TdxBarLargeButton;

    btnClose: TdxBarLargeButton;

    btnPrint: TdxBarLargeButton;

    btnSaveAs: TdxBarLargeButton;

    btnSaveAll: TdxBarLargeButton;

    dxBarButton3: TdxBarLargeButton;

    dxBarButton4: TdxBarLargeButton;

    dxBarButton5: TdxBarLargeButton;

    dxBarButton6: TdxBarLargeButton;

    dxBarButton7: TdxBarLargeButton;

    dxBarButton8: TdxBarLargeButton;

    dxBarButton9: TdxBarLargeButton;

    dxBarButton10: TdxBarLargeButton;

    dxBarButton11: TdxBarLargeButton;

    btnNewWindow: TdxBarLargeButton;

    btnArrangeAll: TdxBarLargeButton;

    btnSplit: TdxBarLargeButton;

    dxBarLargeButton9: TdxBarLargeButton;

    dxBarLargeButton10: TdxBarLargeButton;

    dxBarLargeButton11: TdxBarLargeButton;

    dxBarLargeButton12: TdxBarLargeButton;

    dxBarLargeButton13: TdxBarLargeButton;

    dxBarLargeButton14: TdxBarLargeButton;

    dxBarLargeButton15: TdxBarLargeButton;

    dxBarLargeButton16: TdxBarLargeButton;

    dxBarLargeButton1: TdxBarLargeButton;

    dxBarLargeButton2: TdxBarLargeButton;

    dxBarLargeButton3: TdxBarLargeButton;

    dxBarLargeButton4: TdxBarLargeButton;

    dxBarLargeButton5: TdxBarLargeButton;

    dxBarLargeButton6: TdxBarLargeButton;

    dxBarLargeButton7: TdxBarLargeButton;

    dxBarButton15: TdxBarButton;

    dxBarColorCombo1: TdxBarColorCombo;

    dxBarFontNameCombo1: TdxBarFontNameCombo;

    dxBarDateCombo1: TdxBarDateCombo;

    dxBarSpinEdit1: TdxBarSpinEdit;

    dxBarProgressItem1: TdxBarProgressItem;

    dxBarStatic1: TdxBarStatic;

    dxBarLargeButton8: TdxBarLargeButton;

    dxBarButton2: TdxBarButton;

    dxBarLargeButton17: TdxBarLargeButton;

    dxBarLargeButton18: TdxBarLargeButton;

    dxBarLargeButton19: TdxBarLargeButton;

    dxBarLargeButton20: TdxBarLargeButton;

    PopupMenu1: TPopupMenu;

    COPY1: TMenuItem;

    DELETE1: TMenuItem;

    dxBarLargeButton21: TdxBarLargeButton;

    JvOpenDialog1: TJvOpenDialog;

    SaveDialog1: TSaveDialog;

    Pan1: TRzPanel;

    Pan2: TRzPanel;

    Pan3: TRzPanel;

    Pan4: TRzPanel;

    Pan5: TRzPanel;

    Pan7: TRzPanel;

    pan6: TRzPanel;

    Timer1: TTimer;

    dxBarLargeButton22: TdxBarLargeButton;

    dxBarButton12: TdxBarButton;

    dxBarLargeButton23: TdxBarLargeButton;

    dxBarLargeButton24: TdxBarLargeButton;

    d: TImageList;

    dxBarLargeButton25: TdxBarLargeButton;

    StatusBar2: TStatusBar;

    Label6: TLabel;

    XDBGrid7: TXDBGrid;

    Edit3: TEdit;

    Label11: TLabel;

    Edit4: TEdit;

    CheckBox1: TCheckBox;

    Label13: TLabel;

    Edit5: TEdit;

    CheckBox2: TCheckBox;

    Label16: TLabel;

    Edit7: TEdit;

    CheckBox4: TCheckBox;

    Label17: TLabel;

    Edit8: TEdit;

    CheckBox5: TCheckBox;

    Label87: TLabel;

    Edit9: TEdit;

    CheckBox6: TCheckBox;

    Label89: TLabel;

    Edit10: TEdit;

    CheckBox7: TCheckBox;

    Button1: TButton;

    Label90: TLabel;

    Edit6: TEdit;

    CheckBox3: TCheckBox;

    JvOpenDialog2: TJvOpenDialog;

    Button2: TButton;

    Label91: TLabel;

    Edit11: TEdit;

    dxBarLargeButton26: TdxBarLargeButton;

    dxBarButton13: TdxBarButton;

    dxBarLargeButton27: TdxBarLargeButton;

    dxBarLargeButton28: TdxBarLargeButton;

    Label15: TLabel;

    Edit12: TEdit;

    CheckBox8: TCheckBox;

    CheckBox9: TCheckBox;

    Edit13: TEdit;

    Label92: TLabel;

    Label93: TLabel;

    Edit14: TEdit;

    CheckBox10: TCheckBox;

    dxBarButton14: TdxBarButton;

    dxBarLargeButton29: TdxBarLargeButton;

    GRAFIKLER: TTabSheet;

    JvTreeView1: TJvTreeView;

    PopupMenu2: TPopupMenu;

    EKLE1: TMenuItem;

    SL1: TMenuItem;

    imgCollection: TcxImageCollection;

    ImageSlider: TdxImageSlider;

    AdvGlassButton7: TAdvGlassButton;

    SL2: TMenuItem;

    RESMSL1: TMenuItem;

    JvOpenDialog3: TJvOpenDialog;

    AdvSmoothPopupTouchKeyBoard1: TAdvSmoothPopupTouchKeyBoard;

    Label94: TLabel;

    CheckBox11: TCheckBox;

    PageControl1: TPageControl;

    TabSheet18: TTabSheet;

    Pane1: TPanel;

    Image10: TImage;

    TabSheet19: TTabSheet;

    Pane2: TPanel;

    Label21: TLabel;

    Label29: TLabel;

    Label30: TLabel;

    Label31: TLabel;

    VrSwitch2: TVrSwitch;

    VrSwitch1: TVrSwitch;

    VrSwitch3: TVrSwitch;

    VrSwitch4: TVrSwitch;

    suiButton83: TAdvGlassButton;

    suiButton14: TAdvGlassButton;

    suiButton28: TAdvGlassButton;

    AdvGlassButton2: TAdvGlassButton;

    AdvGlassButton1: TAdvGlassButton;

    TabSheet20: TTabSheet;

    Pane3: TPanel;

    Label25: TLabel;

    Gauge1: TGauge;

    VrWheel1: TVrWheel;

    vrThermoMeter1: TvrThermoMeter;

    VrTank1: TVrTank;

    RzMeter1: TRzMeter;

    VrPowerMeter1: TVrPowerMeter;

    VrAngularMeter1: TVrAngularMeter;

    VrRotarySwitch1: TVrRotarySwitch;

    ToggleSwitch1: TToggleSwitch;

    VrSwitch5: TVrSwitch;

    AdvGlassButton8: TAdvGlassButton;

    TRENDSLER: TTabSheet;

    Label1: TLabel;

    Edit15: TEdit;

    Edit16: TEdit;

    Label2: TLabel;

    Label3: TLabel;

    Edit17: TEdit;

    Edit18: TEdit;

    Label14: TLabel;

    Label18: TLabel;

    Edit19: TEdit;

    Edit20: TEdit;

    Label19: TLabel;

    Edit21: TEdit;

    Label20: TLabel;

    CheckBox12: TCheckBox;

    CheckBox13: TCheckBox;

    CheckBox14: TCheckBox;

    CheckBox15: TCheckBox;

    CheckBox16: TCheckBox;

    CheckBox17: TCheckBox;

    CheckBox18: TCheckBox;

    CheckBox19: TCheckBox;

    CheckBox20: TCheckBox;

    CheckBox21: TCheckBox;

    Edit22: TEdit;

    Edit23: TEdit;

    Edit24: TEdit;

    Edit25: TEdit;

    Label22: TLabel;

    Label23: TLabel;

    Label24: TLabel;

    Label26: TLabel;

    CheckBox23: TCheckBox;

    Edit26: TEdit;

    Label27: TLabel;

    ColorBox1: TColorBox;

    ColorBox2: TColorBox;

    ColorBox3: TColorBox;

    ColorBox4: TColorBox;

    ColorBox5: TColorBox;

    ColorBox6: TColorBox;

    ColorBox7: TColorBox;

    ColorBox8: TColorBox;

    ColorBox9: TColorBox;

    ColorBox10: TColorBox;

    ColorBox11: TColorBox;

    Label28: TLabel;

    Edit27: TEdit;

    Label32: TLabel;

    Edit28: TEdit;

    Edit29: TEdit;

    Edit30: TEdit;

    Edit31: TEdit;

    Edit32: TEdit;

    Edit33: TEdit;

    Edit34: TEdit;

    Edit35: TEdit;

    Edit36: TEdit;

    Edit37: TEdit;

    Label33: TLabel;

    ComboBox1: TComboBox;

    ComboBox2: TComboBox;

    ComboBox3: TComboBox;

    ComboBox4: TComboBox;

    ComboBox5: TComboBox;

    ComboBox6: TComboBox;

    ComboBox7: TComboBox;

    ComboBox8: TComboBox;

    ComboBox9: TComboBox;

    ComboBox10: TComboBox;

    ComboBox11: TComboBox;

    Button3: TButton;

    ComboBox12: TComboBox;

    Label34: TLabel;

    ComboBox13: TComboBox;

    ComboBox14: TComboBox;

    ComboBox15: TComboBox;

    ComboBox16: TComboBox;

    ComboBox17: TComboBox;

    ComboBox18: TComboBox;

    ComboBox19: TComboBox;

    ComboBox20: TComboBox;

    ComboBox21: TComboBox;

    ComboBox22: TComboBox;

    PAGE1: TJvPageControl;

    TabSheet1: TTabSheet;

    Panel19: TPanel;

    Label7: TLabel;

    Label8: TLabel;

    Label9: TLabel;

    Label10: TLabel;

    d2: TDateTimePicker;

    saat1: TDateTimePicker;

    saat2: TDateTimePicker;

    d1: TDateTimePicker;

    AdvSmoothToggleButton1: TAdvSmoothToggleButton;

    AdvSmoothToggleButton2: TAdvSmoothToggleButton;

    AdvSmoothToggleButton3: TAdvSmoothToggleButton;

    AdvSmoothToggleButton28: TAdvSmoothToggleButton;

    AdvSmoothToggleButton4: TAdvSmoothToggleButton;

    AdvSmoothToggleButton5: TAdvSmoothToggleButton;

    AdvSmoothToggleButton6: TAdvSmoothToggleButton;

    AdvSmoothToggleButton7: TAdvSmoothToggleButton;

    AdvSmoothToggleButton8: TAdvSmoothToggleButton;

    AdvSmoothToggleButton9: TAdvSmoothToggleButton;

    AdvSmoothToggleButton10: TAdvSmoothToggleButton;

    AdvSmoothToggleButton11: TAdvSmoothToggleButton;

    Chart1: TChart;

    TRENDS1: TFastLineSeries;

    TRENDS2: TFastLineSeries;

    TRENDS3: TFastLineSeries;

    TRENDS4: TFastLineSeries;

    TRENDS5: TFastLineSeries;

    TRENDS6: TFastLineSeries;

    TRENDS7: TFastLineSeries;

    TRENDS8: TFastLineSeries;

    TRENDS9: TFastLineSeries;

    Series10: TFastLineSeries;

    TRENDS11: TFastLineSeries;

    PageNumTool5: TPageNumTool;

    MarksTipTool5: TMarksTipTool;

    AxisArrowTool1: TAxisArrowTool;

    AxisScrollTool1: TAxisScrollTool;

    AxisArrowTool4: TAxisArrowTool;

    AxisScrollTool4: TAxisScrollTool;

    CursorTool1: TCursorTool;

    TabSheet12: TTabSheet;

    Panel42: TPanel;

    Panel50: TPanel;

    Chart8: TChart;

    FastLineSeries17: TFastLineSeries;

    MarksTipTool8: TMarksTipTool;

    AxisArrowTool15: TAxisArrowTool;

    AxisScrollTool15: TAxisScrollTool;

    AxisArrowTool16: TAxisArrowTool;

    AxisScrollTool16: TAxisScrollTool;

    CursorTool8: TCursorTool;

    Panel56: TPanel;

    Panel59: TPanel;

    Chart7: TChart;

    FastLineSeries9: TFastLineSeries;

    MarksTipTool7: TMarksTipTool;

    AxisArrowTool13: TAxisArrowTool;

    AxisScrollTool13: TAxisScrollTool;

    AxisArrowTool14: TAxisArrowTool;

    AxisScrollTool14: TAxisScrollTool;

    CursorTool7: TCursorTool;

    Panel60: TPanel;

    Panel61: TPanel;

    Chart6: TChart;

    FastLineSeries4: TFastLineSeries;

    MarksTipTool6: TMarksTipTool;

    AxisArrowTool11: TAxisArrowTool;

    AxisScrollTool11: TAxisScrollTool;

    AxisArrowTool12: TAxisArrowTool;

    AxisScrollTool12: TAxisScrollTool;

    CursorTool6: TCursorTool;

    TabSheet13: TTabSheet;

    Panel69: TPanel;

    Label214: TLabel;

    Label215: TLabel;

    NxDatePicker1: TDateTimePicker;

    NxDatePicker2: TDateTimePicker;

    Panel70: TPanel;

    virgul: TRadioButton;

    nokta: TRadioButton;

    suiButton29: TAdvGlassButton;

    suiButton57: TAdvGlassButton;

    JvPageControl3: TJvPageControl;

    TabSheet15: TTabSheet;

    Panel77: TPanel;

    NextGrid5: TNextGrid6;

    NxReportGridView63: TNxReportGridView6;

    NxDateColumn61: TNxDateColumn6;

    NxTimeColumn61: TNxTimeColumn6;

    NxNumberColumn61: TNxNumberColumn6;

    NxNumberColumn62: TNxNumberColumn6;

    NxNumberColumn63: TNxNumberColumn6;

    NxNumberColumn64: TNxNumberColumn6;

    NxNumberColumn65: TNxNumberColumn6;

    NxNumberColumn66: TNxNumberColumn6;

    NxNumberColumn67: TNxNumberColumn6;

    NxNumberColumn68: TNxNumberColumn6;

    NxNumberColumn69: TNxNumberColumn6;

    NxNumberColumn610: TNxNumberColumn6;

    TabSheet8: TTabSheet;

    Panel78: TPanel;

    TabSheet14: TTabSheet;

    Panel80: TPanel;

    ProgressBar1: TProgressBar;

    Statusbar1: TdxStatusBar;

    ComboBox23: TComboBox;

    ComboBox24: TComboBox;

    dxBarButton16: TdxBarButton;

    dxBarLargeButton30: TdxBarLargeButton;

    dxBarLargeButton31: TdxBarLargeButton;

    dxBarLargeButton32: TdxBarLargeButton;

    vrThermoMeter2: TvrThermoMeter;

    procedure FormCreate(Sender: TObject);

    procedure FormActivate(Sender: TObject);

    procedure ALARMLARTimer(Sender: TObject);

    procedure suiImageButton1Click(Sender: TObject);

    procedure suiButton3Click(Sender: TObject);

    procedure suiButton2Click(Sender: TObject);

    procedure suiButton4Click(Sender: TObject);

    procedure suiButton6Click(Sender: TObject);

    procedure suiButton7Click(Sender: TObject);

    procedure suiButton8Click(Sender: TObject);

    procedure suiButton9Click(Sender: TObject);

    procedure suiButton20Click(Sender: TObject);

    procedure suiButton23Click(Sender: TObject);

    procedure EVENT_CLASSChange(Sender: TObject);

    procedure suiButton56Click(Sender: TObject);

    procedure EVENT_TAGClick(Sender: TObject);

    procedure EVENT_STAGClick(Sender: TObject);

    procedure suiButton24Click(Sender: TObject);

    procedure opc2Datachange(Sender: TObject;

      ItemList: TdOPCItemList);

    procedure Image1DblClick(Sender: TObject);

    procedure Edit1KeyPress(Sender: TObject; var Key: Char);

    procedure FormShow(Sender: TObject);

    procedure NextGrid1Resize(Sender: TObject);

    procedure suiButton52Click(Sender: TObject);

    procedure suiButton50Click(Sender: TObject);

    procedure suiButton51Click(Sender: TObject);

    procedure suiButton53Click(Sender: TObject);

    procedure AdvSmoothToggleButton1MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton2MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton3MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton4MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton8MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure XDBGrid4KeyPress(Sender: TObject; var Key: Char);

    procedure XDBGrid4TitleClick(Column: TXColumn);

    procedure Chart6DblClick(Sender: TObject);

    procedure Chart7DblClick(Sender: TObject);

    procedure Chart8DblClick(Sender: TObject);

    procedure Chart1DblClick(Sender: TObject);

    procedure AdvSmoothToggleButton28Click(Sender: TObject);

    procedure d1Change(Sender: TObject);

    procedure d2Change(Sender: TObject);

    procedure suiButton5Click(Sender: TObject);

    procedure opc3Datachange(Sender: TObject; ItemList: TdOPCItemList);

    procedure suiButton29Click(Sender: TObject);

    procedure suiButton62Click(Sender: TObject);

    procedure suiButton35Click(Sender: TObject);

    procedure NxDatePicker1Change(Sender: TObject);

    procedure NxDatePicker2Change(Sender: TObject);

    procedure suiButton57Click(Sender: TObject);

    procedure Image1Click(Sender: TObject);

    procedure TRENDLERTimer(Sender: TObject);

    procedure GORSELLERTimer(Sender: TObject);

    procedure BAGLANTI_OPCDatachange(Sender: TObject;

      ItemList: TdOPCItemList);

    procedure ANLIK_OPCDatachange(Sender: TObject;

      ItemList: TdOPCItemList);

    procedure suiButton67Click(Sender: TObject);

    procedure suiButton68Click(Sender: TObject);

    procedure suiButton69Click(Sender: TObject);

    procedure suiButton70Click(Sender: TObject);

    procedure suiButton71Click(Sender: TObject);

    procedure suiButton72Click(Sender: TObject);

    procedure suiButton73Click(Sender: TObject);

    procedure suiButton74Click(Sender: TObject);

    procedure suiButton75Click(Sender: TObject);

    procedure DURUM_TAGClick(Sender: TObject);

    procedure suiButton76Click(Sender: TObject);

    procedure XDBGrid2KeyPress(Sender: TObject; var Key: Char);

    procedure XDBGrid2TitleClick(Column: TXColumn);

    procedure XDBGrid1KeyPress(Sender: TObject; var Key: Char);

    procedure XDBGrid1TitleClick(Column: TXColumn);

    procedure KUMANDATimer(Sender: TObject);

    procedure suiButton1Click(Sender: TObject);

    procedure TRENDS_TAGClick(Sender: TObject);

    procedure suiButton15Click(Sender: TObject);

    procedure TRENDS_10M_TAGClick(Sender: TObject);

    procedure suiButton16Click(Sender: TObject);

    procedure suiButton59Click(Sender: TObject);

    procedure TRENDS_1H_TAGClick(Sender: TObject);

    procedure VrSwitch2Change(Sender: TObject);

    procedure VrSwitch1Change(Sender: TObject);

    procedure VrSwitch3Change(Sender: TObject);

    procedure VrSwitch4Change(Sender: TObject);

    procedure suiButton83Click(Sender: TObject);

    procedure suiButton14Click(Sender: TObject);

    procedure suiButton28Click(Sender: TObject);

    procedure TabSheet13Show(Sender: TObject);

    procedure PAGE_2Show(Sender: TObject);

    procedure DEFAULTSTimer(Sender: TObject);

    procedure VrSwitch2Click(Sender: TObject);

    procedure VrSwitch1Click(Sender: TObject);

    procedure VrSwitch3Click(Sender: TObject);

    procedure VrSwitch4Click(Sender: TObject);

    procedure NextGrid1CellClick(Sender: TObject; ACol, ARow: Integer;

      Button: TMouseButton);

    procedure AdvGlassButton1Click(Sender: TObject);

    procedure Tmr1Timer(Sender: TObject);

    procedure dxBarLargeButton1Click(Sender: TObject);

    procedure dxBarLargeButton6Click(Sender: TObject);

    procedure dxBarLargeButton17Click(Sender: TObject);

    procedure JvTransparentButton4Click(Sender: TObject);

 

    procedure ControlMouseDown(Sender: TObject;

    Button: TMouseButton;

    Shift: TShiftState;

     X, Y: Integer);

    procedure ControlMouseMove(Sender: TObject;

    Shift: TShiftState;

    X, Y: Integer);

    procedure ControlMouseUp(Sender: TObject;

    Button: TMouseButton;

    Shift: TShiftState;

    X, Y: Integer);

    procedure dxBarLargeButton2Click(Sender: TObject);

    procedure AdvGlassButton5Click(Sender: TObject);

    procedure AdvGlassButton4Click(Sender: TObject);

    procedure AdvGlassButton3Click(Sender: TObject);

    procedure AdvGlassButton6Click(Sender: TObject);

    procedure dxBarLargeButton3Click(Sender: TObject);

    procedure dxBarLargeButton8Click(Sender: TObject);

    procedure dxBarLargeButton7Click(Sender: TObject);

    procedure dxBarLargeButton18Click(Sender: TObject);

    procedure dxBarLargeButton19Click(Sender: TObject);

    procedure COPY1Click(Sender: TObject);

    procedure DELETE1Click(Sender: TObject);

    procedure dxBarLargeButton20Click(Sender: TObject);

    procedure btnSaveClick(Sender: TObject);

    procedure btnOpenClick(Sender: TObject);

    procedure btnSaveAsClick(Sender: TObject);

    procedure dxBarButton1Click(Sender: TObject);

    procedure btnNewClick(Sender: TObject);

    procedure dxBarButton6Click(Sender: TObject);

    procedure dxBarLargeButton21Click(Sender: TObject);

    procedure Pan1Click(Sender: TObject);

    procedure Pan1MouseEnter(Sender: TObject);

    procedure Timer1Timer(Sender: TObject);

    procedure dxBarLargeButton23Click(Sender: TObject);

    procedure dxBarLargeButton24Click(Sender: TObject);

    procedure Image10Click(Sender: TObject);

    procedure FormDestroy(Sender: TObject);

    procedure cbSizeMoveClick(Sender: TObject);

    procedure FormResize(Sender: TObject);

    procedure FormPaint(Sender: TObject);

    procedure dxBarLargeButton25Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure dxBarLargeButton29Click(Sender: TObject);

    procedure AdvGlassButton7Click(Sender: TObject);

    procedure EKLE1Click(Sender: TObject);

    procedure SL1Click(Sender: TObject);

    procedure SL2Click(Sender: TObject);

    procedure RESMSL1Click(Sender: TObject);

    procedure JvTreeView1SelectionChange(Sender: TObject);

    procedure dxBarLargeButton28Click(Sender: TObject);

    procedure Panel15Click(Sender: TObject);

    procedure AdvGlassButton8Click(Sender: TObject);

    procedure AdvSmoothToggleButton5MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton6MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton7MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton9MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton10MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure AdvSmoothToggleButton11MouseUp(Sender: TObject;

      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

    procedure Button3Click(Sender: TObject);

    procedure ComboBox23Change(Sender: TObject);

    procedure ComboBox24Change(Sender: TObject);

    procedure dxBarLargeButton30Click(Sender: TObject);

    procedure dxBarLargeButton31Click(Sender: TObject);

    procedure dxBarLargeButton32Click(Sender: TObject);

  private

    { Private declarations }

    procedure dynButtonClick(Sender: TObject);

    procedure dyn_in_panel_Click(Sender: TObject);

    procedure dyn_in_panel_OnKeyPress(Sender: TObject; var Key: Char);

    procedure dyn_text_label_Click(Sender: TObject);

    procedure dyn_panel_Click(Sender: TObject);

    procedure dyn_nesne_Mause_Ender(Sender: TObject);

    procedure dyn_led_Click(Sender: TObject);

    procedure dyn_shape_Click(Sender: TObject);

    procedure dyn_sekil_Click(Sender: TObject);

    procedure dyn_img_Click(Sender: TObject);

    procedure dyn_anim_Click(Sender: TObject);

    procedure dyn_arrow_Click(Sender: TObject);

    procedure dyn_kadran_Click(Sender: TObject);

    procedure dyn_termo_Click(Sender: TObject);

 

    procedure SizeCtrlDuring(Sender: TObject; dx, dy: integer; State: TSCState);

    procedure SizeCtrlEnd(Sender: TObject; State: TSCState);

    procedure SizeCtrlTargetChange(Sender: TObject);

    procedure SizeCtrlMouseDown(Sender: TObject;

      Target: TControl; TargetPt: TPoint; var handled: boolean);

    procedure SizeCtrlSetCursor(Sender: TObject;

      Target: TControl; TargetPt: TPoint; var handled: boolean);

    procedure SizeCtrlKeyDown(Sender: TObject; var Key: Word;

      Shift: TShiftState);

  public

    { Public declarations }

    SizeCtrl: TSizeCtrl;

    inReposition : boolean;

    oldPos : TPoint;

    tags_ok:bool;

    create_first:bool;

    kolontitle:string;

    kolontitle1:string;

    kolontitle2:string;

    delete_tag:string;

    delete_tag1:string;

    delete_alarm_no:string;

    delete_durum_no:string;

    kullanici:string;

    yetki:string;

    i_value : Integer;

    r_value : Real;

    index   : Integer;

    tara    : bool;

    alarms   : bool;

    pendings : bool;

    alarm_sustur :bool;

    DEFAULT :bool;

    monito :integer;

    satir  :integer;

    sirala,siralaa :integer;

    first:bool;

    i:Integer;

    moni:integer;

    tags_ilk:bool;

    pozisyon:integer;

    grafik:string;

    anlik_deg:boolean;

    saat_e, saat_es, dakika_e, dakika_es, saniye_e, salise_e,saniye_eski : Word;

    YIL_e, AY_e, GUN_e : Word;

    ado1:BOOL;

    ado2:BOOL;

    ado3:BOOL;

    ado4:BOOL;

    ado5:BOOL;

    ado6:BOOL;

    ado7:BOOL;

    clear_ok:bool;

    ilk:bool;

    komut:bool;

    from_sorgu,to_sorgu:TDateTime;

    from_sorguu,to_sorguu:TDateTime;

    clip:bool;

    clip_out:bool;

    DosyaAdi:string;

    delete_db:bool;

    sekil_tipi : array[0..5] of TshapeType;

    sekil2_tipi : array[0..13] of TJvButtonShapes;

    arrow_tipi : array[0..4] of TVrArrowDirection;

    copy_block:bool;

    COPY:bool;

    RESIZE:BOOL;

    logo_enable:integer;

    list_no,list_no_e:integer;

    annim_e: array[1..1000] of bool;

    annim: array[1..1000] of bool;

 

    //OTO BUTTON EKLEME

    set_btn : array[1..1000] of TAdvGlassButton;

    reset_btn : array[1..1000] of TAdvGlassButton;

    toogle_btn : array[1..1000] of TAdvGlassButton;

    momantary_btn : array[1..1000] of TAdvGlassButton;

    btn2_created :BOOL;

    btn2_form_clicked : BOOL;

    SET_button_no:integer;

    RESET_button_no:integer;

    TOOGLE_button_no: integer;

    MOMANTARY_button_no: integer;

    button_top, button_left :integer;

    set_button,reset_button,toogle_button,momantary_button: bool;

    BUTON_EKLE:BOOL;

 

    //in out panel

    in_panel_comp: array[1..1000] of TVrNumEdit;

    out_panel_comp: array[1..1000] of TVrNumEdit;

    in_panel:bool;

    out_panel:bool;

    in_panel_created:bool;

    in_panel_form_clicked:bool;

    in_panel_top, in_panel_left :integer;

    in_panel_no:integer;

    out_panel_no:integer;

    IN_OUT_EKLE:BOOL;

 

    //text label

    text_label_comp: array[1..1000] of TLabel;

    text_label_top, text_label_left :integer;

    text_label_no:integer;

    text_label_created:bool;

    text_label_form_clicked:bool;

    TEXT_EKLE:BOOL;

 

     //panel

    panel_comp: array[1..1000] of TRzPanel;

    panel_top, panel_left :integer;

    panel_no:integer;

    panel_created:bool;

    panel_form_clicked:bool;

    PANEL_EKLE:BOOL;

 

    //led

    led_comp: array[1..1000] of TVrBlinkLed;

    led_top, led_left :integer;

    led_no:integer;

    led_created:bool;

    led_form_clicked:bool;

    LED_EKLE:BOOL;

 

    //shape 1

    shape_comp: array[1..1000] of TJvShape;

    shape_top, shape_left :integer;

    shape_no:integer;

    shape_created:bool;

    shape_form_clicked:bool;

    SHAPE_EKLE:BOOL;

 

    //shape 2

    sekil_comp: array[1..1000] of TJvShapedButton;

    sekil_top, sekil_left :integer;

    sekil_no:integer;

    sekil_created:bool;

    sekil_form_clicked:bool;

    SEKIL_EKLE:BOOL;

 

    //image

    img_comp: array[1..1000] of TImage;

    img_top, img_left :integer;

    img_no:integer;

    img_created:bool;

    img_form_clicked:bool;

    IMG_EKLE:BOOL;

 

    //image list

    imglist_comp: array[1..1000] of TImageList;

    imglist_top, imglist_left :integer;

    imglist_no:integer;

    imglist_created:bool;

    imglist_form_clicked:bool;

    IMGLIST_EKLE:BOOL;

    imaj_nod:integer;

    resim_no:integer;

 

    //animasyon

    anim_comp: array[1..1000] of TJvBmpAnimator;

    anim_top, anim_left :integer;

    anim_no:integer;

    anim_created:bool;

    anim_form_clicked:bool;

    ANIM_EKLE:BOOL;

 

    //arrow

    arrow_comp: array[1..1000] of TVrArrow;

    arrow_top, arrow_left :integer;

    arrow_no:integer;

    arrow_created:bool;

    arrow_form_clicked:bool;

    ARROW_EKLE:BOOL;

 

    //kadran

    kadran_comp: array[1..1000] of TVrAngularMeter;

    kadran_top, kadran_left :integer;

    kadran_no:integer;

    kadran_created:bool;

    kadran_form_clicked:bool;

    KADRAN_EKLE:BOOL;

 

    //termo

    termo_comp: array[1..1000] of TvrThermoMeter;

    termo_top, termo_left :integer;

    termo_no:integer;

    termo_created:bool;

    termo_form_clicked:bool;

    TERMO_EKLE:BOOL;

    end;

var

  SCADA_FRM: TSCADA_FRM;

  GRIDSIZE: integer = 10; //try changing this too.

const

xlBottom = -4107;

xlLeft = -4131;

xlRight = -4152;

xlTop = -4160;

xlHAlignCenter = -4108;

xlVAlignCenter = -4108;

Const xlThin = 2;

Const xlEdgeBottom = 9;

Const xlDouble = -4119;

Const xlThick = 4;

Const xl3DColumn = -4100;

Const xlColumns = 2;

Const xlLocationAsObject = 2;


implementation


uses IWStart, ServerController, Main,SCADA_SQL, DM1, MainFrm, Scada_2, SMS_SEND, ANLIK_TRENDLER,

Set_Button,Input_Panel,text_label,panel,led, MainUnit, uFormMain, shape, sekil, img, anim, arrow, kadran, termo;


{$R *.dfm}


Function Tag_No(Tag_Name : String) : integer;

Begin

DataModule1.ADOQuery14.Close;

DataModule1.ADOQuery14.SQL.Clear;

DataModule1.ADOQuery14.SQL.Add(‘select * from TAGS’);

DataModule1.ADOQuery14.SQL.Add(‘WHERE TAG LIKE ”%’+Tag_Name+’%’+#39);

DataModule1.ADOQuery14.Open;

Result := DataModule1.ADOQuery14.Fields[0].AsInteger;

end;



function FindRootNode(ACaption: String; ATreeView: TTreeView): TTreeNode;

var LCount: Integer;

begin

  result := nil;

  LCount := 0;

  while (LCount < ATreeView.Items.Count) and (result = nil) do

  begin

    if (ATreeView.Items.Item[LCount].Text = ACaption) and (ATreeView.Items.Item[LCount].Parent = nil) then

      result := ATreeView.Items.Item[LCount];

    inc(LCount);

  end;

end;


Function Grafik_List_No() : integer;

Var

  Node : TTreeNode;

  node_name:string;

  index,grafik_index,graf_list_no:integer;

Begin

  node_name:=SCADA_FRM.JvTreeView1.SelectedItems[0].Text;

  Node := FindRootNode(node_name, SCADA_FRM.JvTreeView1);

if node.Index>-1 then

begin

graf_list_no:=node.Index+1;


end else

begin

      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select IMGLIST_NO from IMGLIST’);

      DataModule1.ADOQuery84.SQL.Add(‘WHERE IMGLIST_PICTURE_NAME = ‘+””+SCADA_FRM.JvTreeView1.SelectedItems[0].Text+””);

      DataModule1.ADOQuery84.Open;

      graf_list_no:=DataModule1.ADOQuery84.Fields[0].AsInteger;


end;

Result := graf_list_no;

end;


//RegComponents: A simple recursive procedure which registers with SizeCtrl1

//all the visible controls contained by aParent except ‘tagged’ controls …

procedure RegComponents(aParent: TWinControl; SizeCtrl: TSizeCtrl);

var

  i: integer;

begin

  for i := 0 to aParent.ControlCount -1 do

  begin

    //In this demo, Tag <> 0 prevents a control becoming a SizeCtrl target …

    if aParent.Controls[i].Tag = 0 then

      SizeCtrl.RegisterControl(aParent.Controls[i]);

    if aParent.Controls[i] is TWinControl then

      RegComponents(TWinControl(aParent.Controls[i]), SizeCtrl);

  end;

end;

//——————————————————————————


procedure UnregComponents(aParent: TWinControl; SizeCtrl: TSizeCtrl);

var

  i: integer;

begin

  for i := 0 to aParent.ControlCount -1 do

  begin

    SizeCtrl.UnRegisterControl(aParent.Controls[i]);

    if aParent.Controls[i] is TWinControl then

      UnregComponents(TWinControl(aParent.Controls[i]), SizeCtrl);

  end;

end;

//——————————————————————————


procedure EnableSizeControl1Click(Sender: TObject);

begin

//  SCADA_FRM.cbSizeMove.Checked := not SCADA_FRM.cbSizeMove.Checked;

end;

//——————————————————————————


procedure TSCADA_FRM.cbSizeMoveClick(Sender: TObject);

begin


end;

//——————————————————————————


//——————————————————————————

// Give some basic feedback as to Size/Move changes …

// (nb: While this demo only displays one target’s properties, there may be

// any number of targets.)

//——————————————————————————


//1. Whenever a target changes …

procedure TSCADA_FRM.SizeCtrlTargetChange(Sender: TObject);

begin

  if SizeCtrl.TargetCount = 0 then

    StatusBar2.SimpleText := ”

  else with SizeCtrl.Targets[0] do StatusBar2.SimpleText :=

    format(‘  %s –  left:%d  top:%d, width:%d  height:%d’,

      [Name,left,top,width,height]);

end;


procedure TSCADA_FRM.SL1Click(Sender: TObject);

Var

  Node : TTreeNode;

  sellected_node: TTreeNode;

  node_name:string;

  index,res_no,imaj_no:integer;

begin

if JvTreeView1.SelectedCount=1 then

begin

      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select  * from IMGLIST’);

      DataModule1.ADOQuery84.Open;


      //imaj_no:=DataModule1.ADOQuery84.RecordCount+1;


      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select  * from IMGLIST’);

      DataModule1.ADOQuery84.SQL.Add(‘WHERE IMGLIST_PICTURE_NAME = ‘+””+JvTreeView1.SelectedItems[0].Text+””);

      DataModule1.ADOQuery84.Open;


  if DataModule1.ADOQuery84.Fields[3].AsString<> ” then

  begin

  index:=DataModule1.ADOQuery84.Fields[1].AsInteger-1;

  node_name:=DataModule1.ADOQuery84.Fields[3].AsString

  end else

  begin

  index:=JvTreeView1.SelectedItems[0].Index;

  node_name:=JvTreeView1.SelectedItems[0].Text;

  end;

  Node := FindRootNode(node_name, JvTreeView1);




    if JvOpenDialog3.Execute then

  begin

     try


      Image10.Picture.LoadFromFile( JvOpenDialog3.FileName);

      imgCollection.Items.Add.Picture.LoadFromFile(JvOpenDialog3.FileName);

      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select IMGLIST_PICTURE_NO from IMGLIST’);

      DataModule1.ADOQuery84.SQL.Add(‘WHERE IMGLIST_NO = ‘+””+inttostr(index+1)+””);

      DataModule1.ADOQuery84.SQL.Add(‘order by IMGLIST_PICTURE_NO desc’);

      DataModule1.ADOQuery84.Open;

      res_no:=DataModule1.ADOQuery84.Fields[0].AsInteger+1;


      DataModule1.ADOQuery83.Close;

      DataModule1.ADOQuery83.SQL.Clear;

      DataModule1.ADOQuery83.SQL.Add(‘Insert into IMGLIST(IMG_NO,IMGLIST_NO,IMGLIST_PICTURE_NO,IMGLIST_NAME,IMGLIST_PICTURE_NAME) values (‘+

      ””+inttostr((index+1)*1000+res_no)+”’,’+””+inttostr(index+1)+”’,’+””+inttostr(res_no)+”’,’+””+’Gragik list’+inttostr(index+1)+”’,’+””+’resim’+inttostr(index+1)+’_’+inttostr(res_no)+”’)’);

      DataModule1.ADOQuery83.ExecSQL;


     DataModule1.ADOQuery83.Close;

     DataModule1.ADOQuery83.SQL.Text := (‘UPDATE IMGLIST SET logo= :BLOB+ WHERE IMGLIST_NO = ‘+””+inttostr(index+1)+”’ and IMGLIST_PICTURE_NO = ‘+””+inttostr(res_no)+”’ ‘);

     DataModule1.ADOQuery83.Parameters[0].Assign(Image10.Picture);

     DataModule1.ADOQuery83.ExecSQL;

     imglist_comp[index+1].Width:=Image10.Picture.Bitmap.Width;

     imglist_comp[index+1].Height:=Image10.Picture.Bitmap.Height;

     imglist_comp[index+1].Add(Image10.Picture.Bitmap,nil);


     if Node <> nil then

      begin

      JvTreeView1.Items.AddChild(Node, ‘resim’+inttostr(index+1)+’_’+inttostr(res_no));

      end;


  finally


  end;

  end;

end else showmessage(‘Grafik listesi seçmediniz! Bir grafik listesi seçin.’);

end;


procedure TSCADA_FRM.SL2Click(Sender: TObject);

Var

  Node : TTreeNode;

  sellected_node: TTreeNode;

  node_name:string;

begin

{//sellected_node:=JvTreeView1.SelectedItems.;

 node_name:=JvTreeView1.SelectedItems[0].Text;

 //Node := FindRootNode(‘My Root Node’+inttostr(imaj_nod-1), JvTreeView1);

  Node := FindRootNode(node_name, JvTreeView1);

  if Node <> nil then

  begin

   JvTreeView1.Items.Delete(Node);

  end;}

  showmessage(‘Grafik silme iptal edilmiştir. Resimleri düzenleyip kullanabilirsiniz!’);

end;


//——————————————————————————


//2. During target resizing or moving …

procedure TSCADA_FRM.SizeCtrlDuring(Sender: TObject; dx,dy: integer; State: TSCState);

begin

  with SizeCtrl.Targets[0] do

    if State = scsMoving then

      StatusBar2.SimpleText := format(‘  %s –  left:%d  top:%d, width:%d  height:%d’,

        [Name, left+dx, top+dy, width, height])

    else {State = scsSizing}

      StatusBar2.SimpleText := format(‘  %s –  left:%d  top:%d, width:%d  height:%d’,

        [Name,left, top, width+dx, height+dy]);

end;

//——————————————————————————


//3. Once target resizing or moving has finished …

procedure TSCADA_FRM.SizeCtrlEnd(Sender: TObject; State: TSCState);

begin

    if SizeCtrl.Targets[0].ClassName = ‘TAdvGlassButton’ then

    begin

    DataModule1.ADOQuery61.Close;

    DataModule1.ADOQuery61.SQL.Clear;

    DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                 ‘button_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                 ‘button_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                 ‘button_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE button_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery61.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TRzPanel’ then

    begin

    DataModule1.ADOQuery62.Close;

    DataModule1.ADOQuery62.SQL.Clear;

    DataModule1.ADOQuery62.SQL.Add(‘UPDATE PANEL SET panel_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘panel_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘panel_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘panel_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE panel_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery62.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TVrNumEdit’ then

    begin

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘inout_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘inout_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘inout_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE inout_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery63.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TLabel’ then

    begin

    DataModule1.ADOQuery64.Close;

    DataModule1.ADOQuery64.SQL.Clear;

    DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘label_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘label_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘label_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE label_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery64.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TVrBlinkLed’ then

    begin

    DataModule1.ADOQuery65.Close;

    DataModule1.ADOQuery65.SQL.Clear;

    DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘led_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘led_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘led_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE led_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery65.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TJvShape’ then

    begin

    DataModule1.ADOQuery66.Close;

    DataModule1.ADOQuery66.SQL.Clear;

    DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘shape_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘shape_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘shape_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE shape_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery66.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TJvShapedButton’ then

    begin

    DataModule1.ADOQuery67.Close;

    DataModule1.ADOQuery67.SQL.Clear;

    DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘sekil_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘sekil_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘sekil_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE sekil_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery67.ExecSQL;

    end;


  if SizeCtrl.Targets[0].ClassName = ‘TImage’ then

    begin

    DataModule1.ADOQuery68.Close;

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘img_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘img_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘img_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE img_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


  if SizeCtrl.Targets[0].ClassName = ‘TJvBmpAnimator’ then

    begin

    DataModule1.ADOQuery68.Close;

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘anim_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘anim_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘anim_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE anim_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TVrArrow’ then

    begin

    DataModule1.ADOQuery68.Close;

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE ARROW SET arrow_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘arrow_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘arrow_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘arrow_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE arrow_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TVrAngularMeter’ then

    begin

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Add(‘UPDATE KADRAN SET kadran_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘kadran_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘kadran_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘kadran_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE kadran_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery63.ExecSQL;

    end;


    if SizeCtrl.Targets[0].ClassName = ‘TvrThermoMeter’ then

    begin

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Add(‘UPDATE TERMO SET termo_left=”’+inttostr(SizeCtrl.Targets[0].Left)+”’,’+

                                       ‘termo_top=”’+inttostr(SizeCtrl.Targets[0].Top)+”’,’+

                                       ‘termo_width=”’+inttostr(SizeCtrl.Targets[0].width)+”’,’+

                                       ‘termo_height=”’+inttostr(SizeCtrl.Targets[0].height)+”’ WHERE termo_name = ‘+””+SizeCtrl.Targets[0].name+””);

    DataModule1.ADOQuery63.ExecSQL;

    end;


  with SizeCtrl do

    if TargetCount = 0 then StatusBar2.SimpleText := ”

    else with Targets[0] do StatusBar2.SimpleText :=

      format(‘  %s –  left:%d  top:%d, width:%d  height:%d’,

        [Name,left,top,width,height]);


end;


//——————————————————————————

//——————————————————————————


//The TPageControl.IndexOfTabAt() method is not available in older Delphi

//compilers. Therefore, I’ve included the following function

//so this demo works all the way back to Delphi 3 …


function My_IndexOfTabAt(PageControl: TPageControl; X, Y: Integer): Integer;

var

  HitTest: TTCHitTestInfo;

begin

  Result := -1;

  if PtInRect(PageControl.ClientRect, Point(X, Y)) then

    with HitTest do

    begin

      pt.X := X;

      pt.Y := Y;

{$WARNINGS OFF}

      Result := SendMessage(PageControl.Handle, TCM_HITTEST, 0, LPARAM(@HitTest));

{$WARNINGS ON}

    end;

end;


//——————————————————————————


procedure TSCADA_FRM.SizeCtrlMouseDown(Sender: TObject;

  Target: TControl; TargetPt: TPoint; var handled: boolean);

var

  i: integer;

begin

  //When clicking the PageControl, it’s kind of nice to be able to change pages.

  //So, let’s see if a new page needs to be displayed …

  if (Target is TPageControl) then

    with TPageControl(Target) do

    begin


      //We need the PageIndex of the tab being clicked. The following line

      //is fine in Delphi 7 but isn’t available with older compilers …

      //    with TargetPt do i := PageControl1.IndexOfTabAt(X, Y);

      //Therefore, this is my workaround which works back to Delphi 3 …

      with TargetPt do i := My_IndexOfTabAt(TPageControl(Target), X, Y);


      if (i >= 0) and ( ActivePage.PageIndex <> i) then

      begin

        //since further mouse handling stuff is not required …

        handled := true;

        //Unregister from SizeCtrl all controls on the current page …

        UnregComponents(Page, SizeCtrl);

        //select the new page …

        ActivePage := Pages[i];

        //finally, register controls on the new page…

        RegComponents(Page, SizeCtrl);

      end;

    end;

end;

//——————————————————————————


procedure TSCADA_FRM.SizeCtrlSetCursor(Sender: TObject;

  Target: TControl; TargetPt: TPoint; var handled: boolean);

var

  i: integer;

begin

  //when clicking the PageControl, it’s kind of nice to show an appropriate

  //cursor if we’re clicking a new tab …

  if (Target is TPageControl) then

    with TPageControl(Target) do

    begin

      with TargetPt do i := My_IndexOfTabAt(TPageControl(Target), X, Y);

      if (i >= 0) and (ActivePage.PageIndex <> i) then

      begin

        //OK, we’ll manage things from here …

        handled := true;

        //assign the cursor directly …

        windows.SetCursor(screen.Cursors[crDefault]);

      end;

    end;

end;

//——————————————————————————


procedure TSCADA_FRM.SizeCtrlKeyDown(Sender: TObject; var Key: Word;

  Shift: TShiftState);

begin

  if key > VK_HELP then beep;

end;

//——————————————————————————



procedure TSCADA_FRM.ControlMouseMove(Sender: TObject;Shift: TShiftState;X, Y: Integer);

const

minWidth = 20;

minHeight = 20;

var

newPos: TPoint;

frmPoint : TPoint;

begin

  if (yetki=’ADMIN’) then

  begin

    if inReposition then

    begin

      with TWinControl(Sender) do

      begin

        GetCursorPos(newPos);

        if ssShift in Shift then

        begin //resize

        Screen.Cursor := crSizeNWSE;

        frmPoint := ScreenToClient(Mouse.CursorPos);

        if frmPoint.X > minWidth then

        Width := frmPoint.X;

        if frmPoint.Y > minHeight then

        Height := frmPoint.Y;

        end

        else //move

        begin

        Screen.Cursor := crSize;

        Left := Left – oldPos.X + newPos.X;

          Top := Top – oldPos.Y + newPos.Y;

        oldPos := newPos;

        end;

      end;

    end;

  end;

end; (*ControlMouseMove*)




procedure TSCADA_FRM.ComboBox23Change(Sender: TObject);

begin

ComboBox12.Text:=ComboBox23.Text;

ComboBox13.Text:=ComboBox23.Text;

ComboBox14.Text:=ComboBox23.Text;

ComboBox15.Text:=ComboBox23.Text;

ComboBox16.Text:=ComboBox23.Text;

ComboBox17.Text:=ComboBox23.Text;

ComboBox18.Text:=ComboBox23.Text;

ComboBox19.Text:=ComboBox23.Text;

ComboBox20.Text:=ComboBox23.Text;

ComboBox21.Text:=ComboBox23.Text;

ComboBox22.Text:=ComboBox23.Text;

if ComboBox12.Text=’1M’ then

begin

  DataModule1.ADOQuery44.Close;

  DataModule1.ADOQuery44.SQL.Clear;

  DataModule1.ADOQuery44.SQL.Add(‘SELECT * FROM TRENDS_TAGS’);

  DataModule1.ADOQuery44.Open;

  ComboBox1.Items.Clear;

  ComboBox2.Items.Clear;

  ComboBox3.Items.Clear;

  ComboBox4.Items.Clear;

  ComboBox5.Items.Clear;

  ComboBox6.Items.Clear;

  ComboBox7.Items.Clear;

  ComboBox8.Items.Clear;

  ComboBox9.Items.Clear;

  ComboBox10.Items.Clear;

  ComboBox11.Items.Clear;

  while not DataModule1.ADOQuery44.Eof do

      begin

      ComboBox1.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox2.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox3.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox4.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox5.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox6.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox7.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox8.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox9.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox10.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox11.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      DataModule1.ADOQuery44.Next;

      end;

end;

if ComboBox12.Text=’10M’ then

begin

  DataModule1.ADOQuery44.Close;

  DataModule1.ADOQuery44.SQL.Clear;

  DataModule1.ADOQuery44.SQL.Add(‘SELECT * FROM TRENDS_10M_TAGS’);

  DataModule1.ADOQuery44.Open;

  ComboBox1.Items.Clear;

  ComboBox2.Items.Clear;

  ComboBox3.Items.Clear;

  ComboBox4.Items.Clear;

  ComboBox5.Items.Clear;

  ComboBox6.Items.Clear;

  ComboBox7.Items.Clear;

  ComboBox8.Items.Clear;

  ComboBox9.Items.Clear;

  ComboBox10.Items.Clear;

  ComboBox11.Items.Clear;

  while not DataModule1.ADOQuery44.Eof do

      begin

      ComboBox1.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox2.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox3.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox4.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox5.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox6.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox7.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox8.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox9.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox10.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox11.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      DataModule1.ADOQuery44.Next;

      end;

end;

if ComboBox12.Text=’1H’ then

begin

  DataModule1.ADOQuery44.Close;

  DataModule1.ADOQuery44.SQL.Clear;

  DataModule1.ADOQuery44.SQL.Add(‘SELECT * FROM TRENDS_1H_TAGS’);

  DataModule1.ADOQuery44.Open;

  ComboBox1.Items.Clear;

  ComboBox2.Items.Clear;

  ComboBox3.Items.Clear;

  ComboBox4.Items.Clear;

  ComboBox5.Items.Clear;

  ComboBox6.Items.Clear;

  ComboBox7.Items.Clear;

  ComboBox8.Items.Clear;

  ComboBox9.Items.Clear;

  ComboBox10.Items.Clear;

  ComboBox11.Items.Clear;

  while not DataModule1.ADOQuery44.Eof do

      begin

      ComboBox1.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox2.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox3.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox4.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox5.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox6.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox7.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox8.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox9.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox10.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      ComboBox11.Items.Add(DataModule1.ADOQuery44.Fields[0].AsString);

      DataModule1.ADOQuery44.Next;

      end;

end;

end;


procedure TSCADA_FRM.ComboBox24Change(Sender: TObject);

var

adet:integer;

begin

adet:=strtoint(ComboBox24.Text);

if adet>1 then CheckBox13.Checked:=true else CheckBox13.Checked:=false;

if adet>2 then CheckBox14.Checked:=true else CheckBox14.Checked:=false;

if adet>3 then CheckBox15.Checked:=true else CheckBox15.Checked:=false;

if adet>4 then CheckBox16.Checked:=true else CheckBox16.Checked:=false;

if adet>5 then CheckBox17.Checked:=true else CheckBox17.Checked:=false;

if adet>6 then CheckBox18.Checked:=true else CheckBox18.Checked:=false;

if adet>7 then CheckBox19.Checked:=true else CheckBox19.Checked:=false;

if adet>8 then CheckBox20.Checked:=true else CheckBox20.Checked:=false;

if adet>9 then CheckBox21.Checked:=true else CheckBox21.Checked:=false;

if adet>10 then CheckBox23.Checked:=true else CheckBox23.Checked:=false;


end;


procedure TSCADA_FRM.ControlMouseDown(Sender: TObject;Button: TMouseButton;Shift: TShiftState;X, Y: Integer);

var

komut : string;

kac : integer;

begin

if (yetki=’ADMIN’) then

begin

if ((Sender.ClassName = ‘TVrBlinkLed’) and (copy_block =false) and (not copy)) then clip_nesne:=Sender;

inReposition:=True;

//SetCapture(TWinControl(Sender).Handle);

GetCursorPos(oldPos);

end else

begin

if SCADA_FRM.clip_nesne.ClassName = ‘TAdvGlassButton’ then

    begin

    kac:=AnsiPos(‘_’ , (SCADA_FRM.clip_nesne as TAdvGlassButton).Name);

    komut:=AnsiLeftStr((SCADA_FRM.clip_nesne as TAdvGlassButton).Name , kac-1);

    if (komut = ‘MOMANTARY’) then

      begin

      DataModule1.ADOQuery61.Close;

      DataModule1.ADOQuery61.SQL.Clear;

      DataModule1.ADOQuery61.SQL.Add(‘SELECT button_event_tag FROM BUTONLAR’);

      DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name= ‘+””+(SCADA_FRM.clip_nesne as TAdvGlassButton).Name+””);

      DataModule1.ADOQuery61.Open;

      try

       begin

         opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery61.Fields[0].AsString)].WriteSync(1);

       end;

     except  showmessage(‘PLC bağlantısı yok’);

     end;

    end;

    end;

end;

end; (*ControlMouseDown*)


procedure TSCADA_FRM.ControlMouseUp(Sender: TObject;Button: TMouseButton;Shift: TShiftState; X, Y: Integer);

var

komut : string;

kac : integer;

begin

if (yetki=’ADMIN’) then

  begin

  if inReposition then

  begin

  Screen.Cursor := crDefault;

  ReleaseCapture;

  inReposition := False;

    if SCADA_FRM.clip_nesne.ClassName = ‘TAdvGlassButton’ then

    begin

    DataModule1.ADOQuery61.Close;

    DataModule1.ADOQuery61.SQL.Clear;

    DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr((SCADA_FRM.clip_nesne as TAdvGlassButton).Left)+”’,’+

                                 ‘button_top=”’+inttostr((SCADA_FRM.clip_nesne as TAdvGlassButton).Top)+”’ WHERE button_name = ‘+””+(SCADA_FRM.clip_nesne as TAdvGlassButton).Name+””);

    DataModule1.ADOQuery61.ExecSQL;



    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TRzPanel’ then

    begin

    DataModule1.ADOQuery62.Close;

    DataModule1.ADOQuery62.SQL.Clear;

    DataModule1.ADOQuery62.SQL.Add(‘UPDATE PANEL SET panel_left=”’+inttostr((SCADA_FRM.clip_nesne as TRzPanel).Left)+”’,’+

                                       ‘panel_top=”’+inttostr((SCADA_FRM.clip_nesne as TRzPanel).Top)+”’ WHERE panel_name = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

    DataModule1.ADOQuery62.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TVrNumEdit’ then

    begin

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_left=”’+inttostr((SCADA_FRM.clip_nesne as TVrNumEdit).Left)+”’,’+

                                       ‘inout_top=”’+inttostr((SCADA_FRM.clip_nesne as TVrNumEdit).Top)+”’ WHERE inout_name = ‘+””+(SCADA_FRM.clip_nesne as TVrNumEdit).Name+””);

    DataModule1.ADOQuery63.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TLabel’ then

    begin

    DataModule1.ADOQuery64.Close;

    DataModule1.ADOQuery64.SQL.Clear;

    DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_left=”’+inttostr((SCADA_FRM.clip_nesne as TLabel).Left)+”’,’+

                                       ‘label_top=”’+inttostr((SCADA_FRM.clip_nesne as TLabel).Top)+”’ WHERE label_name = ‘+””+(SCADA_FRM.clip_nesne as TLabel).Name+””);

    DataModule1.ADOQuery64.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TVrBlinkLed’ then

    begin

    DataModule1.ADOQuery65.Close;

    DataModule1.ADOQuery65.SQL.Clear;

    DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_left=”’+inttostr((SCADA_FRM.clip_nesne as TVrBlinkLed).Left)+”’,’+

                                       ‘led_top=”’+inttostr((SCADA_FRM.clip_nesne as TVrBlinkLed).Top)+”’ WHERE led_name = ‘+””+(SCADA_FRM.clip_nesne as TVrBlinkLed).Name+””);

    DataModule1.ADOQuery65.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TJvShape’ then

    begin

    DataModule1.ADOQuery66.Close;

    DataModule1.ADOQuery66.SQL.Clear;

    DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_left=”’+inttostr((SCADA_FRM.clip_nesne as TJvShape).Left)+”’,’+

                                       ‘shape_top=”’+inttostr((SCADA_FRM.clip_nesne as TJvShape).Top)+”’ WHERE shape_name = ‘+””+(SCADA_FRM.clip_nesne as TJvShape).Name+””);

    DataModule1.ADOQuery66.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TJvShapedButton’ then

    begin

    DataModule1.ADOQuery67.Close;

    DataModule1.ADOQuery67.SQL.Clear;

    DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_left=”’+inttostr((SCADA_FRM.clip_nesne as TJvShapedButton).Left)+”’,’+

                                       ‘sekil_top=”’+inttostr((SCADA_FRM.clip_nesne as TJvShapedButton).Top)+”’ WHERE sekil_name = ‘+””+(SCADA_FRM.clip_nesne as TJvShapedButton).Name+””);

    DataModule1.ADOQuery67.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TImage’ then

    begin

    DataModule1.ADOQuery68.Close;

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_left=”’+inttostr((SCADA_FRM.clip_nesne as TImage).Left)+”’,’+

                                       ‘img_top=”’+inttostr((SCADA_FRM.clip_nesne as TImage).Top)+”’ WHERE img_name = ‘+””+(SCADA_FRM.clip_nesne as TImage).Name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TJvBmpAnimator’ then

    begin

    DataModule1.ADOQuery68.Close;

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_left=”’+inttostr((SCADA_FRM.clip_nesne as TJvBmpAnimator).Left)+”’,’+

                                       ‘anim_top=”’+inttostr((SCADA_FRM.clip_nesne as TJvBmpAnimator).Top)+”’ WHERE anim_name = ‘+””+(SCADA_FRM.clip_nesne as TJvBmpAnimator).Name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TVrArrow’ then

    begin

    DataModule1.ADOQuery68.Close;

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE ARROW SET arrow_left=”’+inttostr((SCADA_FRM.clip_nesne as TVrArrow).Left)+”’,’+

                                       ‘arrow_top=”’+inttostr((SCADA_FRM.clip_nesne as TVrArrow).Top)+”’ WHERE arrow_name = ‘+””+(SCADA_FRM.clip_nesne as TVrArrow).Name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TVrAngularMeter’ then

    begin

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE KADRAN SET kadran_left=”’+inttostr((SCADA_FRM.clip_nesne as TVrAngularMeter).Left)+”’,’+

                                       ‘kadran_top=”’+inttostr((SCADA_FRM.clip_nesne as TVrAngularMeter).Top)+”’ WHERE kadran_name = ‘+””+(SCADA_FRM.clip_nesne as TVrAngularMeter).Name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


    if SCADA_FRM.clip_nesne.ClassName = ‘TvrThermoMeter’ then

    begin

    DataModule1.ADOQuery68.SQL.Clear;

    DataModule1.ADOQuery68.SQL.Add(‘UPDATE TERMO SET termo_left=”’+inttostr((SCADA_FRM.clip_nesne as TvrThermoMeter).Left)+”’,’+

                                       ‘termo_top=”’+inttostr((SCADA_FRM.clip_nesne as TvrThermoMeter).Top)+”’ WHERE termo_name = ‘+””+(SCADA_FRM.clip_nesne as TvrThermoMeter).Name+””);

    DataModule1.ADOQuery68.ExecSQL;

    end;


  end;

  end else

  begin

  if SCADA_FRM.clip_nesne.ClassName = ‘TAdvGlassButton’ then

    begin

    kac:=AnsiPos(‘_’ , (SCADA_FRM.clip_nesne as TAdvGlassButton).Name);

    komut:=AnsiLeftStr((SCADA_FRM.clip_nesne as TAdvGlassButton).Name , kac-1);

    if (komut = ‘MOMANTARY’) then

   begin

   DataModule1.ADOQuery61.Close;

   DataModule1.ADOQuery61.SQL.Clear;

   DataModule1.ADOQuery61.SQL.Add(‘SELECT button_event_tag FROM BUTONLAR’);

   DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name= ‘+””+(SCADA_FRM.clip_nesne as TAdvGlassButton).Name+””);

   DataModule1.ADOQuery61.Open;

    try

    begin

      opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery61.Fields[0].AsString)].WriteSync(0);

    end;

   except  showmessage(‘PLC bağlantısı yok’);

    end;

   end;

    end;


  end;

end; (*ControlMouseUp*)



Function BOOL_VALUE(Tag_Name : String) : BOOL;

var

tag_n:integer;

Begin

tag_n:=Tag_No(Tag_Name);

if SCADA_FRM.OPC1.OPCGroups[0].OPCItems[tag_n].IsGoodQuality then Result :=StrToBool(SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[tag_n].ValueStr) else Result:=false;

end;


procedure Delay(ms : longint);

var TheTime : LongInt;

begin

TheTime := GetTickCount + ms;

while GetTickCount < TheTime do

Application.ProcessMessages;

end;



procedure TSCADA_FRM.COPY1Click(Sender: TObject);

var

  komut : string;

  kac : integer;

  strFont: string;

begin

if not copy then

begin

copy_block:=true;

copy:=true;

timer1.Enabled:=true;

if SCADA_FRM.clip_nesne.ClassName = ‘TAdvGlassButton’ then

begin

  kac:=AnsiPos(‘_’ , (SCADA_FRM.clip_nesne as TAdvGlassButton).Name);

  komut:=AnsiLeftStr((SCADA_FRM.clip_nesne as TAdvGlassButton).Name , kac-1);


  if (komut = ‘SET’) then

  begin

  clip:=false;

  BUTON_EKLE:=TRUE;

  set_button:=true;

  reset_button:=false;

  toogle_button:=false;

  MOMANTARY_button:=false;

  tmr1.Enabled:=True;

  btn2_created:=False;

  btn2_form_clicked :=False;

  end;


   if (komut = ‘RESET’) then

   begin

   clip:=false;

   BUTON_EKLE:=TRUE;

   set_button:=false;

   reset_button:=true;

   toogle_button:=false;

   MOMANTARY_button:=false;

   tmr1.Enabled:=True;

   btn2_created:=False;

   btn2_form_clicked :=False;

   end;


   if (komut = ‘TOOGLE’) then

   begin

   clip:=false;

   BUTON_EKLE:=TRUE;

   set_button:=false;

   reset_button:=false;

   toogle_button:=true;

   MOMANTARY_button:=false;

   tmr1.Enabled:=True;

   btn2_created:=False;

   btn2_form_clicked :=False;

   end;


   if (komut = ‘MOMANTARY’) then

   begin

   clip:=false;

   BUTON_EKLE:=TRUE;

   set_button:=false;

   reset_button:=false;

   toogle_button:=false;

   MOMANTARY_button:=true;

   tmr1.Enabled:=True;

   btn2_created:=False;

   btn2_form_clicked :=False;

   end;


   delay(150);

  (SCADA_FRM.created_nesne as TAdvGlassButton).Caption:=(SCADA_FRM.clip_nesne as TAdvGlassButton).Caption;

  (SCADA_FRM.created_nesne as TAdvGlassButton).Font:=(SCADA_FRM.clip_nesne as TAdvGlassButton).Font;

  (SCADA_FRM.created_nesne as TAdvGlassButton).Width:=(SCADA_FRM.clip_nesne as TAdvGlassButton).Width;

  (SCADA_FRM.created_nesne as TAdvGlassButton).Height:=(SCADA_FRM.clip_nesne as TAdvGlassButton).Height;

  (SCADA_FRM.created_nesne as TAdvGlassButton).ShineColor:=(SCADA_FRM.clip_nesne as TAdvGlassButton).ShineColor;

  (SCADA_FRM.created_nesne as TAdvGlassButton).GlowColor:=(SCADA_FRM.clip_nesne as TAdvGlassButton).GlowColor;

  strFont := GetSetProp((SCADA_FRM.clip_nesne as TAdvGlassButton).Font, ‘Style’, True);

  DataModule1.ADOQuery61.Close;

  DataModule1.ADOQuery61.SQL.Clear;

  DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_caption=”’+(SCADA_FRM.clip_nesne as TAdvGlassButton).Caption+”’,’+

                                 ‘button_width=”’+inttostr((SCADA_FRM.clip_nesne as TAdvGlassButton).Width)+”’,’+

                                 ‘button_height=”’+inttostr((SCADA_FRM.clip_nesne as TAdvGlassButton).Height)+”’,’+

                                 ‘button_font_size=”’+inttostr((SCADA_FRM.clip_nesne as TAdvGlassButton).Font.Size)+”’,’+

                                 ‘button_font_name=”’+(SCADA_FRM.clip_nesne as TAdvGlassButton).Font.Name+”’,’+

                                 ‘button_font_color=”’+colortostring((SCADA_FRM.clip_nesne as TAdvGlassButton).Font.Color)+”’,’+

                                 ‘button_shine_color=”’+colortostring((SCADA_FRM.created_nesne as TAdvGlassButton).ShineColor)+”’,’+

                                 ‘button_glow_color=”’+colortostring((SCADA_FRM.created_nesne as TAdvGlassButton).GlowColor)+”’,’+

                                 ‘button_font_style=”’+strFont+”’ WHERE button_name = ‘+””+(SCADA_FRM.created_nesne as TAdvGlassButton).Name+””);

  DataModule1.ADOQuery61.ExecSQL;

end;


if SCADA_FRM.clip_nesne.ClassName = ‘TVrNumEdit’ then

begin

  kac:=AnsiPos(‘_’ , (SCADA_FRM.clip_nesne as TVrNumEdit).Name);

  komut:=AnsiLeftStr((SCADA_FRM.clip_nesne as TVrNumEdit).Name , kac-1);


  if (komut = ‘In’) then

  begin

  clip:=false;

  IN_OUT_EKLE:=TRUE;

  in_panel:=true;

  out_panel:=false;

  tmr1.Enabled:=True;

  in_panel_created:=False;

  in_panel_form_clicked :=False;

  end;


  if (komut = ‘Out’) then

  begin

  clip:=false;

  IN_OUT_EKLE:=TRUE;

  in_panel:=false;

  out_panel:=true;

  tmr1.Enabled:=True;

  in_panel_created:=False;

  in_panel_form_clicked :=False;

  end;


  delay(150);

  (SCADA_FRM.created_nesne as TVrNumEdit).Width:=(SCADA_FRM.clip_nesne as TVrNumEdit).Width;

  (SCADA_FRM.created_nesne as TVrNumEdit).Height:=(SCADA_FRM.clip_nesne as TVrNumEdit).Height;

  (SCADA_FRM.created_nesne as TVrNumEdit).Font:=(SCADA_FRM.clip_nesne as TVrNumEdit).Font;

  (SCADA_FRM.created_nesne as TVrNumEdit).Font.Color:=(SCADA_FRM.clip_nesne as TVrNumEdit).Font.Color;

  (SCADA_FRM.created_nesne as TVrNumEdit).Color:=(SCADA_FRM.clip_nesne as TVrNumEdit).Color;

  strFont := GetSetProp((SCADA_FRM.clip_nesne as TVrNumEdit).Font, ‘Style’, True);

  DataModule1.ADOQuery63.Close;

  DataModule1.ADOQuery63.SQL.Clear;

  DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_width=”’+inttostr((SCADA_FRM.clip_nesne as TVrNumEdit).Width)+”’,’+

                                 ‘inout_height=”’+inttostr((SCADA_FRM.clip_nesne as TVrNumEdit).Height)+”’,’+

                                 ‘inout_font_size=”’+inttostr((SCADA_FRM.clip_nesne as TVrNumEdit).Font.Size)+”’,’+

                                 ‘inout_font_name=”’+(SCADA_FRM.clip_nesne as TVrNumEdit).Font.Name+”’,’+

                                 ‘inout_font_color=”’+colortostring((SCADA_FRM.clip_nesne as TVrNumEdit).Font.Color)+”’,’+

                                 ‘inout_color=”’+colortostring((SCADA_FRM.created_nesne as TVrNumEdit).Color)+”’,’+

                                 ‘inout_font_style=”’+strFont+”’,’+

                                 ‘virgul=”’+inttostr((SCADA_FRM.clip_nesne as TVrNumEdit).Decimals)+”’ WHERE inout_name = ‘+””+(SCADA_FRM.created_nesne as TVrNumEdit).Name+””);

  DataModule1.ADOQuery63.ExecSQL;


end;

if SCADA_FRM.clip_nesne.ClassName = ‘TLabel’ then

begin

  clip:=false;

  TEXT_EKLE:=TRUE;

  tmr1.Enabled:=True;

  text_label_created:=False;

  text_label_form_clicked :=False;

  delay(150);

  (SCADA_FRM.created_nesne as TLabel).Caption:=(SCADA_FRM.clip_nesne as TLabel).Caption;

  (SCADA_FRM.created_nesne as TLabel).Width:=(SCADA_FRM.clip_nesne as TLabel).Width;

  (SCADA_FRM.created_nesne as TLabel).Height:=(SCADA_FRM.clip_nesne as TLabel).Height;

  (SCADA_FRM.created_nesne as TLabel).Font:=(SCADA_FRM.clip_nesne as TLabel).Font;

  (SCADA_FRM.created_nesne as TLabel).Font.Color:=(SCADA_FRM.clip_nesne as TLabel).Font.Color;

  (SCADA_FRM.created_nesne as TLabel).Color:=(SCADA_FRM.clip_nesne as TLabel).Color;

  strFont := GetSetProp((SCADA_FRM.clip_nesne as TLabel).Font, ‘Style’, True);

  DataModule1.ADOQuery64.Close;

  DataModule1.ADOQuery64.SQL.Clear;

  DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_caption=”’+(SCADA_FRM.clip_nesne as TLabel).Caption+”’,’+

                                 ‘label_width=”’+inttostr((SCADA_FRM.clip_nesne as TLabel).Width)+”’,’+

                                 ‘label_height=”’+inttostr((SCADA_FRM.clip_nesne as TLabel).Height)+”’,’+

                                 ‘label_font_size=”’+inttostr((SCADA_FRM.clip_nesne as TLabel).Font.Size)+”’,’+

                                 ‘label_font_name=”’+(SCADA_FRM.clip_nesne as TLabel).Font.Name+”’,’+

                                 ‘label_font_color=”’+colortostring((SCADA_FRM.clip_nesne as TLabel).Font.Color)+”’,’+

                                 ‘label_font_style=”’+strFont+”’,’+

                                 ‘label_color=”’+colortostring((SCADA_FRM.clip_nesne as TLabel).Color)+”’ WHERE label_name = ‘+””+(SCADA_FRM.created_nesne as TLabel).Name+””);

  DataModule1.ADOQuery64.ExecSQL;


end;


if SCADA_FRM.clip_nesne.ClassName = ‘TRzPanel’ then

begin

  clip:=false;

  PANEL_EKLE:=TRUE;

  tmr1.Enabled:=True;

  panel_created:=False;

  panel_form_clicked :=False;

  delay(150);

  (SCADA_FRM.created_nesne as TRzPanel).Caption:=(SCADA_FRM.clip_nesne as TRzPanel).Caption;

  (SCADA_FRM.created_nesne as TRzPanel).Width:=(SCADA_FRM.clip_nesne as TRzPanel).Width;

  (SCADA_FRM.created_nesne as TRzPanel).Height:=(SCADA_FRM.clip_nesne as TRzPanel).Height;

  (SCADA_FRM.created_nesne as TRzPanel).Font:=(SCADA_FRM.clip_nesne as TRzPanel).Font;

  (SCADA_FRM.created_nesne as TRzPanel).Font.Color:=(SCADA_FRM.clip_nesne as TRzPanel).Font.Color;

  (SCADA_FRM.created_nesne as TRzPanel).Color:=(SCADA_FRM.clip_nesne as TRzPanel).Color;

  strFont := GetSetProp((SCADA_FRM.clip_nesne as TRzPanel).Font, ‘Style’, True);

  DataModule1.ADOQuery62.Close;

  DataModule1.ADOQuery62.SQL.Clear;

  DataModule1.ADOQuery62.SQL.Add(‘UPDATE PANEL SET panel_caption=”’+(SCADA_FRM.clip_nesne as TRzPanel).caption+”’,’+

                                 ‘panel_width=”’+inttostr((SCADA_FRM.clip_nesne as TRzPanel).Width)+”’,’+

                                 ‘panel_height=”’+inttostr((SCADA_FRM.clip_nesne as TRzPanel).Height)+”’,’+

                                 ‘panel_font_size=”’+inttostr((SCADA_FRM.clip_nesne as TRzPanel).Font.Size)+”’,’+

                                 ‘panel_font_name=”’+(SCADA_FRM.clip_nesne as TRzPanel).Font.Name+”’,’+

                                 ‘panel_font_color=”’+colortostring((SCADA_FRM.clip_nesne as TRzPanel).Font.Color)+”’,’+

                                 ‘panel_font_style=”’+strFont+”’,’+

                                 ‘panel_color=”’+colortostring((SCADA_FRM.clip_nesne as TRzPanel).Color)+”’ WHERE panel_name = ‘+””+(SCADA_FRM.created_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery62.ExecSQL;

end;


if SCADA_FRM.clip_nesne.ClassName = ‘TVrBlinkLed’ then

begin

  clip:=false;

  LED_EKLE:=TRUE;

  tmr1.Enabled:=True;

  led_created:=False;

  led_form_clicked :=False;

  delay(300);

  (SCADA_FRM.created_nesne as TVrBlinkLed).Width:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Width;

  (SCADA_FRM.created_nesne as TVrBlinkLed).Height:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Height;

  (SCADA_FRM.created_nesne as TVrBlinkLed).EnableBlinking:=(SCADA_FRM.clip_nesne as TVrBlinkLed).EnableBlinking;

  (SCADA_FRM.created_nesne as TVrBlinkLed).BlinkSpeed:=(SCADA_FRM.clip_nesne as TVrBlinkLed).BlinkSpeed;

  (SCADA_FRM.created_nesne as TVrBlinkLed).Palette1.High:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Palette1.High;

  (SCADA_FRM.created_nesne as TVrBlinkLed).Palette1.Low:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Palette1.Low;

  (SCADA_FRM.created_nesne as TVrBlinkLed).Palette2.Low:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Palette1.Low;

  (SCADA_FRM.created_nesne as TVrBlinkLed).Palette2.High:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Palette1.Low;

  (SCADA_FRM.created_nesne as TVrBlinkLed).Parent:=(SCADA_FRM.clip_nesne as TVrBlinkLed).Parent;

  //showmessage((SCADA_FRM.created_nesne as TVrBlinkLed).Parent.Name);

  DataModule1.ADOQuery65.Close;

  DataModule1.ADOQuery65.SQL.Clear;

  DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_width=”’+inttostr((SCADA_FRM.clip_nesne as TVrBlinkLed).Width)+”’,’+

                                 ‘led_height=”’+inttostr((SCADA_FRM.clip_nesne as TVrBlinkLed).Height)+”’,’+

                                 ‘led_blinking=”’+booltostr((SCADA_FRM.clip_nesne as TVrBlinkLed).EnableBlinking)+”’,’+

                                 ‘led_blink_speed=”’+inttostr((SCADA_FRM.clip_nesne as TVrBlinkLed).BlinkSpeed)+”’,’+

                                 ‘led_high_color=”’+colortostring((SCADA_FRM.clip_nesne as TVrBlinkLed).Palette1.High)+”’,’+

                                 ‘led_low_color=”’+colortostring((SCADA_FRM.clip_nesne as TVrBlinkLed).Palette1.Low)+”’ WHERE led_name = ‘+””+(SCADA_FRM.created_nesne as TVrBlinkLed).Name+””);

  DataModule1.ADOQuery65.ExecSQL;

end;


if SCADA_FRM.clip_nesne.ClassName = ‘TJvShape’ then

begin

  clip:=false;

  SHAPE_EKLE:=TRUE;

  tmr1.Enabled:=True;

  shape_created:=False;

  shape_form_clicked :=False;

  delay(150);

  (SCADA_FRM.created_nesne as TJvShape).Width:=(SCADA_FRM.clip_nesne as TJvShape).Width;

  (SCADA_FRM.created_nesne as TJvShape).Height:=(SCADA_FRM.clip_nesne as TJvShape).Height;

  (SCADA_FRM.created_nesne as TJvShape).Shape:=(SCADA_FRM.clip_nesne as TJvShape).Shape;

  (SCADA_FRM.created_nesne as TJvShape).Brush.Color:=(SCADA_FRM.clip_nesne as TJvShape).Brush.Color;

  (SCADA_FRM.created_nesne as TJvShape).Parent:=(SCADA_FRM.clip_nesne as TJvShape).Parent;

  DataModule1.ADOQuery66.Close;

  DataModule1.ADOQuery66.SQL.Clear;

  DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_width=”’+inttostr((SCADA_FRM.clip_nesne as TJvShape).Width)+”’,’);

  DataModule1.ADOQuery66.SQL.Add(‘shape_height=”’+inttostr((SCADA_FRM.clip_nesne as TJvShape).Height)+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShape).Shape = stCircle then DataModule1.ADOQuery66.SQL.Add(‘shape_tipi=”’+’0’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShape).Shape = stEllipse then DataModule1.ADOQuery66.SQL.Add(‘shape_tipi=”’+’1’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShape).Shape = stRectangle then DataModule1.ADOQuery66.SQL.Add(‘shape_tipi=”’+’2’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShape).Shape = stRoundRect then DataModule1.ADOQuery66.SQL.Add(‘shape_tipi=”’+’3’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShape).Shape = stRoundSquare then DataModule1.ADOQuery66.SQL.Add(‘shape_tipi=”’+’4’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShape).Shape = stSquare then DataModule1.ADOQuery66.SQL.Add(‘shape_tipi=”’+’5’+”’,’);

  DataModule1.ADOQuery66.SQL.Add(‘shape_color=”’+inttostr((SCADA_FRM.clip_nesne as TJvShape).Brush.Color)+”’ WHERE shape_name = ‘+””+(SCADA_FRM.created_nesne as TJvShape).Name+””);

  DataModule1.ADOQuery66.ExecSQL;

end;


if SCADA_FRM.clip_nesne.ClassName = ‘TJvShapedButton’ then

begin

  clip:=false;

  SEKIL_EKLE:=TRUE;

  tmr1.Enabled:=True;

  sekil_created:=False;

  sekil_form_clicked :=False;

  delay(150);

  (SCADA_FRM.created_nesne as TJvShapedButton).Width:=(SCADA_FRM.clip_nesne as TJvShapedButton).Width;

  (SCADA_FRM.created_nesne as TJvShapedButton).Height:=(SCADA_FRM.clip_nesne as TJvShapedButton).Height;

  (SCADA_FRM.created_nesne as TJvShapedButton).ButtonShape:=(SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape;

  (SCADA_FRM.created_nesne as TJvShapedButton).Color:=(SCADA_FRM.clip_nesne as TJvShapedButton).Color;

  (SCADA_FRM.created_nesne as TJvShapedButton).Parent:=(SCADA_FRM.clip_nesne as TJvShapedButton).Parent;

  DataModule1.ADOQuery67.Close;

  DataModule1.ADOQuery67.SQL.Clear;

  DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_width=”’+inttostr((SCADA_FRM.clip_nesne as TJvShapedButton).Width)+”’,’);

  DataModule1.ADOQuery67.SQL.Add(‘sekil_height=”’+inttostr((SCADA_FRM.clip_nesne as TJvShapedButton).Height)+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSDiamond then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’0’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSHex then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’1’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSLeftArrow then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’2’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSOctagon then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’3’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSPar then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’4’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSPentagon then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’5’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSRevPentagon then DataModule1.ADOQuery67.SQL.Add(‘sekil=”’+’6’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSRightArrow then DataModule1.ADOQuery67.SQL.Add(‘sekil=”’+’7’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSRing then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’8’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSRound then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’9’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSTriangleDown then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’10’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSTriangleLeft then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’11’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSTriangleRight then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’12’+”’,’);

  if (SCADA_FRM.clip_nesne as TJvShapedButton).ButtonShape = jvSTriangleUp then DataModule1.ADOQuery67.SQL.Add(‘sekil_tipi=”’+’13’+”’,’);

  DataModule1.ADOQuery67.SQL.Add(‘sekil_color=”’+inttostr((SCADA_FRM.clip_nesne as TJvShapedButton).Color)+”’ WHERE sekil_name = ‘+””+(SCADA_FRM.created_nesne as TJvShapedButton).Name+””);

  DataModule1.ADOQuery67.ExecSQL;

end;


if SCADA_FRM.clip_nesne.ClassName = ‘TImage’ then

begin

  clip:=false;

  IMG_EKLE:=TRUE;

  tmr1.Enabled:=True;

  img_created:=False;

  img_form_clicked :=False;

  delay(150);

  (SCADA_FRM.created_nesne as TImage).Width:=(SCADA_FRM.clip_nesne as TImage).Width;

  (SCADA_FRM.created_nesne as TImage).Height:=(SCADA_FRM.clip_nesne as TImage).Height;

  (SCADA_FRM.created_nesne as TImage).Picture:=(SCADA_FRM.clip_nesne as TImage).Picture;

  (SCADA_FRM.created_nesne as TImage).Parent:=(SCADA_FRM.clip_nesne as TImage).Parent;


  DataModule1.ADOQuery69.Close;

  DataModule1.ADOQuery69.SQL.Clear;

  DataModule1.ADOQuery69.SQL.Text :=(‘select * from IMG WHERE img_name = ‘+””+(SCADA_FRM.clip_nesne as TImage).Name+””);

  DataModule1.ADOQuery69.Open;


  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_width=”’+inttostr((SCADA_FRM.clip_nesne as TImage).Width)+”’,’);

  DataModule1.ADOQuery68.SQL.Add(‘img_height=”’+inttostr((SCADA_FRM.clip_nesne as TImage).Height)+”’,’);

  DataModule1.ADOQuery68.SQL.Add(‘img_picture=”’+DataModule1.ADOQuery69.Fields[4].AsString+”’ WHERE img_name = ‘+””+(SCADA_FRM.created_nesne as TImage).Name+””);

  DataModule1.ADOQuery68.ExecSQL;

end;


if SCADA_FRM.clip_nesne.ClassName = ‘TJvBmpAnimator’ then

begin

  clip:=false;

  ANIM_EKLE:=TRUE;

  tmr1.Enabled:=True;

  anim_created:=False;

  anim_form_clicked :=False;

  delay(150);

  (SCADA_FRM.created_nesne as TJvBmpAnimator).Width:=(SCADA_FRM.clip_nesne as TJvBmpAnimator).Width;

  (SCADA_FRM.created_nesne as TJvBmpAnimator).Height:=(SCADA_FRM.clip_nesne as TJvBmpAnimator).Height;

  (SCADA_FRM.created_nesne as TJvBmpAnimator).Images:=(SCADA_FRM.clip_nesne as TJvBmpAnimator).Images;

  (SCADA_FRM.created_nesne as TJvBmpAnimator).Parent:=(SCADA_FRM.clip_nesne as TJvBmpAnimator).Parent;


  DataModule1.ADOQuery69.Close;

  DataModule1.ADOQuery69.SQL.Clear;

  DataModule1.ADOQuery69.SQL.Text :=(‘select * from ANIM WHERE anim_name = ‘+””+(SCADA_FRM.clip_nesne as TImage).Name+””);

  DataModule1.ADOQuery69.Open;


  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_width=”’+inttostr((SCADA_FRM.clip_nesne as TJvBmpAnimator).Width)+”’,’);

  DataModule1.ADOQuery68.SQL.Add(‘anim_height=”’+inttostr((SCADA_FRM.clip_nesne as TJvBmpAnimator).Height)+”’,’);

  DataModule1.ADOQuery68.SQL.Add(‘anim_list=”’+DataModule1.ADOQuery69.Fields[4].AsString+”’ WHERE anim_name = ‘+””+(SCADA_FRM.created_nesne as TJvBmpAnimator).Name+””);

  DataModule1.ADOQuery68.ExecSQL;

end;


copy_block:=false;

end;

end;



procedure TSCADA_FRM.dxBarButton1Click(Sender: TObject);

begin

try

begin

  SCADA_SQL_FRM.PopupMenu1.Destroy;

  SCADA_SQL_FRM.NotifyIcon1.DestroyComponents;

  SCADA_SQL_FRM.Timer2.Destroy;

  SCADA_FRM.ALARMLAR.Destroy;

  SCADA_FRM.KUMANDA.Destroy;

  SCADA_FRM.TRENDLER.Destroy;

  SCADA_FRM.DEFAULTS.Destroy;

  SCADA_FRM.GORSELLER.Destroy;

  SCADA_FRM.Tmr1.Destroy;

  SCADA_FRM.opc1.Destroy;

  SCADA_FRM.opc2.Destroy;

  SCADA_FRM.opc3.Destroy;

  SCADA_FRM.ANLIK_OPC.Destroy;

  SCADA_FRM.BAGLANTI_OPC.Destroy;

  SEND_SMS.Destroy;

  MailerForm.Destroy;

  JSON.Free;

  xml.Free;

  SCADA_FRM.Close;

  Scada_Connect.Destroy;

  //delay(200);

  //SCADA_SQL_FRM.Destroy;

  Application.Terminate; //DOES NOT SHUT DOWN?!?

  Halt(1); //DOES SHUT DOWN!

  //Exit;

end;

finally


end;

end;


procedure TSCADA_FRM.dxBarButton6Click(Sender: TObject);

begin

  if (clip_nesne.ClassName = ‘TAdvGlassButton’) then

  begin

  DataModule1.ADOQuery61.Close;

  DataModule1.ADOQuery61.SQL.Clear;

  DataModule1.ADOQuery61.SQL.Add(‘Delete from BUTONLAR’);

  DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name = ‘+””+(SCADA_FRM.clip_nesne as TAdvGlassButton).Name+””);

  DataModule1.ADOQuery61.ExecSQL;

  end;

  if (clip_nesne.ClassName = ‘TRzPanel’) then

  begin

  DataModule1.ADOQuery62.Close;

  DataModule1.ADOQuery62.SQL.Clear;

  DataModule1.ADOQuery62.SQL.Add(‘Delete from PANEL’);

  DataModule1.ADOQuery62.SQL.Add(‘WHERE panel_name = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery62.ExecSQL;

  end;

SCADA_FRM.clip_nesne.Destroy;

end;


procedure TSCADA_FRM.dxBarLargeButton17Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  IN_OUT_EKLE:=TRUE;

  in_panel:=false;

  out_panel:=true;

  tmr1.Enabled:=True;

  in_panel_created:=False;

  in_panel_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton18Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  TEXT_EKLE:=TRUE;

  tmr1.Enabled:=True;

  text_label_created:=False;

  text_label_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton19Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  PANEL_EKLE:=TRUE;

  tmr1.Enabled:=True;

  panel_created:=False;

  panel_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton1Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  BUTON_EKLE:=TRUE;

  set_button:=true;

  reset_button:=false;

  toogle_button:=false;

  momantary_button:=false;

  tmr1.Enabled:=True;

  btn2_created:=False;

  btn2_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton20Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  LED_EKLE:=TRUE;

  tmr1.Enabled:=True;

  led_created:=False;

  led_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton21Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  SHAPE_EKLE:=TRUE;

  tmr1.Enabled:=True;

  shape_created:=False;

  shape_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton23Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  SEKIL_EKLE:=TRUE;

  tmr1.Enabled:=True;

  sekil_created:=False;

  sekil_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton24Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  IMG_EKLE:=TRUE;

  tmr1.Enabled:=True;

  img_created:=False;

  img_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton25Click(Sender: TObject);

begin

if RESIZE then

begin

dxBarLargeButton25.HotImageIndex:=17;

RESIZE:=FALSE;

end else

begin

dxBarLargeButton25.HotImageIndex:=7;

RESIZE:=TRUE;

end;

  SizeCtrl.Enabled := RESIZE;

//  EnableSizeControl1.Checked := cbSizeMove.Checked;


  //Now, just in case the visible controls have changed (ie a new Tabsheet was

  //made visible) while SizeCtrl was disabled …

  if RESIZE then

  begin

    //make sure the right controls on the PageControl are registered …

    UnRegComponents(Page, SizeCtrl);

    RegComponents(Page, SizeCtrl);

  end;

  ActiveControl := nil;

  invalidate; //fixup grid painting on the form

end;


procedure TSCADA_FRM.dxBarLargeButton28Click(Sender: TObject);

var

  pt : tPoint;

begin

      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select * from IMGLIST’);

      DataModule1.ADOQuery84.Open;

if DataModule1.ADOQuery84.RecordCount<>0 then

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  ANIM_EKLE:=TRUE;

  tmr1.Enabled:=True;

  anim_created:=False;

  anim_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end else showmessage(‘GRAFİK LİST OLUŞTURULMAMIŞ. ANİMASYON OLUŞTURMADAN ÖNCE GRAFİK LİSTESİ OLUŞTURUN!’);

end;


procedure TSCADA_FRM.dxBarLargeButton29Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  BUTON_EKLE:=TRUE;

  set_button:=false;

  reset_button:=false;

  toogle_button:=false;

  momantary_button:=true;

  tmr1.Enabled:=True;

  btn2_created:=False;

  btn2_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton2Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  BUTON_EKLE:=TRUE;

  set_button:=false;

  reset_button:=true;

  toogle_button:=false;

  momantary_button:=false;

  tmr1.Enabled:=True;

  btn2_created:=False;

  btn2_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton30Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  ARROW_EKLE:=TRUE;

  tmr1.Enabled:=True;

  arrow_created:=False;

  arrow_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton31Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  KADRAN_EKLE:=TRUE;

  tmr1.Enabled:=True;

  kadran_created:=False;

  kadran_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton32Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  TERMO_EKLE:=TRUE;

  tmr1.Enabled:=True;

  termo_created:=False;

  termo_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton3Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  BUTON_EKLE:=TRUE;

  set_button:=false;

  reset_button:=false;

  toogle_button:=true;

  momantary_button:=false;

  tmr1.Enabled:=True;

  btn2_created:=False;

  btn2_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton6Click(Sender: TObject);

begin

if yetki=’ADMIN’ then

begin

yetki:=’NOT_ADMIN’;

PopupMenu1.AutoPopup:=false;

dxBarLargeButton6.HotImageIndex:=6;


   DataModule1.ADOQuery82.Close;

   DataModule1.ADOQuery82.SQL.Clear;

   DataModule1.ADOQuery82.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery82.Open;

   DataModule1.ADOQuery82.First;

  while not DataModule1.ADOQuery82.Eof do

  begin

  out_panel_comp[DataModule1.ADOQuery82.Fields[0].AsInteger].Enabled:=false;

  DataModule1.ADOQuery82.Next;

  end;


end else

begin

yetki:=’ADMIN’;

PopupMenu1.AutoPopup:=true;

dxBarLargeButton6.HotImageIndex:=5;


   DataModule1.ADOQuery81.Close;

   DataModule1.ADOQuery81.SQL.Clear;

   DataModule1.ADOQuery81.SQL.Add(‘SELECT * FROM IMG’);

   DataModule1.ADOQuery81.Open;

   DataModule1.ADOQuery81.First;

  while not DataModule1.ADOQuery81.Eof do

  begin

  img_comp[DataModule1.ADOQuery81.Fields[0].AsInteger].Visible:=true;

  DataModule1.ADOQuery81.Next;

  end;


   DataModule1.ADOQuery81.Close;

   DataModule1.ADOQuery81.SQL.Clear;

   DataModule1.ADOQuery81.SQL.Add(‘SELECT * FROM ANIM’);

   DataModule1.ADOQuery81.Open;

   DataModule1.ADOQuery81.First;

  while not DataModule1.ADOQuery81.Eof do

  begin

  anim_comp[DataModule1.ADOQuery81.Fields[0].AsInteger].Visible:=true;

  DataModule1.ADOQuery81.Next;

  end;


   DataModule1.ADOQuery82.Close;

   DataModule1.ADOQuery82.SQL.Clear;

   DataModule1.ADOQuery82.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery82.Open;

   DataModule1.ADOQuery82.First;

  while not DataModule1.ADOQuery82.Eof do

  begin

  out_panel_comp[DataModule1.ADOQuery82.Fields[0].AsInteger].Enabled:=true;

  DataModule1.ADOQuery82.Next;

  end;


end;


end;


procedure TSCADA_FRM.dxBarLargeButton7Click(Sender: TObject);

begin

if (yetki=’ADMIN’) then

begin

PAGE.ActivePage:=ALARM;

  DataModule1.ADOQuery3.Close;

  DataModule1.ADOQuery3.SQL.Clear;

  DataModule1.ADOQuery3.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery3.Open;

end;

if AYARLAR.ActivePage<>KULLANICILAR then

begin

AYARLAR.ActivePage:=KULLANICILAR;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clred;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;


procedure TSCADA_FRM.dxBarLargeButton8Click(Sender: TObject);

var

  pt : tPoint;

begin

if ((PAGE.ActivePage = PAGE_1) or (PAGE.ActivePage = PAGE_2) or (PAGE.ActivePage = PAGE_3) or (PAGE.ActivePage = PAGE_4) or (PAGE.ActivePage = PAGE_5) or (PAGE.ActivePage = PAGE_6) or (PAGE.ActivePage = PAGE_7)) then

begin

if not RESIZE then

begin

  clip:=false;

  IN_OUT_EKLE:=TRUE;

  in_panel:=true;

  out_panel:=false;

  tmr1.Enabled:=True;

  in_panel_created:=False;

  in_panel_form_clicked :=False;

  pt := Mouse.CursorPos;

end;

end;

end;


procedure TSCADA_FRM.dyn_nesne_Mause_Ender(Sender: TObject);

begin

if (copy_block = false)then clip_nesne:=Sender;

      if (clip_nesne.ClassName = ‘TRzPanel’) then

       begin

        clip_out:=false;

        clip:=true;

        if (created_nesne.ClassName = ‘TAdvGlassButton’) and BUTON_EKLE then

        begin

        (created_nesne as TAdvGlassButton).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_parent=”’+(created_nesne as TAdvGlassButton).Parent.Name+”’ WHERE button_name = ‘+””+(SCADA_FRM.created_nesne as TAdvGlassButton).Name+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TVrNumEdit’) and IN_OUT_EKLE then

        begin

        (created_nesne as TVrNumEdit).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery63.Close;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_parent=”’+(created_nesne as TVrNumEdit).Parent.Name+”’ WHERE inout_name = ‘+””+(SCADA_FRM.created_nesne as TVrNumEdit).Name+””);

        DataModule1.ADOQuery63.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TLabel’) and TEXT_EKLE then

        begin

        (created_nesne as TLabel).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery64.Close;

        DataModule1.ADOQuery64.SQL.Clear;

        DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_parent=”’+(created_nesne as TLabel).Parent.Name+”’ WHERE label_name = ‘+””+(SCADA_FRM.created_nesne as TLabel).Name+””);

        DataModule1.ADOQuery64.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TVrBlinkLed’) and LED_EKLE then

        begin

        (created_nesne as TVrBlinkLed).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery65.Close;

        DataModule1.ADOQuery65.SQL.Clear;

        DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_parent=”’+(created_nesne as TVrBlinkLed).Parent.Name+”’ WHERE led_name = ‘+””+(SCADA_FRM.created_nesne as TVrBlinkLed).Name+””);

        DataModule1.ADOQuery65.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TJvShape’) and SHAPE_EKLE then

        begin

        (created_nesne as TJvShape).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery66.Close;

        DataModule1.ADOQuery66.SQL.Clear;

        DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_parent=”’+(created_nesne as TJvShape).Parent.Name+”’ WHERE shape_name = ‘+””+(SCADA_FRM.created_nesne as TJvShape).Name+””);

        DataModule1.ADOQuery66.ExecSQL;

        end;

         if (created_nesne.ClassName = ‘TJvShapedButton’) and SEKIL_EKLE then

        begin

        (created_nesne as TJvShapedButton).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery67.Close;

        DataModule1.ADOQuery67.SQL.Clear;

        DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_parent=”’+(created_nesne as TJvShapedButton).Parent.Name+”’ WHERE sekil_name = ‘+””+(SCADA_FRM.created_nesne as TJvShapedButton).Name+””);

        DataModule1.ADOQuery67.ExecSQL;

        end;

         if (created_nesne.ClassName = ‘TImage’) and IMG_EKLE then

        begin

        (created_nesne as TImage).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_parent=”’+(created_nesne as TImage).Parent.Name+”’ WHERE img_name = ‘+””+(SCADA_FRM.created_nesne as TImage).Name+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TJvBmpAnimator’) and ANIM_EKLE then

        begin

        (created_nesne as TJvBmpAnimator).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_parent=”’+(created_nesne as TJvBmpAnimator).Parent.Name+”’ WHERE anim_name = ‘+””+(SCADA_FRM.created_nesne as TJvBmpAnimator).Name+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;


        if (created_nesne.ClassName = ‘TVrArrow’) and ARROW_EKLE then

        begin

        (created_nesne as TVrArrow).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ARROW SET arrow_parent=”’+(created_nesne as TVrArrow).Parent.Name+”’ WHERE arrow_name = ‘+””+(SCADA_FRM.created_nesne as TVrArrow).Name+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

       end else

        clip:=false;

end;


procedure TSCADA_FRM.dynButtonClick(Sender: TObject);

var

  pt1 : tPoint;

  komut : string;

  kac : integer;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TAdvGlassButton).Top = button_top) and ((sender as TAdvGlassButton).Left = button_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    Set_Button_frm.Left:=50;

    Set_Button_frm.Top:=200;

    Set_Button_frm.Caption:=(sender as TAdvGlassButton).Name;

    Set_Button_frm.Edit1.Text:=(sender as TAdvGlassButton).caption;

    Set_Button_frm.VrNumEdit2.Value:=(sender as TAdvGlassButton).Height;

    Set_Button_frm.VrNumEdit1.Value:=(sender as TAdvGlassButton).Width;

    Set_Button_frm.VrNumEdit3.Text:=inttostr((sender as TAdvGlassButton).Font.Size);

    Set_Button_frm.ColorBox1.Selected:=(SCADA_FRM.created_nesne as TAdvGlassButton).ShineColor;

    Set_Button_frm.ColorBox2.Selected:=(SCADA_FRM.created_nesne as TAdvGlassButton).GlowColor;

    Set_Button_frm.FontDialog1.Font.Color := (SCADA_FRM.created_nesne as TAdvGlassButton).Font.Color;

    DataModule1.ADOQuery61.Close;

    DataModule1.ADOQuery61.SQL.Clear;

    DataModule1.ADOQuery61.SQL.Text :=(‘select * from BUTONLAR WHERE button_name = ‘+””+(sender as TAdvGlassButton).Name+””);

    DataModule1.ADOQuery61.Open;

    Set_Button_frm.CheckBox1.Checked:=DataModule1.ADOQuery61.Fields[12].AsBoolean;

    Set_Button_frm.CheckBox2.Checked:=DataModule1.ADOQuery61.Fields[13].AsBoolean;

    Set_Button_frm.ANIM_TAG.Text:=DataModule1.ADOQuery61.Fields[14].AsString;

    Set_Button_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery61.Fields[15].AsString);

    Set_Button_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery61.Fields[16].AsString);

    Set_Button_frm.Edit2.Text:=DataModule1.ADOQuery61.Fields[17].AsString;

    Set_Button_frm.ShowModal;

    end else

    begin

     button_top :=(sender as TAdvGlassButton).Top;

     button_left :=(sender as TAdvGlassButton).Left;

    end;

  end else

  begin

  kac:=AnsiPos(‘_’ , (sender as TAdvGlassButton).Name);

  komut:=AnsiLeftStr((sender as TAdvGlassButton).Name , kac-1);


  if (komut = ‘SET’) then

   begin

   DataModule1.ADOQuery61.Close;

   DataModule1.ADOQuery61.SQL.Clear;

   DataModule1.ADOQuery61.SQL.Add(‘SELECT button_event_tag FROM BUTONLAR’);

   DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name= ‘+””+(sender as TAdvGlassButton).Name+””);

   DataModule1.ADOQuery61.Open;

    try

    begin

      opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery61.Fields[0].AsString)].WriteSync(1);

    end;

   except  showmessage(‘PLC bağlantısı yok’);

   end;

   end;



   if (komut = ‘RESET’) then

      begin

      DataModule1.ADOQuery61.Close;

      DataModule1.ADOQuery61.SQL.Clear;

      DataModule1.ADOQuery61.SQL.Add(‘SELECT button_event_tag FROM BUTONLAR’);

      DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name= ‘+””+(sender as TAdvGlassButton).Name+””);

      DataModule1.ADOQuery61.Open;

      try

      begin

      opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery61.Fields[0].AsString)].WriteSync(0);

      end;

      except  showmessage(‘PLC bağlantısı yok’);

     end;

   end;


   if (komut = ‘TOOGLE’) then

   begin

   DataModule1.ADOQuery61.Close;

   DataModule1.ADOQuery61.SQL.Clear;

   DataModule1.ADOQuery61.SQL.Add(‘SELECT button_event_tag FROM BUTONLAR’);

   DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name= ‘+””+(sender as TAdvGlassButton).Name+””);

   DataModule1.ADOQuery61.Open;

    try

    begin

    if BOOL_VALUE(DataModule1.ADOQuery61.Fields[0].AsString) then

    begin

      opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery61.Fields[0].AsString)].WriteSync(0);

    end else

      begin

      opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery61.Fields[0].AsString)].WriteSync(1);

      end;

    end;

   except  showmessage(‘PLC bağlantısı yok’);

   end;

   end;


  end;

end;


procedure TSCADA_FRM.dyn_in_panel_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TVrNumEdit).Top = in_panel_top) and ((sender as TVrNumEdit).Left = in_panel_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    in_button_frm.Left:=50;

    in_button_frm.Top:=200;

    in_button_frm.Caption:=(sender as TVrNumEdit).Name;

    in_button_frm.VrNumEdit2.Value:=(sender as TVrNumEdit).Height;

    in_button_frm.VrNumEdit1.Value:=(sender as TVrNumEdit).Width;

    in_button_frm.VrNumEdit3.Text:=inttostr((sender as TVrNumEdit).Font.Size);

    in_button_frm.FontDialog1.Font.Color := (SCADA_FRM.created_nesne as TVrNumEdit).Font.Color;

    in_button_frm.ColorBox1.Selected:=(SCADA_FRM.created_nesne as TVrNumEdit).Color;

    DataModule1.ADOQuery63.Close;

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Text :=(‘select * from INOUTPANEL WHERE inout_name = ‘+””+(sender as TVrNumEdit).Name+””);

    DataModule1.ADOQuery63.Open;

    in_button_frm.CheckBox1.Checked:=DataModule1.ADOQuery63.Fields[10].AsBoolean;

    in_button_frm.CheckBox2.Checked:=DataModule1.ADOQuery63.Fields[11].AsBoolean;

    in_button_frm.ANIM_TAG.Text:=DataModule1.ADOQuery63.Fields[12].AsString;

    in_button_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery63.Fields[13].AsString);

    in_button_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery63.Fields[14].AsString);

    in_button_frm.Edit2.Text:=DataModule1.ADOQuery63.Fields[15].AsString;

    in_button_frm.NxSpinEdit61.Text :=DataModule1.ADOQuery63.Fields[19].AsString;

    in_button_frm.VrNumEdit4.Text :=DataModule1.ADOQuery63.Fields[20].AsString;

    in_button_frm.VrNumEdit5.Text :=DataModule1.ADOQuery63.Fields[21].AsString;

    in_button_frm.ShowModal;

    end else

    begin

     in_panel_top :=(sender as TVrNumEdit).Top;

     in_panel_left :=(sender as TVrNumEdit).Left;

    end;

  end else

  begin

  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Text :=’select keybord from SAYFALAR’;

  DataModule1.ADOQuery79.Open;

  if DataModule1.ADOQuery79.Fields[0].AsBoolean then

  AdvSmoothPopupTouchKeyBoard1.ShowAtXY((sender as TVrNumEdit).Left+(sender as TVrNumEdit).Width,(sender as TVrNumEdit).Top+188);

  end;

end;


procedure TSCADA_FRM.dyn_in_panel_OnKeyPress(Sender: TObject; var Key: Char);

var

  pt1 : tPoint;

  komut : string;

  kac : integer;

begin

if (key = #0) then

begin

  if (yetki=’ADMIN’) then

  begin

  //gerek yok

  end else

  begin

  kac:=AnsiPos(‘_’ , (sender as TVrNumEdit).Name);

  komut:=AnsiLeftStr((sender as TVrNumEdit).Name , kac-1);


  // showmessage(‘In VAR  ‘ +(sender as TVrNumEdit).Name);

   //komutlar buraya yazılacak


   DataModule1.ADOQuery71.Close;

   DataModule1.ADOQuery71.SQL.Clear;

   DataModule1.ADOQuery71.SQL.Add(‘SELECT inout_event_tag, max_deger, min_deger FROM INOUTPANEL’);

   DataModule1.ADOQuery71.SQL.Add(‘WHERE inout_name= ‘+””+(sender as TVrNumEdit).Name+””);

   DataModule1.ADOQuery71.Open;


   if (sender as TVrNumEdit).Value > DataModule1.ADOQuery71.Fields[1].AsInteger then (sender as TVrNumEdit).Value:=DataModule1.ADOQuery71.Fields[1].AsInteger;

   if (sender as TVrNumEdit).Value < DataModule1.ADOQuery71.Fields[2].AsInteger then (sender as TVrNumEdit).Value:=DataModule1.ADOQuery71.Fields[2].AsInteger;


      try

      begin

      if ((sender as TVrNumEdit).Text <> ”) then opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery71.Fields[0].AsString)].WriteSync((sender as TVrNumEdit).Value) else opc1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery71.Fields[0].AsString)].WriteSync(0);

      end;

      except  showmessage(‘PLC bağlantısı yok’);

     end;



  end;

end;

end;


procedure TSCADA_FRM.dyn_text_label_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TLabel).Top = text_label_top) and ((sender as TLabel).Left = text_label_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    text_label_frm.Left:=50;

    text_label_frm.Top:=200;

    text_label_frm.Caption:=(sender as TLabel).Name;

    text_label_frm.VrNumEdit2.Value:=(sender as TLabel).Height;

    text_label_frm.VrNumEdit1.Value:=(sender as TLabel).Width;

    text_label_frm.VrNumEdit3.Text:=inttostr((sender as TLabel).Font.Size);

    text_label_frm.FontDialog1.Font.Color := (SCADA_FRM.created_nesne as TLabel).Font.Color;

    text_label_frm.Edit1.Text:= (SCADA_FRM.created_nesne as TLabel).Caption;

      DataModule1.ADOQuery64.Close;

      DataModule1.ADOQuery64.SQL.Clear;

      DataModule1.ADOQuery64.SQL.Text :=(‘select * from LABEL WHERE label_name = ‘+””+(sender as TLabel).Name+””);

      DataModule1.ADOQuery64.Open;


      text_label_frm.CheckBox2.Checked:=DataModule1.ADOQuery64.Fields[10].AsBoolean;

      text_label_frm.ANIM_TAG.Text:=DataModule1.ADOQuery64.Fields[11].AsString;

      text_label_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery64.Fields[12].AsString);

      text_label_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery64.Fields[13].AsString);

    text_label_frm.ShowModal;

    end else

    begin

     text_label_top :=(sender as TLabel).Top;

     text_label_left :=(sender as TLabel).Left;

    end;

  end else

  begin

   //gerek kalmadı

  end;

end;

procedure TSCADA_FRM.dyn_panel_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TRzPanel).Top = panel_top) and ((sender as TRzPanel).Left = panel_left)) then

    begin

      if ((btn2_form_clicked = false) or (in_panel_form_clicked=false) or(text_label_form_clicked = false) or (panel_form_clicked =false) or (led_form_clicked =false) or (shape_form_clicked =false) or (sekil_form_clicked =false) or (img_form_clicked =false) or (anim_form_clicked =false) or (arrow_form_clicked =false)) then

      begin

      btn2_form_clicked :=True;

      COPY:=false;

      in_panel_form_clicked :=True;

      text_label_form_clicked :=True;

      panel_form_clicked :=True;

      led_form_clicked :=True;

      shape_form_clicked :=True;

      sekil_form_clicked :=True;

      img_form_clicked :=True;

      anim_form_clicked :=True;

      arrow_form_clicked :=True;

      end else

      begin

      created_nesne:=Sender;

      pt1 := Mouse.CursorPos;

      panel_frm.Left:=50;

      panel_frm.Top:=200;

      panel_frm.Caption:=(sender as TRzPanel).Name;

      panel_frm.Edit1.Text:=(sender as TRzPanel).Caption;

      panel_frm.VrNumEdit2.Value:=(sender as TRzPanel).Height;

      panel_frm.VrNumEdit1.Value:=(sender as TRzPanel).Width;

      panel_frm.VrNumEdit3.Text:=inttostr((sender as TRzPanel).Font.Size);

      panel_frm.FontDialog1.Font.Color := (SCADA_FRM.created_nesne as TRzPanel).Font.Color;

      panel_frm.ColorBox1.Selected:= (SCADA_FRM.created_nesne as TRzPanel).Color;

      DataModule1.ADOQuery62.Close;

      DataModule1.ADOQuery62.SQL.Clear;

      DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+(sender as TRzPanel).Name+””);

      DataModule1.ADOQuery62.Open;

      panel_frm.CheckBox2.Checked:=DataModule1.ADOQuery62.Fields[10].AsBoolean;

      panel_frm.ANIM_TAG.Text:=DataModule1.ADOQuery62.Fields[11].AsString;

      panel_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery62.Fields[12].AsString);

      panel_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery62.Fields[13].AsString);

      panel_frm.ShowModal;

      end;

    end else

    begin

     panel_top :=(sender as TRzPanel).Top;

     panel_left :=(sender as TRzPanel).Left;

    end;

  end else

  begin

   //gerek kalmadı

  end;

end;


procedure TSCADA_FRM.dyn_led_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TVrBlinkLed).Top = led_top) and ((sender as TVrBlinkLed).Left = led_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    led_frm.Left:=50;

    led_frm.Top:=200;

    led_frm.Caption:=(sender as TVrBlinkLed).Name;

    led_frm.VrNumEdit1.Value:=(sender as TVrBlinkLed).Width;

    led_frm.VrNumEdit2.Value:=(sender as TVrBlinkLed).BlinkSpeed;

    led_frm.ColorBox3.Selected:=(sender as TVrBlinkLed).Palette1.High;

    led_frm.ColorBox4.Selected:=(sender as TVrBlinkLed).Palette1.Low;

      DataModule1.ADOQuery65.Close;

      DataModule1.ADOQuery65.SQL.Clear;

      DataModule1.ADOQuery65.SQL.Text :=(‘select * from LED WHERE led_name = ‘+””+(sender as TVrBlinkLed).Name+””);

      DataModule1.ADOQuery65.Open;

      led_frm.CheckBox1.Checked:=DataModule1.ADOQuery65.Fields[4].AsBoolean;

      led_frm.CheckBox2.Checked:=DataModule1.ADOQuery65.Fields[6].AsBoolean;

      led_frm.ANIM_TAG.Text:=DataModule1.ADOQuery65.Fields[7].AsString;


    led_frm.ShowModal;

    end else

    begin

     led_top :=(sender as TVrBlinkLed).Top;

     led_left :=(sender as TVrBlinkLed).Left;

    end;

  end else

  begin

   //gerek kalmadı

  end;

end;


procedure TSCADA_FRM.dyn_shape_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TShape).Top = shape_top) and ((sender as TShape).Left = shape_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    shape_frm.Left:=50;

    shape_frm.Top:=200;

    shape_frm.Caption:=(sender as TJvShape).Name;

    shape_frm.VrNumEdit1.Value:=(sender as TShape).Width;

    shape_frm.VrNumEdit2.Value:=(sender as TShape).Height;

    shape_frm.ColorBox1.Selected:=(sender as TShape).Brush.Color;

      DataModule1.ADOQuery66.Close;

      DataModule1.ADOQuery66.SQL.Clear;

      DataModule1.ADOQuery66.SQL.Text :=(‘select * from SHAPE WHERE shape_name = ‘+””+(sender as TJvShape).Name+””);

      DataModule1.ADOQuery66.Open;

      shape_frm.ComboBox1.ItemIndex:=DataModule1.ADOQuery66.Fields[4].AsInteger;

      shape_frm.CheckBox2.Checked:=DataModule1.ADOQuery66.Fields[6].AsBoolean;

      shape_frm.ANIM_TAG.Text:=DataModule1.ADOQuery66.Fields[7].AsString;

      shape_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery66.Fields[8].AsString);

      shape_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery66.Fields[9].AsString);

    shape_frm.ShowModal;

    end else

    begin

     shape_top :=(sender as TJvShape).Top;

     shape_left :=(sender as TJvShape).Left;

    end;

  end else

  begin

   //gerek yok

  end;

end;


procedure TSCADA_FRM.dyn_sekil_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TJvShapedButton).Top = sekil_top) and ((sender as TJvShapedButton).Left = sekil_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    sekil_frm.Left:=50;

    sekil_frm.Top:=200;

    sekil_frm.Caption:=(sender as TJvShapedButton).Name;

    sekil_frm.VrNumEdit1.Value:=(sender as TJvShapedButton).Width;

    sekil_frm.VrNumEdit2.Value:=(sender as TJvShapedButton).Height;

    sekil_frm.ColorBox1.Selected:=(sender as TJvShapedButton).Brush.Color;

      DataModule1.ADOQuery67.Close;

      DataModule1.ADOQuery67.SQL.Clear;

      DataModule1.ADOQuery67.SQL.Text :=(‘select * from SEKIL WHERE sekil_name = ‘+””+(sender as TJvShapedButton).Name+””);

      DataModule1.ADOQuery67.Open;

      sekil_frm.ComboBox1.ItemIndex:=DataModule1.ADOQuery67.Fields[4].AsInteger;

      sekil_frm.CheckBox2.Checked:=DataModule1.ADOQuery67.Fields[6].AsBoolean;

      sekil_frm.ANIM_TAG.Text:=DataModule1.ADOQuery67.Fields[7].AsString;

      sekil_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery67.Fields[8].AsString);

      sekil_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery67.Fields[9].AsString);

    sekil_frm.ShowModal;

    end else

    begin

     sekil_top :=(sender as TJvShapedButton).Top;

     sekil_left :=(sender as TJvShapedButton).Left;

    end;

  end else

  begin

   //gerek yok

  end;

end;


procedure TSCADA_FRM.dyn_img_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if  (((sender as TImage).Top = img_top) and ((sender as TImage).Left = img_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    img_frm.Left:=50;

    img_frm.Top:=200;

    img_frm.Caption:=(sender as TImage).Name;

    img_frm.VrNumEdit1.Value:=(sender as TImage).Width;

    img_frm.VrNumEdit2.Value:=(sender as TImage).Height;

//    img_frm.Edit1.Text:=(sender as TImage).Picture.GetNamePath;

      DataModule1.ADOQuery68.Close;

      DataModule1.ADOQuery68.SQL.Clear;

      DataModule1.ADOQuery68.SQL.Text :=(‘select * from IMG WHERE img_name = ‘+””+(sender as TImage).Name+””);

      DataModule1.ADOQuery68.Open;

      img_frm.Edit1.Text:=DataModule1.ADOQuery68.Fields[4].AsString;

      img_frm.ANIM_TAG.Text:=DataModule1.ADOQuery68.Fields[6].AsString;

    img_frm.ShowModal;

    end else

    begin

     img_top :=(sender as TImage).Top;

     img_left :=(sender as TImage).Left;

    end;

  end else

  begin

   //gerek yok

  end;

end;


procedure TSCADA_FRM.dyn_anim_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if (copy_block = false)then clip_nesne:=Sender;

  if  (((sender as TJvBmpAnimator).Top = anim_top) and ((sender as TJvBmpAnimator).Left = anim_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    anim_frm.Left:=50;

    anim_frm.Top:=200;

    anim_frm.Caption:=(sender as TJvBmpAnimator).Name;

    anim_frm.VrNumEdit1.Value:=(sender as TJvBmpAnimator).Width;

    anim_frm.VrNumEdit2.Value:=(sender as TJvBmpAnimator).Height;

//    anim_frm.Edit1.Text:=(sender as TImage).Picture.GetNamePath;

      DataModule1.ADOQuery68.Close;

      DataModule1.ADOQuery68.SQL.Clear;

      DataModule1.ADOQuery68.SQL.Text :=(‘select * from ANIM WHERE anim_name = ‘+””+(sender as TJvBmpAnimator).Name+””);

      DataModule1.ADOQuery68.Open;

      anim_frm.VrNumEdit4.Text:=DataModule1.ADOQuery68.Fields[4].AsString;

      anim_frm.ANIM_TAG.Text:=DataModule1.ADOQuery68.Fields[6].AsString;

      anim_frm.VrNumEdit3.Text:=DataModule1.ADOQuery68.Fields[10].AsString;

      anim_frm.CheckBox1.Checked:=DataModule1.ADOQuery68.Fields[11].AsBoolean;

    anim_frm.ShowModal;

    end else

    begin

     anim_top :=(sender as TJvBmpAnimator).Top;

     anim_left :=(sender as TJvBmpAnimator).Left;

    end;

  end else

  begin

   //gerek yok

  end;

end;


procedure TSCADA_FRM.dyn_arrow_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

  if (yetki=’ADMIN’) then

  begin

  if (copy_block = false)then clip_nesne:=Sender;

  if  (((sender as TVrArrow).Top = arrow_top) and ((sender as TVrArrow).Left = arrow_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    arrow_frm.Left:=50;

    arrow_frm.Top:=200;

    arrow_frm.Caption:=(sender as TVrArrow).Name;

    arrow_frm.VrNumEdit1.Value:=(sender as TVrArrow).Width;

    arrow_frm.VrNumEdit2.Value:=(sender as TVrArrow).Height;

    arrow_frm.ColorBox1.Selected:=(sender as TVrArrow).Color;

      DataModule1.ADOQuery66.Close;

      DataModule1.ADOQuery66.SQL.Clear;

      DataModule1.ADOQuery66.SQL.Text :=(‘select * from ARROW WHERE arrow_name = ‘+””+(sender as TVrArrow).Name+””);

      DataModule1.ADOQuery66.Open;

      arrow_frm.ComboBox1.ItemIndex:=DataModule1.ADOQuery66.Fields[4].AsInteger;

      arrow_frm.CheckBox2.Checked:=DataModule1.ADOQuery66.Fields[6].AsBoolean;

      arrow_frm.ANIM_TAG.Text:=DataModule1.ADOQuery66.Fields[7].AsString;

      arrow_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery66.Fields[8].AsString);

      arrow_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery66.Fields[9].AsString);

    arrow_frm.ShowModal;

    end else

    begin

     arrow_top :=(sender as TVrArrow).Top;

     arrow_left :=(sender as TVrArrow).Left;

    end;

  end else

  begin

   //gerek yok

  end;

end;


procedure TSCADA_FRM.dyn_kadran_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

try

  if (yetki=’ADMIN’) then

  begin

  if (copy_block = false)then clip_nesne:=Sender;

  if  (((sender as TVrAngularMeter).Top = kadran_top) and ((sender as TVrAngularMeter).Left = kadran_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    kadran_frm.Left:=50;

    kadran_frm.Top:=200;

    kadran_frm.Caption:=(sender as TVrAngularMeter).Name;

    kadran_frm.VrNumEdit2.Value:=(sender as TVrAngularMeter).Height;

    kadran_frm.VrNumEdit1.Value:=(sender as TVrAngularMeter).Width;

    kadran_frm.VrNumEdit3.Text:=inttostr((sender as TVrAngularMeter).LabelsFont.Size);

    kadran_frm.FontDialog1.Font.Color := (SCADA_FRM.created_nesne as TVrAngularMeter).LabelsFont.Color;

    kadran_frm.ColorBox1.Selected:=(SCADA_FRM.created_nesne as TVrAngularMeter).Color;

    DataModule1.ADOQuery63.Close;

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Text :=(‘select * from KADRAN WHERE kadran_name = ‘+””+(sender as TVrAngularMeter).Name+””);

    DataModule1.ADOQuery63.Open;

    kadran_frm.CheckBox1.Checked:=DataModule1.ADOQuery63.Fields[10].AsBoolean;

    kadran_frm.CheckBox2.Checked:=DataModule1.ADOQuery63.Fields[11].AsBoolean;

    kadran_frm.ANIM_TAG.Text:=DataModule1.ADOQuery63.Fields[12].AsString;

    kadran_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery63.Fields[13].AsString);

    kadran_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery63.Fields[14].AsString);

    kadran_frm.Edit2.Text:=DataModule1.ADOQuery63.Fields[15].AsString;

    kadran_frm.NxSpinEdit61.Text :=DataModule1.ADOQuery63.Fields[19].AsString;

    kadran_frm.VrNumEdit4.Text :=DataModule1.ADOQuery63.Fields[20].AsString;

    kadran_frm.VrNumEdit5.Text :=DataModule1.ADOQuery63.Fields[21].AsString;

    kadran_frm.ShowModal;

    end else

    begin


     kadran_top :=(sender as TVrAngularMeter).Top;

     kadran_left :=(sender as TVrAngularMeter).Left;


    end;

  end else

  begin

  //gerek yok

  end;

finally


end;

end;


procedure TSCADA_FRM.dyn_termo_Click(Sender: TObject);

var

  pt1 : tPoint;

begin

try

  if (yetki=’ADMIN’) then

  begin

  if (copy_block = false)then clip_nesne:=Sender;

  if  (((sender as TvrThermoMeter).Top = termo_top) and ((sender as TvrThermoMeter).Left = termo_left)) then

    begin

    created_nesne:=Sender;

    pt1 := Mouse.CursorPos;

    termo_frm.Left:=50;

    termo_frm.Top:=200;

    termo_frm.Caption:=(sender as TvrThermoMeter).Name;

    termo_frm.VrNumEdit2.Value:=(sender as TvrThermoMeter).Height;

    termo_frm.VrNumEdit1.Value:=(sender as TvrThermoMeter).Width;

    termo_frm.VrNumEdit3.Text:=inttostr((sender as TvrThermoMeter).Font.Size);

    termo_frm.FontDialog1.Font.Color := (SCADA_FRM.created_nesne as TvrThermoMeter).Font.Color;

    termo_frm.ColorBox1.Selected:=(SCADA_FRM.created_nesne as TvrThermoMeter).Color;

    DataModule1.ADOQuery63.Close;

    DataModule1.ADOQuery63.SQL.Clear;

    DataModule1.ADOQuery63.SQL.Text :=(‘select * from TERMO WHERE termo_name = ‘+””+(sender as TvrThermoMeter).Name+””);

    DataModule1.ADOQuery63.Open;

    termo_frm.CheckBox1.Checked:=DataModule1.ADOQuery63.Fields[10].AsBoolean;

    termo_frm.CheckBox2.Checked:=DataModule1.ADOQuery63.Fields[11].AsBoolean;

    termo_frm.ANIM_TAG.Text:=DataModule1.ADOQuery63.Fields[12].AsString;

    termo_frm.ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery63.Fields[13].AsString);

    termo_frm.ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery63.Fields[14].AsString);

    termo_frm.Edit2.Text:=DataModule1.ADOQuery63.Fields[15].AsString;

    termo_frm.NxSpinEdit61.Text :=DataModule1.ADOQuery63.Fields[19].AsString;

    termo_frm.VrNumEdit4.Text :=DataModule1.ADOQuery63.Fields[20].AsString;

    termo_frm.VrNumEdit5.Text :=DataModule1.ADOQuery63.Fields[21].AsString;

    termo_frm.ShowModal;

    end else

    begin


     termo_top :=(sender as TvrThermoMeter).Top;

     termo_left :=(sender as TvrThermoMeter).Left;


    end;

  end else

  begin

  //gerek yok

  end;

finally


end;

end;


const

  // Sets UnixStartDate to TDateTime of 01/01/1970

  UnixStartDate: TDateTime = 25569.0;


function DateTimeToUnix(ConvDate: TDateTime): Currency;

begin

  Result := Round((ConvDate – UnixStartDate) * 86400);

end;



Function ustrFullTrim(Const pStrKaynak : String) : String;

 Var

   uPos              : Word;

 Begin

   Result := pStrKaynak ;

   uPos := Pos(‘ ‘, Result);

   While uPos > 0 Do

   Begin

     Delete(Result, uPos, 1);

     uPos := Pos(‘ ‘, Result)

   End;

 End;





Function bittostr(bit : boolean) : string;

Begin

if bit then Result := ‘True’ else Result :=’False’;

end;



function Event(EventTag: string; Tag_bit:string; active:bool): bool;

var

aktif: string;

cl:string;

ack:string;

begin

  DataModule1.ADOQuery4.Close;

  DataModule1.ADOQuery4.SQL.Clear;

  DataModule1.ADOQuery4.SQL.Add(‘SELECT * FROM ALARMLAR’);

  DataModule1.ADOQuery4.SQL.Add(‘WHERE MESSAGE_TAG = ‘+””+EventTag+””);

  DataModule1.ADOQuery4.SQL.Add(‘AND MESSAGE_BIT = ‘+””+Tag_bit+””);

  DataModule1.ADOQuery4.Open;


  //ALARM BİLGİSİ

  if DataModule1.ADOQuery4.RecordCount<>0 then

  begin

if ((ustrFullTrim(DataModule1.ADOQuery4.Fields[1].AsString))=’Trip’) then

begin

cl:=’True’;

if (DataModule1.ADOQuery4.Fields[2].AsString=’Trip High           ‘) then begin  if  active then aktif:=’False’ else aktif:=’True’;end;

if (DataModule1.ADOQuery4.Fields[2].AsString=’Trip Low            ‘) then begin  if  active then aktif:=’True’ else aktif:=’False’; end;

end;


if ((ustrFullTrim(DataModule1.ADOQuery4.Fields[1].AsString))=’Alarm’) then

begin

cl:=’False’;

if (DataModule1.ADOQuery4.Fields[2].AsString=’Alarm High          ‘) then begin  if  active then aktif:=’False’ else aktif:=’True’; end;

if (DataModule1.ADOQuery4.Fields[2].AsString=’Alarm Low           ‘) then begin  if  active then aktif:=’True’ else aktif:=’False’; end;

end;


//EVENTS

                   SCADA_FRM.sirala:=SCADA_FRM.sirala+1;

                   DataModule1.ADOQuery5.Close;

                   DataModule1.ADOQuery5.SQL.Clear;

                   DataModule1.ADOQuery5.SQL.Add(‘Insert into EVENTS(TARIH,NUMBER,INFO,STATUS,AREA,EVENT,ACTIVE,CLASS,SIRA,ACKNOWLEDGE) values (‘+

                   ””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,now)+”’,’+””+DataModule1.ADOQuery4.Fields[0].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[8].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[6].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[9].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[10].AsString+”’,’+””+aktif+”’,’+””+cl+”’,’+””+inttostr(SCADA_FRM.sirala)+”’,’+””+’False’+”’)’);

                   DataModule1.ADOQuery5.ExecSQL;

                   if SCADA_FRM.sirala>1000 then

                   begin

                    DataModule1.ADOQuery5.Close;

                    DataModule1.ADOQuery5.SQL.Clear;

                    DataModule1.ADOQuery5.SQL.Add(‘Delete from EVENTS’);

                    DataModule1.ADOQuery5.SQL.Add(‘WHERE SIRA < ‘+””+inttostr(SCADA_FRM.sirala-1000)+””);

                    DataModule1.ADOQuery5.ExecSQL;

                   end;


//PENDING

  DataModule1.ADOQuery7.Close;

  DataModule1.ADOQuery7.SQL.Clear;

  DataModule1.ADOQuery7.SQL.Add(‘SELECT * FROM PENDING’);

  DataModule1.ADOQuery7.SQL.Add(‘WHERE NUMBER = ‘+””+DataModule1.ADOQuery4.Fields[0].AsString+””);

  DataModule1.ADOQuery7.Open;

  if DataModule1.ADOQuery7.RecordCount<>0 then

  begin

  ack:=’False’; //eğer aktifken acknowledge edilmişse

  if (((DataModule1.ADOQuery7.Fields[6].Asboolean=false) and (aktif=’True’)) and (DataModule1.ADOQuery7.Fields[8].Asboolean=true)) then ack:=’True’;

  DataModule1.ADOQuery7.Close;

  DataModule1.ADOQuery7.SQL.Clear;

  DataModule1.ADOQuery7.SQL.Add(‘UPDATE PENDING SET TARIH=”’+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,now)+”’,’+

                               ‘NUMBER=”’+DataModule1.ADOQuery4.Fields[0].AsString+”’,’+

                               ‘INFO=”’+DataModule1.ADOQuery4.Fields[8].AsString+”’,’+

                               ‘STATUS=”’+DataModule1.ADOQuery4.Fields[6].AsString+”’,’+

                               ‘AREA=”’+DataModule1.ADOQuery4.Fields[9].AsString+”’,’+

                               ‘EVENT=”’+DataModule1.ADOQuery4.Fields[10].AsString+”’,’+

                               ‘ACTIVE=”’+aktif+”’,’+

                               ‘CLASS=”’+cl+”’,’+

                               ‘ACKNOWLEDGE=”’+ack+”’ WHERE NUMBER = ‘+””+DataModule1.ADOQuery4.Fields[0].AsString+””);

  DataModule1.ADOQuery7.ExecSQL;

  end else

  begin

  DataModule1.ADOQuery6.Close;

  DataModule1.ADOQuery6.SQL.Clear;

  DataModule1.ADOQuery6.SQL.Add(‘Insert into PENDING(TARIH,NUMBER,INFO,STATUS,AREA,EVENT,ACTIVE,CLASS,ACKNOWLEDGE) values (‘+

                   ””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,now)+”’,’+””+DataModule1.ADOQuery4.Fields[0].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[8].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[6].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[9].AsString+”’,’+””+DataModule1.ADOQuery4.Fields[10].AsString+”’,’+””+aktif+”’,’+””+cl+”’,’+””+’False’+”’)’);

  DataModule1.ADOQuery6.ExecSQL;

  end;

end;

end;



procedure STATUS(STATUS:string; ACTIVE:string);

begin

//showmessage(STATUS+’    ‘+ACTIVE);

SCADA_FRM.siralaa:=SCADA_FRM.siralaa+1;

DataModule1.ADOQuery17.Close;

DataModule1.ADOQuery17.SQL.Clear;

DataModule1.ADOQuery17.SQL.Add(‘Insert into STATUS(TARIH,STATUS,ACTIVE,SIRA) values (‘+

””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,now)+”’,’+””+STATUS+”’,’+””+ACTIVE+”’,’+””+inttostr(SCADA_FRM.siralaa)+”’)’);

DataModule1.ADOQuery17.ExecSQL;


if SCADA_FRM.siralaa>1000 then

begin

DataModule1.ADOQuery34.Close;

DataModule1.ADOQuery34.SQL.Clear;

DataModule1.ADOQuery34.SQL.Add(‘Delete from STATUS’);

DataModule1.ADOQuery34.SQL.Add(‘WHERE SIRA < ‘+””+inttostr(SCADA_FRM.siralaa-1000)+””);

DataModule1.ADOQuery34.ExecSQL;

end;


end;


procedure TSCADA_FRM.FormCreate(Sender: TObject);

var

ini : TIniFile;

server_name:string;

g:TGraphic;

f:TBitmap;

p:TPicture;

Node : TTreeNode;

imaj_nod_eski:integer;

a: TdxPNGImage ;

s : TFileStream ;

MS : TMemoryStream;

png: array[1..1000] of TPngImage;

begin

RESIZE:=FALSE;

  //All of this would normally be done in the IDE’s Object Inspector

  //if SizeCtrl was installed into the IDE.

  SizeCtrl := TSizeCtrl.Create(self);

  SizeCtrl.OnTargetChange := SizeCtrlTargetChange;

  SizeCtrl.OnDuringSizeMove := SizeCtrlDuring;

  SizeCtrl.OnEndSizeMove := SizeCtrlEnd;

  SizeCtrl.GridSize := GRIDSIZE;

  //to override behaviour of Pagecontrols so new pages can be selected …

  SizeCtrl.OnMouseDown := SizeCtrlMouseDown;

  SizeCtrl.OnSetCursor := SizeCtrlSetCursor;

  SizeCtrl.OnKeyDown := SizeCtrlKeyDown;


  RegComponents(self, SizeCtrl);

  SizeCtrl.Enabled := true;


  //ALSO, TRY OUT EACH OF THESE OPTIONS …

  SizeCtrl.BtnColor := $CC;

  //SizeCtrl.MultiTargetResize := false;

  //SizeCtrl.MoveOnly := true;


  sekil_tipi[0]:=stCircle;

  sekil_tipi[1]:=stEllipse;

  sekil_tipi[2]:=stRectangle;

  sekil_tipi[3]:=stRoundRect;

  sekil_tipi[4]:=stRoundSquare;

  sekil_tipi[5]:=stSquare;


  sekil2_tipi[0]:=jvSDiamond;

  sekil2_tipi[1]:=jvSHex;

  sekil2_tipi[2]:=jvSLeftArrow;

  sekil2_tipi[3]:=jvSOctagon;

  sekil2_tipi[4]:=jvSPar;

  sekil2_tipi[5]:=jvSPentagon;

  sekil2_tipi[6]:=jvSRevPentagon;

  sekil2_tipi[7]:=jvSRightArrow;

  sekil2_tipi[8]:=jvSRing;

  sekil2_tipi[9]:=jvSRound;

  sekil2_tipi[10]:=jvSTriangleDown;

  sekil2_tipi[11]:=jvSTriangleLeft;

  sekil2_tipi[12]:=jvSTriangleRight;

  sekil2_tipi[13]:=jvSTriangleUp;


  arrow_tipi[0]:=pdDown;

  arrow_tipi[1]:=pdLeft;

  arrow_tipi[2]:=pdRight;

  arrow_tipi[3]:=pdUp;


  set_button:=false;

  reset_button:=false;

  toogle_button:=false;

  MOMANTARY_button:=false;

  SET_button_no:=0;

  RESET_button_no:=0;

  TOOGLE_button_no:=0;

  MOMANTARY_button_no:=0;

  in_panel_no:=0;

  out_panel_no:=0;

  text_label_no:=0;

  kadran_no:=0;

  termo_no:=0;

  BUTON_EKLE:=false;

  IN_OUT_EKLE:=false;

  TEXT_EKLE:=false;

  panel_no:=0;

  PANEL_EKLE:=false;

  copy_block:=false;


  PAGE.ActivePage:=LOGIN;

dxBarManager1Bar2.Visible:=false;

dxBarManager1Bar1.Visible:=false;

create_first:=true;


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”DURUMLAR” and xtype=”U”) CREATE TABLE DURUMLAR (NUMBER INT,’);

DataModule1.ADOQuery20.SQL.Add(‘ MESSAGE_TAG nchar(150), MESSAGE_BIT int, AREA nchar(30), EVENT1 nchar(150), EVENT1_DURUM bit, EVENT2 nchar(150), EVENT2_DURUM bit ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”STATUS_TAGS” and xtype=”U”) CREATE TABLE STATUS_TAGS(TAG nvarchar(150) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDS_1H” and xtype=”U”) CREATE TABLE TRENDS_1H(tarih datetime ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDS_10M” and xtype=”U”) CREATE TABLE TRENDS_10M(tarih datetime ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDS” and xtype=”U”) CREATE TABLE TRENDS(tarih datetime ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TAGS” and xtype=”U”) CREATE TABLE TAGS(SIRA_NO int, TAG nvarchar(100) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”STATUS” and xtype=”U”) CREATE TABLE STATUS (TARIH datetime, STATUS nvarchar(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ ACTIVE bit, SIRA int ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”PENDING” and xtype=”U”) CREATE TABLE PENDING (TARIH datetime, NUMBER int,’);

DataModule1.ADOQuery20.SQL.Add(‘ INFO nchar(30), STATUS nchar(20), AREA nchar(30), EVENT nchar(50), ACTIVE bit, CLASS bit, ACKNOWLEDGE bit ) ‘);

DataModule1.ADOQuery20.ExecSQL();



DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”EVENTS” and xtype=”U”) CREATE TABLE EVENTS (TARIH datetime, NUMBER int,’);

DataModule1.ADOQuery20.SQL.Add(‘ INFO nchar(30), STATUS nchar(20), AREA nchar(30), EVENT nchar(50), ACTIVE bit, CLASS bit, SIRA int, ACKNOWLEDGE bit ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”ALARMLAR” and xtype=”U”) CREATE TABLE ALARMLAR (NUMBER INT, CLASS nchar(30),’);

DataModule1.ADOQuery20.SQL.Add(‘ TYPE nchar(20), PARIORITY nchar(10), MESSAGE_TAG nchar(50), MESSAGE_BIT int, STATUS_TAG nchar(50), STATUS_BIT int, SOURCE nchar(10), AREA nchar(30), EVENT nchar(50) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”ALARM_TAG” and xtype=”U”) CREATE TABLE ALARM_TAG(TAG nvarchar(150) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”CHANNELS” and xtype=”U”) CREATE TABLE CHANNELS (id INT, CHANNEL NVARCHAR(60) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”DEVICES” and xtype=”U”) CREATE TABLE DEVICES (id INT, CHANNEL NVARCHAR(60), DEVICE NVARCHAR(60), BAGLANTI BIT  ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”ANLIK_TAGS” and xtype=”U”) CREATE TABLE ANLIK_TAGS (id INT, CHANNEL NVARCHAR(60), DEVICE NVARCHAR(60), TAG NVARCHAR(60), ANLIK_TAGS NVARCHAR(150) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”ANLIK” and xtype=”U”) CREATE TABLE ANLIK (id INT, zaman DATETIME DEFAULT(getDate()) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”KUMANDA” and xtype=”U”) CREATE TABLE KUMANDA (id INT, zaman DATETIME DEFAULT(getDate()) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”KULLANICI” and xtype=”U”) CREATE TABLE KULLANICI (id INT, AD NVARCHAR(60), SOYAD NVARCHAR(60), KULLANICI_ADI NVARCHAR(60), SIFRE NVARCHAR(60), YETKI NVARCHAR(60) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”XML” and xtype=”U”) CREATE TABLE XML (id INT, XML_FILE NVARCHAR(150) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDS_TAGS” and xtype=”U”) CREATE TABLE TRENDS_TAGS(TAG nvarchar(150), TIP nvarchar(20) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDS_10M_TAGS” and xtype=”U”) CREATE TABLE TRENDS_10M_TAGS(TAG nvarchar(150), TIP nvarchar(20) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDS_1H_TAGS” and xtype=”U”) CREATE TABLE TRENDS_1H_TAGS(TAG nvarchar(150), TIP nvarchar(20) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”BUTONLAR” and xtype=”U”) CREATE TABLE BUTONLAR (button_no int,’);

DataModule1.ADOQuery20.SQL.Add(‘ button_type NVARCHAR(20), button_name NVARCHAR(150), button_caption NVARCHAR(150), button_width int, button_height int, button_font_size int,’);

DataModule1.ADOQuery20.SQL.Add(‘ button_font_name NVARCHAR(30), button_font_color NVARCHAR(20), button_font_style NVARCHAR(20), button_shine_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ button_glow_color NVARCHAR(20), button_allow bit, button_anim_active bit, button_anim_tag NVARCHAR(150), button_anim_set_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ button_anim_reset_color NVARCHAR(20), button_event_tag NVARCHAR(150), button_left int, button_top int, button_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”PANEL” and xtype=”U”) CREATE TABLE PANEL (panel_no int,’);

DataModule1.ADOQuery20.SQL.Add(‘ panel_name NVARCHAR(150), panel_caption NVARCHAR(150), panel_width int, panel_height int, panel_font_size int,’);

DataModule1.ADOQuery20.SQL.Add(‘ panel_font_name NVARCHAR(30), panel_font_color NVARCHAR(20), panel_font_style NVARCHAR(20), panel_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ panel_anim_active bit, panel_anim_tag NVARCHAR(150), panel_anim_set_color NVARCHAR(20),panel_anim_reset_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ panel_left int,panel_top int, panel_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”INOUTPANEL” and xtype=”U”) CREATE TABLE INOUTPANEL (inout_no int,’);

DataModule1.ADOQuery20.SQL.Add(‘ inout_type NVARCHAR(20), inout_name NVARCHAR(150), inout_width int, inout_height int, inout_font_size int,’);

DataModule1.ADOQuery20.SQL.Add(‘ inout_font_name NVARCHAR(30), inout_font_color NVARCHAR(20), inout_font_style NVARCHAR(20), inout_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ inout_allow bit, inout_anim_active bit, inout_anim_tag NVARCHAR(150), inout_anim_set_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ inout_anim_reset_color NVARCHAR(20), inout_event_tag NVARCHAR(150), inout_left int, inout_top int, inout_parent NVARCHAR(30), virgul int, max_deger int, min_deger int ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”LABEL” and xtype=”U”) CREATE TABLE LABEL (label_no int,’);

DataModule1.ADOQuery20.SQL.Add(‘ label_name NVARCHAR(150), label_caption NVARCHAR(150), label_width int, label_height int, label_font_size int,’);

DataModule1.ADOQuery20.SQL.Add(‘ label_font_name NVARCHAR(30), label_font_color NVARCHAR(20), label_font_style NVARCHAR(20), label_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ label_anim_active bit, label_anim_tag NVARCHAR(150), label_anim_set_color NVARCHAR(20),label_anim_reset_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ label_left int,label_top int, label_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”LED” and xtype=”U”) CREATE TABLE LED (led_no int, led_name NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ led_width int, led_height int,led_blinking bit,led_blink_speed int, led_anim_active bit, led_anim_tag NVARCHAR(150), led_high_color NVARCHAR(20), led_low_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ led_left int,led_top int, led_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”SHAPE” and xtype=”U”) CREATE TABLE SHAPE (shape_no int, shape_name NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ shape_width int, shape_height int,shape_tipi int,shape_color NVARCHAR(20), shape_anim_active bit, shape_anim_tag NVARCHAR(150), shape_high_color NVARCHAR(20), shape_low_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ shape_left int,shape_top int, shape_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”SEKIL” and xtype=”U”) CREATE TABLE SEKIL (sekil_no int, sekil_name NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ sekil_width int, sekil_height int,sekil_tipi int,sekil_color NVARCHAR(20), sekil_anim_active bit, sekil_anim_tag NVARCHAR(150), sekil_high_color NVARCHAR(20), sekil_low_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ sekil_left int,sekil_top int, sekil_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”IMG” and xtype=”U”) CREATE TABLE IMG (img_no int, img_name NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ img_width int, img_height int,img_picture NVARCHAR(150), img_anim_active bit, img_anim_tag NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ img_left int,img_top int, img_parent NVARCHAR(30), logo image ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”SAYFALAR” and xtype=”U”) CREATE TABLE SAYFALAR (sayfa_no int, proje_name NVARCHAR(150), logo image,’);

DataModule1.ADOQuery20.SQL.Add(‘ sayfa1 NVARCHAR(50), sayfa1_en bit, sayfa2 NVARCHAR(50), sayfa2_en bit, sayfa3 NVARCHAR(50), sayfa3_en bit, sayfa4 NVARCHAR(50), sayfa4_en bit, sayfa5 NVARCHAR(50), sayfa5_en bit,’);

DataModule1.ADOQuery20.SQL.Add(‘ sayfa6 NVARCHAR(50), sayfa6_en bit, sayfa7 NVARCHAR(50), sayfa7_en bit, monitorin NVARCHAR(50), monitoring_en bit, event NVARCHAR(50), event_en bit, network NVARCHAR(50), network_en bit, keybord bit ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”IMGLIST” and xtype=”U”) CREATE TABLE IMGLIST (IMG_NO int, IMGLIST_NO int,IMGLIST_PICTURE_NO int, IMGLIST_NAME NVARCHAR(150),IMGLIST_PICTURE_NAME NVARCHAR(150), logo image ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”ANIM” and xtype=”U”) CREATE TABLE ANIM (anim_no int, anim_name NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ anim_width int, anim_height int,anim_list int, anim_anim_active bit, anim_anim_tag NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ anim_left int,anim_top int, anim_parent NVARCHAR(30), anim_hiz int, anim_visible bit ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”ARROW” and xtype=”U”) CREATE TABLE ARROW (arrow_no int, arrow_name NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ arrow_width int, arrow_height int,arrow_tipi int,arrow_color NVARCHAR(20), arrow_anim_active bit, arrow_anim_tag NVARCHAR(150), arrow_high_color NVARCHAR(20), arrow_low_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ arrow_left int,arrow_top int, arrow_parent NVARCHAR(30) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”KADRAN” and xtype=”U”) CREATE TABLE KADRAN (kadran_no int,’);

DataModule1.ADOQuery20.SQL.Add(‘ kadran_type NVARCHAR(20), kadran_name NVARCHAR(150), kadran_width int, kadran_height int, kadran_font_size int,’);

DataModule1.ADOQuery20.SQL.Add(‘ kadran_font_name NVARCHAR(30), kadran_font_color NVARCHAR(20), kadran_font_style NVARCHAR(20), kadran_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ kadran_allow bit, kadran_anim_active bit, kadran_anim_tag NVARCHAR(150), kadran_anim_set_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ kadran_anim_reset_color NVARCHAR(20), kadran_event_tag NVARCHAR(150), kadran_left int, kadran_top int, kadran_parent NVARCHAR(30), virgul int, max_deger int, min_deger int ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TERMO” and xtype=”U”) CREATE TABLE TERMO (termo_no int,’);

DataModule1.ADOQuery20.SQL.Add(‘ termo_type NVARCHAR(20), termo_name NVARCHAR(150), termo_width int, termo_height int, termo_font_size int,’);

DataModule1.ADOQuery20.SQL.Add(‘ termo_font_name NVARCHAR(30), termo_font_color NVARCHAR(20), termo_font_style NVARCHAR(20), termo_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ termo_allow bit, termo_anim_active bit, termo_anim_tag NVARCHAR(150), termo_anim_set_color NVARCHAR(20),’);

DataModule1.ADOQuery20.SQL.Add(‘ termo_anim_reset_color NVARCHAR(20), termo_event_tag NVARCHAR(150), termo_left int, termo_top int, termo_parent NVARCHAR(30), virgul int, max_deger int, min_deger int ) ‘);

DataModule1.ADOQuery20.ExecSQL();


DataModule1.ADOQuery20.Close();

DataModule1.ADOQuery20.SQL.Clear();

DataModule1.ADOQuery20.SQL.Add(‘if not exists (select * from sysobjects where name=”TRENDSLER” and xtype=”U”) CREATE TABLE TRENDSLER (trends_no int, trends_basligi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_1 NVARCHAR(150), trends_1_en bit, trends_1_color NVARCHAR(20), trends_1_birimi NVARCHAR(5), trends_1_suresi NVARCHAR(5), trends_1_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_2 NVARCHAR(150), trends_2_en bit, trends_2_color NVARCHAR(20), trends_2_birimi NVARCHAR(5), trends_2_suresi NVARCHAR(5), trends_2_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_3 NVARCHAR(150), trends_3_en bit, trends_3_color NVARCHAR(20), trends_3_birimi NVARCHAR(5), trends_3_suresi NVARCHAR(5), trends_3_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_4 NVARCHAR(150), trends_4_en bit, trends_4_color NVARCHAR(20), trends_4_birimi NVARCHAR(5), trends_4_suresi NVARCHAR(5), trends_4_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_5 NVARCHAR(150), trends_5_en bit, trends_5_color NVARCHAR(20), trends_5_birimi NVARCHAR(5), trends_5_suresi NVARCHAR(5), trends_5_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_6 NVARCHAR(150), trends_6_en bit, trends_6_color NVARCHAR(20), trends_6_birimi NVARCHAR(5), trends_6_suresi NVARCHAR(5), trends_6_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_7 NVARCHAR(150), trends_7_en bit, trends_7_color NVARCHAR(20), trends_7_birimi NVARCHAR(5), trends_7_suresi NVARCHAR(5), trends_7_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_8 NVARCHAR(150), trends_8_en bit, trends_8_color NVARCHAR(20), trends_8_birimi NVARCHAR(5), trends_8_suresi NVARCHAR(5), trends_8_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_9 NVARCHAR(150), trends_9_en bit, trends_9_color NVARCHAR(20), trends_9_birimi NVARCHAR(5), trends_9_suresi NVARCHAR(5), trends_9_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_10 NVARCHAR(150), trends_10_en bit, trends_10_color NVARCHAR(20), trends_10_birimi NVARCHAR(5), trends_10_suresi NVARCHAR(5), trends_10_tagi NVARCHAR(150),’);

DataModule1.ADOQuery20.SQL.Add(‘ trends_11 NVARCHAR(150), trends_11_en bit, trends_11_color NVARCHAR(20), trends_11_birimi NVARCHAR(5), trends_11_suresi NVARCHAR(5), trends_11_tagi NVARCHAR(150) ) ‘);

DataModule1.ADOQuery20.ExecSQL();


  

  DataModule1.ADOQuery62.Close;

  DataModule1.ADOQuery62.SQL.Clear;

  DataModule1.ADOQuery62.SQL.Text :=’select * from PANEL order by panel_no asc’;

  DataModule1.ADOQuery62.Open;


  if DataModule1.ADOQuery62.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery62.Eof do

     begin

      panel_no:=DataModule1.ADOQuery62.Fields[0].AsInteger;

      panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan1);

      panel_comp[panel_no].OnClick:=dyn_panel_Click;

      panel_comp[panel_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      panel_comp[panel_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      panel_comp[panel_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      panel_comp[panel_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      panel_comp[panel_no].PopupMenu:= PopupMenu1;

      panel_comp[panel_no].Name:=DataModule1.ADOQuery62.Fields[1].AsString;

      panel_comp[panel_no].Caption:=DataModule1.ADOQuery62.Fields[2].AsString;

      panel_comp[panel_no].Width:=DataModule1.ADOQuery62.Fields[3].AsInteger;

      panel_comp[panel_no].Height:=DataModule1.ADOQuery62.Fields[4].AsInteger;

      panel_comp[panel_no].Font.Size:=DataModule1.ADOQuery62.Fields[5].AsInteger;

      panel_comp[panel_no].Font.Name:=DataModule1.ADOQuery62.Fields[6].AsString;

      panel_comp[panel_no].Font.Color:=stringtocolor(DataModule1.ADOQuery62.Fields[7].AsString);

      SetSetProp(panel_comp[panel_no].Font, ‘Style’, DataModule1.ADOQuery62.Fields[8].AsString);

      panel_comp[panel_no].Color:=stringtocolor(DataModule1.ADOQuery62.Fields[9].AsString);

      panel_comp[panel_no].Left:=DataModule1.ADOQuery62.Fields[14].AsInteger;

      panel_comp[panel_no].Top:=DataModule1.ADOQuery62.Fields[15].AsInteger;

      panel_comp[panel_no].Parent:=(FindComponent(DataModule1.ADOQuery62.Fields[16].AsString) as TRzPanel);

      created_nesne :=panel_comp[panel_no];

      DataModule1.ADOQuery62.Next;

     end;

  end;


  DataModule1.ADOQuery61.Close;

  DataModule1.ADOQuery61.SQL.Clear;

  DataModule1.ADOQuery61.SQL.Text :=’select * from BUTONLAR order by button_no asc’;

  DataModule1.ADOQuery61.Open;


  if DataModule1.ADOQuery61.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery61.Eof do

     begin

     if DataModule1.ADOQuery61.Fields[1].AsString = ‘SET’ then

     begin

        SET_button_no:=DataModule1.ADOQuery61.Fields[0].AsInteger;

        set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        set_btn[SET_button_no].OnClick:=dynButtonClick;

        set_btn[SET_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        set_btn[SET_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        set_btn[SET_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        set_btn[SET_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        set_btn[SET_button_no].PopupMenu := PopupMenu1;

        set_btn[SET_button_no].Name:=DataModule1.ADOQuery61.Fields[2].AsString;

        set_btn[SET_button_no].Caption:=DataModule1.ADOQuery61.Fields[3].AsString;

        set_btn[SET_button_no].Width:=strtoint(DataModule1.ADOQuery61.Fields[4].AsString);

        set_btn[SET_button_no].Height:=strtoint(DataModule1.ADOQuery61.Fields[5].AsString);

        set_btn[SET_button_no].Font.Size:=strtoint(DataModule1.ADOQuery61.Fields[6].AsString);

        set_btn[SET_button_no].Font.Name:=DataModule1.ADOQuery61.Fields[7].AsString;

        set_btn[SET_button_no].Font.Color:=stringtocolor(DataModule1.ADOQuery61.Fields[8].AsString);

        SetSetProp(set_btn[SET_button_no].Font, ‘Style’, DataModule1.ADOQuery61.Fields[9].AsString);

        set_btn[SET_button_no].ShineColor:=stringtocolor(DataModule1.ADOQuery61.Fields[10].AsString);

        set_btn[SET_button_no].GlowColor:=stringtocolor(DataModule1.ADOQuery61.Fields[11].AsString);

        set_btn[SET_button_no].Left:=strtoint(DataModule1.ADOQuery61.Fields[18].AsString);

        set_btn[SET_button_no].Top:=strtoint(DataModule1.ADOQuery61.Fields[19].AsString);


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery61.Fields[20].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        set_btn[SET_button_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        set_btn[SET_button_no].Parent:=(FindComponent(DataModule1.ADOQuery61.Fields[20].AsString) as TRzPanel);


        created_nesne :=set_btn[SET_button_no];

     end;


     if DataModule1.ADOQuery61.Fields[1].AsString = ‘RESET’ then

     begin

        RESET_button_no:=DataModule1.ADOQuery61.Fields[0].AsInteger;

        reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        reset_btn[RESET_button_no].OnClick:=dynButtonClick;

        reset_btn[RESET_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        reset_btn[RESET_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        reset_btn[RESET_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        reset_btn[RESET_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        reset_btn[RESET_button_no].PopupMenu := PopupMenu1;

        reset_btn[RESET_button_no].Name:=DataModule1.ADOQuery61.Fields[2].AsString;

        reset_btn[RESET_button_no].Caption:=DataModule1.ADOQuery61.Fields[3].AsString;

        reset_btn[RESET_button_no].Width:=strtoint(DataModule1.ADOQuery61.Fields[4].AsString);

        reset_btn[RESET_button_no].Height:=strtoint(DataModule1.ADOQuery61.Fields[5].AsString);

        reset_btn[RESET_button_no].Font.Size:=strtoint(DataModule1.ADOQuery61.Fields[6].AsString);

        reset_btn[RESET_button_no].Font.Name:=DataModule1.ADOQuery61.Fields[7].AsString;

        reset_btn[RESET_button_no].Font.Color:=stringtocolor(DataModule1.ADOQuery61.Fields[8].AsString);

        SetSetProp(reset_btn[RESET_button_no].Font, ‘Style’, DataModule1.ADOQuery61.Fields[9].AsString);

        reset_btn[RESET_button_no].ShineColor:=stringtocolor(DataModule1.ADOQuery61.Fields[10].AsString);

        reset_btn[RESET_button_no].GlowColor:=stringtocolor(DataModule1.ADOQuery61.Fields[11].AsString);

        reset_btn[RESET_button_no].Left:=strtoint(DataModule1.ADOQuery61.Fields[18].AsString);

        reset_btn[RESET_button_no].Top:=strtoint(DataModule1.ADOQuery61.Fields[19].AsString);



        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery61.Fields[20].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        reset_btn[RESET_button_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        reset_btn[RESET_button_no].Parent:=(FindComponent(DataModule1.ADOQuery61.Fields[20].AsString) as TRzPanel);



        created_nesne :=reset_btn[RESET_button_no];

     end;


     if DataModule1.ADOQuery61.Fields[1].AsString = ‘TOOGLE’ then

     begin

        TOOGLE_button_no:=DataModule1.ADOQuery61.Fields[0].AsInteger;

        toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        toogle_btn[TOOGLE_button_no].OnClick:=dynButtonClick;

        toogle_btn[TOOGLE_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        toogle_btn[TOOGLE_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        toogle_btn[TOOGLE_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        toogle_btn[TOOGLE_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        toogle_btn[TOOGLE_button_no].PopupMenu := PopupMenu1;

        toogle_btn[TOOGLE_button_no].Name:=DataModule1.ADOQuery61.Fields[2].AsString;

        toogle_btn[TOOGLE_button_no].Caption:=DataModule1.ADOQuery61.Fields[3].AsString;

        toogle_btn[TOOGLE_button_no].Width:=strtoint(DataModule1.ADOQuery61.Fields[4].AsString);

        toogle_btn[TOOGLE_button_no].Height:=strtoint(DataModule1.ADOQuery61.Fields[5].AsString);

        toogle_btn[TOOGLE_button_no].Font.Size:=strtoint(DataModule1.ADOQuery61.Fields[6].AsString);

        toogle_btn[TOOGLE_button_no].Font.Name:=DataModule1.ADOQuery61.Fields[7].AsString;

        toogle_btn[TOOGLE_button_no].Font.Color:=stringtocolor(DataModule1.ADOQuery61.Fields[8].AsString);

        SetSetProp(toogle_btn[TOOGLE_button_no].Font, ‘Style’, DataModule1.ADOQuery61.Fields[9].AsString);

        toogle_btn[TOOGLE_button_no].ShineColor:=stringtocolor(DataModule1.ADOQuery61.Fields[10].AsString);

        toogle_btn[TOOGLE_button_no].GlowColor:=stringtocolor(DataModule1.ADOQuery61.Fields[11].AsString);

        toogle_btn[TOOGLE_button_no].Left:=strtoint(DataModule1.ADOQuery61.Fields[18].AsString);

        toogle_btn[TOOGLE_button_no].Top:=strtoint(DataModule1.ADOQuery61.Fields[19].AsString);


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery61.Fields[20].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        toogle_btn[TOOGLE_button_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        toogle_btn[TOOGLE_button_no].Parent:=(FindComponent(DataModule1.ADOQuery61.Fields[20].AsString) as TRzPanel);


        created_nesne :=toogle_btn[TOOGLE_button_no];

     end;


     if DataModule1.ADOQuery61.Fields[1].AsString = ‘MOMANTARY’ then

     begin

        MOMANTARY_button_no:=DataModule1.ADOQuery61.Fields[0].AsInteger;

        MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        MOMANTARY_btn[MOMANTARY_button_no].OnClick:=dynButtonClick;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        MOMANTARY_btn[MOMANTARY_button_no].PopupMenu := PopupMenu1;

        MOMANTARY_btn[MOMANTARY_button_no].Name:=DataModule1.ADOQuery61.Fields[2].AsString;

        MOMANTARY_btn[MOMANTARY_button_no].Caption:=DataModule1.ADOQuery61.Fields[3].AsString;

        MOMANTARY_btn[MOMANTARY_button_no].Width:=strtoint(DataModule1.ADOQuery61.Fields[4].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].Height:=strtoint(DataModule1.ADOQuery61.Fields[5].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].Font.Size:=strtoint(DataModule1.ADOQuery61.Fields[6].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].Font.Name:=DataModule1.ADOQuery61.Fields[7].AsString;

        MOMANTARY_btn[MOMANTARY_button_no].Font.Color:=stringtocolor(DataModule1.ADOQuery61.Fields[8].AsString);

        SetSetProp(MOMANTARY_btn[MOMANTARY_button_no].Font, ‘Style’, DataModule1.ADOQuery61.Fields[9].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].ShineColor:=stringtocolor(DataModule1.ADOQuery61.Fields[10].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].GlowColor:=stringtocolor(DataModule1.ADOQuery61.Fields[11].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].Left:=strtoint(DataModule1.ADOQuery61.Fields[18].AsString);

        MOMANTARY_btn[MOMANTARY_button_no].Top:=strtoint(DataModule1.ADOQuery61.Fields[19].AsString);


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery61.Fields[20].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        MOMANTARY_btn[MOMANTARY_button_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        MOMANTARY_btn[MOMANTARY_button_no].Parent:=(FindComponent(DataModule1.ADOQuery61.Fields[20].AsString) as TRzPanel);


        created_nesne :=MOMANTARY_btn[MOMANTARY_button_no];

     end;


      DataModule1.ADOQuery61.Next;

      end;

  end;

  DataModule1.ADOQuery63.Close;

  DataModule1.ADOQuery63.SQL.Clear;

  DataModule1.ADOQuery63.SQL.Text :=’select * from INOUTPANEL order by inout_no asc’;

  DataModule1.ADOQuery63.Open;




  if DataModule1.ADOQuery63.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery63.Eof do

     begin

     if DataModule1.ADOQuery63.Fields[1].AsString = ‘IN’ then

     begin

        in_panel_no:=DataModule1.ADOQuery63.Fields[0].AsInteger;

        in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan1);

        in_panel_comp[in_panel_no].OnClick:=dyn_in_panel_Click;

        in_panel_comp[in_panel_no].OnKeyPress:=dyn_in_panel_OnKeyPress;

        in_panel_comp[in_panel_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        in_panel_comp[in_panel_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        in_panel_comp[in_panel_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        in_panel_comp[in_panel_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        in_panel_comp[in_panel_no].PopupMenu := PopupMenu1;

        in_panel_comp[in_panel_no].Name:=DataModule1.ADOQuery63.Fields[2].AsString;

        in_panel_comp[in_panel_no].Width:=strtoint(DataModule1.ADOQuery63.Fields[3].AsString);

        in_panel_comp[in_panel_no].Height:=strtoint(DataModule1.ADOQuery63.Fields[4].AsString);

        in_panel_comp[in_panel_no].Font.Size:=strtoint(DataModule1.ADOQuery63.Fields[5].AsString);

        in_panel_comp[in_panel_no].Font.Name:=DataModule1.ADOQuery63.Fields[6].AsString;

        in_panel_comp[in_panel_no].Font.Color:=stringtocolor(DataModule1.ADOQuery63.Fields[7].AsString);

        SetSetProp(in_panel_comp[in_panel_no].Font, ‘Style’, DataModule1.ADOQuery63.Fields[8].AsString);

        in_panel_comp[in_panel_no].Color:=stringtocolor(DataModule1.ADOQuery63.Fields[9].AsString);

        in_panel_comp[in_panel_no].Left:=strtoint(DataModule1.ADOQuery63.Fields[16].AsString);

        in_panel_comp[in_panel_no].Top:=strtoint(DataModule1.ADOQuery63.Fields[17].AsString);

        in_panel_comp[in_panel_no].Decimals:=strtoint(DataModule1.ADOQuery63.Fields[19].AsString);


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery63.Fields[18].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        in_panel_comp[in_panel_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        in_panel_comp[in_panel_no].Parent:=(FindComponent(DataModule1.ADOQuery63.Fields[18].AsString) as TRzPanel);

        created_nesne :=in_panel_comp[in_panel_no];

     end;


     if DataModule1.ADOQuery63.Fields[1].AsString = ‘OUT’ then

     begin

        out_panel_no:=DataModule1.ADOQuery63.Fields[0].AsInteger;

        out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan1);

        out_panel_comp[out_panel_no].OnClick:=dyn_in_panel_Click;

        out_panel_comp[out_panel_no].OnKeyPress:=dyn_in_panel_OnKeyPress;

        out_panel_comp[out_panel_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        out_panel_comp[out_panel_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        out_panel_comp[out_panel_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        out_panel_comp[out_panel_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        out_panel_comp[out_panel_no].PopupMenu := PopupMenu1;

        out_panel_comp[out_panel_no].Name:=DataModule1.ADOQuery63.Fields[2].AsString;

        out_panel_comp[out_panel_no].Width:=strtoint(DataModule1.ADOQuery63.Fields[3].AsString);

        out_panel_comp[out_panel_no].Height:=strtoint(DataModule1.ADOQuery63.Fields[4].AsString);

        out_panel_comp[out_panel_no].Font.Size:=strtoint(DataModule1.ADOQuery63.Fields[5].AsString);

        out_panel_comp[out_panel_no].Font.Name:=DataModule1.ADOQuery63.Fields[6].AsString;

        out_panel_comp[out_panel_no].Font.Color:=stringtocolor(DataModule1.ADOQuery63.Fields[7].AsString);

        SetSetProp(out_panel_comp[out_panel_no].Font, ‘Style’, DataModule1.ADOQuery63.Fields[8].AsString);

        out_panel_comp[out_panel_no].Color:=stringtocolor(DataModule1.ADOQuery63.Fields[9].AsString);

        out_panel_comp[out_panel_no].Left:=strtoint(DataModule1.ADOQuery63.Fields[16].AsString);

        out_panel_comp[out_panel_no].Top:=strtoint(DataModule1.ADOQuery63.Fields[17].AsString);

        out_panel_comp[out_panel_no].Decimals:=strtoint(DataModule1.ADOQuery63.Fields[19].AsString);


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery63.Fields[18].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        out_panel_comp[out_panel_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        out_panel_comp[out_panel_no].Parent:=(FindComponent(DataModule1.ADOQuery63.Fields[18].AsString) as TRzPanel);

        created_nesne :=out_panel_comp[out_panel_no];

     end;

     DataModule1.ADOQuery63.Next;

     end;


  end;



  DataModule1.ADOQuery64.Close;

  DataModule1.ADOQuery64.SQL.Clear;

  DataModule1.ADOQuery64.SQL.Text :=’select * from LABEL order by label_no asc’;

  DataModule1.ADOQuery64.Open;


  if DataModule1.ADOQuery64.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery64.Eof do

     begin

      text_label_no:=DataModule1.ADOQuery64.Fields[0].AsInteger;

      text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan1);

      text_label_comp[text_label_no].OnClick:=dyn_text_label_Click;

      text_label_comp[text_label_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      text_label_comp[text_label_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      text_label_comp[text_label_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      text_label_comp[text_label_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      text_label_comp[text_label_no].PopupMenu:= PopupMenu1;

      text_label_comp[text_label_no].Name:=DataModule1.ADOQuery64.Fields[1].AsString;

      text_label_comp[text_label_no].Caption:=DataModule1.ADOQuery64.Fields[2].AsString;

      text_label_comp[text_label_no].Width:=DataModule1.ADOQuery64.Fields[3].AsInteger;

      text_label_comp[text_label_no].Height:=DataModule1.ADOQuery64.Fields[4].AsInteger;

      text_label_comp[text_label_no].Font.Size:=DataModule1.ADOQuery64.Fields[5].AsInteger;

      text_label_comp[text_label_no].Font.Name:=DataModule1.ADOQuery64.Fields[6].AsString;

      text_label_comp[text_label_no].Font.Color:=stringtocolor(DataModule1.ADOQuery64.Fields[7].AsString);

      SetSetProp(text_label_comp[text_label_no].Font, ‘Style’, DataModule1.ADOQuery64.Fields[8].AsString);

      text_label_comp[text_label_no].Color:=stringtocolor(DataModule1.ADOQuery64.Fields[9].AsString);

      text_label_comp[text_label_no].Left:=DataModule1.ADOQuery64.Fields[14].AsInteger;

      text_label_comp[text_label_no].Top:=DataModule1.ADOQuery64.Fields[15].AsInteger;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery64.Fields[16].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        text_label_comp[text_label_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        text_label_comp[text_label_no].Parent:=(FindComponent(DataModule1.ADOQuery64.Fields[16].AsString) as TRzPanel);


      created_nesne :=text_label_comp[text_label_no];

      DataModule1.ADOQuery64.Next;

     end;

  end;


  DataModule1.ADOQuery65.Close;

  DataModule1.ADOQuery65.SQL.Clear;

  DataModule1.ADOQuery65.SQL.Text :=’select * from LED order by led_no asc’;

  DataModule1.ADOQuery65.Open;


  if DataModule1.ADOQuery65.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery65.Eof do

     begin

      led_no:=DataModule1.ADOQuery65.Fields[0].AsInteger;

      led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan1);

      led_comp[led_no].OnClick:=dyn_led_Click;

      led_comp[led_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      led_comp[led_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      led_comp[led_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      led_comp[led_no].PopupMenu:= PopupMenu1;

      led_comp[led_no].Name:=DataModule1.ADOQuery65.Fields[1].AsString;

      led_comp[led_no].Width:=DataModule1.ADOQuery65.Fields[2].AsInteger;

      led_comp[led_no].Height:=DataModule1.ADOQuery65.Fields[3].AsInteger;

      led_comp[led_no].EnableBlinking:=DataModule1.ADOQuery65.Fields[4].AsBoolean;

      led_comp[led_no].BlinkSpeed:=DataModule1.ADOQuery65.Fields[5].AsInteger;

      led_comp[led_no].Palette1.High:=stringtocolor(DataModule1.ADOQuery65.Fields[8].AsString);

      led_comp[led_no].Palette1.Low:=stringtocolor(DataModule1.ADOQuery65.Fields[9].AsString);

      led_comp[led_no].Palette2.Low:=stringtocolor(DataModule1.ADOQuery65.Fields[9].AsString);

      led_comp[led_no].Palette2.High:=stringtocolor(DataModule1.ADOQuery65.Fields[9].AsString);

      led_comp[led_no].Left:=DataModule1.ADOQuery65.Fields[10].AsInteger;

      led_comp[led_no].Top:=DataModule1.ADOQuery65.Fields[11].AsInteger;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery65.Fields[12].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        led_comp[led_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        led_comp[led_no].Parent:=(FindComponent(DataModule1.ADOQuery65.Fields[12].AsString) as TRzPanel);


      created_nesne:=led_comp[led_no];

      DataModule1.ADOQuery65.Next;

     end;

  end;


  DataModule1.ADOQuery66.Close;

  DataModule1.ADOQuery66.SQL.Clear;

  DataModule1.ADOQuery66.SQL.Text :=’select * from SHAPE order by shape_no asc’;

  DataModule1.ADOQuery66.Open;


  if DataModule1.ADOQuery66.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery66.Eof do

     begin

      shape_no:=DataModule1.ADOQuery66.Fields[0].AsInteger;

      shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan1);

      shape_comp[shape_no].OnClick:=dyn_shape_Click;

      shape_comp[shape_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      shape_comp[shape_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      shape_comp[shape_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      shape_comp[shape_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      //shape_comp[shape_no].PopupMenu:= PopupMenu1;

      shape_comp[shape_no].Name:=DataModule1.ADOQuery66.Fields[1].AsString;

      shape_comp[shape_no].Width:=DataModule1.ADOQuery66.Fields[2].AsInteger;

      shape_comp[shape_no].Height:=DataModule1.ADOQuery66.Fields[3].AsInteger;

      shape_comp[shape_no].Shape:=sekil_tipi[DataModule1.ADOQuery66.Fields[4].AsInteger];

      shape_comp[shape_no].Brush.Color:=stringtocolor(DataModule1.ADOQuery66.Fields[5].AsString);

      shape_comp[shape_no].Left:=DataModule1.ADOQuery66.Fields[10].AsInteger;

      shape_comp[shape_no].Top:=DataModule1.ADOQuery66.Fields[11].AsInteger;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery66.Fields[12].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        shape_comp[shape_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        shape_comp[shape_no].Parent:=(FindComponent(DataModule1.ADOQuery66.Fields[12].AsString) as TRzPanel);


      created_nesne:=shape_comp[shape_no];

      DataModule1.ADOQuery66.Next;

     end;

  end;


  DataModule1.ADOQuery67.Close;

  DataModule1.ADOQuery67.SQL.Clear;

  DataModule1.ADOQuery67.SQL.Text :=’select * from SEKIL order by sekil_no asc’;

  DataModule1.ADOQuery67.Open;


  if DataModule1.ADOQuery67.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery67.Eof do

     begin

      sekil_no:=DataModule1.ADOQuery67.Fields[0].AsInteger;

      sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan1);

      sekil_comp[sekil_no].OnClick:=dyn_sekil_Click;

      sekil_comp[sekil_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      sekil_comp[sekil_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      sekil_comp[sekil_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      sekil_comp[sekil_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      sekil_comp[sekil_no].PopupMenu:= PopupMenu1;

      sekil_comp[sekil_no].Name:=DataModule1.ADOQuery67.Fields[1].AsString;

      sekil_comp[sekil_no].Width:=DataModule1.ADOQuery67.Fields[2].AsInteger;

      sekil_comp[sekil_no].Height:=DataModule1.ADOQuery67.Fields[3].AsInteger;

      sekil_comp[sekil_no].ButtonShape:=sekil2_tipi[DataModule1.ADOQuery67.Fields[4].AsInteger];

      sekil_comp[sekil_no].Color:=stringtocolor(DataModule1.ADOQuery67.Fields[5].AsString);

      sekil_comp[sekil_no].Left:=DataModule1.ADOQuery67.Fields[10].AsInteger;

      sekil_comp[sekil_no].Top:=DataModule1.ADOQuery67.Fields[11].AsInteger;

      sekil_comp[sekil_no].Caption:=”;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery67.Fields[12].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        sekil_comp[sekil_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        sekil_comp[sekil_no].Parent:=(FindComponent(DataModule1.ADOQuery67.Fields[12].AsString) as TRzPanel);


      created_nesne:=sekil_comp[sekil_no];

      DataModule1.ADOQuery67.Next;

     end;

  end;


  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Text :=’select * from IMG order by img_no asc’;

  DataModule1.ADOQuery68.Open;


  if DataModule1.ADOQuery68.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery68.Eof do

     begin

      img_no:=DataModule1.ADOQuery68.Fields[0].AsInteger;

      img_comp[img_no] := TImage.Create(SCADA_FRM.Pan1);

      img_comp[img_no].OnClick:=dyn_img_Click;

      img_comp[img_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      img_comp[img_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      img_comp[img_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      img_comp[img_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      img_comp[img_no].PopupMenu:= PopupMenu1;

      img_comp[img_no].Name:=DataModule1.ADOQuery68.Fields[1].AsString;

      img_comp[img_no].Width:=DataModule1.ADOQuery68.Fields[2].AsInteger;

      img_comp[img_no].Height:=DataModule1.ADOQuery68.Fields[3].AsInteger;

      img_comp[img_no].Stretch := true;  // to make it as large as Image1

      img_comp[img_no].Proportional := true;  // to keep width/height ratio

      img_comp[img_no].Picture.Bitmap:= nil; // clear previous image

      {if DataModule1.ADOQuery68.Fields[4].AsString <> ” then

      img_comp[img_no].Picture.LoadFromFile(DataModule1.ADOQuery68.Fields[4].AsString)

      else

      d.GetBitmap(0, img_comp[img_no].Picture.Bitmap);}

      DataModule1.ADOQuery85.Close;

      DataModule1.ADOQuery85.SQL.Clear;

      DataModule1.ADOQuery85.SQL.Add(‘Select logo from IMG where img_no = ‘+””+DataModule1.ADOQuery68.Fields[0].AsString+””);

      DataModule1.ADOQuery85.Open;

      if DataModule1.ADOQuery85.Fields[0].AsString <> ” then

      begin

        try

        p:= TPicture.Create;

        p.Assign(DataModule1.ADOQuery85.FieldByName(‘logo’));

        //img_comp[img_no].Width:=p.Width;

        //img_comp[img_no].Height:=p.Height;

        img_comp[img_no].Picture:=p;

        finally

        p.Free;

        end;

      end;


      img_comp[img_no].Left:=DataModule1.ADOQuery68.Fields[7].AsInteger;

      img_comp[img_no].Top:=DataModule1.ADOQuery68.Fields[8].AsInteger;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery68.Fields[9].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        img_comp[img_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        img_comp[img_no].Parent:=(FindComponent(DataModule1.ADOQuery68.Fields[9].AsString) as TRzPanel);


      created_nesne:=img_comp[img_no];

      DataModule1.ADOQuery68.Next;

     end;

  end;



      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select  * from IMGLIST order by IMG_NO asc’);

      DataModule1.ADOQuery84.Open;


      if DataModule1.ADOQuery84.RecordCount>0 then

      begin

      while not DataModule1.ADOQuery84.Eof do

      begin

      if imaj_nod_eski<>DataModule1.ADOQuery84.Fields[1].AsInteger then

      begin

      Node:=JvTreeView1.Items.Add(nil,DataModule1.ADOQuery84.Fields[3].AsString) ;

      Node.ImageIndex:=imaj_nod;//now you can change any  property of the node

      imaj_nod:=imaj_nod+1;

      imaj_nod_eski:=DataModule1.ADOQuery84.Fields[1].AsInteger;

      imglist_comp[DataModule1.ADOQuery84.Fields[1].AsInteger] := TImageList.Create(SCADA_FRM.Pan1);

      end;


      if Node <> nil then

      begin

      Node := FindRootNode(DataModule1.ADOQuery84.Fields[3].AsString, JvTreeView1);

      JvTreeView1.Items.AddChild(Node, DataModule1.ADOQuery84.Fields[4].AsString);

      end;


      DataModule1.ADOQuery85.Close;

      DataModule1.ADOQuery85.SQL.Clear;

      DataModule1.ADOQuery85.SQL.Add(‘Select logo from IMGLIST where IMG_NO = ‘+””+DataModule1.ADOQuery84.Fields[0].AsString+””);

      DataModule1.ADOQuery85.Open;

      if DataModule1.ADOQuery85.Fields[0].AsString <> ” then

      begin

      try

        f:= TBitmap.Create;

        f.Assign(DataModule1.ADOQuery85.FieldByName(‘logo’));

        imglist_comp[DataModule1.ADOQuery84.Fields[1].AsInteger].Width:=f.Width;

        imglist_comp[DataModule1.ADOQuery84.Fields[1].AsInteger].Height:=f.Height;

        imglist_comp[DataModule1.ADOQuery84.Fields[1].AsInteger].Add(f,nil);

        finally

        f.Free;

      end;

      end;

      DataModule1.ADOQuery84.Next;

      end;

      end;

      imaj_nod:=DataModule1.ADOQuery84.Fields[1].AsInteger+1;


  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Text :=’select * from ANIM order by anim_no asc’;

  DataModule1.ADOQuery68.Open;


  if DataModule1.ADOQuery68.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery68.Eof do

     begin

      anim_no:=DataModule1.ADOQuery68.Fields[0].AsInteger;

      anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan1);

      anim_comp[anim_no].OnClick:=dyn_anim_Click;

      anim_comp[anim_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      anim_comp[anim_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      anim_comp[anim_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      //anim_comp[anim_no].PopupMenu:= PopupMenu1;

      anim_comp[anim_no].Name:=DataModule1.ADOQuery68.Fields[1].AsString;

      anim_comp[anim_no].Width:=DataModule1.ADOQuery68.Fields[2].AsInteger;

      anim_comp[anim_no].Height:=DataModule1.ADOQuery68.Fields[3].AsInteger;

      anim_comp[anim_no].Images:=imglist_comp[DataModule1.ADOQuery68.Fields[4].AsInteger];

      anim_comp[anim_no].NumFrames:=imglist_comp[DataModule1.ADOQuery68.Fields[4].AsInteger].Count;

      anim_comp[anim_no].Left:=DataModule1.ADOQuery68.Fields[7].AsInteger;

      anim_comp[anim_no].Top:=DataModule1.ADOQuery68.Fields[8].AsInteger;

      anim_comp[anim_no].Speed:=DataModule1.ADOQuery68.Fields[10].AsInteger;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery68.Fields[9].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        anim_comp[anim_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        anim_comp[anim_no].Parent:=(FindComponent(DataModule1.ADOQuery68.Fields[9].AsString) as TRzPanel);


      created_nesne:=anim_comp[anim_no];

      DataModule1.ADOQuery68.Next;

     end;

  end;


  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Text :=’select * from ARROW order by arrow_no asc’;

  DataModule1.ADOQuery68.Open;


  if DataModule1.ADOQuery68.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery68.Eof do

     begin

      arrow_no:=DataModule1.ADOQuery68.Fields[0].AsInteger;

      arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan1);

      arrow_comp[arrow_no].OnClick:=dyn_arrow_Click;

      arrow_comp[arrow_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      arrow_comp[arrow_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      arrow_comp[arrow_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      //arrow_comp[arrow_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      //arrow_comp[arrow_no].PopupMenu:= PopupMenu1;

      arrow_comp[arrow_no].Name:=DataModule1.ADOQuery68.Fields[1].AsString;

      arrow_comp[arrow_no].Width:=DataModule1.ADOQuery68.Fields[2].AsInteger;

      arrow_comp[arrow_no].Height:=DataModule1.ADOQuery68.Fields[3].AsInteger;

      arrow_comp[arrow_no].Direction:=arrow_tipi[DataModule1.ADOQuery68.Fields[4].AsInteger];

      arrow_comp[arrow_no].Color:=stringtocolor(DataModule1.ADOQuery68.Fields[5].AsString);

      arrow_comp[arrow_no].Palette.High:=stringtocolor(DataModule1.ADOQuery68.Fields[8].AsString);

      arrow_comp[arrow_no].Palette.Low:=stringtocolor(DataModule1.ADOQuery68.Fields[9].AsString);

      arrow_comp[arrow_no].Left:=DataModule1.ADOQuery68.Fields[10].AsInteger;

      arrow_comp[arrow_no].Top:=DataModule1.ADOQuery68.Fields[11].AsInteger;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery68.Fields[12].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        arrow_comp[arrow_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        arrow_comp[arrow_no].Parent:=(FindComponent(DataModule1.ADOQuery68.Fields[12].AsString) as TRzPanel);


      created_nesne:=arrow_comp[arrow_no];

      DataModule1.ADOQuery68.Next;

     end;

  end;



  DataModule1.ADOQuery63.Close;

  DataModule1.ADOQuery63.SQL.Clear;

  DataModule1.ADOQuery63.SQL.Text :=’select * from KADRAN order by kadran_no asc’;

  DataModule1.ADOQuery63.Open;




  if DataModule1.ADOQuery63.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery63.Eof do

     begin

        kadran_no:=DataModule1.ADOQuery63.Fields[0].AsInteger;

        kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan1);

        kadran_comp[kadran_no].OnClick:=dyn_kadran_Click;

        kadran_comp[kadran_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        kadran_comp[kadran_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        kadran_comp[kadran_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        //kadran_comp[kadran_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        //kadran_comp[kadran_no].PopupMenu := PopupMenu1;

        kadran_comp[kadran_no].Name:=DataModule1.ADOQuery63.Fields[2].AsString;

        kadran_comp[kadran_no].Width:=strtoint(DataModule1.ADOQuery63.Fields[3].AsString);

        kadran_comp[kadran_no].Height:=strtoint(DataModule1.ADOQuery63.Fields[4].AsString);

        kadran_comp[kadran_no].LabelsFont.Size:=strtoint(DataModule1.ADOQuery63.Fields[5].AsString);

        kadran_comp[kadran_no].LabelsFont.Name:=DataModule1.ADOQuery63.Fields[6].AsString;

        kadran_comp[kadran_no].LabelsFont.Color:=stringtocolor(DataModule1.ADOQuery63.Fields[7].AsString);

        SetSetProp(kadran_comp[kadran_no].LabelsFont, ‘Style’, DataModule1.ADOQuery63.Fields[8].AsString);

        kadran_comp[kadran_no].Color:=stringtocolor(DataModule1.ADOQuery63.Fields[9].AsString);

        kadran_comp[kadran_no].Left:=strtoint(DataModule1.ADOQuery63.Fields[16].AsString);

        kadran_comp[kadran_no].Top:=strtoint(DataModule1.ADOQuery63.Fields[17].AsString);

        kadran_comp[kadran_no].Decimals:=strtoint(DataModule1.ADOQuery63.Fields[19].AsString);

        kadran_comp[kadran_no].MaxValue:=strtoint(DataModule1.ADOQuery63.Fields[20].AsString);

        kadran_comp[kadran_no].MinValue:=strtoint(DataModule1.ADOQuery63.Fields[21].AsString);


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery63.Fields[18].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        kadran_comp[kadran_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        kadran_comp[kadran_no].Parent:=(FindComponent(DataModule1.ADOQuery63.Fields[18].AsString) as TRzPanel);

        created_nesne :=kadran_comp[kadran_no];

        DataModule1.ADOQuery63.Next;

     end;

  end;



  DataModule1.ADOQuery63.Close;

  DataModule1.ADOQuery63.SQL.Clear;

  DataModule1.ADOQuery63.SQL.Text :=’select * from TERMO order by termo_no asc’;

  DataModule1.ADOQuery63.Open;


  if DataModule1.ADOQuery63.RecordCount>0 then

  begin

     while not DataModule1.ADOQuery63.Eof do

     begin

        termo_no:=DataModule1.ADOQuery63.Fields[0].AsInteger;

        termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan1);

        termo_comp[termo_no].OnClick:=dyn_termo_Click;

        termo_comp[termo_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        termo_comp[termo_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        termo_comp[termo_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        termo_comp[termo_no].Scale.Offset:=20;

        //termo_comp[termo_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        //termo_comp[termo_no].PopupMenu := PopupMenu1;

        termo_comp[termo_no].Name:=DataModule1.ADOQuery63.Fields[2].AsString;

        termo_comp[termo_no].Width:=strtoint(DataModule1.ADOQuery63.Fields[3].AsString);

        termo_comp[termo_no].Height:=strtoint(DataModule1.ADOQuery63.Fields[4].AsString);

        termo_comp[termo_no].Font.Size:=strtoint(DataModule1.ADOQuery63.Fields[5].AsString);

        termo_comp[termo_no].Font.Name:=DataModule1.ADOQuery63.Fields[6].AsString;

        termo_comp[termo_no].Font.Color:=stringtocolor(DataModule1.ADOQuery63.Fields[7].AsString);

        SetSetProp(termo_comp[termo_no].Font, ‘Style’, DataModule1.ADOQuery63.Fields[8].AsString);

        termo_comp[termo_no].Color:=stringtocolor(DataModule1.ADOQuery63.Fields[9].AsString);

        termo_comp[termo_no].Left:=strtoint(DataModule1.ADOQuery63.Fields[16].AsString);

        termo_comp[termo_no].Top:=strtoint(DataModule1.ADOQuery63.Fields[17].AsString);

        termo_comp[termo_no].Scale.Decimals:=strtoint(DataModule1.ADOQuery63.Fields[19].AsString);

        termo_comp[termo_no].Scale.Max:=strtoint(DataModule1.ADOQuery63.Fields[20].AsString);

        termo_comp[termo_no].Scale.Min:=strtoint(DataModule1.ADOQuery63.Fields[21].AsString);

        termo_comp[termo_no].Scale.SmallStep:=(strtoint(DataModule1.ADOQuery63.Fields[20].AsString)-strtoint(DataModule1.ADOQuery63.Fields[21].AsString))/20;

        termo_comp[termo_no].Scale.Step:=(strtoint(DataModule1.ADOQuery63.Fields[20].AsString)-strtoint(DataModule1.ADOQuery63.Fields[21].AsString))/10;


        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Text :=(‘select * from PANEL WHERE panel_name = ‘+””+DataModule1.ADOQuery63.Fields[18].AsString+””);

        DataModule1.ADOQuery62.Open;

        if DataModule1.ADOQuery62.RecordCount>0 then

        begin

        termo_comp[termo_no].Parent:=panel_comp[DataModule1.ADOQuery62.Fields[0].AsInteger];

        end else

        termo_comp[termo_no].Parent:=(FindComponent(DataModule1.ADOQuery63.Fields[18].AsString) as TRzPanel);

        created_nesne :=termo_comp[termo_no];

        DataModule1.ADOQuery63.Next;

     end;

  end;



  DataModule1.ADOQuery33.Close;

  DataModule1.ADOQuery33.SQL.Clear;

  DataModule1.ADOQuery33.SQL.Text :=’select * from KULLANICI’;

  DataModule1.ADOQuery33.Open;

  if DataModule1.ADOQuery33.RecordCount=0 then

  begin

  DataModule1.ADOQuery33.Close;

  DataModule1.ADOQuery33.SQL.Clear;

  DataModule1.ADOQuery33.SQL.Add(‘Insert into KULLANICI(id,AD,SOYAD,KULLANICI_ADI,SIFRE,YETKI) values (‘+

  ””+’1’+”’,’+

  ””+’SCADA’+”’,’+

  ””+’ADMIN’+”’,’+

  ””+’ADMIN’+”’,’+

  ””+’303042’+”’,’+

  ””+’ADMIN’+”’)’);

  DataModule1.ADOQuery33.ExecSQL;

  end;


  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Text :=’select * from SAYFALAR’;

  DataModule1.ADOQuery79.Open;

  if DataModule1.ADOQuery79.RecordCount=0 then

  begin

  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Add(‘Insert into SAYFALAR(sayfa_no,proje_name,sayfa1,sayfa1_en,sayfa2,sayfa2_en,sayfa3,sayfa3_en,sayfa4,sayfa4_en,sayfa5,sayfa5_en,sayfa6,sayfa6_en,sayfa7,sayfa7_en,monitorin,monitoring_en,event,event_en, network, network_en ) values (‘+

  ””+’1’+”’,’+

  ””+’PROJE BAŞLIĞI’+”’,’+

  ””+’SAYFA1’+”’,’+

  ””+’1’+”’,’+

  ””+’SAYFA2’+”’,’+

  ””+’1’+”’,’+

  ””+’SAYFA3’+”’,’+

  ””+’1’+”’,’+

  ””+’SAYFA4’+”’,’+

  ””+’1’+”’,’+

  ””+’SAYFA5’+”’,’+

  ””+’1’+”’,’+

  ””+’SAYFA6’+”’,’+

  ””+’1’+”’,’+

  ””+’SAYFA7’+”’,’+

  ””+’1’+”’,’+

  ””+’MONITORIN’+”’,’+

  ””+’1’+”’,’+

  ””+’EVENT’+”’,’+

  ””+’1’+”’,’+

  ””+’NETWORK’+”’,’+

  ””+’1’+”’)’);

  DataModule1.ADOQuery79.ExecSQL;

  end;



  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Text :=(‘select * from SAYFALAR WHERE sayfa_no = ‘+””+’1’+””);

  DataModule1.ADOQuery79.Open;


  JvGradientHeaderPanel1.LabelCaption:= DataModule1.ADOQuery79.Fields[1].AsString;

  AdvGlassButton5.Caption:= DataModule1.ADOQuery79.Fields[3].AsString;

  AdvGlassButton5.Visible:= DataModule1.ADOQuery79.Fields[4].AsBoolean;

  suiButton2.Caption:= DataModule1.ADOQuery79.Fields[5].AsString;;

  suiButton2.Visible:= DataModule1.ADOQuery79.Fields[6].AsBoolean;

  suiButton3.Caption:= DataModule1.ADOQuery79.Fields[7].AsString;;

  suiButton3.Visible:= DataModule1.ADOQuery79.Fields[8].AsBoolean;

  AdvGlassButton4.Caption:= DataModule1.ADOQuery79.Fields[9].AsString;;

  AdvGlassButton4.Visible:= DataModule1.ADOQuery79.Fields[10].AsBoolean;

  suiButton4.Caption:= DataModule1.ADOQuery79.Fields[11].AsString;;

  suiButton4.Visible:= DataModule1.ADOQuery79.Fields[12].AsBoolean;

  AdvGlassButton3.Caption:= DataModule1.ADOQuery79.Fields[13].AsString;;

  AdvGlassButton3.Visible:= DataModule1.ADOQuery79.Fields[14].AsBoolean;

  suiButton6.Caption:= DataModule1.ADOQuery79.Fields[15].AsString;;

  suiButton6.Visible:= DataModule1.ADOQuery79.Fields[16].AsBoolean;

  suiButton8.Caption:=DataModule1.ADOQuery79.Fields[17].AsString;

  suiButton8.Visible:=DataModule1.ADOQuery79.Fields[18].AsBoolean;

  suiButton7.Caption:=DataModule1.ADOQuery79.Fields[19].AsString;

  suiButton7.Visible:=DataModule1.ADOQuery79.Fields[20].AsBoolean;

  suiButton9.Caption:=DataModule1.ADOQuery79.Fields[21].AsString;

  suiButton9.Visible:=DataModule1.ADOQuery79.Fields[22].AsBoolean;


  DataModule1.ADOQuery79.SQL.Text := ‘Select logo from SAYFALAR where sayfa_no=:1’;

  DataModule1.ADOQuery79.Parameters[0].Value := 1;

  DataModule1.ADOQuery79.Open;

  if DataModule1.ADOQuery79.Fields[0].AsString <> ” then

  begin

  try

    g:=TPngImage.Create;

    g.Assign(DataModule1.ADOQuery79.FieldByName(‘logo’));

    Image1.Picture.Assign(g);

    finally

      g.Free;

    end;

  end;


    DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Text :=’select * from TRENDSLER’;

  DataModule1.ADOQuery86.Open;

  if DataModule1.ADOQuery86.RecordCount=0 then

  begin

  DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Add(‘Insert into TRENDSLER(trends_no,trends_basligi,trends_1,trends_1_en,trends_1_color,trends_1_birimi,trends_1_suresi,trends_1_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_2,trends_2_en,trends_2_color,trends_2_birimi,trends_2_suresi,trends_2_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_3,trends_3_en,trends_3_color,trends_3_birimi,trends_3_suresi,trends_3_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_4,trends_4_en,trends_4_color,trends_4_birimi,trends_4_suresi,trends_4_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_5,trends_5_en,trends_5_color,trends_5_birimi,trends_5_suresi,trends_5_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_6,trends_6_en,trends_6_color,trends_6_birimi,trends_6_suresi,trends_6_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_7,trends_7_en,trends_7_color,trends_7_birimi,trends_7_suresi,trends_7_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_8,trends_8_en,trends_8_color,trends_8_birimi,trends_8_suresi,trends_8_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_9,trends_9_en,trends_9_color,trends_9_birimi,trends_9_suresi,trends_9_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_10,trends_10_en,trends_10_color,trends_10_birimi,trends_10_suresi,trends_10_tagi’);

  DataModule1.ADOQuery86.SQL.Add(‘,trends_11,trends_11_en,trends_11_color,trends_11_birimi,trends_11_suresi,trends_11_tagi ) values (‘+

  ””+’1’+”’,’+

  ””+’TRENDS’+”’,’+

  ””+’TRENDS 1’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 2’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 3’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 4’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 5’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 6’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 7’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 8’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 9’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 10’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’,’+

  ””+’TRENDS 11’+”’,’+

  ””+’1’+”’,’+

  ””+’clBlack’+”’,’+

  ””+’B’+”’,’+

  ””+’1M’+”’,’+

  ””+’TRENDS TAGI’+”’)’);

  DataModule1.ADOQuery86.ExecSQL;

  end;


  DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Text :=(‘select * from TRENDSLER WHERE trends_no = ‘+””+’1’+””);

  DataModule1.ADOQuery86.Open;


  Chart1.Title.Text.Text:=DataModule1.ADOQuery86.Fields[1].AsString;

  AdvSmoothToggleButton1.Caption:=DataModule1.ADOQuery86.Fields[2].AsString;

  AdvSmoothToggleButton1.Visible:=DataModule1.ADOQuery86.Fields[3].AsBoolean;

  AdvSmoothToggleButton1.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[4].AsString);

  Chart1.Series[0].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[4].AsString);

  AdvSmoothToggleButton1.Status.Caption:=DataModule1.ADOQuery86.Fields[5].AsString;

  AdvSmoothToggleButton2.Caption:=DataModule1.ADOQuery86.Fields[8].AsString;

  AdvSmoothToggleButton2.Visible:=DataModule1.ADOQuery86.Fields[9].AsBoolean;

  AdvSmoothToggleButton2.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[10].AsString);

  Chart1.Series[1].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[10].AsString);

  AdvSmoothToggleButton2.Status.Caption:=DataModule1.ADOQuery86.Fields[11].AsString;

  AdvSmoothToggleButton3.Caption:=DataModule1.ADOQuery86.Fields[14].AsString;

  AdvSmoothToggleButton3.Visible:=DataModule1.ADOQuery86.Fields[15].AsBoolean;

  AdvSmoothToggleButton3.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[16].AsString);

  Chart1.Series[2].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[16].AsString);

  AdvSmoothToggleButton3.Status.Caption:=DataModule1.ADOQuery86.Fields[17].AsString;

  AdvSmoothToggleButton4.Caption:=DataModule1.ADOQuery86.Fields[20].AsString;

  AdvSmoothToggleButton4.Visible:=DataModule1.ADOQuery86.Fields[21].AsBoolean;

  AdvSmoothToggleButton4.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[22].AsString);

  Chart1.Series[3].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[22].AsString);

  AdvSmoothToggleButton4.Status.Caption:=DataModule1.ADOQuery86.Fields[23].AsString;

  AdvSmoothToggleButton5.Caption:=DataModule1.ADOQuery86.Fields[26].AsString;

  AdvSmoothToggleButton5.Visible:=DataModule1.ADOQuery86.Fields[27].AsBoolean;

  AdvSmoothToggleButton5.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[28].AsString);

  Chart1.Series[4].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[28].AsString);

  AdvSmoothToggleButton5.Status.Caption:=DataModule1.ADOQuery86.Fields[29].AsString;

  AdvSmoothToggleButton6.Caption:=DataModule1.ADOQuery86.Fields[32].AsString;

  AdvSmoothToggleButton6.Visible:=DataModule1.ADOQuery86.Fields[33].AsBoolean;

  AdvSmoothToggleButton6.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[34].AsString);

  Chart1.Series[5].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[34].AsString);

  AdvSmoothToggleButton6.Status.Caption:=DataModule1.ADOQuery86.Fields[35].AsString;

  AdvSmoothToggleButton7.Caption:=DataModule1.ADOQuery86.Fields[38].AsString;

  AdvSmoothToggleButton7.Visible:=DataModule1.ADOQuery86.Fields[39].AsBoolean;

  AdvSmoothToggleButton7.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[40].AsString);

  Chart1.Series[6].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[40].AsString);

  AdvSmoothToggleButton7.Status.Caption:=DataModule1.ADOQuery86.Fields[41].AsString;

  AdvSmoothToggleButton8.Caption:=DataModule1.ADOQuery86.Fields[44].AsString;

  AdvSmoothToggleButton8.Visible:=DataModule1.ADOQuery86.Fields[45].AsBoolean;

  AdvSmoothToggleButton8.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[46].AsString);

  Chart1.Series[7].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[46].AsString);

  AdvSmoothToggleButton8.Status.Caption:=DataModule1.ADOQuery86.Fields[47].AsString;

  AdvSmoothToggleButton9.Caption:=DataModule1.ADOQuery86.Fields[50].AsString;

  AdvSmoothToggleButton9.Visible:=DataModule1.ADOQuery86.Fields[51].AsBoolean;

  AdvSmoothToggleButton9.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[52].AsString);

  Chart1.Series[8].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[52].AsString);

  AdvSmoothToggleButton9.Status.Caption:=DataModule1.ADOQuery86.Fields[53].AsString;

  AdvSmoothToggleButton10.Caption:=DataModule1.ADOQuery86.Fields[56].AsString;

  AdvSmoothToggleButton10.Visible:=DataModule1.ADOQuery86.Fields[57].AsBoolean;

  AdvSmoothToggleButton10.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[58].AsString);

  Chart1.Series[9].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[58].AsString);

  AdvSmoothToggleButton10.Status.Caption:=DataModule1.ADOQuery86.Fields[59].AsString;

  AdvSmoothToggleButton11.Caption:=DataModule1.ADOQuery86.Fields[62].AsString;

  AdvSmoothToggleButton11.Visible:=DataModule1.ADOQuery86.Fields[63].AsBoolean;

  AdvSmoothToggleButton11.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[64].AsString);

  Chart1.Series[10].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[64].AsString);

  AdvSmoothToggleButton11.Status.Caption:=DataModule1.ADOQuery86.Fields[65].AsString;


  DataModule1.ADOQuery24.Close;

  DataModule1.ADOQuery24.SQL.Clear;

  DataModule1.ADOQuery24.SQL.Text :=’select * from ANLIK’;

  DataModule1.ADOQuery24.Open;

  if DataModule1.ADOQuery24.RecordCount=0 then

  begin

  DataModule1.ADOQuery24.Close;

  DataModule1.ADOQuery24.SQL.Clear;

  DataModule1.ADOQuery24.SQL.Add(‘Insert into ANLIK(id) values (‘+””+’1’+”’)’);

  DataModule1.ADOQuery24.ExecSQL;

  end;


  DataModule1.ADOQuery29.Close;

  DataModule1.ADOQuery29.SQL.Clear;

  DataModule1.ADOQuery29.SQL.Text :=’select * from KUMANDA’;

  DataModule1.ADOQuery29.Open;

  if DataModule1.ADOQuery29.RecordCount=0 then

  begin

  DataModule1.ADOQuery29.Close;

  DataModule1.ADOQuery29.SQL.Clear;

  DataModule1.ADOQuery29.SQL.Add(‘Insert into KUMANDA(id) values (‘+””+’1’+”’)’);

  DataModule1.ADOQuery29.ExecSQL;

  DataModule1.ADOQuery29.Close;

  DataModule1.ADOQuery29.SQL.Clear;

  DataModule1.ADOQuery29.SQL.Add(‘Insert into KUMANDA(id) values (‘+””+’2’+”’)’);

  DataModule1.ADOQuery29.ExecSQL;

  end;


  

first:=true;

alarms:=false;

pendings:=false;

tara:=false;

satir:=0;

moni:=0;

tags_ok:=false;

tags_ilk:=true;

  d1.Date:=Date;

  d2.Date:=Date;


  DataModule1.ADOQuery3.Close;

  DataModule1.ADOQuery3.SQL.Clear;

  DataModule1.ADOQuery3.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery3.Open;


  DataModule1.ADOQuery2.Close;

  DataModule1.ADOQuery2.SQL.Clear;

  DataModule1.ADOQuery2.SQL.Text :=’select * from KULLANICI ORDER BY id DESC’;

  DataModule1.ADOQuery2.Open;


  DataModule1.ADOQuery19.Close;

  DataModule1.ADOQuery19.SQL.Clear;

  DataModule1.ADOQuery19.SQL.Text :=’select * from DURUMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery19.Open;


  DataModule1.ADOQuery43.Close;

  DataModule1.ADOQuery43.SQL.Clear;

  DataModule1.ADOQuery43.SQL.Text :=’select * from TRENDS_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery43.Open;


  DataModule1.ADOQuery45.Close;

  DataModule1.ADOQuery45.SQL.Clear;

  DataModule1.ADOQuery45.SQL.Text :=’select * from TRENDS_10M_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery45.Open;


  DataModule1.ADOQuery47.Close;

  DataModule1.ADOQuery47.SQL.Clear;

  DataModule1.ADOQuery47.SQL.Text :=’select * from TRENDS_1H_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery47.Open;


DataModule1.ADOQuery10.Close;

DataModule1.ADOQuery10.SQL.Clear;

DataModule1.ADOQuery10.SQL.Text :=’select * from EVENTS ORDER BY SIRA DESC’;

DataModule1.ADOQuery10.Open;

if DataModule1.ADOQuery10.RecordCount=0 then sirala:=0 else sirala:=DataModule1.ADOQuery10.Fields[8].Asinteger;


DataModule1.ADOQuery10.Close;

DataModule1.ADOQuery10.SQL.Clear;

DataModule1.ADOQuery10.SQL.Text :=’select * from STATUS ORDER BY SIRA DESC’;

DataModule1.ADOQuery10.Open;

if DataModule1.ADOQuery10.RecordCount=0 then siralaa:=0 else siralaa:=DataModule1.ADOQuery10.Fields[3].Asinteger;


Ini := TIniFile.Create(ChangeFileExt(Application.ExeName+’opc’,’.ini’));

  try

    XML.CLIENT_TIME.Text:= ini.ReadString(‘OPC’,’CLIENT_TIME’,”);

    server_name:=ini.ReadString(‘OPC’,’ServerName’,”);

    if server_name<>” then

    begin

    SCADA_FRM.opc1.ServerName:=server_name;

    SCADA_FRM.opc2.ServerName:=server_name;

    SCADA_FRM.opc3.ServerName:=server_name;

    SCADA_FRM.ANLIK_OPC.ServerName:=server_name;

    SCADA_FRM.BAGLANTI_OPC.ServerName:=server_name;

    end;

  finally

    ini.Free;

  end;

Ini := TIniFile.Create(ChangeFileExt(Application.ExeName+’opc’,’.ini’));

if XML.CLIENT_TIME.Text=” then

begin

  try

    ini.WriteString(‘OPC’,’CLIENT_TIME’,’1000′);

  finally

    ini.Free;

  end;

XML.CLIENT_TIME.Value:=1000;

end;


SCADA_FRM.ANLIK_OPC.OPCGroups[0].UpdateRate:=round(XML.CLIENT_TIME.Value);

SCADA_FRM.BAGLANTI_OPC.OPCGroups[0].UpdateRate:=round(XML.CLIENT_TIME.Value)*2;

end;


procedure TSCADA_FRM.FormDestroy(Sender: TObject);

begin

  //it’s important to disable SizeCtrl before destroying the form

  //because any SizeCtrl registered controls need to be ‘unhooked’ …

  SizeCtrl.Enabled := false;

end;


procedure TSCADA_FRM.FormPaint(Sender: TObject);

var

  i,j: integer;

begin

  if (GRIDSIZE > 1) and SizeCtrl.Enabled then

    for i := 0 to width div GRIDSIZE do

      for j := 0 to height div GRIDSIZE do

        canvas.Pixels[i*GRIDSIZE, j*GRIDSIZE] := clGray;

end;


procedure TSCADA_FRM.FormResize(Sender: TObject);

begin

  //if SizeCtrl has targets selected, and they are moved or resized

  //independently of SizeCtrl, then SizeCtrl must be ‘updated’ …

  SizeCtrl.Update;

end;


procedure TSCADA_FRM.FormActivate(Sender: TObject);

begin



AYARLAR.ActivePage:=ALARM_KAYIT;

suiButton67.Font.Color:=clred;

suiButton68.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;


DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

DataModule1.ADOQuery3.Open;

ilk:=true;


end;


procedure TSCADA_FRM.ALARMLARTimer(Sender: TObject);

begin


ALARMLAR.Interval:=1000;


//alarm

if alarms then

begin


DataModule1.ADOQuery10.Close;

DataModule1.ADOQuery10.SQL.Clear;

DataModule1.ADOQuery10.SQL.Text :=’select * from EVENTS ORDER BY TARIH DESC’;

DataModule1.ADOQuery10.Open;

  NextGrid1.ClearRows;

     DataModule1.ADOQuery10.First;

     satir:=0;

     try

       while not DataModule1.ADOQuery10.Eof do

       begin

       satir:=satir+1;

       if satir=36 then break;

       NextGrid1.Addrow();

       NextGrid1.cell[0,NextGrid1.rowcount-1].AsDateTime:=DataModule1.ADOQuery10.Fields[0].Asdatetime;

       NextGrid1.cell[1,NextGrid1.rowcount-1].AsInteger:=DataModule1.ADOQuery10.Fields[1].Asinteger;

       NextGrid1.cell[2,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[2].AsString;

       //NextGrid1.cell[3,NextGrid1.rowcount-1].asstring:=ADOQuery10.Fields[3].AsString;

       NextGrid1.cell[4,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[4].AsString;

       NextGrid1.cell[5,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[5].AsString;

       NextGrid1.cell[6,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[8].AsString;

       if DataModule1.ADOQuery10.Fields[9].Asboolean=true then begin if DataModule1.ADOQuery10.Fields[6].Asboolean=true then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=cllime; end else begin

       if DataModule1.ADOQuery10.Fields[7].Asboolean then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clred; end else begin

       NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clyellow; end;end;

       NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘1’ end else

       begin

         if DataModule1.ADOQuery10.Fields[7].Asboolean then

         begin

         if DataModule1.ADOQuery10.Fields[6].Asboolean=false then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clred; NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘0’end;

         end else

         begin

         if DataModule1.ADOQuery10.Fields[6].Asboolean=false then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clyellow; NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘0’end;

         end;

       end;

         DataModule1.ADOQuery10.Next;

       end;

       finally;

     end;

     DataModule1.ADOQuery10.First;

   end;

//pending

if pendings then

begin

  DataModule1.ADOQuery11.Close;

  DataModule1.ADOQuery11.SQL.Clear;

  DataModule1.ADOQuery11.SQL.Text :=’select * from PENDING ORDER BY TARIH DESC’;

  DataModule1.ADOQuery11.Open;

  NextGrid1.ClearRows;

     DataModule1.ADOQuery11.First;

     try

       while not DataModule1.ADOQuery11.Eof do

       begin

       if ((DataModule1.ADOQuery11.Fields[8].Asboolean=FALSE) or (DataModule1.ADOQuery11.Fields[6].Asboolean =false)) then

       begin

       NextGrid1.Addrow();

       NextGrid1.cell[0,NextGrid1.rowcount-1].AsDateTime:=DataModule1.ADOQuery11.Fields[0].AsDateTime;

       NextGrid1.cell[1,NextGrid1.rowcount-1].AsInteger:=DataModule1.ADOQuery11.Fields[1].Asinteger;

       NextGrid1.cell[2,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery11.Fields[2].AsString;

      // NextGrid1.cell[3,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery11.Fields[3].AsString;

       NextGrid1.cell[4,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery11.Fields[4].AsString;

       NextGrid1.cell[5,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery11.Fields[5].AsString;

       if DataModule1.ADOQuery11.Fields[8].Asboolean=true then NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘1’ else NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘0’;

         if DataModule1.ADOQuery11.Fields[7].Asboolean then

         begin

         if DataModule1.ADOQuery11.Fields[6].Asboolean =false then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clred; end;

         end else

         begin

         if DataModule1.ADOQuery11.Fields[6].Asboolean =false then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clyellow; end;

         end;

         end;

         DataModule1.ADOQuery11.Next;

       end;

       finally;

     end;

     DataModule1.ADOQuery11.First;

   end;

//panel

  DataModule1.ADOQuery11.Close;

  DataModule1.ADOQuery11.SQL.Clear;

  DataModule1.ADOQuery11.SQL.Text :=’select * from PENDING’;

  DataModule1.ADOQuery11.SQL.Add(‘WHERE CLASS = ‘+””+’True’+””); //alarm mı?

  DataModule1.ADOQuery11.SQL.Add(‘AND ACTIVE = ‘+””+’False’+””); //aktif mi?

  DataModule1.ADOQuery11.SQL.Add(‘OR CLASS = ‘+””+’True’+””); //alarm mı??

  DataModule1.ADOQuery11.SQL.Add(‘AND ACKNOWLEDGE = ‘+””+’False’+””);//acknowledge edildimi?

  DataModule1.ADOQuery11.SQL.Add(‘ORDER BY TARIH DESC’);

  DataModule1.ADOQuery11.Open;

  if DataModule1.ADOQuery11.RecordCount=0 then begin

  SCADA_FRM.pending_trip.Color:=clsilver;

  SCADA_FRM.pending_trip.Text:=”;

  SCADA_FRM.trip_tarih.Color:=clsilver;

  SCADA_FRM.trip_tarih.Text:=”;

  end else

  begin

  if DataModule1.ADOQuery11.Fields[6].Asboolean then

  begin

  SCADA_FRM.pending_trip.Color:=clsilver;

  SCADA_FRM.pending_trip.Text:=DataModule1.ADOQuery11.Fields[5].Asstring;

  SCADA_FRM.trip_tarih.Color:=clsilver;

  SCADA_FRM.trip_tarih.Text:=DataModule1.ADOQuery11.Fields[0].Asstring;

  end else

  begin

  SCADA_FRM.pending_trip.Color:=clred;

  SCADA_FRM.pending_trip.Text:=DataModule1.ADOQuery11.Fields[5].Asstring;

  SCADA_FRM.trip_tarih.Color:=clred;

  SCADA_FRM.trip_tarih.Text:=DataModule1.ADOQuery11.Fields[0].Asstring;

  end;

  end;


  DataModule1.ADOQuery11.Close;

  DataModule1.ADOQuery11.SQL.Clear;

  DataModule1.ADOQuery11.SQL.Text :=’select * from PENDING’;

  DataModule1.ADOQuery11.SQL.Add(‘WHERE CLASS = ‘+””+’False’+””); //trip mı?

  DataModule1.ADOQuery11.SQL.Add(‘AND ACTIVE = ‘+””+’False’+””); //aktif mi?

  DataModule1.ADOQuery11.SQL.Add(‘OR CLASS = ‘+””+’False’+””); //trip mi?

  DataModule1.ADOQuery11.SQL.Add(‘AND ACKNOWLEDGE = ‘+””+’False’+””);//acknowledge edildimi?

  DataModule1.ADOQuery11.SQL.Add(‘ORDER BY TARIH DESC’);

  DataModule1.ADOQuery11.Open;

  if DataModule1.ADOQuery11.RecordCount=0 then begin

  SCADA_FRM.pending_alarm.Color:=clsilver;

  SCADA_FRM.pending_alarm.Text:=”;

  SCADA_FRM.alarm_tarih.Color:=clsilver;

  SCADA_FRM.alarm_tarih.Text:=”;

  end else

  begin

  if DataModule1.ADOQuery11.Fields[6].Asboolean then

  begin

  SCADA_FRM.pending_alarm.Color:=clsilver;

  SCADA_FRM.pending_alarm.Text:=DataModule1.ADOQuery11.Fields[5].Asstring;

  SCADA_FRM.alarm_tarih.Color:=clsilver;

  SCADA_FRM.alarm_tarih.Text:=DataModule1.ADOQuery11.Fields[0].Asstring;

  end else

  begin

  SCADA_FRM.pending_alarm.Color:=clyellow;

  SCADA_FRM.pending_alarm.Text:=DataModule1.ADOQuery11.Fields[5].Asstring;

  SCADA_FRM.alarm_tarih.Color:=clyellow;

  SCADA_FRM.alarm_tarih.Text:=DataModule1.ADOQuery11.Fields[0].Asstring;

  end;

  end;


end;

procedure TSCADA_FRM.suiImageButton1Click(Sender: TObject);

begin

try

begin

  SCADA_SQL_FRM.PopupMenu1.Destroy;

  SCADA_SQL_FRM.NotifyIcon1.DestroyComponents;

  SCADA_SQL_FRM.Timer2.Destroy;

  SCADA_FRM.ALARMLAR.Destroy;

  SCADA_FRM.KUMANDA.Destroy;

  SCADA_FRM.TRENDLER.Destroy;

  SCADA_FRM.DEFAULTS.Destroy;

  SCADA_FRM.GORSELLER.Destroy;

  SCADA_FRM.Tmr1.Destroy;

  SCADA_FRM.opc1.Destroy;

  SCADA_FRM.opc2.Destroy;

  SCADA_FRM.opc3.Destroy;

  SCADA_FRM.ANLIK_OPC.Destroy;

  SCADA_FRM.BAGLANTI_OPC.Destroy;

  SEND_SMS.Destroy;

  MailerForm.Destroy;

  JSON.Free;

  xml.Free;

  SCADA_FRM.Close;

  Scada_Connect.Destroy;

  delay(200);

  //SCADA_SQL_FRM.Destroy;

  Application.Terminate; //DOES NOT SHUT DOWN?!?

  Halt(1); //DOES SHUT DOWN!

  //Exit;

end;

finally

 

end;

end;

 

procedure TSCADA_FRM.suiButton3Click(Sender: TObject);

begin

if (PAGE.ActivePage<>PAGE_3) then

begin

PAGE.ActivePage:=PAGE_3;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clred;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton2Click(Sender: TObject);

begin

if (PAGE.ActivePage<>PAGE_2)then

begin

PAGE.ActivePage:=PAGE_2;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clred;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton4Click(Sender: TObject);

begin

if PAGE.ActivePage<>PAGE_5 then

begin

PAGE.ActivePage:=PAGE_5;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clred;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton6Click(Sender: TObject);

begin

if (PAGE.ActivePage<>PAGE_7) then

begin

PAGE.ActivePage:=PAGE_7;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clred;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton7Click(Sender: TObject);

begin

if PAGE.ActivePage<>EVENTS then

begin

NextGrid1.ClearRows;

PAGE.ActivePage:=EVENTS;

PAGE9.ActivePage:=STRING_GRID;

NxTextColumn1.Width:=NextGrid1.Width-(DateColumn1.Width+NxTextColumn3.Width+NxTextColumn4.Width+TextualColumn1.Width+NxTextColumn2.Width+70);

NxTextColumn9.Width:=NextGrid2.Width-(NxDateColumn62.Width+20);

pendings:=true;

alarms:=false;

suiButton50.Font.Color:=clred;

suiButton52.Font.Color:=clblack;

suiButton51.Font.Color:=clblack;

suiButton53.Font.Color:=clblack;

suiButton5.Font.Color:=clblack;

JvPageControl2.ActivePage:=TabSheet4;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clred;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton8Click(Sender: TObject);

begin

if ((PAGE.ActivePage<>MONITORING) or (PAGE1.ActivePage<>TabSheet1))then

begin

PAGE.ActivePage:=MONITORING;

PAGE1.ActivePage:=TabSheet1;

suiButton20.Font.Color:=clred;

suiButton21.Font.Color:=clblack;

suiButton22.Font.Color:=clblack;

suiButton23.Font.Color:=clblack;

suiButton27.Font.Color:=clblack;

suiButton49.Font.Color:=clblack;

suiButton65.Font.Color:=clblack;

suiButton26.Font.Color:=clblack;

suiButton62.Font.Color:=clblack;

suiButton30.Font.Color:=clblack;

suiButton33.Font.Color:=clblack;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clred;

suiButton9.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton9Click(Sender: TObject);

begin

if PAGE.ActivePage<>NETWORK then

begin

PAGE.ActivePage:=NETWORK;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clred;

end;

end;

 

procedure TSCADA_FRM.suiButton20Click(Sender: TObject);

begin

if PAGE1.ActivePage<>TabSheet1 then

begin

PAGE1.ActivePage:=TabSheet1;

suiButton20.Font.Color:=clred;

suiButton21.Font.Color:=clblack;

suiButton22.Font.Color:=clblack;

suiButton23.Font.Color:=clblack;

suiButton27.Font.Color:=clblack;

suiButton49.Font.Color:=clblack;

suiButton65.Font.Color:=clblack;

suiButton26.Font.Color:=clblack;

suiButton62.Font.Color:=clblack;

suiButton30.Font.Color:=clblack;

suiButton33.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton23Click(Sender: TObject);

begin

if PAGE1.ActivePage<>TabSheet12 then

begin

PAGE1.ActivePage:=TabSheet12;

suiButton20.Font.Color:=clblack;

suiButton21.Font.Color:=clblack;

suiButton22.Font.Color:=clblack;

suiButton23.Font.Color:=clred;

suiButton27.Font.Color:=clblack;

suiButton49.Font.Color:=clblack;

suiButton65.Font.Color:=clblack;

suiButton26.Font.Color:=clblack;

suiButton62.Font.Color:=clblack;

suiButton30.Font.Color:=clblack;

suiButton33.Font.Color:=clblack;

end;

end;

 

 

procedure TSCADA_FRM.EVENT_CLASSChange(Sender: TObject);

begin

EVENT_TYPE.Items.Clear;

CASE EVENT_CLASS.ItemIndex OF

0: begin EVENT_TYPE.Items.Add(‘Alarm High’); EVENT_TYPE.Items.Add(‘Alarm Low’); EVENT_TYPE.Text:=’Alarm High’ end;

1: begin EVENT_TYPE.Items.Add(‘Trip High’); EVENT_TYPE.Items.Add(‘Trip Low’); EVENT_TYPE.Text:=’Trip High’ end;

end;

end;

 

procedure TSCADA_FRM.suiButton56Click(Sender: TObject);

var

SIRA:string;

t:string;

begin

  DataModule1.ADOQuery4.Close;

  DataModule1.ADOQuery4.SQL.Clear;

  DataModule1.ADOQuery4.SQL.Add(‘SELECT * FROM ALARMLAR’);

  DataModule1.ADOQuery4.SQL.Add(‘WHERE MESSAGE_TAG = ‘+””+SCADA_FRM.EVENT_TAG.Text+””);

  DataModule1.ADOQuery4.SQL.Add(‘AND MESSAGE_BIT = ‘+””+SCADA_FRM.EVENT_BIT.Text+””);

  DataModule1.ADOQuery4.Open;

  if DataModule1.ADOQuery4.RecordCount=0 then

  begin

                   DataModule1.ADOQuery4.Close;

                   DataModule1.ADOQuery4.SQL.Clear;

                   DataModule1.ADOQuery4.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

                   DataModule1.ADOQuery4.Open;

if DataModule1.ADOQuery4.Fields[0].AsString=” then SIRA:=’1′ else SIRA:=inttostr(strtoint(DataModule1.ADOQuery4.Fields[0].AsString)+1);

                   DataModule1.ADOQuery3.Close;

                   DataModule1.ADOQuery3.SQL.Clear;

                   DataModule1.ADOQuery3.SQL.Add(‘Insert into ALARMLAR(NUMBER,CLASS,TYPE,PARIORITY,MESSAGE_TAG,MESSAGE_BIT,STATUS_TAG,STATUS_BIT,SOURCE,AREA,EVENT) values (‘+

                   ””+SIRA+”’,’+””+EVENT_CLASS.Text+”’,’+””+EVENT_TYPE.Text+”’,’+””+EVENT_PARIORITY.Text+”’,’+””+EVENT_TAG.Text+”’,’+””+EVENT_BIT.Text+”’,’+””+EVENT_STAG.Text+”’,’+””+EVENT_SBIT.Text+”’,’+””+EVENT_SOURCE.Text+”’,’+””+EVENT_AREA.Text+”’,’+””+EVENT_EVENT.Text+”’)’);

                   DataModule1.ADOQuery3.ExecSQL;

                   DataModule1.ADOQuery3.Close;

                   DataModule1.ADOQuery3.SQL.Clear;

                   DataModule1.ADOQuery3.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

                   DataModule1.ADOQuery3.Open;

                   EVENT_EVENT.Text:=”;

 

                   DataModule1.ADOQuery9.Close;

                   DataModule1.ADOQuery9.SQL.Clear;

                   DataModule1.ADOQuery9.SQL.Text :=’select * from ALARM_TAG’;

                   DataModule1.ADOQuery9.SQL.Add(‘WHERE TAG = ‘+””+EVENT_TAG.Text+””);

                   DataModule1.ADOQuery9.Open;

                   if DataModule1.ADOQuery9.RecordCount=0 then

                   begin

                   DataModule1.ADOQuery9.Close;

                   DataModule1.ADOQuery9.SQL.Clear;

                   DataModule1.ADOQuery9.SQL.Add(‘Insert into ALARM_TAG(TAG) values (‘+

                   ””+EVENT_TAG.Text+”’)’);

                   DataModule1.ADOQuery9.ExecSQL;

                   t:=ustrFullTrim(EVENT_TAG.Text);

                   opc2.OPCGroups[0].OPCItems.additem(t);

                   end;

end else showmessage(‘Daha önce ‘+DataModule1.ADOQuery4.Fields[0].AsString+ ‘ sıra numaralı eventta bu bit kullanılmıştır.’);

end;

 

procedure TSCADA_FRM.EVENT_TAGClick(Sender: TObject);

begin

EVENT_TAG.Text := dOPCBrowseItemDlg(OPC2.Browser);

end;

 

procedure TSCADA_FRM.EVENT_STAGClick(Sender: TObject);

begin

EVENT_STAG.Text := dOPCBrowseItemDlg(OPC2.Browser);

end;

 

procedure TSCADA_FRM.suiButton24Click(Sender: TObject);

var

t:string;

update_tag:string;

i:integer;

begin

update_tag:=DataModule1.ADOQuery3.Fields[4].AsString;

 

  DataModule1.ADOQuery3.Close;

  DataModule1.ADOQuery3.SQL.Clear;

  DataModule1.ADOQuery3.SQL.Add(‘UPDATE ALARMLAR SET CLASS=”’+EVENT_CLASS.Text+”’,’+

                               ‘TYPE=”’+EVENT_TYPE.Text+”’,’+

                               ‘PARIORITY=”’+EVENT_PARIORITY.Text+”’,’+

                               ‘MESSAGE_TAG=”’+EVENT_TAG.Text+”’,’+

                               ‘MESSAGE_BIT=”’+EVENT_BIT.Text+”’,’+

                               ‘STATUS_TAG=”’+EVENT_STAG.Text+”’,’+

                               ‘STATUS_BIT=”’+EVENT_SBIT.Text+”’,’+

                               ‘SOURCE=”’+EVENT_SOURCE.Text+”’,’+

                               ‘AREA=”’+EVENT_AREA.Text+”’,’+

                               ‘EVENT=”’+EVENT_EVENT.Text+”’ WHERE NUMBER = ‘+””+EVENT_NUMBER.Caption+””);

  DataModule1.ADOQuery3.ExecSQL;

 

  DataModule1.ADOQuery4.Close;

  DataModule1.ADOQuery4.SQL.Clear;

  DataModule1.ADOQuery4.SQL.Text :=’select * from ALARMLAR’;

  DataModule1.ADOQuery4.SQL.Add(‘WHERE MESSAGE_TAG = ‘+””+update_tag+””);

  DataModule1.ADOQuery4.Open;

 

  if (DataModule1.ADOQuery4.RecordCount=0) then

  begin

  DataModule1.ADOQuery9.Close;

  DataModule1.ADOQuery9.SQL.Clear;

  DataModule1.ADOQuery9.SQL.Add(‘Delete from ALARM_TAG’);

  DataModule1.ADOQuery9.SQL.Add(‘WHERE TAG = ‘+””+update_tag+””);

  DataModule1.ADOQuery9.ExecSQL;

  end;

 

  DataModule1.ADOQuery9.Close;

  DataModule1.ADOQuery9.SQL.Clear;

  DataModule1.ADOQuery9.SQL.Text :=’select * from ALARM_TAG’;

  DataModule1.ADOQuery9.SQL.Add(‘WHERE TAG = ‘+””+EVENT_TAG.Text+””);

  DataModule1.ADOQuery9.Open;

  if DataModule1.ADOQuery9.RecordCount=0 then

  begin

  DataModule1.ADOQuery9.Close;

  DataModule1.ADOQuery9.SQL.Clear;

  DataModule1.ADOQuery9.SQL.Add(‘Insert into ALARM_TAG(TAG) values (‘+

  ””+EVENT_TAG.Text+”’)’);

  DataModule1.ADOQuery9.ExecSQL;

  t:=ustrFullTrim(EVENT_TAG.Text);

  opc2.OPCGroups[0].OPCItems.additem(t);

  end;

 

  DataModule1.ADOQuery3.ExecSQL;

  DataModule1.ADOQuery3.Close;

  DataModule1.ADOQuery3.SQL.Clear;

  DataModule1.ADOQuery3.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery3.Open;

 

  for I := 0 to 8 do

begin

  if xdbgrid4.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Add(‘select * from ALARMLAR’);

DataModule1.ADOQuery3.SQL.Add(‘ORDER BY ‘+kolontitle+’ DESC’);

DataModule1.ADOQuery3.Open;

 end;

  if xdbgrid4.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Add(‘select * from ALARMLAR’);

DataModule1.ADOQuery3.SQL.Add(‘ORDER BY ‘+kolontitle+’ ASC’);

DataModule1.ADOQuery3.Open;

end;

end;

end;

 

procedure TSCADA_FRM.opc2Datachange(Sender: TObject;

  ItemList: TdOPCItemList);

var

i:integer;

begin

if tags_ok then

begin

//if first then showmessage(inttostr(ItemList.Count-1));

  for i := 0 to ItemList.Count-1 do    // more than one Items possible

  begin

  if (ItemList[i].Value and 1) then Event(ItemList[i].ItemId,’0′,true) else Event(ItemList[i].ItemId,’0′,false);

  if (ItemList[i].Value and 2) then Event(ItemList[i].ItemId,’1′,true) else Event(ItemList[i].ItemId,’1′,false);

  if (ItemList[i].Value and 4) then Event(ItemList[i].ItemId,’2′,true) else Event(ItemList[i].ItemId,’2′,false);

  if (ItemList[i].Value and 8) then Event(ItemList[i].ItemId,’3′,true) else Event(ItemList[i].ItemId,’3′,false);

  if (ItemList[i].Value and 16) then Event(ItemList[i].ItemId,’4′,true) else Event(ItemList[i].ItemId,’4′,false);

  if (ItemList[i].Value and 32) then Event(ItemList[i].ItemId,’5′,true) else Event(ItemList[i].ItemId,’5′,false);

  if (ItemList[i].Value and 64) then Event(ItemList[i].ItemId,’6′,true) else Event(ItemList[i].ItemId,’6′,false);

  if (ItemList[i].Value and 128) then Event(ItemList[i].ItemId,’7′,true) else Event(ItemList[i].ItemId,’7′,false);

  end;

  end;

SCADA_FRM.first:=false;

end;

 

procedure TSCADA_FRM.Image1DblClick(Sender: TObject);

begin

suiButton2.Enabled:=true;

suiButton3.Enabled:=true;

suiButton4.Enabled:=true;

suiButton6.Enabled:=true;

suiButton7.Enabled:=true;

suiButton8.Enabled:=true;

suiButton9.Enabled:=true;

AdvGlassButton3.Enabled:=true;

AdvGlassButton4.Enabled:=true;

AdvGlassButton5.Enabled:=true;

PAGE.ActivePage:=PAGE_1;

end;

 

procedure TSCADA_FRM.JvTransparentButton4Click(Sender: TObject);

begin

PAGE.ActivePage:=LOGIN;

end;

 

procedure TSCADA_FRM.JvTreeView1SelectionChange(Sender: TObject);

Var

  Node : TTreeNode;

  node_name:string;

  i:integer;

  f:TBitmap;

begin

list_no:=Grafik_List_No;

 

if list_no<>list_no_e then

begin

imgCollection.Items.Clear;

      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select logo from IMGLIST’);

      DataModule1.ADOQuery84.SQL.Add(‘WHERE IMGLIST_NO = ‘+””+inttostr(list_no)+””);

      DataModule1.ADOQuery84.SQL.Add(‘order by IMG_NO asc’);

      DataModule1.ADOQuery84.Open;

      while not DataModule1.ADOQuery84.Eof do

      begin

      f:= TBitmap.Create;

      f.Assign(DataModule1.ADOQuery84.FieldByName(‘logo’));

      imgCollection.Items.Add.Picture.Bitmap:=f;

      DataModule1.ADOQuery84.Next;

      end;

      list_no_e:=list_no;

end;

end;

 

procedure TSCADA_FRM.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if (key = #13) then

begin

DataModule1.ADOQuery12.Close;

DataModule1.ADOQuery12.SQL.Clear;

DataModule1.ADOQuery12.SQL.Add(‘SELECT * FROM KULLANICI’);

DataModule1.ADOQuery12.SQL.Add(‘WHERE KULLANICI_ADI = ‘+””+edit1.Text+””);

DataModule1.ADOQuery12.Open;

if DataModule1.ADOQuery12.RecordCount<>0 then

begin

if ‘***********’=ustrFullTrim(DataModule1.ADOQuery12.Fields[4].AsString) then

begin

if edit2.Text=’*********’ then

begin

showmessage(‘Lisans aktifleştirildi’);

DataModule1.ADOQuery33.Close;

DataModule1.ADOQuery33.SQL.Clear;

DataModule1.ADOQuery33.SQL.Add(‘UPDATE KULLANICI SET SIFRE=”’+’123456’+”’ WHERE KULLANICI_ADI = ‘+””+edit1.Text+””);

DataModule1.ADOQuery33.ExecSQL;

edit2.Text:=’*********’;

DataModule1.ADOQuery12.Close;

DataModule1.ADOQuery12.SQL.Clear;

DataModule1.ADOQuery12.SQL.Add(‘SELECT * FROM KULLANICI’);

DataModule1.ADOQuery12.SQL.Add(‘WHERE KULLANICI_ADI = ‘+””+edit1.Text+””);

DataModule1.ADOQuery12.Open;

end;

end else

begin

if edit2.Text=ustrFullTrim(DataModule1.ADOQuery12.Fields[4].AsString) then

begin

DataModule1.ADOQuery2.Close;

DataModule1.ADOQuery2.SQL.Clear;

DataModule1.ADOQuery2.SQL.Add(‘SELECT * FROM KULLANICI’);

DataModule1.ADOQuery2.Open;

 

kullanici:=ustrFullTrim(DataModule1.ADOQuery12.Fields[3].AsString);

yetki:=ustrFullTrim(DataModule1.ADOQuery12.Fields[5].AsString);

JvTransparentButton4.Caption:=KULLANICI;

suiButton2.Enabled:=true;

suiButton3.Enabled:=true;

suiButton4.Enabled:=true;

suiButton6.Enabled:=true;

suiButton7.Enabled:=true;

suiButton8.Enabled:=true;

suiButton9.Enabled:=true;

AdvGlassButton3.Enabled:=true;

AdvGlassButton4.Enabled:=true;

AdvGlassButton5.Enabled:=true;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clred;

PAGE.ActivePage:=PAGE_1;

end else Application.MessageBox(‘Şifrenizi yanlış girdiniz!’,’Login error’, MB_OK);

end;

end else Application.MessageBox(‘Kullanıcı kayıtlı değil!’,’Login error’, MB_OK);

end;

if (yetki=’ADMIN’) then

begin

PopupMenu1.AutoPopup:=true;

dxBarManager1Bar1.Visible:=true;

dxBarManager1Bar2.Visible:=true;

StatusBar2.Visible:=true;

 

   DataModule1.ADOQuery81.Close;

   DataModule1.ADOQuery81.SQL.Clear;

   DataModule1.ADOQuery81.SQL.Add(‘SELECT * FROM IMG’);

   DataModule1.ADOQuery81.Open;

   DataModule1.ADOQuery81.First;

  while not DataModule1.ADOQuery81.Eof do

  begin

  img_comp[DataModule1.ADOQuery81.Fields[0].AsInteger].Visible:=true;

  DataModule1.ADOQuery81.Next;

  end;

 

   DataModule1.ADOQuery81.Close;

   DataModule1.ADOQuery81.SQL.Clear;

   DataModule1.ADOQuery81.SQL.Add(‘SELECT * FROM ANIM’);

   DataModule1.ADOQuery81.Open;

   DataModule1.ADOQuery81.First;

  while not DataModule1.ADOQuery81.Eof do

  begin

  anim_comp[DataModule1.ADOQuery81.Fields[0].AsInteger].Visible:=true;

  DataModule1.ADOQuery81.Next;

  end;

 

   DataModule1.ADOQuery82.Close;

   DataModule1.ADOQuery82.SQL.Clear;

   DataModule1.ADOQuery82.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery82.Open;

   DataModule1.ADOQuery82.First;

  while not DataModule1.ADOQuery82.Eof do

  begin

  out_panel_comp[DataModule1.ADOQuery82.Fields[0].AsInteger].Enabled:=true;

  DataModule1.ADOQuery82.Next;

  end;

 

end else

begin

PopupMenu1.AutoPopup:=false;

dxBarManager1Bar2.Visible:=false;

dxBarManager1Bar1.Visible:=false;

StatusBar2.Visible:=false;

 

   DataModule1.ADOQuery82.Close;

   DataModule1.ADOQuery82.SQL.Clear;

   DataModule1.ADOQuery82.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery82.Open;

   DataModule1.ADOQuery82.First;

  while not DataModule1.ADOQuery82.Eof do

  begin

  out_panel_comp[DataModule1.ADOQuery82.Fields[0].AsInteger].Enabled:=false;

  DataModule1.ADOQuery82.Next;

  end;

end;

end;

 

 

procedure TSCADA_FRM.EKLE1Click(Sender: TObject);

Var

  Node : TTreeNode;

begin

//function TTreeNodes.Add(Sibling: TTreeNode; const S: string): TTreeNode;

   Node:=JvTreeView1.Items.Add(nil,’Gragik list’+inttostr(imaj_nod)) ;

   Node.ImageIndex:=imaj_nod;//now you can change any  property of the node

   imglist_comp[imaj_nod] := TImageList.Create(SCADA_FRM.Pan1);

   imaj_nod:=imaj_nod+1;

 

end;

 

procedure TSCADA_FRM.FormShow(Sender: TObject);

var

  t:string;

tag_name:string;

Locale  : LongInt;

begin

SizeCtrl.Enabled :=false;

RegComponents(Page, SizeCtrl);

Chart1.Series[0].XValues.DateTime := True;

Chart1.BottomAxis.DateTimeFormat := ‘hh:mm:ss’;

Chart6.Series[0].XValues.DateTime := True;

Chart6.BottomAxis.DateTimeFormat := ‘hh:mm:ss’;

Chart7.Series[0].XValues.DateTime := True;

Chart7.BottomAxis.DateTimeFormat := ‘hh:mm:ss’;

Chart8.Series[0].XValues.DateTime := True;

Chart8.BottomAxis.DateTimeFormat := ‘hh:mm:ss’;

ado1:=false;

ado2:=false;

ado3:=false;

ado4:=false;

ado5:=false;

ado6:=false;

ado7:=false;

clear_ok:=false;

 

 

  if create_first then

begin

 

//TAGS

DataModule1.ADOQuery9.Close;

DataModule1.ADOQuery9.SQL.Clear;

DataModule1.ADOQuery9.SQL.Text :=’select * from TAGS ORDER BY SIRA_NO ASC’;

DataModule1.ADOQuery9.Open;

DataModule1.ADOQuery9.First;

try

while not DataModule1.ADOQuery9.Eof do

begin

      t:=ustrFullTrim(DataModule1.ADOQuery9.Fields[1].AsString);

      opc1.OPCGroups[0].OPCItems.additem(t);

      DataModule1.ADOQuery9.Next;

end;

finally;

end;

 

//ALARM TAGLARINI EKLEME

DataModule1.ADOQuery9.Close;

DataModule1.ADOQuery9.SQL.Clear;

DataModule1.ADOQuery9.SQL.Text :=’select * from ALARM_TAG’;

DataModule1.ADOQuery9.Open;

DataModule1.ADOQuery9.First;

try

while not DataModule1.ADOQuery9.Eof do

begin

      t:=ustrFullTrim(DataModule1.ADOQuery9.Fields[0].AsString);

      opc2.OPCGroups[0].OPCItems.additem(t);

      DataModule1.ADOQuery9.Next;

end;

finally;

end;

 

//DURUM TAGLARINI EKLEME

DataModule1.ADOQuery38.Close;

DataModule1.ADOQuery38.SQL.Clear;

DataModule1.ADOQuery38.SQL.Text :=’select * from STATUS_TAGS’;

DataModule1.ADOQuery38.Open;

DataModule1.ADOQuery38.First;

try

while not DataModule1.ADOQuery38.Eof do

begin

      t:=ustrFullTrim(DataModule1.ADOQuery38.Fields[0].AsString);

      opc3.OPCGroups[0].OPCItems.additem(t);

      DataModule1.ADOQuery38.Next;

end;

finally;

end;

end;

create_first:=false;

 

try

begin

opc1.Active:=true;

opc2.Active:=true;

opc3.Active:=true;

ALARMLAR.Interval:=5000;

ALARMLAR.Enabled:=true;

GORSELLER.Enabled:=true;

tags_ok:=true;

end;

except

showmessage(‘Servera bağlanamadınız!’);

end;

///////////////////////////////////////////////////////////////////////////////

 

 Locale := GetUserDefaultLCID(); // 1 Get LCID

 //THOUSANDSEPARATOR := ‘,’;

 //DecimalSeparator := ‘.’;

 SetLocaleInfo(Locale, LOCALE_STHOUSAND,        PChar(‘,’+chr(0)));

 SetLocaleInfo(Locale, LOCALE_SDECIMAL,          PChar(‘.’+chr(0)));

 

 

DataModule1.ADOQuery26.Close;

DataModule1.ADOQuery26.SQL.Clear;

DataModule1.ADOQuery26.SQL.Text :=’select * from ANLIK_TAGS ORDER BY id asc’;

DataModule1.ADOQuery26.Open;

 

while not DataModule1.ADOQuery26.Eof do

begin

tag_name:=DataModule1.ADOQuery26.Fields[1].AsString+’.’+DataModule1.ADOQuery26.Fields[2].AsString+’.’+DataModule1.ADOQuery26.Fields[3].AsString;

SCADA_FRM.ANLIK_OPC.OPCGroups[0].OPCItems.additem(tag_name);

DataModule1.ADOQuery26.Next;

end;

 

DataModule1.ADOQuery30.Close;

DataModule1.ADOQuery30.SQL.Clear;

DataModule1.ADOQuery30.SQL.Text :=’select * from DEVICES ORDER BY id asc’;

DataModule1.ADOQuery30.Open;

 

while not DataModule1.ADOQuery30.Eof do

begin

tag_name:=DataModule1.ADOQuery30.Fields[1].AsString+’.’+DataModule1.ADOQuery30.Fields[2].AsString+’._System._Error’;

SCADA_FRM.BAGLANTI_OPC.OPCGroups[0].OPCItems.additem(tag_name);

DataModule1.ADOQuery30.Next;

end;

 

  DataModule1.ADOQuery28.Close;

  DataModule1.ADOQuery28.SQL.Clear;

  DataModule1.ADOQuery28.SQL.Text :=’select ANLIK_TAGS from ANLIK_TAGS ORDER BY id ASC’;

  DataModule1.ADOQuery28.Open;

 

Scada_Connect.Close;

 

 

try

begin

SCADA_FRM.ANLIK_OPC.Active:=true;

SCADA_FRM.BAGLANTI_OPC.Active:=true;

KUMANDA.Interval:=5000;

KUMANDA.Enabled:=true;

tags_ok:=true;

end;

except

showmessage(‘Servera bağlanamadınız!’);

 

end;

end;

 

procedure TSCADA_FRM.NextGrid1CellClick(Sender: TObject; ACol, ARow: Integer;

  Button: TMouseButton);

var

tar:tdatetime;

begin

  if ACol = 3 then

  begin

    if NextGrid1.Cells[3, ARow] = ‘0’ then

    begin

      if alarms then

      begin

      if NextGrid1.cell[0,ARow].color=clsilver then

      begin

      NextGrid1.cell[0,ARow].color:=cllime;

      NextGrid1.cell[1,ARow].color:=cllime;

      NextGrid1.cell[2,ARow].color:=cllime;

      NextGrid1.cell[3,ARow].color:=cllime;

      NextGrid1.cell[4,ARow].color:=cllime;

      NextGrid1.cell[5,ARow].color:=cllime;

      end;

      NextGrid1.Cells[3, ARow] := ‘1’;

      DataModule1.ADOQuery8.Close;

      DataModule1.ADOQuery8.SQL.Clear;

      DataModule1.ADOQuery8.SQL.Add(‘UPDATE EVENTS SET ACKNOWLEDGE=”’+’True’+”’ WHERE SIRA = ‘+””+NextGrid1.Cells[6, ARow]+””);

      DataModule1.ADOQuery8.ExecSQL;

      DataModule1.ADOQuery7.Close;

      DataModule1.ADOQuery7.SQL.Clear;

      DataModule1.ADOQuery7.SQL.Add(‘UPDATE PENDING SET ACKNOWLEDGE=”’+’True’+”’ WHERE NUMBER = ‘+””+NextGrid1.Cells[1, ARow]+””);

      DataModule1.ADOQuery7.ExecSQL;

      end else

      begin

      tar:=strtodatetime(NextGrid1.Cells[0, ARow]);

      NextGrid1.Cells[3, ARow] := ‘1’;

      DataModule1.ADOQuery7.Close;

      DataModule1.ADOQuery7.SQL.Clear;

      DataModule1.ADOQuery7.SQL.Add(‘UPDATE PENDING SET ACKNOWLEDGE=”’+’True’+”’ WHERE NUMBER = ‘+””+NextGrid1.Cells[1, ARow]+””);

      DataModule1.ADOQuery7.ExecSQL;

      DataModule1.ADOQuery8.Close;

      DataModule1.ADOQuery8.SQL.Clear;

      DataModule1.ADOQuery8.SQL.Add(‘UPDATE EVENTS SET ACKNOWLEDGE=”’+’True’+”’ WHERE NUMBER = ‘+#39+NextGrid1.Cells[1, ARow]+#39

                    +’ AND TARIH = ‘+#39+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’, tar)+#39);

      DataModule1.ADOQuery8.ExecSQL;

      end;

    end;

  end;

end;

 

procedure TSCADA_FRM.NextGrid1Resize(Sender: TObject);

begin

NxTextColumn1.Width:=NextGrid1.Width-(DateColumn1.Width+NxTextColumn3.Width+NxTextColumn4.Width+TextualColumn1.Width+NxTextColumn2.Width+70);

end;

 

procedure TSCADA_FRM.suiButton52Click(Sender: TObject);

begin

pendings:=false;

alarms:=true;

suiButton50.Font.Color:=clblack;

suiButton52.Font.Color:=clred;

suiButton51.Font.Color:=clblack;

suiButton53.Font.Color:=clblack;

suiButton5.Font.Color:=clblack;

JvPageControl2.ActivePage:=TabSheet4;

end;

 

procedure TSCADA_FRM.suiButton50Click(Sender: TObject);

begin

pendings:=true;

alarms:=false;

suiButton50.Font.Color:=clred;

suiButton52.Font.Color:=clblack;

suiButton51.Font.Color:=clblack;

suiButton53.Font.Color:=clblack;

suiButton5.Font.Color:=clblack;

JvPageControl2.ActivePage:=TabSheet4;

end;

 

procedure TSCADA_FRM.suiButton51Click(Sender: TObject);

begin

JvPageControl2.ActivePage:=TabSheet4;

pendings:=false;

alarms:=false;

suiButton50.Font.Color:=clblack;

suiButton52.Font.Color:=clblack;

suiButton51.Font.Color:=clred;

suiButton53.Font.Color:=clblack;

suiButton5.Font.Color:=clblack;

DataModule1.ADOQuery10.Close;

DataModule1.ADOQuery10.SQL.Clear;

DataModule1.ADOQuery10.SQL.Text :=’select * from EVENTS ORDER BY TARIH DESC’;

DataModule1.ADOQuery10.Open;

  NextGrid1.ClearRows;

     DataModule1.ADOQuery10.First;

     satir:=0;

     try

       while not DataModule1.ADOQuery10.Eof do

       begin

       satir:=satir+1;

       //if satir=50 then break;

       NextGrid1.Addrow();

       NextGrid1.cell[0,NextGrid1.rowcount-1].AsDateTime:=DataModule1.ADOQuery10.Fields[0].Asdatetime;

       NextGrid1.cell[1,NextGrid1.rowcount-1].AsInteger:=DataModule1.ADOQuery10.Fields[1].Asinteger;

       NextGrid1.cell[2,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[2].AsString;

       //NextGrid1.cell[3,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[3].AsString;

       NextGrid1.cell[4,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[4].AsString;

       NextGrid1.cell[5,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[5].AsString;

       NextGrid1.cell[6,NextGrid1.rowcount-1].asstring:=DataModule1.ADOQuery10.Fields[8].AsString;

       if DataModule1.ADOQuery10.Fields[9].Asboolean=true then begin if DataModule1.ADOQuery10.Fields[6].Asboolean=true then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=cllime;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=cllime; end else begin

       if DataModule1.ADOQuery10.Fields[7].Asboolean then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clred; end else begin

       NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clyellow; end;end;

       NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘1’ end else

       begin

         if DataModule1.ADOQuery10.Fields[7].Asboolean then

         begin

         if DataModule1.ADOQuery10.Fields[6].Asboolean=false then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clred;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clred; NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘0’end;

         end else

         begin

         if DataModule1.ADOQuery10.Fields[6].Asboolean=false then begin NextGrid1.cell[0,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[1,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[2,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[3,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[4,NextGrid1.rowcount-1].color:=clyellow;NextGrid1.cell[5,NextGrid1.rowcount-1].color:=clyellow; NextGrid1.Cells[3, NextGrid1.rowcount-1] := ‘0’end;

         end;

       end;

         DataModule1.ADOQuery10.Next;

       end;

       finally;

     end;

     DataModule1.ADOQuery10.First;

   end;

 

procedure TSCADA_FRM.suiButton53Click(Sender: TObject);

begin

 

         DataModule1.ADOQuery8.Close;

         DataModule1.ADOQuery8.SQL.Clear;

         DataModule1.ADOQuery8.SQL.Add(‘UPDATE EVENTS SET ACKNOWLEDGE=”’+’True’+”’ WHERE NUMBER > ‘+””+’0’+””);

         DataModule1.ADOQuery8.ExecSQL;

         DataModule1.ADOQuery7.Close;

         DataModule1.ADOQuery7.SQL.Clear;

         DataModule1.ADOQuery7.SQL.Add(‘UPDATE PENDING SET ACKNOWLEDGE=”’+’True’+”’ WHERE NUMBER > = ‘+””+’0’+””);

         DataModule1.ADOQuery7.ExecSQL;

if not(alarms or pendings) then suiButton51.Click;

end;

 

procedure TSCADA_FRM.AdvSmoothToggleButton1MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton1.Down then

begin

AdvSmoothToggleButton1.Color:=clgreen;

delay(10);

if not ado1 then begin AdvSmoothToggleButton28.Click; end;

Chart1.Series[0].Active:=true;

AdvSmoothToggleButton1.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton1.Color:=clred;

Chart1.Series[0].Active:=false;

AdvSmoothToggleButton1.Status.Visible:=false;

end;

end;

 

procedure TSCADA_FRM.AdvSmoothToggleButton2MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton2.Down then

begin

AdvSmoothToggleButton2.Color:=clgreen;

delay(10);

if not ado1 then begin AdvSmoothToggleButton28.Click; end;

Chart1.Series[1].Active:=true;

AdvSmoothToggleButton2.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton2.Color:=clred;

Chart1.Series[1].Active:=false;

AdvSmoothToggleButton2.Status.Visible:=false;

end;

end;

procedure TSCADA_FRM.AdvSmoothToggleButton3MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton3.Down then

begin

AdvSmoothToggleButton3.Color:=clgreen;

delay(10);

if not ado1 then begin AdvSmoothToggleButton28.Click; end;

Chart1.Series[2].Active:=true;

AdvSmoothToggleButton3.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton3.Color:=clred;

Chart1.Series[2].Active:=false;

AdvSmoothToggleButton3.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton4MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton4.Down then

begin

AdvSmoothToggleButton4.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[3].Active:=true;

AdvSmoothToggleButton4.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton4.Color:=clred;

Chart1.Series[3].Active:=false;

AdvSmoothToggleButton4.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton5MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton5.Down then

begin

AdvSmoothToggleButton5.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[4].Active:=true;

AdvSmoothToggleButton5.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton5.Color:=clred;

Chart1.Series[4].Active:=false;

AdvSmoothToggleButton5.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton6MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton6.Down then

begin

AdvSmoothToggleButton6.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[5].Active:=true;

AdvSmoothToggleButton6.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton6.Color:=clred;

Chart1.Series[5].Active:=false;

AdvSmoothToggleButton6.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton7MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton7.Down then

begin

AdvSmoothToggleButton7.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[6].Active:=true;

AdvSmoothToggleButton7.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton7.Color:=clred;

Chart1.Series[6].Active:=false;

AdvSmoothToggleButton7.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton8MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton8.Down then

begin

AdvSmoothToggleButton8.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton5.Click; AdvSmoothToggleButton28.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[7].Active:=true;

AdvSmoothToggleButton8.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton8.Color:=clred;

Chart1.Series[7].Active:=false;

AdvSmoothToggleButton8.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton9MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton9.Down then

begin

AdvSmoothToggleButton9.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[8].Active:=true;

AdvSmoothToggleButton9.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton9.Color:=clred;

Chart1.Series[8].Active:=false;

AdvSmoothToggleButton9.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton10MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton10.Down then

begin

AdvSmoothToggleButton10.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[9].Active:=true;

AdvSmoothToggleButton10.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton10.Color:=clred;

Chart1.Series[9].Active:=false;

AdvSmoothToggleButton10.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton11MouseUp(Sender: TObject;

  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

begin

if AdvSmoothToggleButton11.Down then

begin

AdvSmoothToggleButton11.Color:=clgreen;

delay(10);

//if not ado1 then begin AdvSmoothToggleButton4.Click; AdvSmoothToggleButton4.Click; AdvSmoothToggleButton7.Click; end;

Chart1.Series[10].Active:=true;

AdvSmoothToggleButton11.Status.Visible:=true;

end else

begin

AdvSmoothToggleButton11.Color:=clred;

Chart1.Series[10].Active:=false;

AdvSmoothToggleButton11.Status.Visible:=false;

end;

end;


procedure TSCADA_FRM.AdvGlassButton1Click(Sender: TObject);

begin

ANLIK_TREND.Show;

end;


procedure TSCADA_FRM.AdvGlassButton3Click(Sender: TObject);

begin

if PAGE.ActivePage<>PAGE_6 then

begin

PAGE.ActivePage:=PAGE_6;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clred;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;


procedure TSCADA_FRM.AdvGlassButton4Click(Sender: TObject);

begin

if (PAGE.ActivePage<>PAGE_4) then

begin

PAGE.ActivePage:=PAGE_4;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clred;

AdvGlassButton5.Font.Color:=clblack;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;


procedure TSCADA_FRM.AdvGlassButton5Click(Sender: TObject);

begin

if (PAGE.ActivePage<>PAGE_1)then

begin

PAGE.ActivePage:=PAGE_1;

pendings:=false;

alarms:=false;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clred;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

end;

end;


procedure TSCADA_FRM.AdvGlassButton6Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>SAYFA_TASARIMI then

begin

AYARLAR.ActivePage:=SAYFA_TASARIMI;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clred;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Text :=’select * from SAYFALAR’;

  DataModule1.ADOQuery79.Open;

  Edit3.Text:=DataModule1.ADOQuery79.Fields[1].AsString;

  Edit4.Text:=DataModule1.ADOQuery79.Fields[3].AsString;

  CheckBox1.Checked:=DataModule1.ADOQuery79.Fields[4].AsBoolean;

  Edit5.Text:=DataModule1.ADOQuery79.Fields[5].AsString;

  CheckBox2.Checked:=DataModule1.ADOQuery79.Fields[6].AsBoolean;

  Edit7.Text:=DataModule1.ADOQuery79.Fields[7].AsString;

  CheckBox4.Checked:=DataModule1.ADOQuery79.Fields[8].AsBoolean;

  Edit8.Text:=DataModule1.ADOQuery79.Fields[9].AsString;

  CheckBox5.Checked:=DataModule1.ADOQuery79.Fields[10].AsBoolean;

  Edit9.Text:=DataModule1.ADOQuery79.Fields[11].AsString;

  CheckBox6.Checked:=DataModule1.ADOQuery79.Fields[12].AsBoolean;

  Edit10.Text:=DataModule1.ADOQuery79.Fields[13].AsString;

  CheckBox7.Checked:=DataModule1.ADOQuery79.Fields[14].AsBoolean;

  Edit6.Text:=DataModule1.ADOQuery79.Fields[15].AsString;

  CheckBox3.Checked:=DataModule1.ADOQuery79.Fields[16].AsBoolean;

  Edit12.Text:=DataModule1.ADOQuery79.Fields[17].AsString;

  CheckBox8.Checked:=DataModule1.ADOQuery79.Fields[18].AsBoolean;

  Edit13.Text:=DataModule1.ADOQuery79.Fields[19].AsString;

  CheckBox9.Checked:=DataModule1.ADOQuery79.Fields[20].AsBoolean;

  Edit14.Text:=DataModule1.ADOQuery79.Fields[21].AsString;

  CheckBox10.Checked:=DataModule1.ADOQuery79.Fields[22].AsBoolean;

  CheckBox11.Checked:=DataModule1.ADOQuery79.Fields[23].AsBoolean;

end;

end;


procedure TSCADA_FRM.AdvGlassButton7Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>GRAFIKLER then

begin

AYARLAR.ActivePage:=GRAFIKLER;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clred;

AdvGlassButton8.Font.Color:=clblack;

end;

end;


procedure TSCADA_FRM.AdvGlassButton8Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>TRENDSLER then

begin

AYARLAR.ActivePage:=TRENDSLER;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clred;

  DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Text :=(‘select * from TRENDSLER WHERE trends_no = ‘+””+’1’+””);

  DataModule1.ADOQuery86.Open;


  Edit15.Text:=DataModule1.ADOQuery86.Fields[1].AsString;

  Edit16.Text:=DataModule1.ADOQuery86.Fields[2].AsString;

  CheckBox12.Checked:=DataModule1.ADOQuery86.Fields[3].AsBoolean;

  ColorBox1.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[4].AsString);

  Edit27.Text:=DataModule1.ADOQuery86.Fields[5].AsString;

  ComboBox12.Text:=DataModule1.ADOQuery86.Fields[6].AsString;

  ComboBox1.Text:=DataModule1.ADOQuery86.Fields[7].AsString;

  Edit17.Text:=DataModule1.ADOQuery86.Fields[8].AsString;

  CheckBox13.Checked:=DataModule1.ADOQuery86.Fields[9].AsBoolean;

  ColorBox2.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[10].AsString);

  Edit28.Text:=DataModule1.ADOQuery86.Fields[11].AsString;

  ComboBox13.Text:=DataModule1.ADOQuery86.Fields[12].AsString;

  ComboBox2.Text:=DataModule1.ADOQuery86.Fields[13].AsString;

  Edit18.Text:=DataModule1.ADOQuery86.Fields[14].AsString;

  CheckBox14.Checked:=DataModule1.ADOQuery86.Fields[15].AsBoolean;

  ColorBox3.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[16].AsString);

  Edit29.Text:=DataModule1.ADOQuery86.Fields[17].AsString;

  ComboBox14.Text:=DataModule1.ADOQuery86.Fields[18].AsString;

  ComboBox3.Text:=DataModule1.ADOQuery86.Fields[19].AsString;

  Edit19.Text:=DataModule1.ADOQuery86.Fields[20].AsString;

  CheckBox15.Checked:=DataModule1.ADOQuery86.Fields[21].AsBoolean;

  ColorBox4.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[22].AsString);

  Edit30.Text:=DataModule1.ADOQuery86.Fields[23].AsString;

  ComboBox15.Text:=DataModule1.ADOQuery86.Fields[24].AsString;

  ComboBox4.Text:=DataModule1.ADOQuery86.Fields[25].AsString;

  Edit20.Text:=DataModule1.ADOQuery86.Fields[26].AsString;

  CheckBox16.Checked:=DataModule1.ADOQuery86.Fields[27].AsBoolean;

  ColorBox5.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[28].AsString);

  Edit31.Text:=DataModule1.ADOQuery86.Fields[29].AsString;

  ComboBox16.Text:=DataModule1.ADOQuery86.Fields[30].AsString;

  ComboBox5.Text:=DataModule1.ADOQuery86.Fields[31].AsString;

  Edit21.Text:=DataModule1.ADOQuery86.Fields[32].AsString;

  CheckBox17.Checked:=DataModule1.ADOQuery86.Fields[33].AsBoolean;

  ColorBox6.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[34].AsString);

  Edit32.Text:=DataModule1.ADOQuery86.Fields[35].AsString;

  ComboBox17.Text:=DataModule1.ADOQuery86.Fields[36].AsString;

  ComboBox6.Text:=DataModule1.ADOQuery86.Fields[37].AsString;

  Edit25.Text:=DataModule1.ADOQuery86.Fields[38].AsString;

  CheckBox18.Checked:=DataModule1.ADOQuery86.Fields[39].AsBoolean;

  ColorBox7.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[40].AsString);

  Edit33.Text:=DataModule1.ADOQuery86.Fields[41].AsString;

  ComboBox18.Text:=DataModule1.ADOQuery86.Fields[42].AsString;

  ComboBox7.Text:=DataModule1.ADOQuery86.Fields[43].AsString;

  Edit24.Text:=DataModule1.ADOQuery86.Fields[44].AsString;

  CheckBox19.Checked:=DataModule1.ADOQuery86.Fields[45].AsBoolean;

  ColorBox8.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[46].AsString);

  Edit34.Text:=DataModule1.ADOQuery86.Fields[47].AsString;

  ComboBox19.Text:=DataModule1.ADOQuery86.Fields[48].AsString;

  ComboBox8.Text:=DataModule1.ADOQuery86.Fields[49].AsString;

  Edit23.Text:=DataModule1.ADOQuery86.Fields[50].AsString;

  CheckBox20.Checked:=DataModule1.ADOQuery86.Fields[51].AsBoolean;

  ColorBox9.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[52].AsString);

  Edit35.Text:=DataModule1.ADOQuery86.Fields[53].AsString;

  ComboBox20.Text:=DataModule1.ADOQuery86.Fields[54].AsString;

  ComboBox9.Text:=DataModule1.ADOQuery86.Fields[55].AsString;

  Edit22.Text:=DataModule1.ADOQuery86.Fields[56].AsString;

  CheckBox21.Checked:=DataModule1.ADOQuery86.Fields[57].AsBoolean;

  ColorBox10.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[58].AsString);

  Edit36.Text:=DataModule1.ADOQuery86.Fields[59].AsString;

  ComboBox21.Text:=DataModule1.ADOQuery86.Fields[60].AsString;

  ComboBox10.Text:=DataModule1.ADOQuery86.Fields[61].AsString;

  Edit26.Text:=DataModule1.ADOQuery86.Fields[62].AsString;

  CheckBox23.Checked:=DataModule1.ADOQuery86.Fields[63].AsBoolean;

  ColorBox11.Selected:=stringtocolor(DataModule1.ADOQuery86.Fields[64].AsString);

  Edit37.Text:=DataModule1.ADOQuery86.Fields[65].AsString;

  ComboBox22.Text:=DataModule1.ADOQuery86.Fields[66].AsString;

  ComboBox11.Text:=DataModule1.ADOQuery86.Fields[67].AsString;


end;

end;


procedure TSCADA_FRM.XDBGrid4KeyPress(Sender: TObject; var Key: Char);

var

I:integer;

begin

if (ord(Key)=27) then

begin

                   DataModule1.ADOQuery3.Close;

                   DataModule1.ADOQuery3.SQL.Clear;

                   DataModule1.ADOQuery3.SQL.Text :=’select * from ALARMLAR ORDER BY NUMBER DESC’;

                   DataModule1.ADOQuery3.Open;

                   EVENT_EVENT.Text:=”;

end else

begin

for I := 0 to 8 do

begin

  if xdbgrid4.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Add(‘select * from ALARMLAR’);

DataModule1.ADOQuery3.SQL.Add(‘WHERE ‘+kolontitle+’ LIKE ‘+#39+key+’%’+#39);

DataModule1.ADOQuery3.SQL.Add(‘ORDER BY ‘+kolontitle+’ DESC’);

DataModule1.ADOQuery3.Open;

 end;

  if xdbgrid4.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Add(‘select * from ALARMLAR’);

DataModule1.ADOQuery3.SQL.Add(‘WHERE ‘+kolontitle+’ LIKE ‘+#39+key+’%’+#39);

DataModule1.ADOQuery3.SQL.Add(‘ORDER BY ‘+kolontitle+’ ASC’);

DataModule1.ADOQuery3.Open;

end;

end;

end;

end;


procedure TSCADA_FRM.XDBGrid4TitleClick(Column: TXColumn);

var

I:integer;

begin

kolontitle:=Column.FieldName;

for I := 0 to 8 do

begin

  if xdbgrid4.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Add(‘select * from ALARMLAR’);

DataModule1.ADOQuery3.SQL.Add(‘ORDER BY ‘+Column.FieldName+’ DESC’);

DataModule1.ADOQuery3.Open;

 end;

  if xdbgrid4.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery3.Close;

DataModule1.ADOQuery3.SQL.Clear;

DataModule1.ADOQuery3.SQL.Add(‘select * from ALARMLAR’);

DataModule1.ADOQuery3.SQL.Add(‘ORDER BY ‘+Column.FieldName+’ ASC’);

DataModule1.ADOQuery3.Open;

end;

end;

end;


procedure TSCADA_FRM.Chart6DblClick(Sender: TObject);

begin

Chart6.LeftAxis.Automatic:=true;

Chart6.LeftAxis.AutomaticMaximum:=true;

Chart6.LeftAxis.AutomaticMinimum:=true;

Chart6.BottomAxis.Automatic:=true;

Chart6.BottomAxis.AutomaticMaximum:=true;

Chart6.BottomAxis.AutomaticMinimum:=true;

end;


procedure TSCADA_FRM.Chart7DblClick(Sender: TObject);

begin

Chart7.LeftAxis.Automatic:=true;

Chart7.LeftAxis.AutomaticMaximum:=true;

Chart7.LeftAxis.AutomaticMinimum:=true;

Chart7.BottomAxis.Automatic:=true;

Chart7.BottomAxis.AutomaticMaximum:=true;

Chart7.BottomAxis.AutomaticMinimum:=true;

end;


procedure TSCADA_FRM.Chart8DblClick(Sender: TObject);

begin

Chart8.LeftAxis.Automatic:=true;

Chart8.LeftAxis.AutomaticMaximum:=true;

Chart8.LeftAxis.AutomaticMinimum:=true;

Chart8.BottomAxis.Automatic:=true;

Chart8.BottomAxis.AutomaticMaximum:=true;

Chart8.BottomAxis.AutomaticMinimum:=true;

end;


procedure TSCADA_FRM.Chart1DblClick(Sender: TObject);

begin

Chart1.LeftAxis.Automatic:=true;

Chart1.LeftAxis.AutomaticMaximum:=true;

Chart1.LeftAxis.AutomaticMinimum:=true;

Chart1.BottomAxis.Automatic:=true;

Chart1.BottomAxis.AutomaticMaximum:=true;

Chart1.BottomAxis.AutomaticMinimum:=true;

end;


procedure TSCADA_FRM.AdvSmoothToggleButton28Click(Sender: TObject);

var

  t1,ilktarih, sontarih :TDateTime;

  k:integer;

  ss1,ss2,ss3,ss4,ss5,ss6,ss7,ss8,ss9,ss10,ss11,sqltext:String;

  r:Real;

begin

  ado1:=true;

  ReplaceDate(ilktarih, d1.Date);

  ReplaceTime(ilktarih, saat1.Time);

  ReplaceDate(sontarih, d2.Date);

  ReplaceTime(sontarih, saat2.Time);

  DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Text :=(‘select * from TRENDSLER WHERE trends_no = ‘+””+’1’+””);

  DataModule1.ADOQuery86.Open;



  sqltext:=’SELECT tarih,’+stringreplace(DataModule1.ADOQuery86.Fields[7].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[9].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[13].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[15].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[19].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[21].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[25].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[27].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[31].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[33].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[37].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[39].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[43].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[45].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[49].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[51].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[55].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[57].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[61].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[63].AsBoolean then sqltext:=sqltext+’,’+stringreplace(DataModule1.ADOQuery86.Fields[67].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

  if DataModule1.ADOQuery86.Fields[6].AsString=’1M’ then sqltext:=sqltext+’ FROM TRENDS’;

  if DataModule1.ADOQuery86.Fields[6].AsString=’10M’ then sqltext:=sqltext+’ FROM TRENDS_10M’;

  if DataModule1.ADOQuery86.Fields[6].AsString=’1H’ then sqltext:=sqltext+’ FROM TRENDS_1H’;


  DataModule1.ADOQuery15.Close;

  DataModule1.ADOQuery15.SQL.Clear;

  DataModule1.ADOQuery15.SQL.Text :=sqltext+’ WHERE tarih BETWEEN ‘+#39+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’, ilktarih)+#39

                +’ AND ‘+#39+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’, sontarih)+#39 +’ ORDER BY tarih desc’;

  DataModule1.ADOQuery15.Open;

  chart1.Series[0].Clear;

  chart1.Series[1].Clear;

  chart1.Series[2].Clear;

  chart1.Series[3].Clear;

  chart1.Series[4].Clear;

  chart1.Series[5].Clear;

  chart1.Series[6].Clear;

  chart1.Series[7].Clear;

  chart1.Series[8].Clear;

  chart1.Series[9].Clear;

  chart1.Series[10].Clear;

  if DataModule1.ADOQuery15.RecordCount>0 Then Begin

  DataModule1.ADOQuery15.First;

    While not DataModule1.ADOQuery15.Eof Do Begin

      t1:=DataModule1.ADOQuery15.Fields[0].AsDateTime;

      chart1.BottomAxis.DateTimeFormat:=(‘mm-dd hh:mm:ss’);

ss1:=DataModule1.ADOQuery15.Fields[1].AsString;

if DataModule1.ADOQuery86.Fields[9].AsBoolean then ss2:=DataModule1.ADOQuery15.Fields[2].AsString;

if DataModule1.ADOQuery86.Fields[15].AsBoolean then ss3:=DataModule1.ADOQuery15.Fields[3].AsString;

if DataModule1.ADOQuery86.Fields[21].AsBoolean then ss4:=DataModule1.ADOQuery15.Fields[4].AsString;

if DataModule1.ADOQuery86.Fields[27].AsBoolean then ss5:=DataModule1.ADOQuery15.Fields[5].AsString;

if DataModule1.ADOQuery86.Fields[33].AsBoolean then ss6:=DataModule1.ADOQuery15.Fields[6].AsString;

if DataModule1.ADOQuery86.Fields[39].AsBoolean then ss7:=DataModule1.ADOQuery15.Fields[7].AsString;

if DataModule1.ADOQuery86.Fields[45].AsBoolean then ss8:=DataModule1.ADOQuery15.Fields[8].AsString;

if DataModule1.ADOQuery86.Fields[51].AsBoolean then ss9:=DataModule1.ADOQuery15.Fields[9].AsString;

if DataModule1.ADOQuery86.Fields[57].AsBoolean then ss10:=DataModule1.ADOQuery15.Fields[10].AsString;

if DataModule1.ADOQuery86.Fields[63].AsBoolean then ss11:=DataModule1.ADOQuery15.Fields[11].AsString;

      val(ss1,r,k);

      chart1.Series[0].Add(r); chart1.Series[0].XValue[0]:=t1;

if DataModule1.ADOQuery86.Fields[9].AsBoolean then begin

      val(ss2,r,k);

      chart1.Series[1].Add(r); chart1.Series[1].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[15].AsBoolean then begin

      val(ss3,r,k);

      chart1.Series[2].Add(r); chart1.Series[2].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[21].AsBoolean then begin

      val(ss4,r,k);

      chart1.Series[3].Add(r); chart1.Series[3].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[27].AsBoolean then begin

      val(ss5,r,k);

      chart1.Series[4].Add(r); chart1.Series[4].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[33].AsBoolean then begin

      val(ss6,r,k);

      chart1.Series[5].Add(r); chart1.Series[5].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[39].AsBoolean then begin

      val(ss7,r,k);

      chart1.Series[6].Add(r); chart1.Series[6].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[45].AsBoolean then begin

      val(ss8,r,k);

      chart1.Series[7].Add(r); chart1.Series[7].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[51].AsBoolean then begin

      val(ss9,r,k);

      chart1.Series[8].Add(r); chart1.Series[8].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[57].AsBoolean then begin

      val(ss10,r,k);

      chart1.Series[9].Add(r); chart1.Series[9].XValue[0]:=t1;

end;

if DataModule1.ADOQuery86.Fields[63].AsBoolean then begin

      val(ss11,r,k);

      chart1.Series[10].Add(r); chart1.Series[10].XValue[0]:=t1;

end;

      DataModule1.ADOQuery15.Next;

    end;

  end;

Chart1.LeftAxis.Automatic:=true;

Chart1.LeftAxis.AutomaticMaximum:=true;

Chart1.LeftAxis.AutomaticMinimum:=true;

Chart1.BottomAxis.Automatic:=true;

Chart1.BottomAxis.AutomaticMaximum:=true;

Chart1.BottomAxis.AutomaticMinimum:=true;

Chart1.Pages.AutoScale:=true;

Chart1.Page:=Chart1.NumPages;

Chart1.Tools.Active:=true;

end;


procedure TSCADA_FRM.d1Change(Sender: TObject);

begin

if d1.Date>d2.Date then d2.Date:=d1.Date;

end;


procedure TSCADA_FRM.d2Change(Sender: TObject);

begin

if d1.Date>d2.Date then d1.Date:=d2.Date;

end;


procedure TSCADA_FRM.suiButton5Click(Sender: TObject);

begin

suiButton50.Font.Color:=clblack;

suiButton52.Font.Color:=clblack;

suiButton51.Font.Color:=clblack;

suiButton53.Font.Color:=clblack;

suiButton5.Font.Color:=clred;

JvPageControl2.ActivePage:=TabSheet5;

DataModule1.ADOQuery18.Close;

DataModule1.ADOQuery18.SQL.Clear;

DataModule1.ADOQuery18.SQL.Text :=’select * from STATUS ORDER BY TARIH DESC’;

DataModule1.ADOQuery18.Open;

  NextGrid2.ClearRows;

     DataModule1.ADOQuery18.First;

     satir:=0;

     try

       while not DataModule1.ADOQuery18.Eof do

       begin

       satir:=satir+1;

       //if satir=50 then break;

       NextGrid2.Addrow();

       NextGrid2.cell[0,NextGrid2.rowcount-1].AsDateTime:=DataModule1.ADOQuery18.Fields[0].Asdatetime;

       NextGrid2.cell[1,NextGrid2.rowcount-1].AsString:=DataModule1.ADOQuery18.Fields[1].AsString;

       if DataModule1.ADOQuery18.Fields[2].Asboolean=true then begin NextGrid2.cell[0,NextGrid2.rowcount-1].color:=clSkyBlue;NextGrid2.cell[1,NextGrid2.rowcount-1].color:=clSkyBlue; end else begin NextGrid2.cell[0,NextGrid2.rowcount-1].color:=clsilver; NextGrid2.cell[1,NextGrid2.rowcount-1].color:=clsilver; end;

         DataModule1.ADOQuery18.Next;

       end;

       finally;

     end;

     DataModule1.ADOQuery18.First;

end;


procedure TSCADA_FRM.opc3Datachange(Sender: TObject; ItemList: TdOPCItemList);

var

i:integer;

begin

for i := 0 to ItemList.Count-1 do    // more than one Items possible

  begin

  DataModule1.ADOQuery39.Close;

  DataModule1.ADOQuery39.SQL.Clear;

  DataModule1.ADOQuery39.SQL.Add(‘SELECT * FROM DURUMLAR’);

  DataModule1.ADOQuery39.SQL.Add(‘WHERE MESSAGE_TAG = ‘+””+ItemList[i].ItemId+””);

 // DataModule1.ADOQuery39.SQL.Add(‘AND MESSAGE_BIT = ‘+””+bit+””);

  DataModule1.ADOQuery39.Open;

    if DataModule1.ADOQuery39.RecordCount<>0 then

    begin

    if (ItemList[i].Value and 1) then STATUS(DataModule1.ADOQuery39.Fields[4].AsString,DataModule1.ADOQuery39.Fields[5].AsString) else STATUS(DataModule1.ADOQuery39.Fields[6].AsString,DataModule1.ADOQuery39.Fields[7].AsString)

    end;

  end;

end;


procedure TSCADA_FRM.suiButton29Click(Sender: TObject);

var

y:integer;

gun:double;

tar:tdatetime;

fromm:tdatetime;

too:tdatetime;

begin

{

try

begin

ALARMLAR.Enabled:=false;

virgul.Enabled:=false;

nokta.Enabled:=false;

if virgul.Checked then

begin

//THOUSANDSEPARATOR := ‘.’;

//DecimalSeparator := ‘,’;

end else

begin

//THOUSANDSEPARATOR := ‘,’;

//DecimalSeparator := ‘.’;

end;

ProgressBar1.StepIt;

NextGrid5.ClearRows;

fromm:=NxDatePicker1.Datetime;

too:=NxDatePicker2.Datetime;

from_sorgu:=NxDatePicker1.Date;

to_sorgu:=NxDatePicker2.Date;

//ref_time:=DateTimeToUnix(NxDatePicker1.Date);

gun:=NxDatePicker2.Date-NxDatePicker1.Date;


NxDatePicker1.Time:=strtotime(’00:00:00′);

NxDatePicker2.Time:=strtotime(’00:00:00′);


//ADETLER

NextGrid5.ClearRows;

y:=0;

ProgressBar1.StepIt;



         DataModule1.ADOQuery59.Close;

         DataModule1.ADOQuery59.SQL.Clear;

         DataModule1.ADOQuery59.SQL.Text :=’select * from ADETLER WHERE tarih>=’+””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’, fromm)+”’AND tarih<=’+””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’, too)+”’ ORDER BY tarih DESC’;

         DataModule1.ADOQuery59.Open;

         DataModule1.ADOQuery59.First;


         while not DataModule1.ADOQuery59.Eof do

         begin

         tar:=DataModule1.ADOQuery59.Fields[0].AsDateTime;

         NextGrid5.Addrow();

         NextGrid5.cell[0,y].AsString:=datetostr(tar);

         NextGrid5.cell[1,y].AsString:=timetostr(tar);

         NextGrid5.cell[2,y].AsInteger:=DataModule1.ADOQuery59.Fields[1].AsInteger;

         NextGrid5.cell[3,y].AsInteger:=DataModule1.ADOQuery59.Fields[2].AsInteger;

         NextGrid5.cell[4,y].AsInteger:=DataModule1.ADOQuery59.Fields[3].AsInteger;

         NextGrid5.cell[5,y].AsInteger:=DataModule1.ADOQuery59.Fields[4].AsInteger;

         NextGrid5.cell[6,y].AsInteger:=DataModule1.ADOQuery59.Fields[5].AsInteger;

         NextGrid5.cell[7,y].AsInteger:=DataModule1.ADOQuery59.Fields[6].AsInteger;

         NextGrid5.cell[8,y].AsInteger:=DataModule1.ADOQuery59.Fields[7].AsInteger;

         NextGrid5.cell[9,y].AsInteger:=DataModule1.ADOQuery59.Fields[8].AsInteger;

         NextGrid5.cell[10,y].AsInteger:=DataModule1.ADOQuery59.Fields[9].AsInteger;

         NextGrid5.cell[11,y].AsFloat:=DataModule1.ADOQuery59.Fields[10].AsFloat;

         DataModule1.ADOQuery59.Next;

         y:=y+1;

         end; 


Statusbar1.Panels[0].Text:=’KULLANIM KAYIT SAYISI= ‘+inttostr(DataModule1.ADOQuery59.RecordCount);

ProgressBar1.StepIt;



end;

except

end;


ProgressBar1.Position:=0;

ALARMLAR.Enabled:=true;

}

end;


procedure TSCADA_FRM.suiButton62Click(Sender: TObject);

begin

if PAGE1.ActivePage<>TabSheet13 then

begin

NxDatePicker1.Date:=NOW;

NxDatePicker2.Date:=NOW+1;

PAGE1.ActivePage:=TabSheet13;

suiButton20.Font.Color:=clblack;

suiButton21.Font.Color:=clblack;

suiButton22.Font.Color:=clblack;

suiButton23.Font.Color:=clblack;

suiButton27.Font.Color:=clblack;

suiButton49.Font.Color:=clblack;

suiButton65.Font.Color:=clblack;

suiButton26.Font.Color:=clblack;

suiButton62.Font.Color:=clred;

suiButton30.Font.Color:=clblack;

suiButton33.Font.Color:=clblack;

end;

end;


procedure TSCADA_FRM.suiButton35Click(Sender: TObject);

begin

if (JvPageControl3.ActivePage=TabSheet15) then JvPageControl3.ActivePage:=TabSheet14 else

//if (JvPageControl3.ActivePage=TabSheet8) then JvPageControl3.ActivePage:=TabSheet14 else

if (JvPageControl3.ActivePage=TabSheet14) then JvPageControl3.ActivePage:=TabSheet15;

end;


procedure TSCADA_FRM.NxDatePicker1Change(Sender: TObject);

begin

if NxDatePicker1.Date>=NxDatePicker2.Date then NxDatePicker2.Date:=NxDatePicker1.Date+1;

end;


procedure TSCADA_FRM.NxDatePicker2Change(Sender: TObject);

begin

if NxDatePicker2.Date<=NxDatePicker1.Date then NxDatePicker1.Date:=NxDatePicker2.Date-1;

end;


procedure TSCADA_FRM.suiButton57Click(Sender: TObject);

var

  oXL, oWB, oSheet, oResizeRange, Range: Variant;

  q,filName:integer;

  EFP:string;

  i:integer;

  dosya_tar1:string;

  Locale  : LongInt;

  picture:OleVariant;

begin

//OFIS PRO PLUS 2016


try

Locale := GetUserDefaultLCID(); // 1 Get LCID

except end;


try

begin

if virgul.Checked then

begin

//THOUSANDSEPARATOR := ‘.’;

//DecimalSeparator := ‘,’;

SetLocaleInfo(Locale, LOCALE_STHOUSAND,        PChar(‘.’+chr(0)));

SetLocaleInfo(Locale, LOCALE_SDECIMAL,          PChar(‘,’+chr(0)));

end else

begin

//THOUSANDSEPARATOR := ‘,’;

//DecimalSeparator := ‘.’;

SetLocaleInfo(Locale, LOCALE_STHOUSAND,        PChar(‘,’+chr(0)));

SetLocaleInfo(Locale, LOCALE_SDECIMAL,          PChar(‘.’+chr(0)));

end;

ProgressBar1.StepIt;

if ((from_sorgu<>NxDatePicker1.Date) or (to_sorgu<>NxDatePicker2.Date)) then  suiButton29.Click;

EFP:=ExtractFilePath(Application.Exename);

  oXL := CreateOleObject(‘Excel.Application’);

  oXL.Visible := false;

  oWB := oXL.Workbooks.Add;

  oWB.Sheets.Add;

ProgressBar1.StepIt;

end;

except

showmessage(‘Excel yüklemelisiniz!’);

end;


//ÜRETİM RAPORU

try

begin

  oWB.Sheets[‘Sayfa1’].Select;

  oXL.ActiveWindow.DisplayGridlines := False;

  oWB.ActiveSheet.Name :=’TOTAL VALUES’;

  oSheet := oWB.WorkSheets.Item[‘TOTAL VALUES’];

  oWB.Sheets[‘TOTAL VALUES’].Select;

  oXL.ActiveWindow.DisplayGridlines := False;


  oSheet.Cells[1,1]:=’Date’;

  oSheet.Cells[1,2]:=’Time’;

  oSheet.Cells[1,3]:=’TURN TABLE Total (pc)’;

  oSheet.Cells[1,4]:=’TURN TABLE Fault (pc)’;

  oSheet.Cells[1,5]:=’Laser Total (pc)’;

  oSheet.Cells[1,6]:=’Laser Fault (pc)’;

  oSheet.Cells[1,7]:=’Diameter Total (pc)’;

  oSheet.Cells[1,8]:=’Diameter Fault (pc)’;

  oSheet.Cells[1,9]:=’Camera1 Total (pc)’;

  oSheet.Cells[1,10]:=’Camera1 Fault (pc)’;

  oSheet.Cells[1,11]:=’Total (pc)’;

  oSheet.Cells[1,12]:=’Fault (pc)’;



oSheet.Columns[1].ColumnWidth:=10;

oSheet.Columns[2].ColumnWidth:=8;

oSheet.Columns[3].ColumnWidth:=20;

oSheet.Columns[4].ColumnWidth:=20;

oSheet.Columns[5].ColumnWidth:=20;

oSheet.Columns[6].ColumnWidth:=20;

oSheet.Columns[7].ColumnWidth:=20;

oSheet.Columns[8].ColumnWidth:=20;

oSheet.Columns[9].ColumnWidth:=20;

oSheet.Columns[10].ColumnWidth:=20;

oSheet.Columns[11].ColumnWidth:=20;

oSheet.Columns[12].ColumnWidth:=20;


ProgressBar1.StepIt;

  for i:=2 to NextGrid5.RowCount+1 do

  begin

  for filName:=0 to NextGrid5.Columns.Count-1 do

   begin

   q:=filName+1;

   if filName=0 then oSheet.Cells[i,q]:=NextGrid5.cell[filName,i-2].AsString;

   if filname=1 then begin oSheet.Cells[i,q]:=AnsiMidStr(NextGrid5.cell[filName,i-2].AsString,12,8); if AnsiMidStr(NextGrid5.cell[filName,i-2].AsString,12,8)=” then oSheet.Cells[i,q]:=’00:00:00′ end;

   if not((filName=0) or (filName=1)) then  begin oSheet.Cells[i,q]:=NextGrid5.cell[filName,i-2].AsFloat;end;

   end;

  end;

if NextGrid5.RowCount=0 then oXL.Workbooks[1].WorkSheets[‘Case Total Values’].visible:=false;

ProgressBar1.StepIt;

  // Format A1:H1 as bold, vertical alignment = center

  oSheet.Range[‘A1:L1’].Font.Bold := True;

  oSheet.Range[‘A1:L1’].Borders.LineStyle :=13;

  oSheet.Range[‘A1:L1’].VerticalAlignment := xlVAlignCenter;

  oSheet.Range[‘A1:L’+inttostr(NextGrid5.RowCount+1)].HorizontalAlignment := xlVAlignCenter;

  oSheet.Range[‘A2:L’+inttostr(NextGrid5.RowCount+1)].Borders.LineStyle :=1;

  oResizeRange := oXL.Range[‘C2:’ + Chr(Ord(‘K’)) + inttostr(NextGrid5.RowCount+1)];

//  if virgul.Checked then oResizeRange.NumberFormat := ‘0.000’ else oResizeRange.NumberFormat := ‘0.000’;

  oSheet.Range[‘A1:L’+inttostr(1)].Interior.ColorIndex := 37;  //36 sarı

end;

except

end;




//KAPAK

try

begin

  oWB.Sheets[‘Sayfa2’].Select;

  oXL.ActiveWindow.DisplayGridlines := False;

  oWB.ActiveSheet.Name :=’Cover’;

  oWB.Sheets[‘Cover’].Select;

  oSheet := oWB.WorkSheets.Item[‘Cover’];

  //oWB.Sheets[‘Cover’].Range[‘B2′,’L30’].MergeCells := true;

  //oSheet.RANGE[‘B2:L30’].Borders.Color := $000000; //border renklendir

  oWB.Sheets[‘Cover’].Range[‘B2′,’K30’].Borders[7].Weight := 3;

  oWB.Sheets[‘Cover’].Range[‘B2′,’K30’].Borders[8].Weight := 3;

  oWB.Sheets[‘Cover’].Range[‘B2′,’K30’].Borders[9].Weight := 3;

  oWB.Sheets[‘Cover’].Range[‘B2′,’K30’].Borders[10].Weight := 3;

  //ExcelApp.ActiveSheet.Range[ ‘B3:D4’ ].Borders[2].Weight := 3;

  Picture := oSheet.Pictures.Insert(‘C:\logo.PNG’);

  Picture.Width           := 100;

  Picture.Height          := 50;

  Picture.ShapeRange.Left := 210;

  Picture.ShapeRange.Top  := 40;

  oWB.Sheets[‘Cover’].Range[‘B7′,’K7’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘B7′,’K7’].HorizontalAlignment := xlHAlignCenter;

  oWB.Sheets[‘Cover’].Range[‘B7′,’K7’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[7,2]:=’ateşçi’;

  oSheet.CELLS[7,2].Font.Bold := True;

  oSheet.CELLS[7,2].Font.Size := 20;

  oWB.Sheets[‘Cover’].Range[‘B9′,’K9’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘B9′,’K9’].HorizontalAlignment := xlHAlignCenter;

  oWB.Sheets[‘Cover’].Range[‘B9′,’K9’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[9,2]:=’BOWL CONTROLING SYSTEM REPORTING’;

  oSheet.CELLS[9,2].Font.Bold := True;

  oSheet.CELLS[9,2].Font.Size := 20;

  oWB.Sheets[‘Cover’].Range[‘B13′,’K13’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘B13′,’K13’].HorizontalAlignment := xlHAlignCenter;

  oWB.Sheets[‘Cover’].Range[‘B13′,’K13’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[13,2]:=’CCT’;

  oSheet.CELLS[13,2].Font.Bold := True;

  oSheet.CELLS[13,2].Font.Size := 16;

  oWB.Sheets[‘Cover’].Range[‘B14′,’K14’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘B14′,’K14’].HorizontalAlignment := xlHAlignCenter;

  oWB.Sheets[‘Cover’].Range[‘B14′,’K14’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[14,2]:=’TOTAL VALUES’;

  oSheet.CELLS[14,2].Font.Bold := True;

  oSheet.CELLS[14,2].Font.Size := 16;

  oWB.Sheets[‘Cover’].Range[‘C17′,’D17’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘C17′,’D17’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘C17′,’D17’].VerticalAlignment := xlVAlignCenter;

  ProgressBar1.StepIt;

  oSheet.Cells[17,3]:=’Baslama Tarihi : ‘;

  oSheet.CELLS[17,3].Font.Bold := True;

  oSheet.CELLS[17,3].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘E17′,’F17’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘E17′,’F17’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘E17′,’F17’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[17,5]:=datetostr(NxDatePicker1.Date);

  oSheet.CELLS[17,5].Font.Bold := True;

  oSheet.CELLS[17,5].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘G17′,’H17’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘G17′,’H17’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘G17′,’H17’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[17,7]:=’Baslama Saati :’;

  oSheet.CELLS[17,7].Font.Bold := True;

  oSheet.CELLS[17,7].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘I17′,’J17’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘I17′,’J17’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘I17′,’J17’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[17,9]:=’00:00:00′;

  oSheet.CELLS[17,9].Font.Bold := True;

  oSheet.CELLS[17,9].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘C18′,’D18’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘C18′,’D18’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘C18′,’D18’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[18,3]:=’Bitis Tarihi : ‘;

  oSheet.CELLS[18,3].Font.Bold := True;

  oSheet.CELLS[18,3].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘E18′,’F18’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘E18′,’F18’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘E18′,’F18’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[18,5]:=datetostr(NxDatePicker2.Date);

  oSheet.CELLS[18,5].Font.Bold := True;

  oSheet.CELLS[18,5].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘G18′,’H18’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘G18′,’H18’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘G18′,’H18’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[18,7]:=’Bitis Saati :’;

  oSheet.CELLS[18,7].Font.Bold := True;

  oSheet.CELLS[18,7].Font.Size := 12;

  oWB.Sheets[‘Cover’].Range[‘I18′,’J18’].MergeCells := true;

  oWB.Sheets[‘Cover’].Range[‘I18′,’J18’].HorizontalAlignment := xlRight;

  oWB.Sheets[‘Cover’].Range[‘I18′,’J18’].VerticalAlignment := xlVAlignCenter;

  oSheet.Cells[18,9]:=’00:00:00′;

  oSheet.CELLS[18,9].Font.Bold := True;

  oSheet.CELLS[18,9].Font.Size := 12;

  //oSheet.CELLS[3,3].Font.Color := 37;

  Range := oXL.Workbooks[1].WorkSheets[‘Cover’].Range[‘C17:J18’]; //seçim için

  //Range.Columns.Interior.ColorIndex := 3; arka fon rendi kırmızı

  //Range.Columns.Font.Bold := True;

  Range.Columns.Borders.LineStyle :=13;

  //Range := oXL.Workbooks[1].WorkSheets[‘Cover’].Range[‘B2′,’L30’];

  //Range.Columns.Borders.LineStyle :=5;

dosya_tar1:=AnsiReplaceStr(datetimetostr(now) , ‘:’ , ‘.’);

ProgressBar1.StepIt;

oXL.Visible := true;

end;

except

end;


try

begin

oXL.Workbooks[1].SAVEAS(‘C:\RAPORLAR\’+’ateşçi’+’ ‘+datetostr(NxDatePicker1.Date)+’ ‘+datetostr(NxDatePicker2.Date)+’ ‘+dosya_tar1+’.XLS’);

ProgressBar1.Position:=0;

end;

except

end;

end;

procedure TSCADA_FRM.Image10Click(Sender: TObject);

begin

img_frm.ShowModal;

end;

 

procedure TSCADA_FRM.Image1Click(Sender: TObject);

begin

SCADA_SQL_FRM.Show;

end;

 

 

 

Function FLOAT_VALUE(Tag_Name : String) : Extended;

var

tag_n:integer;

Begin

tag_n:=Tag_No(Tag_Name);

if SCADA_FRM.OPC1.OPCGroups[0].OPCItems[tag_n].IsGoodQuality then Result :=StrToFloat(SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[tag_n].ValueStr) else Result:=0;

end;

 

 

Function INT_VALUE(Tag_Name : String) : integer;

var

tag_n:integer;

Begin

tag_n:=Tag_No(Tag_Name);

if SCADA_FRM.OPC1.OPCGroups[0].OPCItems[tag_n].IsGoodQuality then Result :=StrToInt(SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[tag_n].ValueStr) else Result:=0;

end;

 

procedure TSCADA_FRM.TRENDLERTimer(Sender: TObject);

var

saat, dakika, saniye, salise : Word;

YIL, AY, GUN: Word;

tarihsaat :TDateTime;

begin

TRENDLER.Interval:=1000;

DecodeTime ( Now, saat, dakika, saniye, salise);

DecodeDate(NOW, YIL, AY, GUN);

tarihsaat:=now;

if led12.ColorIndex=2 then begin

if ilk then

begin

ilk:=false;

 

end;

 

if (saniye_eski<>saniye) then

begin

 

end;

{anlık trends

if ((PAGE.ActivePage=MONITORING) and (PAGE1.ActivePage=TabSheet12))then

begin

if (saniye_e<>saniye) then

begin

clear_ok:=false;

saniye_e:=saniye;

chart6.Series[0].AddXY(now, Apparent_current_L1 );

chart7.Series[0].AddXY(now, Apparent_current_L2 );

chart8.Series[0].AddXY(now, Apparent_current_L3 );

end;

end else

begin

if clear_ok=false then

begin

chart6.Series[0].Clear;

chart7.Series[0].Clear;

chart8.Series[0].Clear;

clear_ok:=true;

end;

end;

}

//trends dk

if (dakika_e<>dakika) then

begin

dakika_e:=dakika;

try

begin

 

DataModule1.ADOQuery52.Close;

DataModule1.ADOQuery52.SQL.Clear;

DataModule1.ADOQuery52.SQL.Add(‘Insert into TRENDS(tarih) values (‘+

””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,tarihsaat)+”’)’);

DataModule1.ADOQuery52.ExecSQL;

 

  DataModule1.ADOQuery55.Close;

  DataModule1.ADOQuery55.SQL.Clear;

  DataModule1.ADOQuery55.SQL.Add(‘select * from TRENDS_TAGS ORDER BY TAG DESC’);

  DataModule1.ADOQuery55.Open;

  if DataModule1.ADOQuery55.RecordCount<>0 then

  begin

  DataModule1.ADOQuery55.First;

  while not DataModule1.ADOQuery55.Eof do

  begin

  DataModule1.ADOQuery52.Close;

  DataModule1.ADOQuery52.SQL.Clear;

  DataModule1.ADOQuery52.SQL.Add(‘UPDATE TRENDS SET ‘+stringreplace(DataModule1.ADOQuery55.Fields[0].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase])+’=”’+SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery55.Fields[0].AsString)].ValueStr+”’ WHERE tarih = ‘+””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,tarihsaat)+””);

  DataModule1.ADOQuery52.ExecSQL;

  DataModule1.ADOQuery55.Next;

  end;

  end;

 

end;

except

end;

end;

 

//trends 10M

if ((dakika mod 10)=0) and (dakika_es<>dakika) then

begin

dakika_es:=dakika;

try

begin

 

DataModule1.ADOQuery53.Close;

DataModule1.ADOQuery53.SQL.Clear;

DataModule1.ADOQuery53.SQL.Add(‘Insert into TRENDS_10M(tarih) values (‘+

””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,tarihsaat)+”’)’);

DataModule1.ADOQuery53.ExecSQL;

 

  DataModule1.ADOQuery56.Close;

  DataModule1.ADOQuery56.SQL.Clear;

  DataModule1.ADOQuery56.SQL.Add(‘select * from TRENDS_10M_TAGS ORDER BY TAG DESC’);

  DataModule1.ADOQuery56.Open;

  if DataModule1.ADOQuery56.RecordCount<>0 then

  begin

  DataModule1.ADOQuery56.First;

  while not DataModule1.ADOQuery56.Eof do

  begin

  DataModule1.ADOQuery53.Close;

  DataModule1.ADOQuery53.SQL.Clear;

  DataModule1.ADOQuery53.SQL.Add(‘UPDATE TRENDS_10M SET ‘+stringreplace(DataModule1.ADOQuery56.Fields[0].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase])+’=”’+SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery56.Fields[0].AsString)].ValueStr+”’ WHERE tarih = ‘+””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,tarihsaat)+””);

  DataModule1.ADOQuery53.ExecSQL;

  DataModule1.ADOQuery56.Next;

  end;

  end;

 

end;

except

end;

end;

 

//trends 1H

if ((saat_es<>saat) and (dakika=0) and (saniye<10)) then

begin

saat_es:=saat;

try

begin

 

DataModule1.ADOQuery54.Close;

DataModule1.ADOQuery54.SQL.Clear;

DataModule1.ADOQuery54.SQL.Add(‘Insert into TRENDS_1H(tarih) values (‘+

””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,tarihsaat)+”’)’);

DataModule1.ADOQuery54.ExecSQL;

 

  DataModule1.ADOQuery57.Close;

  DataModule1.ADOQuery57.SQL.Clear;

  DataModule1.ADOQuery57.SQL.Add(‘select * from TRENDS_1H_TAGS ORDER BY TAG DESC’);

  DataModule1.ADOQuery57.Open;

  if DataModule1.ADOQuery57.RecordCount<>0 then

  begin

  DataModule1.ADOQuery57.First;

  while not DataModule1.ADOQuery57.Eof do

  begin

  DataModule1.ADOQuery54.Close;

  DataModule1.ADOQuery54.SQL.Clear;

  DataModule1.ADOQuery54.SQL.Add(‘UPDATE TRENDS_1H SET ‘+stringreplace(DataModule1.ADOQuery57.Fields[0].AsString, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase])+’=”’+SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[Tag_No(DataModule1.ADOQuery57.Fields[0].AsString)].ValueStr+”’ WHERE tarih = ‘+””+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,tarihsaat)+””);

  DataModule1.ADOQuery54.ExecSQL;

  DataModule1.ADOQuery57.Next;

  end;

  end;

 

end;

except

end;

end;

 

end;

end;

 

 

 

procedure TSCADA_FRM.GORSELLERTimer(Sender: TObject);

var

baglanti:bool;

annim_no:integer;

begin

if ((dxBarLargeButton6.HotImageIndex=6) or (yetki<>’ADMIN’)) then

begin

GORSELLER.Enabled:=false;

 

try

begin

 

panel15.Caption:=datetostr(now);

panel16.Caption:=timetostr(now);

 

//NETWORK

baglanti:=false;

DataModule1.ADOQuery80.Close;

DataModule1.ADOQuery80.SQL.Clear;

DataModule1.ADOQuery80.SQL.Text :=’select BAGLANTI from DEVICES’;

DataModule1.ADOQuery80.Open;

 

  while not DataModule1.ADOQuery80.Eof do

  begin

  if DataModule1.ADOQuery80.Fields[0].AsBoolean then begin baglanti:=true; break; end;

  DataModule1.ADOQuery80.Next;

  end;

 

if baglanti then begin

led12.EnableBlinking:=true; led12.ColorIndex:=1;

end else

begin

led12.EnableBlinking:=false; led12.ColorIndex:=2;

end;

 

   DataModule1.ADOQuery70.Close;

   DataModule1.ADOQuery70.SQL.Clear;

   DataModule1.ADOQuery70.SQL.Add(‘SELECT * FROM BUTONLAR’);

   DataModule1.ADOQuery70.Open;

  DataModule1.ADOQuery70.First;

  while not DataModule1.ADOQuery70.Eof do

  begin

  if DataModule1.ADOQuery70.Fields[13].AsBoolean then

    begin

     if DataModule1.ADOQuery70.Fields[1].AsString=’SET’ then

     begin

      if BOOL_VALUE(DataModule1.ADOQuery70.Fields[14].AsString) and (DataModule1.ADOQuery70.Fields[14].AsString  <> ‘ANNIM_TAG’)  then begin set_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[15].AsString);  end else begin  set_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[16].AsString); end;

     end;

 

     if DataModule1.ADOQuery70.Fields[1].AsString=’RESET’ then

     begin

      if BOOL_VALUE(DataModule1.ADOQuery70.Fields[14].AsString) and (DataModule1.ADOQuery70.Fields[14].AsString  <> ‘ANNIM_TAG’)  then begin reset_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[15].AsString); end else begin  reset_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[16].AsString); end;

     end;

 

     if DataModule1.ADOQuery70.Fields[1].AsString=’TOOGLE’ then

     begin

      if BOOL_VALUE(DataModule1.ADOQuery70.Fields[14].AsString) and (DataModule1.ADOQuery70.Fields[14].AsString  <> ‘ANNIM_TAG’)  then begin toogle_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[15].AsString); end else begin  toogle_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[16].AsString); end;

     end;

 

     if DataModule1.ADOQuery70.Fields[1].AsString=’MOMANTARY’ then

     begin

      if BOOL_VALUE(DataModule1.ADOQuery70.Fields[14].AsString) and (DataModule1.ADOQuery70.Fields[14].AsString  <> ‘ANNIM_TAG’)  then begin MOMANTARY_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[15].AsString); end else begin  MOMANTARY_btn[DataModule1.ADOQuery70.Fields[0].Asinteger].ShineColor:=stringtocolor(DataModule1.ADOQuery70.Fields[16].AsString); end;

     end;

 

    end;

  DataModule1.ADOQuery70.Next;

  end;

 

 

   DataModule1.ADOQuery72.Close;

   DataModule1.ADOQuery72.SQL.Clear;

   DataModule1.ADOQuery72.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery72.Open;

   DataModule1.ADOQuery72.First;

  while not DataModule1.ADOQuery72.Eof do

  begin

  if (DataModule1.ADOQuery72.Fields[15].AsString  <> ‘EVENT_TAG’)  then begin   out_panel_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Value:=FLOAT_VALUE(DataModule1.ADOQuery72.Fields[15].AsString);  end;

  if (DataModule1.ADOQuery72.Fields[11].AsBoolean and (DataModule1.ADOQuery72.Fields[12].AsString  <> ‘ANNIM_TAG’))  then

  begin

    if BOOL_VALUE(DataModule1.ADOQuery72.Fields[12].AsString) then out_panel_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Color:=stringtocolor(DataModule1.ADOQuery72.Fields[13].AsString) else out_panel_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Color:= stringtocolor(DataModule1.ADOQuery72.Fields[14].AsString);

  end;

  DataModule1.ADOQuery72.Next;

  end;

 

   DataModule1.ADOQuery73.Close;

   DataModule1.ADOQuery73.SQL.Clear;

   DataModule1.ADOQuery73.SQL.Add(‘SELECT * FROM LABEL’);

   DataModule1.ADOQuery73.Open;

   DataModule1.ADOQuery73.First;

  while not DataModule1.ADOQuery73.Eof do

  begin

  if (DataModule1.ADOQuery73.Fields[10].AsBoolean and (DataModule1.ADOQuery73.Fields[11].AsString  <> ‘ANNIM_TAG’))  then

  begin

    if BOOL_VALUE(DataModule1.ADOQuery73.Fields[11].AsString) then text_label_comp[DataModule1.ADOQuery73.Fields[0].asinteger].Font.Color:=stringtocolor(DataModule1.ADOQuery73.Fields[12].AsString) else text_label_comp[DataModule1.ADOQuery73.Fields[0].asinteger].Font.Color:= stringtocolor(DataModule1.ADOQuery73.Fields[13].AsString);

  end;

  DataModule1.ADOQuery73.Next;

  end;

 

   DataModule1.ADOQuery74.Close;

   DataModule1.ADOQuery74.SQL.Clear;

   DataModule1.ADOQuery74.SQL.Add(‘SELECT * FROM PANEL’);

   DataModule1.ADOQuery74.Open;

   DataModule1.ADOQuery74.First;

  while not DataModule1.ADOQuery74.Eof do

  begin

  if (DataModule1.ADOQuery74.Fields[10].AsBoolean and (DataModule1.ADOQuery74.Fields[11].AsString  <> ‘ANNIM_TAG’))  then

  begin

    if BOOL_VALUE(DataModule1.ADOQuery74.Fields[11].AsString) then panel_comp[DataModule1.ADOQuery74.Fields[0].asinteger].Color:=stringtocolor(DataModule1.ADOQuery74.Fields[12].AsString) else panel_comp[DataModule1.ADOQuery74.Fields[0].asinteger].Color:= stringtocolor(DataModule1.ADOQuery74.Fields[13].AsString);

  end;

  DataModule1.ADOQuery74.Next;

  end;

 

   DataModule1.ADOQuery75.Close;

   DataModule1.ADOQuery75.SQL.Clear;

   DataModule1.ADOQuery75.SQL.Add(‘SELECT * FROM LED’);

   DataModule1.ADOQuery75.Open;

   DataModule1.ADOQuery75.First;

  while not DataModule1.ADOQuery75.Eof do

  begin

  if (DataModule1.ADOQuery75.Fields[6].AsBoolean and (DataModule1.ADOQuery75.Fields[7].AsString  <> ‘ANNIM_TAG’))  then

  begin

    if BOOL_VALUE(DataModule1.ADOQuery75.Fields[7].AsString) then

    begin

      if DataModule1.ADOQuery75.Fields[4].AsBoolean then led_comp[DataModule1.ADOQuery75.Fields[0].asinteger].EnableBlinking:=true;

      led_comp[DataModule1.ADOQuery75.Fields[0].asinteger].ColorIndex:=1;

    end else

    begin

    led_comp[DataModule1.ADOQuery75.Fields[0].asinteger].EnableBlinking:=false;

    led_comp[DataModule1.ADOQuery75.Fields[0].asinteger].ColorIndex:=2;

    end;

  end;

  DataModule1.ADOQuery75.Next;

  end;

 

 

   DataModule1.ADOQuery77.Close;

   DataModule1.ADOQuery77.SQL.Clear;

   DataModule1.ADOQuery77.SQL.Add(‘SELECT * FROM SHAPE’);

   DataModule1.ADOQuery77.Open;

   DataModule1.ADOQuery77.First;

  while not DataModule1.ADOQuery77.Eof do

  begin

  if (DataModule1.ADOQuery77.Fields[6].AsBoolean and (DataModule1.ADOQuery77.Fields[7].AsString  <> ‘ANNIM_TAG’))  then

  begin

    if BOOL_VALUE(DataModule1.ADOQuery77.Fields[7].AsString) then shape_comp[DataModule1.ADOQuery77.Fields[0].asinteger].Brush.Color:=stringtocolor(DataModule1.ADOQuery77.Fields[8].AsString) else shape_comp[DataModule1.ADOQuery77.Fields[0].asinteger].Brush.Color:= stringtocolor(DataModule1.ADOQuery77.Fields[9].AsString);

  end;

  DataModule1.ADOQuery77.Next;

  end;

 

   DataModule1.ADOQuery76.Close;

   DataModule1.ADOQuery76.SQL.Clear;

   DataModule1.ADOQuery76.SQL.Add(‘SELECT * FROM SEKIL’);

   DataModule1.ADOQuery76.Open;

   DataModule1.ADOQuery76.First;

  while not DataModule1.ADOQuery76.Eof do

  begin

  if (DataModule1.ADOQuery76.Fields[6].AsBoolean and (DataModule1.ADOQuery76.Fields[7].AsString  <> ‘ANNIM_TAG’))  then

  begin

    if BOOL_VALUE(DataModule1.ADOQuery76.Fields[7].AsString) then sekil_comp[DataModule1.ADOQuery76.Fields[0].asinteger].Color:=stringtocolor(DataModule1.ADOQuery76.Fields[8].AsString) else sekil_comp[DataModule1.ADOQuery76.Fields[0].asinteger].Color:= stringtocolor(DataModule1.ADOQuery76.Fields[9].AsString);

  end;

  DataModule1.ADOQuery76.Next;

  end;

 

   DataModule1.ADOQuery78.Close;

   DataModule1.ADOQuery78.SQL.Clear;

   DataModule1.ADOQuery78.SQL.Add(‘SELECT * FROM IMG’);

   DataModule1.ADOQuery78.Open;

   DataModule1.ADOQuery78.First;

  while not DataModule1.ADOQuery78.Eof do

  begin

  if (DataModule1.ADOQuery78.Fields[5].AsBoolean and (DataModule1.ADOQuery78.Fields[6].AsString  <> ‘ANNIM_TAG’))  then

  begin

    img_comp[DataModule1.ADOQuery78.Fields[0].asinteger].Visible:=BOOL_VALUE(DataModule1.ADOQuery78.Fields[6].AsString);

  end;

  DataModule1.ADOQuery78.Next;

  end;

 

   DataModule1.ADOQuery78.Close;

   DataModule1.ADOQuery78.SQL.Clear;

   DataModule1.ADOQuery78.SQL.Add(‘SELECT * FROM ANIM’);

   DataModule1.ADOQuery78.Open;

   DataModule1.ADOQuery78.First;

  while not DataModule1.ADOQuery78.Eof do

  begin

  annim_no:=DataModule1.ADOQuery78.Fields[0].asinteger;

  annim[annim_no]:=BOOL_VALUE(DataModule1.ADOQuery78.Fields[6].AsString);

  if annim[annim_no] <> annim_e[annim_no] then

    begin

    annim_e[annim_no]:= annim[annim_no];

      if (DataModule1.ADOQuery78.Fields[5].AsBoolean and (DataModule1.ADOQuery78.Fields[6].AsString  <> ‘ANNIM_TAG’))  then

      begin

      if DataModule1.ADOQuery78.Fields[11].AsBoolean then anim_comp[annim_no].Visible:=annim[annim_no];

      if not DataModule1.ADOQuery78.Fields[11].AsBoolean then anim_comp[annim_no].Visible:=true;

      anim_comp[DataModule1.ADOQuery78.Fields[0].asinteger].Active:=annim[annim_no];

      end;

    end;

  DataModule1.ADOQuery78.Next;

  end;

 

   DataModule1.ADOQuery77.Close;

   DataModule1.ADOQuery77.SQL.Clear;

   DataModule1.ADOQuery77.SQL.Add(‘SELECT * FROM ARROW’);

   DataModule1.ADOQuery77.Open;

   DataModule1.ADOQuery77.First;

  while not DataModule1.ADOQuery77.Eof do

  begin

  if (DataModule1.ADOQuery77.Fields[6].AsBoolean and (DataModule1.ADOQuery77.Fields[7].AsString  <> ‘ANNIM_TAG’))  then

  begin

    arrow_comp[DataModule1.ADOQuery77.Fields[0].asinteger].Active:=BOOL_VALUE(DataModule1.ADOQuery77.Fields[7].AsString);

  end;

  DataModule1.ADOQuery77.Next;

  end;

 

   DataModule1.ADOQuery72.Close;

   DataModule1.ADOQuery72.SQL.Clear;

   DataModule1.ADOQuery72.SQL.Add(‘SELECT * FROM KADRAN’);

   DataModule1.ADOQuery72.Open;

   DataModule1.ADOQuery72.First;

  while not DataModule1.ADOQuery72.Eof do

  begin

  if (DataModule1.ADOQuery72.Fields[15].AsString  <> ‘EVENT_TAG’)  then begin   kadran_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Position:=FLOAT_VALUE(DataModule1.ADOQuery72.Fields[15].AsString);  end;

  //if (DataModule1.ADOQuery72.Fields[11].AsBoolean and (DataModule1.ADOQuery72.Fields[12].AsString  <> ‘ANNIM_TAG’))  then

  //begin

  //  if BOOL_VALUE(DataModule1.ADOQuery72.Fields[12].AsString) then kadran_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Color:=stringtocolor(DataModule1.ADOQuery72.Fields[13].AsString) else kadran_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Color:= stringtocolor(DataModule1.ADOQuery72.Fields[14].AsString);

  //end;

  DataModule1.ADOQuery72.Next;

  end;

 

  DataModule1.ADOQuery72.Close;

   DataModule1.ADOQuery72.SQL.Clear;

   DataModule1.ADOQuery72.SQL.Add(‘SELECT * FROM TERMO’);

   DataModule1.ADOQuery72.Open;

   DataModule1.ADOQuery72.First;

  while not DataModule1.ADOQuery72.Eof do

  begin

  if (DataModule1.ADOQuery72.Fields[15].AsString  <> ‘EVENT_TAG’)  then begin   termo_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Value.VALUE:=FLOAT_VALUE(DataModule1.ADOQuery72.Fields[15].AsString);  end;

  //if (DataModule1.ADOQuery72.Fields[11].AsBoolean and (DataModule1.ADOQuery72.Fields[12].AsString  <> ‘ANNIM_TAG’))  then

  //begin

  //  if BOOL_VALUE(DataModule1.ADOQuery72.Fields[12].AsString) then termo_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Color:=stringtocolor(DataModule1.ADOQuery72.Fields[13].AsString) else termo_comp[DataModule1.ADOQuery72.Fields[0].asinteger].Color:= stringtocolor(DataModule1.ADOQuery72.Fields[14].AsString);

  //end;

  DataModule1.ADOQuery72.Next;

  end;

 

end;

except

begin

DataModule1.ADOConnection1.Connected:=true;

end;

end;

GORSELLER.Enabled:=true;

GORSELLER.Interval:=300;

end;

end;

 

procedure TSCADA_FRM.BAGLANTI_OPCDatachange(Sender: TObject;

  ItemList: TdOPCItemList);

var

i:integer;

begin

 

  for i:=0 to SCADA_FRM.BAGLANTI_OPC.OPCGroups[0].OPCItems.count-1 do

  begin

  DataModule1.ADOQuery31.Close;

  DataModule1.ADOQuery31.SQL.Clear;

  if SCADA_FRM.BAGLANTI_OPC.OPCGroups[0].OPCItems.Items[i].Value=0 then

  DataModule1.ADOQuery31.SQL.Add(‘UPDATE DEVICES SET BAGLANTI=”’+’False’+”’ WHERE id = ‘+””+inttostr(i)+””) else

  DataModule1.ADOQuery31.SQL.Add(‘UPDATE DEVICES SET BAGLANTI=”’+’True’+”’ WHERE id = ‘+””+inttostr(i)+””);

  DataModule1.ADOQuery31.ExecSQL;

  end;

end;

 

 

procedure TSCADA_FRM.btnNewClick(Sender: TObject);

begin

  SCADA_SQL_FRM.Timer2.Enabled:=false;

  SCADA_FRM.ALARMLAR.Enabled:=false;

  SCADA_FRM.KUMANDA.Enabled:=false;

  SCADA_FRM.TRENDLER.Enabled:=false;

  SCADA_FRM.DEFAULTS.Enabled:=false;

  SCADA_FRM.GORSELLER.Enabled:=false;

  DataModule1.ADOConnection1.Connected:=false;

  DataModule1.ADOConnection2.Connected:=true;

  DataModule1.ADOQuery60.Close();

  DataModule1.ADOQuery60.SQL.Clear();

  DataModule1.ADOQuery60.SQL.Add(‘ALTER DATABASE SCADA SET SINGLE_USER WITH ROLLBACK IMMEDIATE ‘);

  DataModule1.ADOQuery60.ExecSQL();

  DataModule1.ADOQuery60.Close();

  DataModule1.ADOQuery60.SQL.Clear();

  DataModule1.ADOQuery60.SQL.Add(‘DROP DATABASE SCADA’);

  DataModule1.ADOQuery60.ExecSQL();

  DataModule1.ADOQuery60.Close();

  DataModule1.ADOQuery60.SQL.Clear();

  DataModule1.ADOQuery60.SQL.Add(‘CREATE DATABASE SCADA’);

  DataModule1.ADOQuery60.ExecSQL();

  ShellExecute(Handle, nil, PChar(Application.ExeName), nil, nil, SW_SHOWNORMAL);

  //Application.Terminate; // or, if this is the main form, simply Close;

  try

  begin

  SCADA_SQL_FRM.PopupMenu1.Destroy;

  SCADA_SQL_FRM.NotifyIcon1.DestroyComponents;

  SCADA_SQL_FRM.Timer2.Destroy;

  SCADA_FRM.ALARMLAR.Destroy;

  SCADA_FRM.KUMANDA.Destroy;

  SCADA_FRM.TRENDLER.Destroy;

  SCADA_FRM.DEFAULTS.Destroy;

  SCADA_FRM.GORSELLER.Destroy;

  SCADA_FRM.Tmr1.Destroy;

  SCADA_FRM.opc1.Destroy;

  SCADA_FRM.opc2.Destroy;

  SCADA_FRM.opc3.Destroy;

  SCADA_FRM.ANLIK_OPC.Destroy;

  SCADA_FRM.BAGLANTI_OPC.Destroy;

  SEND_SMS.Destroy;

  MailerForm.Destroy;

  JSON.Free;

  xml.Free;

  SCADA_FRM.Close;

  Scada_Connect.Destroy;

  //delay(200);

  //SCADA_SQL_FRM.Destroy;

  Application.Terminate; //DOES NOT SHUT DOWN?!?

  Halt(1); //DOES SHUT DOWN!

  //Exit;

  end;

  finally

 

  end;

end;

 

procedure TSCADA_FRM.btnOpenClick(Sender: TObject);

begin

delete_db:=false;

  if SCADA_FRM.JvOpenDialog1.Execute then

  begin

    DosyaAdi := JvOpenDialog1.FileName;

 

  SCADA_SQL_FRM.Timer2.Enabled:=false;

  SCADA_FRM.ALARMLAR.Enabled:=false;

  SCADA_FRM.KUMANDA.Enabled:=false;

  SCADA_FRM.TRENDLER.Enabled:=false;

  SCADA_FRM.DEFAULTS.Enabled:=false;

  SCADA_FRM.GORSELLER.Enabled:=false;

  DataModule1.ADOConnection1.Connected:=false;

  DataModule1.ADOConnection2.Connected:=true;

  DataModule1.ADOQuery60.Close();

  DataModule1.ADOQuery60.SQL.Clear();

  DataModule1.ADOQuery60.SQL.Add(‘ALTER DATABASE SCADA SET SINGLE_USER WITH ROLLBACK IMMEDIATE ‘);

  DataModule1.ADOQuery60.ExecSQL();

  DataModule1.ADOQuery60.Close();

  DataModule1.ADOQuery60.SQL.Clear();

  DataModule1.ADOQuery60.SQL.Add(‘DROP DATABASE SCADA’);

  DataModule1.ADOQuery60.ExecSQL();

  DataModule1.ADOConnection2.Execute(Format(‘USE [master] RESTORE DATABASE [%s] FROM DISK = ”%s” WITH FIle = 1, NOUNLOAD, STATS = 5’,[‘SCADA’,DosyaAdi]));

  ShellExecute(Handle, nil, PChar(Application.ExeName), nil, nil, SW_SHOWNORMAL);

  //Application.Terminate; // or, if this is the main form, simply Close;

    try

    begin

    SCADA_SQL_FRM.PopupMenu1.Destroy;

    SCADA_SQL_FRM.NotifyIcon1.DestroyComponents;

    SCADA_SQL_FRM.Timer2.Destroy;

    SCADA_FRM.ALARMLAR.Destroy;

    SCADA_FRM.KUMANDA.Destroy;

    SCADA_FRM.TRENDLER.Destroy;

    SCADA_FRM.DEFAULTS.Destroy;

    SCADA_FRM.GORSELLER.Destroy;

    SCADA_FRM.Tmr1.Destroy;

    SCADA_FRM.opc1.Destroy;

    SCADA_FRM.opc2.Destroy;

    SCADA_FRM.opc3.Destroy;

    SCADA_FRM.ANLIK_OPC.Destroy;

    SCADA_FRM.BAGLANTI_OPC.Destroy;

    SEND_SMS.Destroy;

    MailerForm.Destroy;

    JSON.Free;

    xml.Free;

    SCADA_FRM.Close;

    Scada_Connect.Destroy;

    //delay(200);

    //SCADA_SQL_FRM.Destroy;

    Application.Terminate; //DOES NOT SHUT DOWN?!?

    Halt(1); //DOES SHUT DOWN!

    //Exit;

    end;

    finally

 

    end;

  end;

 

end;

 

procedure TSCADA_FRM.btnSaveAsClick(Sender: TObject);

var

tag_name:string;

begin

  if SCADA_FRM.SaveDialog1.Execute then

  begin

  DosyaAdi := SaveDialog1.FileName+’.bak’;

  SCADA_SQL_FRM.Timer2.Enabled:=false;

  SCADA_FRM.ALARMLAR.Enabled:=false;

  SCADA_FRM.KUMANDA.Enabled:=false;

  SCADA_FRM.TRENDLER.Enabled:=false;

  SCADA_FRM.DEFAULTS.Enabled:=false;

  SCADA_FRM.GORSELLER.Enabled:=false;

  DataModule1.ADOConnection1.Connected:=false;

  DataModule1.ADOConnection2.Execute(Format(‘BACKUP DATABASE [%s] TO DISK = ”%s”’,[‘SCADA’,DosyaAdi]));

 

  DataModule1.ADOConnection1.Connected:=true;

  SCADA_SQL_FRM.Timer2.Enabled:=true;

  SCADA_FRM.ALARMLAR.Enabled:=true;

  SCADA_FRM.TRENDLER.Enabled:=true;

  SCADA_FRM.DEFAULTS.Enabled:=true;

  SCADA_FRM.GORSELLER.Enabled:=true;

 

  DataModule1.ADOQuery3.Open;  //’select * from ALARMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery33.Open; //’select * from KULLANICI’;

  DataModule1.ADOQuery29.Open; //’select * from KUMANDA’;

  DataModule1.ADOQuery2.Open;  //’select * from KULLANICI ORDER BY id DESC’;

  DataModule1.ADOQuery19.Open; //’select * from DURUMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery43.Open; //’select * from TRENDS_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery45.Open; //’select * from TRENDS_10M_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery47.Open; //’select * from TRENDS_1H_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery10.Open; //’select * from STATUS ORDER BY SIRA DESC’;

 

 

  DataModule1.ADOQuery28.Close;

  DataModule1.ADOQuery28.SQL.Clear;

  DataModule1.ADOQuery28.SQL.Text :=’select ANLIK_TAGS from ANLIK_TAGS ORDER BY id ASC’;

  DataModule1.ADOQuery28.Open;

  end;

 

 

end;

 

procedure TSCADA_FRM.btnSaveClick(Sender: TObject);

begin

  if DosyaAdi <> ” then

  begin

  SCADA_SQL_FRM.Timer2.Enabled:=false;

  SCADA_FRM.ALARMLAR.Enabled:=false;

  SCADA_FRM.KUMANDA.Enabled:=false;

  SCADA_FRM.TRENDLER.Enabled:=false;

  SCADA_FRM.DEFAULTS.Enabled:=false;

  SCADA_FRM.GORSELLER.Enabled:=false;

  DataModule1.ADOConnection1.Connected:=false;

  DataModule1.ADOConnection2.Execute(Format(‘BACKUP DATABASE [%s] TO DISK = ”%s”’,[‘SCADA’,DosyaAdi]));

  DataModule1.ADOConnection1.Connected:=true;

  SCADA_SQL_FRM.Timer2.Enabled:=true;

  SCADA_FRM.ALARMLAR.Enabled:=true;

  SCADA_FRM.KUMANDA.Enabled:=true;

  SCADA_FRM.TRENDLER.Enabled:=true;

  SCADA_FRM.DEFAULTS.Enabled:=true;

  SCADA_FRM.GORSELLER.Enabled:=true;

 

  DataModule1.ADOQuery3.Open;  //’select * from ALARMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery33.Open; //’select * from KULLANICI’;

  DataModule1.ADOQuery29.Open; //’select * from KUMANDA’;

  DataModule1.ADOQuery2.Open;  //’select * from KULLANICI ORDER BY id DESC’;

  DataModule1.ADOQuery19.Open; //’select * from DURUMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery43.Open; //’select * from TRENDS_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery45.Open; //’select * from TRENDS_10M_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery47.Open; //’select * from TRENDS_1H_TAGS ORDER BY TAG DESC’;

  DataModule1.ADOQuery10.Open; //’select * from STATUS ORDER BY SIRA DESC’;

 

 

  DataModule1.ADOQuery28.Close;

  DataModule1.ADOQuery28.SQL.Clear;

  DataModule1.ADOQuery28.SQL.Text :=’select ANLIK_TAGS from ANLIK_TAGS ORDER BY id ASC’;

  DataModule1.ADOQuery28.Open;

 

  end else

  showmessage(‘Dosya Açmadınız.’);

end;

 

procedure TSCADA_FRM.Button1Click(Sender: TObject);

begin

  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Add(‘UPDATE SAYFALAR SET proje_name=”’+Edit3.Text+”’,’+

                               ‘sayfa1=”’+Edit4.Text+”’,’+

                               ‘sayfa1_en=”’+booltostr(CheckBox1.Checked)+”’,’+

                               ‘sayfa2=”’+Edit5.Text+”’,’+

                               ‘sayfa2_en=”’+booltostr(CheckBox2.Checked)+”’,’+

                               ‘sayfa3=”’+Edit7.Text+”’,’+

                               ‘sayfa3_en=”’+booltostr(CheckBox4.Checked)+”’,’+

                               ‘sayfa4=”’+Edit8.Text+”’,’+

                               ‘sayfa4_en=”’+booltostr(CheckBox5.Checked)+”’,’+

                               ‘sayfa5=”’+Edit9.Text+”’,’+

                               ‘sayfa5_en=”’+booltostr(CheckBox6.Checked)+”’,’+

                               ‘sayfa6=”’+Edit10.Text+”’,’+

                               ‘sayfa6_en=”’+booltostr(CheckBox7.Checked)+”’,’+

                               ‘sayfa7=”’+Edit6.Text+”’,’+

                               ‘sayfa7_en=”’+booltostr(CheckBox3.Checked)+”’,’+

                               ‘monitorin=”’+Edit12.Text+”’,’+

                               ‘monitoring_en=”’+booltostr(CheckBox8.Checked)+”’,’+

                               ‘event=”’+Edit13.Text+”’,’+

                               ‘event_en=”’+booltostr(CheckBox9.Checked)+”’,’+

                               ‘network=”’+Edit14.Text+”’,’+

                               ‘network_en=”’+booltostr(CheckBox10.Checked)+”’,’+

                               ‘keybord=”’+booltostr(CheckBox11.Checked)+”’ WHERE sayfa_no = ‘+””+’1’+””);

  DataModule1.ADOQuery79.ExecSQL;

  DataModule1.ADOQuery79.Close;

  DataModule1.ADOQuery79.SQL.Clear;

  DataModule1.ADOQuery79.SQL.Text :=’select * from SAYFALAR’;

  DataModule1.ADOQuery79.Open;

 

  JvGradientHeaderPanel1.LabelCaption:=Edit3.Text;

  AdvGlassButton5.Caption:=Edit4.Text;

  AdvGlassButton5.Visible:=CheckBox1.Checked;

  suiButton2.Caption:=Edit5.Text;

  suiButton2.Visible:=CheckBox2.Checked;

  suiButton3.Caption:=Edit7.Text;

  suiButton3.Visible:=CheckBox4.Checked;

  AdvGlassButton4.Caption:=Edit8.Text;

  AdvGlassButton4.Visible:=CheckBox5.Checked;

  suiButton4.Caption:=Edit9.Text;

  suiButton4.Visible:=CheckBox6.Checked;

  AdvGlassButton3.Caption:=Edit10.Text;

  AdvGlassButton3.Visible:=CheckBox7.Checked;

  suiButton6.Caption:=Edit6.Text;

  suiButton6.Visible:=CheckBox3.Checked;

  suiButton8.Caption:=Edit12.Text;

  suiButton8.Visible:=CheckBox8.Checked;

  suiButton7.Caption:=Edit13.Text;

  suiButton7.Visible:=CheckBox9.Checked;

  suiButton9.Caption:=Edit14.Text;

  suiButton9.Visible:=CheckBox10.Checked;

end;

 

procedure TSCADA_FRM.Button2Click(Sender: TObject);

var

 jp:TJpegimage;

begin

  if JvOpenDialog2.Execute then

  begin

    Image1.Picture.LoadFromFile( JvOpenDialog2.FileName);

    Edit11.Text:=JvOpenDialog2.FileName;

     try

     DataModule1.ADOQuery79.Close;

     DataModule1.ADOQuery79.SQL.Text := (‘UPDATE SAYFALAR SET logo= :BLOB+ WHERE sayfa_no = ‘+””+’1’+””);

     DataModule1.ADOQuery79.Parameters[0].Assign(Image1.Picture);

     DataModule1.ADOQuery79.ExecSQL;

  finally

 

  end;

  end;

end;

 

procedure TSCADA_FRM.Button3Click(Sender: TObject);

begin

  DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Add(‘UPDATE TRENDSLER SET trends_basligi=”’+Edit15.Text+”’,’+

                               ‘trends_1=”’+Edit16.Text+”’,’+

                               ‘trends_1_en=”’+booltostr(CheckBox12.Checked)+”’,’+

                               ‘trends_1_color=”’+colortostring(ColorBox1.Selected)+”’,’+

                               ‘trends_1_birimi=”’+Edit27.Text+”’,’+

                               ‘trends_1_suresi=”’+ComboBox12.Text+”’,’+

                               ‘trends_1_tagi=”’+ComboBox1.Text+”’,’+

                               ‘trends_2=”’+Edit17.Text+”’,’+

                               ‘trends_2_en=”’+booltostr(CheckBox13.Checked)+”’,’+

                               ‘trends_2_color=”’+colortostring(ColorBox2.Selected)+”’,’+

                               ‘trends_2_birimi=”’+Edit28.Text+”’,’+

                               ‘trends_2_suresi=”’+ComboBox13.Text+”’,’+

                               ‘trends_2_tagi=”’+ComboBox2.Text+”’,’+

                               ‘trends_3=”’+Edit18.Text+”’,’+

                               ‘trends_3_en=”’+booltostr(CheckBox14.Checked)+”’,’+

                               ‘trends_3_color=”’+colortostring(ColorBox3.Selected)+”’,’+

                               ‘trends_3_birimi=”’+Edit29.Text+”’,’+

                               ‘trends_3_suresi=”’+ComboBox14.Text+”’,’+

                               ‘trends_3_tagi=”’+ComboBox3.Text+”’,’+

                               ‘trends_4=”’+Edit19.Text+”’,’+

                               ‘trends_4_en=”’+booltostr(CheckBox15.Checked)+”’,’+

                               ‘trends_4_color=”’+colortostring(ColorBox4.Selected)+”’,’+

                               ‘trends_4_birimi=”’+Edit30.Text+”’,’+

                               ‘trends_4_suresi=”’+ComboBox15.Text+”’,’+

                               ‘trends_4_tagi=”’+ComboBox4.Text+”’,’+

                               ‘trends_5=”’+Edit20.Text+”’,’+

                               ‘trends_5_en=”’+booltostr(CheckBox16.Checked)+”’,’+

                               ‘trends_5_color=”’+colortostring(ColorBox5.Selected)+”’,’+

                               ‘trends_5_birimi=”’+Edit31.Text+”’,’+

                               ‘trends_5_suresi=”’+ComboBox16.Text+”’,’+

                               ‘trends_5_tagi=”’+ComboBox5.Text+”’,’+

                               ‘trends_6=”’+Edit21.Text+”’,’+

                               ‘trends_6_en=”’+booltostr(CheckBox17.Checked)+”’,’+

                               ‘trends_6_color=”’+colortostring(ColorBox6.Selected)+”’,’+

                               ‘trends_6_birimi=”’+Edit32.Text+”’,’+

                               ‘trends_6_suresi=”’+ComboBox17.Text+”’,’+

                               ‘trends_6_tagi=”’+ComboBox6.Text+”’,’+

                               ‘trends_7=”’+Edit25.Text+”’,’+

                               ‘trends_7_en=”’+booltostr(CheckBox18.Checked)+”’,’+

                               ‘trends_7_color=”’+colortostring(ColorBox7.Selected)+”’,’+

                               ‘trends_7_birimi=”’+Edit33.Text+”’,’+

                               ‘trends_7_suresi=”’+ComboBox18.Text+”’,’+

                               ‘trends_7_tagi=”’+ComboBox7.Text+”’,’+

                               ‘trends_8=”’+Edit24.Text+”’,’+

                               ‘trends_8_en=”’+booltostr(CheckBox19.Checked)+”’,’+

                               ‘trends_8_color=”’+colortostring(ColorBox8.Selected)+”’,’+

                               ‘trends_8_birimi=”’+Edit34.Text+”’,’+

                               ‘trends_8_suresi=”’+ComboBox19.Text+”’,’+

                               ‘trends_8_tagi=”’+ComboBox8.Text+”’,’+

                               ‘trends_9=”’+Edit23.Text+”’,’+

                               ‘trends_9_en=”’+booltostr(CheckBox20.Checked)+”’,’+

                               ‘trends_9_color=”’+colortostring(ColorBox9.Selected)+”’,’+

                               ‘trends_9_birimi=”’+Edit35.Text+”’,’+

                               ‘trends_9_suresi=”’+ComboBox20.Text+”’,’+

                               ‘trends_9_tagi=”’+ComboBox9.Text+”’,’+

                               ‘trends_10=”’+Edit22.Text+”’,’+

                               ‘trends_10_en=”’+booltostr(CheckBox21.Checked)+”’,’+

                               ‘trends_10_color=”’+colortostring(ColorBox10.Selected)+”’,’+

                               ‘trends_10_birimi=”’+Edit36.Text+”’,’+

                               ‘trends_10_suresi=”’+ComboBox21.Text+”’,’+

                               ‘trends_10_tagi=”’+ComboBox10.Text+”’,’+

                               ‘trends_11=”’+Edit26.Text+”’,’+

                               ‘trends_11_en=”’+booltostr(CheckBox23.Checked)+”’,’+

                               ‘trends_11_color=”’+colortostring(ColorBox11.Selected)+”’,’+

                               ‘trends_11_birimi=”’+Edit37.Text+”’,’+

                               ‘trends_11_suresi=”’+ComboBox22.Text+”’,’+

                               ‘trends_11_tagi=”’+ComboBox11.Text+”’ WHERE trends_no = ‘+””+’1’+””);

  DataModule1.ADOQuery86.ExecSQL;

  DataModule1.ADOQuery86.Close;

 

  DataModule1.ADOQuery86.Close;

  DataModule1.ADOQuery86.SQL.Clear;

  DataModule1.ADOQuery86.SQL.Text :=(‘select * from TRENDSLER WHERE trends_no = ‘+””+’1’+””);

  DataModule1.ADOQuery86.Open;

 

  Chart1.Title.Text.Text:=DataModule1.ADOQuery86.Fields[1].AsString;

  AdvSmoothToggleButton1.Caption:=DataModule1.ADOQuery86.Fields[2].AsString;

  AdvSmoothToggleButton1.Visible:=DataModule1.ADOQuery86.Fields[3].AsBoolean;

  AdvSmoothToggleButton1.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[4].AsString);

  Chart1.Series[0].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[4].AsString);

  AdvSmoothToggleButton1.Status.Caption:=DataModule1.ADOQuery86.Fields[5].AsString;

  AdvSmoothToggleButton2.Caption:=DataModule1.ADOQuery86.Fields[8].AsString;

  AdvSmoothToggleButton2.Visible:=DataModule1.ADOQuery86.Fields[9].AsBoolean;

  AdvSmoothToggleButton2.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[10].AsString);

  Chart1.Series[1].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[10].AsString);

  AdvSmoothToggleButton2.Status.Caption:=DataModule1.ADOQuery86.Fields[11].AsString;

  AdvSmoothToggleButton3.Caption:=DataModule1.ADOQuery86.Fields[14].AsString;

  AdvSmoothToggleButton3.Visible:=DataModule1.ADOQuery86.Fields[15].AsBoolean;

  AdvSmoothToggleButton3.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[16].AsString);

  Chart1.Series[2].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[16].AsString);

  AdvSmoothToggleButton3.Status.Caption:=DataModule1.ADOQuery86.Fields[17].AsString;

  AdvSmoothToggleButton4.Caption:=DataModule1.ADOQuery86.Fields[20].AsString;

  AdvSmoothToggleButton4.Visible:=DataModule1.ADOQuery86.Fields[21].AsBoolean;

  AdvSmoothToggleButton4.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[22].AsString);

  Chart1.Series[3].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[22].AsString);

  AdvSmoothToggleButton4.Status.Caption:=DataModule1.ADOQuery86.Fields[23].AsString;

  AdvSmoothToggleButton5.Caption:=DataModule1.ADOQuery86.Fields[26].AsString;

  AdvSmoothToggleButton5.Visible:=DataModule1.ADOQuery86.Fields[27].AsBoolean;

  AdvSmoothToggleButton5.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[28].AsString);

  Chart1.Series[4].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[28].AsString);

  AdvSmoothToggleButton5.Status.Caption:=DataModule1.ADOQuery86.Fields[29].AsString;

  AdvSmoothToggleButton6.Caption:=DataModule1.ADOQuery86.Fields[32].AsString;

  AdvSmoothToggleButton6.Visible:=DataModule1.ADOQuery86.Fields[33].AsBoolean;

  AdvSmoothToggleButton6.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[34].AsString);

  Chart1.Series[5].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[34].AsString);

  AdvSmoothToggleButton6.Status.Caption:=DataModule1.ADOQuery86.Fields[35].AsString;

  AdvSmoothToggleButton7.Caption:=DataModule1.ADOQuery86.Fields[38].AsString;

  AdvSmoothToggleButton7.Visible:=DataModule1.ADOQuery86.Fields[39].AsBoolean;

  AdvSmoothToggleButton7.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[40].AsString);

  Chart1.Series[6].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[40].AsString);

  AdvSmoothToggleButton7.Status.Caption:=DataModule1.ADOQuery86.Fields[41].AsString;

  AdvSmoothToggleButton8.Caption:=DataModule1.ADOQuery86.Fields[44].AsString;

  AdvSmoothToggleButton8.Visible:=DataModule1.ADOQuery86.Fields[45].AsBoolean;

  AdvSmoothToggleButton8.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[46].AsString);

  Chart1.Series[7].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[46].AsString);

  AdvSmoothToggleButton8.Status.Caption:=DataModule1.ADOQuery86.Fields[47].AsString;

  AdvSmoothToggleButton9.Caption:=DataModule1.ADOQuery86.Fields[50].AsString;

  AdvSmoothToggleButton9.Visible:=DataModule1.ADOQuery86.Fields[51].AsBoolean;

  AdvSmoothToggleButton9.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[52].AsString);

  Chart1.Series[8].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[52].AsString);

  AdvSmoothToggleButton9.Status.Caption:=DataModule1.ADOQuery86.Fields[53].AsString;

  AdvSmoothToggleButton10.Caption:=DataModule1.ADOQuery86.Fields[56].AsString;

  AdvSmoothToggleButton10.Visible:=DataModule1.ADOQuery86.Fields[57].AsBoolean;

  AdvSmoothToggleButton10.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[58].AsString);

  Chart1.Series[9].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[58].AsString);

  AdvSmoothToggleButton10.Status.Caption:=DataModule1.ADOQuery86.Fields[59].AsString;

  AdvSmoothToggleButton11.Caption:=DataModule1.ADOQuery86.Fields[62].AsString;

  AdvSmoothToggleButton11.Visible:=DataModule1.ADOQuery86.Fields[63].AsBoolean;

  AdvSmoothToggleButton11.Status.Appearance.Fill.Color:=stringtocolor(DataModule1.ADOQuery86.Fields[64].AsString);

  Chart1.Series[10].Color:=stringtocolor(DataModule1.ADOQuery86.Fields[64].AsString);

  AdvSmoothToggleButton11.Status.Caption:=DataModule1.ADOQuery86.Fields[65].AsString;

end;

 

procedure TSCADA_FRM.ANLIK_OPCDatachange(Sender: TObject;

  ItemList: TdOPCItemList);

var

i:integer;

begin

i:=0;

try

begin

 

  DataModule1.ADOQuery24.Close;

  DataModule1.ADOQuery24.SQL.Clear;

  DataModule1.ADOQuery24.SQL.Add(‘UPDATE ANLIK SET zaman=”’+FormatDateTime(‘yyyy-mm-dd hh:mm:ss’,now)+”’ WHERE id = ‘+””+’1’+””);

  DataModule1.ADOQuery24.ExecSQL;

 

  DataModule1.ADOQuery28.First;

  while not DataModule1.ADOQuery28.Eof do

  begin

  if ustrFullTrim(SCADA_FRM.ANLIK_OPC.OPCGroups[0].OPCItems.Items[i].Value)<>” then

  begin

  DataModule1.ADOQuery24.Close;

  DataModule1.ADOQuery24.SQL.Clear;

  DataModule1.ADOQuery24.SQL.Add(‘UPDATE ANLIK SET ‘+DataModule1.ADOQuery28.Fields[0].AsString+’=”’+ustrFullTrim(SCADA_FRM.ANLIK_OPC.OPCGroups[0].OPCItems.Items[i].Value)+”’ WHERE id = ‘+””+’1’+””);

  DataModule1.ADOQuery24.ExecSQL;

  end;

  DataModule1.ADOQuery28.Next;

  i:=i+1;

  end;

 

end;//try

except

end;

end;

 

procedure TSCADA_FRM.suiButton67Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>ALARM_KAYIT then

begin

AYARLAR.ActivePage:=ALARM_KAYIT;

suiButton67.Font.Color:=clred;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton68Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>KULLANICILAR then

begin

AYARLAR.ActivePage:=KULLANICILAR;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clred;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton69Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>TRENDS then

begin

AYARLAR.ActivePage:=TRENDS;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clred;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton70Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>TRENDS_10M then

begin

AYARLAR.ActivePage:=TRENDS_10M;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clred;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton71Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>TRENDS_1H then

begin

AYARLAR.ActivePage:=TRENDS_1H;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clblack;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clred;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;

procedure TSCADA_FRM.suiButton72Click(Sender: TObject);

var

SIRA:string;

begin

  DataModule1.ADOQuery4.Close;

  DataModule1.ADOQuery4.SQL.Clear;

  DataModule1.ADOQuery4.SQL.Add(‘SELECT * FROM KULLANICI’);

  DataModule1.ADOQuery4.SQL.Add(‘WHERE KULLANICI_ADI = ‘+””+SCADA_FRM.KULLANICI_ADI.Text+””);

  DataModule1.ADOQuery4.Open;

  if DataModule1.ADOQuery4.RecordCount=0 then

  begin

                   DataModule1.ADOQuery4.Close;

                   DataModule1.ADOQuery4.SQL.Clear;

                   DataModule1.ADOQuery4.SQL.Text :=’select * from KULLANICI ORDER BY id DESC’;

                   DataModule1.ADOQuery4.Open;

if DataModule1.ADOQuery4.Fields[0].AsString=” then SIRA:=’1′ else SIRA:=inttostr(strtoint(DataModule1.ADOQuery4.Fields[0].AsString)+1);

                   DataModule1.ADOQuery2.Close;

                   DataModule1.ADOQuery2.SQL.Clear;

                   DataModule1.ADOQuery2.SQL.Add(‘Insert into KULLANICI(id,AD,SOYAD,KULLANICI_ADI,SIFRE,YETKI) values (‘+

                   ””+SIRA+”’,’+””+AD.Text+”’,’+””+SOYAD.Text+”’,’+””+KULLANICI_ADI.Text+”’,’+””+SIFRE.Text+”’,’+””+YETKI_G.Text+”’)’);

                   DataModule1.ADOQuery2.ExecSQL;

                   DataModule1.ADOQuery2.Close;

                   DataModule1.ADOQuery2.SQL.Clear;

                   DataModule1.ADOQuery2.SQL.Text :=’select * from KULLANICI ORDER BY id DESC’;

                   DataModule1.ADOQuery2.Open;

                   KULLANICI_ADI.Text:=”;

 

end else showmessage(‘Bu kullanıcı adı daha önce ‘+DataModule1.ADOQuery4.Fields[0].AsString+ ‘ sıra numaralı kayıtta kullanılmıştır.’);

end;

 

procedure TSCADA_FRM.suiButton73Click(Sender: TObject);

begin

 

  DataModule1.ADOQuery2.Close;

  DataModule1.ADOQuery2.SQL.Clear;

  DataModule1.ADOQuery2.SQL.Add(‘UPDATE KULLANICI SET AD=”’+AD.Text+”’,’+

                               ‘SOYAD=”’+SOYAD.Text+”’,’+

                               ‘KULLANICI_ADI=”’+KULLANICI_ADI.Text+”’,’+

                               ‘SIFRE=”’+SIFRE.Text+”’,’+

                               ‘YETKI=”’+YETKI_G.Text+”’ WHERE id = ‘+””+KULLANICI_ID.Caption+””);

  DataModule1.ADOQuery2.ExecSQL;

 

  DataModule1.ADOQuery2.ExecSQL;

  DataModule1.ADOQuery2.Close;

  DataModule1.ADOQuery2.SQL.Clear;

  DataModule1.ADOQuery2.SQL.Text :=’select * from KULLANICI ORDER BY ID DESC’;

  DataModule1.ADOQuery2.Open;

end;

 

procedure TSCADA_FRM.suiButton74Click(Sender: TObject);

begin

if AYARLAR.ActivePage<>STATUS_AYARLARI then

begin

AYARLAR.ActivePage:=STATUS_AYARLARI;

suiButton67.Font.Color:=clblack;

suiButton68.Font.Color:=clblack;

suiButton74.Font.Color:=clred;

suiButton69.Font.Color:=clblack;

suiButton70.Font.Color:=clblack;

suiButton71.Font.Color:=clblack;

AdvGlassButton6.Font.Color:=clblack;

AdvGlassButton7.Font.Color:=clblack;

AdvGlassButton8.Font.Color:=clblack;

end;

end;

 

procedure TSCADA_FRM.suiButton75Click(Sender: TObject);

var

SIRA:string;

t:string;         //4 37 // 3 19 // 9 38

begin

  DataModule1.ADOQuery37.Close;

  DataModule1.ADOQuery37.SQL.Clear;

  DataModule1.ADOQuery37.SQL.Add(‘SELECT * FROM DURUMLAR’);

  DataModule1.ADOQuery37.SQL.Add(‘WHERE MESSAGE_TAG = ‘+””+SCADA_FRM.DURUM_TAG.Text+””);

  DataModule1.ADOQuery37.SQL.Add(‘AND MESSAGE_BIT = ‘+””+SCADA_FRM.DURUM_BIT.Text+””);

  DataModule1.ADOQuery37.Open;

  if DataModule1.ADOQuery37.RecordCount=0 then

  begin

                   DataModule1.ADOQuery37.Close;

                   DataModule1.ADOQuery37.SQL.Clear;

                   DataModule1.ADOQuery37.SQL.Text :=’select * from DURUMLAR ORDER BY NUMBER DESC’;

                   DataModule1.ADOQuery37.Open;

if DataModule1.ADOQuery37.Fields[0].AsString=” then SIRA:=’1′ else SIRA:=inttostr(strtoint(DataModule1.ADOQuery37.Fields[0].AsString)+1);

                   DataModule1.ADOQuery19.Close;

                   DataModule1.ADOQuery19.SQL.Clear;

                   DataModule1.ADOQuery19.SQL.Add(‘Insert into DURUMLAR(NUMBER,MESSAGE_TAG,MESSAGE_BIT,AREA,EVENT1,EVENT1_DURUM,EVENT2,EVENT2_DURUM) values (‘+

                   ””+SIRA+”’,’+””+DURUM_TAG.Text+”’,’+””+DURUM_BIT.Text+”’,’+””+DURUM_AREA.Text+”’,’+””+DURUM_EVENT1.Text+”’,’+””+DURUM1.Text+”’,’+””+DURUM_EVENT2.Text+”’,’+””+DURUM2.Text+”’)’);

                   DataModule1.ADOQuery19.ExecSQL;

                   DataModule1.ADOQuery19.Close;

                   DataModule1.ADOQuery19.SQL.Clear;

                   DataModule1.ADOQuery19.SQL.Text :=’select * from DURUMLAR ORDER BY NUMBER DESC’;

                   DataModule1.ADOQuery19.Open;

                   DURUM_EVENT1.Text:=”;

                   DURUM_EVENT2.Text:=”;

 

                   DataModule1.ADOQuery38.Close;

                   DataModule1.ADOQuery38.SQL.Clear;

                   DataModule1.ADOQuery38.SQL.Text :=’select * from STATUS_TAGS’;

                   DataModule1.ADOQuery38.SQL.Add(‘WHERE TAG = ‘+””+DURUM_TAG.Text+””);

                   DataModule1.ADOQuery38.Open;

                   if DataModule1.ADOQuery38.RecordCount=0 then

                   begin

                   DataModule1.ADOQuery38.Close;

                   DataModule1.ADOQuery38.SQL.Clear;

                   DataModule1.ADOQuery38.SQL.Add(‘Insert into STATUS_TAGS(TAG) values (‘+

                   ””+DURUM_TAG.Text+”’)’);

                   DataModule1.ADOQuery38.ExecSQL;

                   t:=ustrFullTrim(DURUM_TAG.Text);

                   opc3.OPCGroups[0].OPCItems.additem(t);

                   end;

end else showmessage(‘Daha önce ‘+DataModule1.ADOQuery37.Fields[0].AsString+ ‘ sıra numaralı eventta bu bit kullanılmıştır.’);

end;

 

procedure TSCADA_FRM.DURUM_TAGClick(Sender: TObject);

begin

DURUM_TAG.Text := dOPCBrowseItemDlg(OPC3.Browser);

end;

 

procedure TSCADA_FRM.suiButton76Click(Sender: TObject);

var

t:string;

update_tag:string;

i:integer;

begin

update_tag:=DataModule1.ADOQuery19.Fields[1].AsString;         //4 37 // 3 19 // 9 38

 

  DataModule1.ADOQuery19.Close;

  DataModule1.ADOQuery19.SQL.Clear;

  DataModule1.ADOQuery19.SQL.Add(‘UPDATE DURUMLAR SET MESSAGE_TAG=”’+DURUM_TAG.Text+”’,’+

                               ‘MESSAGE_BIT=”’+DURUM_BIT.Text+”’,’+

                               ‘AREA=”’+DURUM_AREA.Text+”’,’+

                               ‘EVENT1=”’+DURUM_EVENT1.Text+”’,’+

                               ‘EVENT1_DURUM=”’+DURUM1.Text+”’,’+

                               ‘EVENT2=”’+DURUM_EVENT2.Text+”’,’+

                               ‘EVENT2_DURUM=”’+DURUM2.Text+”’ WHERE NUMBER = ‘+””+DURUM_NO.Caption+””);

  DataModule1.ADOQuery19.ExecSQL;

 

  DataModule1.ADOQuery37.Close;

  DataModule1.ADOQuery37.SQL.Clear;

  DataModule1.ADOQuery37.SQL.Text :=’select * from DURUMLAR’;

  DataModule1.ADOQuery37.SQL.Add(‘WHERE MESSAGE_TAG = ‘+””+update_tag+””);

  DataModule1.ADOQuery37.Open;

 

  if (DataModule1.ADOQuery37.RecordCount=0) then

  begin

  DataModule1.ADOQuery38.Close;

  DataModule1.ADOQuery38.SQL.Clear;

  DataModule1.ADOQuery38.SQL.Add(‘Delete from STATUS_TAGS’);

  DataModule1.ADOQuery38.SQL.Add(‘WHERE TAG = ‘+””+update_tag+””);

  DataModule1.ADOQuery38.ExecSQL;

  end;

 

  DataModule1.ADOQuery38.Close;

  DataModule1.ADOQuery38.SQL.Clear;

  DataModule1.ADOQuery38.SQL.Text :=’select * from STATUS_TAGS’;

  DataModule1.ADOQuery38.SQL.Add(‘WHERE TAG = ‘+””+DURUM_TAG.Text+””);

  DataModule1.ADOQuery38.Open;

  if DataModule1.ADOQuery38.RecordCount=0 then

  begin

  DataModule1.ADOQuery38.Close;

  DataModule1.ADOQuery38.SQL.Clear;

  DataModule1.ADOQuery38.SQL.Add(‘Insert into STATUS_TAGS(TAG) values (‘+

  ””+DURUM_TAG.Text+”’)’);

  DataModule1.ADOQuery38.ExecSQL;

  t:=ustrFullTrim(DURUM_TAG.Text);

  opc3.OPCGroups[0].OPCItems.additem(t);

  end;

 

  DataModule1.ADOQuery19.ExecSQL;

  DataModule1.ADOQuery19.Close;

  DataModule1.ADOQuery19.SQL.Clear;

  DataModule1.ADOQuery19.SQL.Text :=’select * from DURUMLAR ORDER BY NUMBER DESC’;

  DataModule1.ADOQuery19.Open;

 

  for I := 0 to 7 do

begin

  if xdbgrid2.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery19.Close;

DataModule1.ADOQuery19.SQL.Clear;

DataModule1.ADOQuery19.SQL.Add(‘select * from DURUMLAR’);

DataModule1.ADOQuery19.SQL.Add(‘ORDER BY ‘+kolontitle1+’ DESC’);

DataModule1.ADOQuery19.Open;

 end;

  if xdbgrid4.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery19.Close;

DataModule1.ADOQuery19.SQL.Clear;

DataModule1.ADOQuery19.SQL.Add(‘select * from DURUMLAR’);

DataModule1.ADOQuery19.SQL.Add(‘ORDER BY ‘+kolontitle1+’ ASC’);

DataModule1.ADOQuery19.Open;

end;

end;

end;

 

procedure TSCADA_FRM.XDBGrid2KeyPress(Sender: TObject; var Key: Char);

var

I:integer;

begin

if (ord(Key)=27) then

begin

                   DataModule1.ADOQuery19.Close;

                   DataModule1.ADOQuery19.SQL.Clear;

                   DataModule1.ADOQuery19.SQL.Text :=’select * from DURUMLAR ORDER BY NUMBER DESC’;

                   DataModule1.ADOQuery19.Open;

                   DURUM_EVENT1.Text:=”;

                   DURUM_EVENT2.Text:=”;

end else

begin

for I := 0 to 7 do

begin

  if xdbgrid2.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery19.Close;

DataModule1.ADOQuery19.SQL.Clear;

DataModule1.ADOQuery19.SQL.Add(‘select * from DURUMLAR’);

DataModule1.ADOQuery19.SQL.Add(‘WHERE ‘+kolontitle1+’ LIKE ‘+#39+key+’%’+#39);

DataModule1.ADOQuery19.SQL.Add(‘ORDER BY ‘+kolontitle1+’ DESC’);

DataModule1.ADOQuery19.Open;

 end;

  if xdbgrid2.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery19.Close;

DataModule1.ADOQuery19.SQL.Clear;

DataModule1.ADOQuery19.SQL.Add(‘select * from DURUMLAR’);

DataModule1.ADOQuery19.SQL.Add(‘WHERE ‘+kolontitle1+’ LIKE ‘+#39+key+’%’+#39);

DataModule1.ADOQuery19.SQL.Add(‘ORDER BY ‘+kolontitle1+’ ASC’);

DataModule1.ADOQuery19.Open;

end;

end;

end;

end;

 

procedure TSCADA_FRM.XDBGrid2TitleClick(Column: TXColumn);

var

I:integer;

begin

kolontitle1:=Column.FieldName;

for I := 0 to 7 do

begin

  if xdbgrid2.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery19.Close;

DataModule1.ADOQuery19.SQL.Clear;

DataModule1.ADOQuery19.SQL.Add(‘select * from DURUMLAR’);

DataModule1.ADOQuery19.SQL.Add(‘ORDER BY ‘+Column.FieldName+’ DESC’);

DataModule1.ADOQuery19.Open;

 end;

  if xdbgrid2.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery19.Close;

DataModule1.ADOQuery19.SQL.Clear;

DataModule1.ADOQuery19.SQL.Add(‘select * from DURUMLAR’);

DataModule1.ADOQuery19.SQL.Add(‘ORDER BY ‘+Column.FieldName+’ ASC’);

DataModule1.ADOQuery19.Open;

end;

end;

end;

 

procedure TSCADA_FRM.XDBGrid1KeyPress(Sender: TObject; var Key: Char);

var

I:integer;

begin

if (ord(Key)=27) then

begin

                   DataModule1.ADOQuery2.Close;

                   DataModule1.ADOQuery2.SQL.Clear;

                   DataModule1.ADOQuery2.SQL.Text :=’select * from KULLANICI ORDER BY id DESC’;

                   DataModule1.ADOQuery2.Open;

                   KULLANICI_ADI.Text:=”;

end else

begin

for I := 0 to 5 do

begin

  if xdbgrid1.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery2.Close;

DataModule1.ADOQuery2.SQL.Clear;

DataModule1.ADOQuery2.SQL.Add(‘select * from KULLANICI’);

DataModule1.ADOQuery2.SQL.Add(‘WHERE ‘+kolontitle2+’ LIKE ‘+#39+key+’%’+#39);

DataModule1.ADOQuery2.SQL.Add(‘ORDER BY ‘+kolontitle2+’ DESC’);

DataModule1.ADOQuery2.Open;

 end;

  if xdbgrid1.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery2.Close;

DataModule1.ADOQuery2.SQL.Clear;

DataModule1.ADOQuery2.SQL.Add(‘select * from KULLANICI’);

DataModule1.ADOQuery2.SQL.Add(‘WHERE ‘+kolontitle2+’ LIKE ‘+#39+key+’%’+#39);

DataModule1.ADOQuery2.SQL.Add(‘ORDER BY ‘+kolontitle+’ ASC’);

DataModule1.ADOQuery2.Open;

end;

end;

end;

end;

 

procedure TSCADA_FRM.XDBGrid1TitleClick(Column: TXColumn);

var

I:integer;

begin

kolontitle:=Column.FieldName;

for I := 0 to 5 do

begin

  if xdbgrid1.Columns[I].Title.marker=tmDescend then

  begin

DataModule1.ADOQuery2.Close;

DataModule1.ADOQuery2.SQL.Clear;

DataModule1.ADOQuery2.SQL.Add(‘select * from KULLANICI’);

DataModule1.ADOQuery2.SQL.Add(‘ORDER BY ‘+Column.FieldName+’ DESC’);

DataModule1.ADOQuery2.Open;

 end;

  if xdbgrid1.Columns[I].Title.marker=tmAscend then

  begin

DataModule1.ADOQuery2.Close;

DataModule1.ADOQuery2.SQL.Clear;

DataModule1.ADOQuery2.SQL.Add(‘select * from KULLANICI’);

DataModule1.ADOQuery2.SQL.Add(‘ORDER BY ‘+Column.FieldName+’ ASC’);

DataModule1.ADOQuery2.Open;

end;

end;

end;

 

procedure TSCADA_FRM.KUMANDATimer(Sender: TObject);

var

i,datatype:integer;

begin

KUMANDA.Enabled:=false;

try

begin

  DataModule1.ADOQuery40.Close;

  DataModule1.ADOQuery40.SQL.Clear;

  DataModule1.ADOQuery40.SQL.Text :=’select * from KUMANDA’;

  DataModule1.ADOQuery40.Open;

  for i:=2 to ANLIK_OPC.OPCGroups[0].OPCItems.count-1 do

  begin

  if DataModule1.ADOQuery40.Fields[i].AsString <> ” then

    begin

      datatype:=ANLIK_OPC.OPCGroups[0].OPCItems.Items[i-2].CanonicalDatatype;

      if ((ANLIK_OPC.OPCGroups[0].OPCItems.Items[i-2].IsGoodQuality) and (KUMANDA.Interval<500)and (datatype=11)) then ANLIK_OPC.OPCGroups[0].OPCItems.Items[i-2].WriteSync(DataModule1.ADOQuery40.Fields[i].AsBoolean);

      if ((ANLIK_OPC.OPCGroups[0].OPCItems.Items[i-2].IsGoodQuality) and (KUMANDA.Interval<500)and (datatype=18)) then ANLIK_OPC.OPCGroups[0].OPCItems.Items[i-2].WriteSync(DataModule1.ADOQuery40.Fields[i].AsInteger);

      DataModule1.ADOQuery41.Close;

      DataModule1.ADOQuery41.SQL.Clear;

      DataModule1.ADOQuery41.SQL.Text :=’select * from ANLIK_TAGS WHERE id=’+inttostr(i-2);

      DataModule1.ADOQuery41.Open;

      DataModule1.ADOQuery42.Close;

      DataModule1.ADOQuery42.SQL.Clear;

      DataModule1.ADOQuery42.SQL.Add(‘UPDATE KUMANDA SET ‘+DataModule1.ADOQuery41.Fields[4].AsString+’=NULL WHERE id = ‘+””+’1’+””);

      DataModule1.ADOQuery42.ExecSQL;

{      DataModule1.ADOQuery42.Close;

      DataModule1.ADOQuery42.SQL.Clear;

      DataModule1.ADOQuery42.SQL.Add(‘UPDATE KUMANDA SET ‘+DataModule1.ADOQuery41.Fields[4].AsString+’=NULL WHERE id = ‘+””+’2’+””);

      DataModule1.ADOQuery42.ExecSQL; }

    end;

  end; //for

 

end;//try

except

end;

KUMANDA.Interval:=300;

KUMANDA.Enabled:=true;

end;

 

procedure TSCADA_FRM.suiButton1Click(Sender: TObject);

begin

DataModule1.ADOQuery12.Close;

DataModule1.ADOQuery12.SQL.Clear;

DataModule1.ADOQuery12.SQL.Add(‘SELECT * FROM KULLANICI’);

DataModule1.ADOQuery12.SQL.Add(‘WHERE KULLANICI_ADI = ‘+””+edit1.Text+””);

DataModule1.ADOQuery12.Open;

if DataModule1.ADOQuery12.RecordCount<>0 then

begin

if ‘303042’=ustrFullTrim(DataModule1.ADOQuery12.Fields[4].AsString) then

begin

if edit2.Text=’*********’ then

begin

showmessage(‘Lisans aktifleştirildi’);

DataModule1.ADOQuery33.Close;

DataModule1.ADOQuery33.SQL.Clear;

DataModule1.ADOQuery33.SQL.Add(‘UPDATE KULLANICI SET SIFRE=”’+’*********+”’ WHERE KULLANICI_ADI = ‘+””+edit1.Text+””);

DataModule1.ADOQuery33.ExecSQL;

edit2.Text:=’123456′;

DataModule1.ADOQuery12.Close;

DataModule1.ADOQuery12.SQL.Clear;

DataModule1.ADOQuery12.SQL.Add(‘SELECT * FROM KULLANICI’);

DataModule1.ADOQuery12.SQL.Add(‘WHERE KULLANICI_ADI = ‘+””+edit1.Text+””);

DataModule1.ADOQuery12.Open;

end;

end else

begin

if edit2.Text=ustrFullTrim(DataModule1.ADOQuery12.Fields[4].AsString) then

begin

 

DataModule1.ADOQuery2.Close;

DataModule1.ADOQuery2.SQL.Clear;

DataModule1.ADOQuery2.SQL.Add(‘SELECT * FROM KULLANICI’);

DataModule1.ADOQuery2.Open;

 

kullanici:=ustrFullTrim(DataModule1.ADOQuery12.Fields[3].AsString);

yetki:=ustrFullTrim(DataModule1.ADOQuery12.Fields[5].AsString);

JvTransparentButton4.Caption:=KULLANICI;

suiButton2.Enabled:=true;

suiButton3.Enabled:=true;

suiButton4.Enabled:=true;

suiButton6.Enabled:=true;

suiButton7.Enabled:=true;

suiButton8.Enabled:=true;

suiButton9.Enabled:=true;

AdvGlassButton3.Enabled:=true;

AdvGlassButton4.Enabled:=true;

AdvGlassButton5.Enabled:=true;

suiButton2.Font.Color:=clblack;

suiButton3.Font.Color:=clblack;

suiButton4.Font.Color:=clblack;

suiButton6.Font.Color:=clblack;

suiButton7.Font.Color:=clblack;

suiButton8.Font.Color:=clblack;

suiButton9.Font.Color:=clblack;

AdvGlassButton3.Font.Color:=clblack;

AdvGlassButton4.Font.Color:=clblack;

AdvGlassButton5.Font.Color:=clred;

PAGE.ActivePage:=PAGE_1;

end else Application.MessageBox(‘Şifrenizi yanlış girdiniz!’,’Login error’, MB_OK);

end;

end else Application.MessageBox(‘Kullanıcı kayıtlı değil!’,’Login error’, MB_OK);

if (yetki=’ADMIN’) then

begin

PopupMenu1.AutoPopup:=true;

dxBarManager1Bar1.Visible:=true;

dxBarManager1Bar2.Visible:=true;

StatusBar2.Visible:=true;

 

   DataModule1.ADOQuery81.Close;

   DataModule1.ADOQuery81.SQL.Clear;

   DataModule1.ADOQuery81.SQL.Add(‘SELECT * FROM IMG’);

   DataModule1.ADOQuery81.Open;

   DataModule1.ADOQuery81.First;

  while not DataModule1.ADOQuery81.Eof do

  begin

  img_comp[DataModule1.ADOQuery81.Fields[0].AsInteger].Visible:=true;

  DataModule1.ADOQuery81.Next;

  end;

 

   DataModule1.ADOQuery81.Close;

   DataModule1.ADOQuery81.SQL.Clear;

   DataModule1.ADOQuery81.SQL.Add(‘SELECT * FROM ANIM’);

   DataModule1.ADOQuery81.Open;

   DataModule1.ADOQuery81.First;

  while not DataModule1.ADOQuery81.Eof do

  begin

  anim_comp[DataModule1.ADOQuery81.Fields[0].AsInteger].Visible:=true;

  DataModule1.ADOQuery81.Next;

  end;

 

   DataModule1.ADOQuery82.Close;

   DataModule1.ADOQuery82.SQL.Clear;

   DataModule1.ADOQuery82.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery82.Open;

   DataModule1.ADOQuery82.First;

  while not DataModule1.ADOQuery82.Eof do

  begin

  out_panel_comp[DataModule1.ADOQuery82.Fields[0].AsInteger].Enabled:=true;

  DataModule1.ADOQuery82.Next;

  end;

 

end else

begin

PopupMenu1.AutoPopup:=false;

dxBarManager1Bar2.Visible:=false;

dxBarManager1Bar1.Visible:=false;

StatusBar2.Visible:=false;

 

   DataModule1.ADOQuery82.Close;

   DataModule1.ADOQuery82.SQL.Clear;

   DataModule1.ADOQuery82.SQL.Add(‘SELECT * FROM INOUTPANEL WHERE inout_type = ‘+””+’OUT’+””);

   DataModule1.ADOQuery82.Open;

   DataModule1.ADOQuery82.First;

  while not DataModule1.ADOQuery82.Eof do

  begin

  out_panel_comp[DataModule1.ADOQuery82.Fields[0].AsInteger].Enabled:=false;

  DataModule1.ADOQuery82.Next;

  end;

end;

end;

 

procedure TSCADA_FRM.TRENDS_TAGClick(Sender: TObject);

begin

TRENDS_TAG.Text := dOPCBrowseItemDlg(OPC3.Browser);

end;

 

procedure TSCADA_FRM.suiButton15Click(Sender: TObject);

var

datatype: integer;

dtype,tag: string;

begin

if TRENDS_TAG.Text=” then showmessage(‘TAG SEÇMEDİNİZ’) else

begin

  DataModule1.ADOQuery44.Close;

  DataModule1.ADOQuery44.SQL.Clear;

  DataModule1.ADOQuery44.SQL.Add(‘SELECT * FROM TRENDS_TAGS’);

  DataModule1.ADOQuery44.SQL.Add(‘WHERE TAG = ‘+””+SCADA_FRM.TRENDS_TAG.Text+””);

  DataModule1.ADOQuery44.Open;

  if DataModule1.ADOQuery44.RecordCount=0 then

  begin

                   datatype:=SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[Tag_No(TRENDS_TAG.Text)].CanonicalDatatype;

                   case datatype of

                   18: dtype:=’ integer ‘;

                   4 : dtype:=’ real ‘;

                   11: dtype:=’ bit ‘;

                   else  dtype:=’ real ‘;

                   end;

 

                   DataModule1.ADOQuery43.Close;

                   DataModule1.ADOQuery43.SQL.Clear;

                   DataModule1.ADOQuery43.SQL.Add(‘Insert into TRENDS_TAGS(TAG,TIP) values (‘+

                   ””+TRENDS_TAG.Text+”’,’+

                   ””+dtype+”’)’);

                   DataModule1.ADOQuery43.ExecSQL;

                   DataModule1.ADOQuery43.Close;

                   DataModule1.ADOQuery43.SQL.Clear;

                   DataModule1.ADOQuery43.SQL.Text :=’select * from TRENDS_TAGS ORDER BY TAG DESC’;

                   DataModule1.ADOQuery43.Open;

 

                   tag:=stringreplace(TRENDS_TAG.Text, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

                   DataModule1.ADOQuery49.Close();

                   DataModule1.ADOQuery49.SQL.Clear();

                   DataModule1.ADOQuery49.SQL.Add(‘ALTER TABLE TRENDS ADD ‘+tag+dtype);

                   DataModule1.ADOQuery49.ExecSQL();

 

                   TRENDS_TAG.Text:=”;

  end else showmessage(‘Daha önce bu tag kullanılmıştır.’);

end;

end;

 

procedure TSCADA_FRM.TRENDS_10M_TAGClick(Sender: TObject);

begin

TRENDS_10M_TAG.Text := dOPCBrowseItemDlg(OPC3.Browser);

end;

 

procedure TSCADA_FRM.suiButton16Click(Sender: TObject);

var

datatype: integer;

dtype,tag: string;

begin

if TRENDS_10M_TAG.Text=” then showmessage(‘TAG SEÇMEDİNİZ’) else

begin

  DataModule1.ADOQuery46.Close;

  DataModule1.ADOQuery46.SQL.Clear;

  DataModule1.ADOQuery46.SQL.Add(‘SELECT * FROM TRENDS_10M_TAGS’);

  DataModule1.ADOQuery46.SQL.Add(‘WHERE TAG = ‘+””+SCADA_FRM.TRENDS_10M_TAG.Text+””);

  DataModule1.ADOQuery46.Open;

  if DataModule1.ADOQuery46.RecordCount=0 then

  begin

                   datatype:=SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[Tag_No(TRENDS_10M_TAG.Text)].CanonicalDatatype;

                   case datatype of

                   18: dtype:=’ integer ‘;

                   4 : dtype:=’ real ‘;

                   11: dtype:=’ bit ‘;

                   else  dtype:=’ real ‘;

                   end;

 

                   DataModule1.ADOQuery45.Close;

                   DataModule1.ADOQuery45.SQL.Clear;

                   DataModule1.ADOQuery45.SQL.Add(‘Insert into TRENDS_10M_TAGS(TAG,TIP) values (‘+

                   ””+TRENDS_10M_TAG.Text+”’,’+

                   ””+dtype+”’)’);

                   DataModule1.ADOQuery45.ExecSQL;

                   DataModule1.ADOQuery45.Close;

                   DataModule1.ADOQuery45.SQL.Clear;

                   DataModule1.ADOQuery45.SQL.Text :=’select * from TRENDS_10M_TAGS ORDER BY TAG DESC’;

                   DataModule1.ADOQuery45.Open;

 

                   tag:=stringreplace(TRENDS_10M_TAG.Text, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

                   DataModule1.ADOQuery50.Close();

                   DataModule1.ADOQuery50.SQL.Clear();

                   DataModule1.ADOQuery50.SQL.Add(‘ALTER TABLE TRENDS_10M ADD ‘+tag+dtype);

                   DataModule1.ADOQuery50.ExecSQL();

 

                   TRENDS_10M_TAG.Text:=”;

  end else showmessage(‘Daha önce bu tag kullanılmıştır.’);

end;

end;

 

procedure TSCADA_FRM.suiButton59Click(Sender: TObject);

var

datatype: integer;

dtype,tag: string;

begin

if TRENDS_1H_TAG.Text=” then showmessage(‘TAG SEÇMEDİNİZ’) else

begin

  DataModule1.ADOQuery48.Close;

  DataModule1.ADOQuery48.SQL.Clear;

  DataModule1.ADOQuery48.SQL.Add(‘SELECT * FROM TRENDS_1H_TAGS’);

  DataModule1.ADOQuery48.SQL.Add(‘WHERE TAG = ‘+””+SCADA_FRM.TRENDS_1H_TAG.Text+””);

  DataModule1.ADOQuery48.Open;

  if DataModule1.ADOQuery48.RecordCount=0 then

  begin

                   datatype:=SCADA_FRM.OPC1.OPCGroups[0].OPCItems.Items[Tag_No(TRENDS_1H_TAG.Text)].CanonicalDatatype;

                   case datatype of

                   18: dtype:=’ integer ‘;

                   4 : dtype:=’ real ‘;

                   11: dtype:=’ bit ‘;

                   else  dtype:=’ real ‘;

                   end;

                   DataModule1.ADOQuery47.Close;

                   DataModule1.ADOQuery47.SQL.Clear;

                   DataModule1.ADOQuery47.SQL.Add(‘Insert into TRENDS_1H_TAGS(TAG,TIP) values (‘+

                   ””+TRENDS_1H_TAG.Text+”’,’+

                   ””+dtype+”’)’);

                   DataModule1.ADOQuery47.ExecSQL;

                   DataModule1.ADOQuery47.Close;

                   DataModule1.ADOQuery47.SQL.Clear;

                   DataModule1.ADOQuery47.SQL.Text :=’select * from TRENDS_1H_TAGS ORDER BY TAG DESC’;

                   DataModule1.ADOQuery47.Open;

 

                   tag:=stringreplace(TRENDS_1H_TAG.Text, ‘.’, ‘_’,[rfReplaceAll, rfIgnoreCase]);

                   DataModule1.ADOQuery51.Close();

                   DataModule1.ADOQuery51.SQL.Clear();

                   DataModule1.ADOQuery51.SQL.Add(‘ALTER TABLE TRENDS_1H ADD ‘+tag+dtype);

                   DataModule1.ADOQuery51.ExecSQL();

 

                   TRENDS_1H_TAG.Text:=”;

  end else showmessage(‘Daha önce bu tag kullanılmıştır.’);

end;

end;

 

procedure TSCADA_FRM.TRENDS_1H_TAGClick(Sender: TObject);

begin

TRENDS_1H_TAG.Text := dOPCBrowseItemDlg(OPC3.Browser);

end;

 

procedure TSCADA_FRM.VrSwitch2Change(Sender: TObject);

begin

if led12.ColorIndex=2 then begin

try

begin

if VrSwitch2.Offset=1 then begin

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_KAMERA2_ONOFF’)].WriteSync(1); VrSwitch2.Color:=clLime end else begin  //Camera 2 On

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_KAMERA2_ONOFF’)].WriteSync(0); VrSwitch2.Color:=clRED; //Camera 2 Off

end;

end;

except;

end;

end else showmessage(‘PLC bağlantısı yok’);

end;

 

procedure TSCADA_FRM.VrSwitch1Change(Sender: TObject);

begin

if led12.ColorIndex=2 then begin

try

begin

 if VrSwitch1.Offset=1 then  begin

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_LAZER_ONOFF’)].WriteSync(1); VrSwitch1.Color:=clLime end else begin   //lazer On

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_LAZER_ONOFF’)].WriteSync(0); VrSwitch1.Color:=clRED; //lazer Off

end;

end;

except;

end;

end else showmessage(‘PLC bağlantısı yok’);

end;

 

procedure TSCADA_FRM.VrSwitch3Change(Sender: TObject);

begin

if led12.ColorIndex=2 then begin

try

begin

if VrSwitch3.Offset=1 then  begin

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_CAP_ONOFF’)].WriteSync(1); VrSwitch3.Color:=clLime end else begin   //Cap Off

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_CAP_ONOFF’)].WriteSync(0); VrSwitch3.Color:=clRED; //Cap 2 On

end;

end;

except;

end;

end else showmessage(‘PLC bağlantısı yok’);

end;

 

procedure TSCADA_FRM.VrSwitch4Change(Sender: TObject);

begin

if led12.ColorIndex=2 then begin

try

begin

if VrSwitch4.Offset=1 then  begin

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_KAMERA1_ONOFF’)].WriteSync(1); VrSwitch4.Color:=clLime end else begin  //Camera 2 Off

opc1.OPCGroups[0].OPCItems.Items[Tag_No(‘ATESCI.PLC1.AYARLAR_KAMERA1_ONOFF’)].WriteSync(0); VrSwitch4.Color:=clRED; //Camera 2 On

end;

end;

except;

end;

end else showmessage(‘PLC bağlantısı yok’);

end;

 

procedure TSCADA_FRM.suiButton83Click(Sender: TObject);

begin

WinExec(‘C:\Program Files (x86)\KEYENCE\LJ-Navigator 2\LJ-Navigator2.exe’,sw_ShowNormal);

end;

 

procedure TSCADA_FRM.suiButton14Click(Sender: TObject);

begin

WinExec(‘C:\Program Files (x86)\KEYENCE\LS-Navigator 2\LS-Navigator2.exe’,sw_ShowNormal);

end;

 

procedure TSCADA_FRM.suiButton28Click(Sender: TObject);

begin

WinExec(‘C:\Program Files (x86)\KEYENCE\CV-X Series Terminal-Software Ver.4.0\bin\CV-X Series Terminal-Software.exe’,sw_ShowNormal);

end;

 

procedure TSCADA_FRM.TabSheet13Show(Sender: TObject);

begin

NxDatePicker1.Date:=now;

NxDatePicker2.Date:=now+1;

end;

 

procedure TSCADA_FRM.Timer1Timer(Sender: TObject);

begin

copy_block:=false;

Timer1.Enabled:=false;

end;

 

procedure TSCADA_FRM.Pan1Click(Sender: TObject);

begin

COPY:=false;

btn2_form_clicked :=True;

in_panel_form_clicked :=True;

text_label_form_clicked :=True;

panel_form_clicked :=True;

led_form_clicked :=True;

shape_form_clicked :=True;

sekil_form_clicked :=True;

img_form_clicked :=True;

anim_form_clicked :=True;

arrow_form_clicked :=True;

kadran_form_clicked :=True;

termo_form_clicked :=True;

end;

 

procedure TSCADA_FRM.Pan1MouseEnter(Sender: TObject);

begin

if clip then

begin

clip_out:=true;

 

        if (created_nesne.ClassName = ‘TAdvGlassButton’) and BUTON_EKLE then

        begin

        (created_nesne as TAdvGlassButton).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_parent=”’+(created_nesne as TAdvGlassButton).Parent.Name+”’ WHERE button_name = ‘+””+(SCADA_FRM.created_nesne as TAdvGlassButton).Name+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TVrNumEdit’) and IN_OUT_EKLE then

        begin

        (created_nesne as TVrNumEdit).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery63.Close;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_parent=”’+(created_nesne as TVrNumEdit).Parent.Name+”’ WHERE inout_name = ‘+””+(SCADA_FRM.created_nesne as TVrNumEdit).Name+””);

        DataModule1.ADOQuery63.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TLabel’) and TEXT_EKLE then

        begin

        (created_nesne as TLabel).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery64.Close;

        DataModule1.ADOQuery64.SQL.Clear;

        DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_parent=”’+(created_nesne as TLabel).Parent.Name+”’ WHERE label_name = ‘+””+(SCADA_FRM.created_nesne as TLabel).Name+””);

        DataModule1.ADOQuery64.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TVrBlinkLed’) and LED_EKLE then

        begin

        (created_nesne as TVrBlinkLed).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery65.Close;

        DataModule1.ADOQuery65.SQL.Clear;

        DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_parent=”’+(created_nesne as TVrBlinkLed).Parent.Name+”’ WHERE led_name = ‘+””+(SCADA_FRM.created_nesne as TVrBlinkLed).Name+””);

        DataModule1.ADOQuery65.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TJvShape’) and SHAPE_EKLE then

        begin

        (created_nesne as TJvShape).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery66.Close;

        DataModule1.ADOQuery66.SQL.Clear;

        DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_parent=”’+(created_nesne as TJvShape).Parent.Name+”’ WHERE shape_name = ‘+””+(SCADA_FRM.created_nesne as TJvShape).Name+””);

        DataModule1.ADOQuery66.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TJvShapedButton’) and SEKIL_EKLE then

        begin

        (created_nesne as TJvShapedButton).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery67.Close;

        DataModule1.ADOQuery67.SQL.Clear;

        DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_parent=”’+(created_nesne as TJvShapedButton).Parent.Name+”’ WHERE sekil_name = ‘+””+(SCADA_FRM.created_nesne as TJvShapedButton).Name+””);

        DataModule1.ADOQuery67.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TImage’) and IMG_EKLE then

        begin

        (created_nesne as TImage).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_parent=”’+(created_nesne as TImage).Parent.Name+”’ WHERE img_name = ‘+””+(SCADA_FRM.created_nesne as TImage).Name+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TJvBmpAnimator’) and ANIM_EKLE then

        begin

        (created_nesne as TImage).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_parent=”’+(created_nesne as TJvBmpAnimator).Parent.Name+”’ WHERE anim_name = ‘+””+(SCADA_FRM.created_nesne as TJvBmpAnimator).Name+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

        if (created_nesne.ClassName = ‘TVrArrow’) and ARROW_EKLE then

        begin

        (created_nesne as TVrArrow).SetParentComponent((sender as TRzPanel));

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ARROW SET arrow_parent=”’+(created_nesne as TVrArrow).Parent.Name+”’ WHERE arrow_name = ‘+””+(SCADA_FRM.created_nesne as TVrArrow).Name+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

end;

end;

 

procedure TSCADA_FRM.Panel15Click(Sender: TObject);

var

answer : string;

begin

logo_enable:=logo_enable+1;

if logo_enable>3 then

begin

answer:=(Inputbox(‘ŞİFRE’,#31’GİRİŞ’,”));

if answer = ‘********’ then

begin

Button1.Enabled:=true;

Button2.Enabled:=true;

Button3.Enabled:=true;

end;

end;

end;

 

procedure TSCADA_FRM.RESMSL1Click(Sender: TObject);

Var

  Node : TTreeNode;

  node_name:string;

  index,grafik_index,i:integer;

begin

if JvTreeView1.SelectedCount=1 then

begin

i:=0;

grafik_index:=Grafik_List_No;

node_name:=JvTreeView1.SelectedItems[0].Text;

      DataModule1.ADOQuery84.Close;

      DataModule1.ADOQuery84.SQL.Clear;

      DataModule1.ADOQuery84.SQL.Add(‘select IMGLIST_PICTURE_NAME from IMGLIST’);

      DataModule1.ADOQuery84.SQL.Add(‘WHERE IMGLIST_NO = ‘+””+inttostr(grafik_index)+””);

      DataModule1.ADOQuery84.SQL.Add(‘order by IMG_NO asc’);

      DataModule1.ADOQuery84.Open;

 

      while not DataModule1.ADOQuery84.Eof do

      begin

      i:=i+1;

      if (DataModule1.ADOQuery84.Fields[0].AsString = node_name) then imgCollection.Items.Delete(i-1);

 

      DataModule1.ADOQuery84.Next;

      end;

 

  Node := FindRootNode(node_name, JvTreeView1);

  index:=JvTreeView1.SelectedItems[0].SelectedIndex;

  JvTreeView1.SelectedItems[index].Delete;

  DataModule1.ADOQuery84.Close;

  DataModule1.ADOQuery84.SQL.Clear;

  DataModule1.ADOQuery84.SQL.Add(‘Delete from IMGLIST’);

  DataModule1.ADOQuery84.SQL.Add(‘WHERE IMGLIST_PICTURE_NAME = ‘+””+node_name+””);

  DataModule1.ADOQuery84.ExecSQL;

end else showmessage(‘Resim seçmediniz! Bir resim seçin.’);

end;

 

procedure TSCADA_FRM.PAGE_2Show(Sender: TObject);

begin

if DEFAULT then komut:=true;

end;

 

procedure TSCADA_FRM.DEFAULTSTimer(Sender: TObject);

begin

komut:=true;

defaults.Enabled:=false;

end;

 

procedure TSCADA_FRM.DELETE1Click(Sender: TObject);

begin

if not copy then

begin

if (clip_nesne.ClassName = ‘TAdvGlassButton’) then

  begin

  DataModule1.ADOQuery61.Close;

  DataModule1.ADOQuery61.SQL.Clear;

  DataModule1.ADOQuery61.SQL.Add(‘Delete from BUTONLAR’);

  DataModule1.ADOQuery61.SQL.Add(‘WHERE button_name = ‘+””+(SCADA_FRM.clip_nesne as TAdvGlassButton).Name+””);

  DataModule1.ADOQuery61.ExecSQL;

  end;

if (clip_nesne.ClassName = ‘TRzPanel’) then

  begin

  DataModule1.ADOQuery62.Close;

  DataModule1.ADOQuery62.SQL.Clear;

  DataModule1.ADOQuery62.SQL.Add(‘Delete from PANEL’);

  DataModule1.ADOQuery62.SQL.Add(‘WHERE panel_name = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery62.ExecSQL;

  DataModule1.ADOQuery61.Close;

  DataModule1.ADOQuery61.SQL.Clear;

  DataModule1.ADOQuery61.SQL.Add(‘Delete from BUTONLAR’);

  DataModule1.ADOQuery61.SQL.Add(‘WHERE button_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery61.ExecSQL;

  DataModule1.ADOQuery63.Close;

  DataModule1.ADOQuery63.SQL.Clear;

  DataModule1.ADOQuery63.SQL.Add(‘Delete from INOUTPANEL’);

  DataModule1.ADOQuery63.SQL.Add(‘WHERE inout_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery63.ExecSQL;

  DataModule1.ADOQuery64.Close;

  DataModule1.ADOQuery64.SQL.Clear;

  DataModule1.ADOQuery64.SQL.Add(‘Delete from LABEL’);

  DataModule1.ADOQuery64.SQL.Add(‘WHERE label_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery64.ExecSQL;

  DataModule1.ADOQuery65.Close;

  DataModule1.ADOQuery65.SQL.Clear;

  DataModule1.ADOQuery65.SQL.Add(‘Delete from LED’);

  DataModule1.ADOQuery65.SQL.Add(‘WHERE led_parent = ‘+””+(SCADA_FRM.clip_nesne as  TRzPanel).Name+””);

  DataModule1.ADOQuery65.ExecSQL;

  DataModule1.ADOQuery66.Close;

  DataModule1.ADOQuery66.SQL.Clear;

  DataModule1.ADOQuery66.SQL.Add(‘Delete from SHAPE’);

  DataModule1.ADOQuery66.SQL.Add(‘WHERE shape_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery66.ExecSQL;

  DataModule1.ADOQuery67.SQL.Clear;

  DataModule1.ADOQuery67.SQL.Add(‘Delete from SEKIL’);

  DataModule1.ADOQuery67.SQL.Add(‘WHERE sekil_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery67.ExecSQL;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Add(‘Delete from IMG’);

  DataModule1.ADOQuery68.SQL.Add(‘WHERE img_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery68.ExecSQL;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Add(‘Delete from ANIM’);

  DataModule1.ADOQuery68.SQL.Add(‘WHERE anim_parent = ‘+””+(SCADA_FRM.clip_nesne as TRzPanel).Name+””);

  DataModule1.ADOQuery68.ExecSQL;

  end;

if (clip_nesne.ClassName = ‘TVrNumEdit’) then

  begin

  DataModule1.ADOQuery63.Close;

  DataModule1.ADOQuery63.SQL.Clear;

  DataModule1.ADOQuery63.SQL.Add(‘Delete from INOUTPANEL’);

  DataModule1.ADOQuery63.SQL.Add(‘WHERE inout_name = ‘+””+(SCADA_FRM.clip_nesne as TVrNumEdit).Name+””);

  DataModule1.ADOQuery63.ExecSQL;

  end;

if (clip_nesne.ClassName = ‘TLabel’) then

  begin

  DataModule1.ADOQuery64.Close;

  DataModule1.ADOQuery64.SQL.Clear;

  DataModule1.ADOQuery64.SQL.Add(‘Delete from LABEL’);

  DataModule1.ADOQuery64.SQL.Add(‘WHERE label_name = ‘+””+(SCADA_FRM.clip_nesne as TLabel).Name+””);

  DataModule1.ADOQuery64.ExecSQL;

  end;

 

if (clip_nesne.ClassName = ‘TVrBlinkLed’) then

  begin

  DataModule1.ADOQuery65.Close;

  DataModule1.ADOQuery65.SQL.Clear;

  DataModule1.ADOQuery65.SQL.Add(‘Delete from LED’);

  DataModule1.ADOQuery65.SQL.Add(‘WHERE led_name = ‘+””+(SCADA_FRM.clip_nesne as TVrBlinkLed).Name+””);

  DataModule1.ADOQuery65.ExecSQL;

  end;

 

if (clip_nesne.ClassName = ‘TJvShape’) then

  begin

  DataModule1.ADOQuery66.Close;

  DataModule1.ADOQuery66.SQL.Clear;

  DataModule1.ADOQuery66.SQL.Add(‘Delete from SHAPE’);

  DataModule1.ADOQuery66.SQL.Add(‘WHERE shape_name = ‘+””+(SCADA_FRM.clip_nesne as TJvShape).Name+””);

  DataModule1.ADOQuery66.ExecSQL;

  end;

 

if (clip_nesne.ClassName = ‘TJvShapedButton’) then

  begin

  DataModule1.ADOQuery67.Close;

  DataModule1.ADOQuery67.SQL.Clear;

  DataModule1.ADOQuery67.SQL.Add(‘Delete from SEKIL’);

  DataModule1.ADOQuery67.SQL.Add(‘WHERE sekil_name = ‘+””+(SCADA_FRM.clip_nesne as TJvShapedButton).Name+””);

  DataModule1.ADOQuery67.ExecSQL;

  end;

 

if (clip_nesne.ClassName = ‘TImage’) then

  begin

  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Add(‘Delete from IMG’);

  DataModule1.ADOQuery68.SQL.Add(‘WHERE img_name = ‘+””+(SCADA_FRM.clip_nesne as TImage).Name+””);

  DataModule1.ADOQuery68.ExecSQL;

  end;

 

if (clip_nesne.ClassName = ‘TJvBmpAnimator’) then

  begin

  DataModule1.ADOQuery68.Close;

  DataModule1.ADOQuery68.SQL.Clear;

  DataModule1.ADOQuery68.SQL.Add(‘Delete from ANIM’);

  DataModule1.ADOQuery68.SQL.Add(‘WHERE anim_name = ‘+””+(SCADA_FRM.clip_nesne as TJvBmpAnimator).Name+””);

  DataModule1.ADOQuery68.ExecSQL;

  end;

 

SCADA_FRM.clip_nesne.Destroy;

end;

end;

 

procedure TSCADA_FRM.VrSwitch2Click(Sender: TObject);

begin

komut:=false;

defaults.Enabled:=true;

end;

 

procedure TSCADA_FRM.VrSwitch1Click(Sender: TObject);

begin

komut:=false;

defaults.Enabled:=true;

end;

 

procedure TSCADA_FRM.VrSwitch3Click(Sender: TObject);

begin

komut:=false;

defaults.Enabled:=true;

end;

 

procedure TSCADA_FRM.VrSwitch4Click(Sender: TObject);

begin

komut:=false;

defaults.Enabled:=true;

end;******


//RUNTIME DESIGNE

procedure TSCADA_FRM.Tmr1Timer(Sender: TObject);

var

  pt : tPoint;

begin

  pt := Mouse.CursorPos;


  if BUTON_EKLE then

  begin

    if (not btn2_created) then

    begin

       if set_button then

        begin

        SET_button_no:=SET_button_no+1;

        if (PAGE.ActivePage=PAGE_1) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        if (PAGE.ActivePage=PAGE_2) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan2);

        if (PAGE.ActivePage=PAGE_3) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan3);

        if (PAGE.ActivePage=PAGE_4) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan4);

        if (PAGE.ActivePage=PAGE_5) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan5);

        if (PAGE.ActivePage=PAGE_6) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan6);

        if (PAGE.ActivePage=PAGE_7) then set_btn[SET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan7);

        set_btn[SET_button_no].OnClick:=dynButtonClick;

        set_btn[SET_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        set_btn[SET_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        set_btn[SET_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        set_btn[SET_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        set_btn[SET_button_no].PopupMenu := PopupMenu1;

        set_btn[SET_button_no].Name:=’SET_Button’+inttostr(SET_button_no);

        if (PAGE.ActivePage=PAGE_1) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan1;

        if (PAGE.ActivePage=PAGE_2) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan2;

        if (PAGE.ActivePage=PAGE_3) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan3;

        if (PAGE.ActivePage=PAGE_4) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan4;

        if (PAGE.ActivePage=PAGE_5) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan5;

        if (PAGE.ActivePage=PAGE_6) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan6;

        if (PAGE.ActivePage=PAGE_7) then set_btn[SET_button_no].Parent := SCADA_FRM.Pan7;

        set_btn[SET_button_no].Width:=200;

        created_nesne :=set_btn[SET_button_no];

          DataModule1.ADOQuery61.Close;

          DataModule1.ADOQuery61.SQL.Clear;

          DataModule1.ADOQuery61.SQL.Add(‘Insert into BUTONLAR(button_no,button_type,button_name,button_caption,button_width,button_height,button_font_size,button_font_name,button_font_color,button_font_style,’);

          DataModule1.ADOQuery61.SQL.Add(‘button_shine_color,button_glow_color,button_allow,button_anim_active,button_anim_tag,button_anim_set_color,button_anim_reset_color,button_event_tag,button_left,button_top,button_parent) values (‘+

          ””+inttostr(SET_button_no)+”’,’+””+’SET’+”’,’+””+set_btn[SET_button_no].Name+”’,’+””+set_btn[SET_button_no].Caption+”’,’+””+inttostr(set_btn[SET_button_no].Width)+”’,’+””+inttostr(set_btn[SET_button_no].Height)+

          ”’,’+””+inttostr(set_btn[SET_button_no].Font.Size)+”’,’+””+set_btn[SET_button_no].Font.Name+”’,’+””+colortostring(set_btn[SET_button_no].Font.Color)+”’,’+””+GetSetProp(set_btn[SET_button_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(set_btn[SET_button_no].ShineColor)+”’,’+””+colortostring(set_btn[SET_button_no].GlowColor)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(set_btn[SET_button_no].ShineColor)+

          ”’,’+””+colortostring(set_btn[SET_button_no].ShineColor)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(set_btn[SET_button_no].Left)+”’,’+””+inttostr(set_btn[SET_button_no].Top)+”’,’+””+set_btn[SET_button_no].Parent.Name+”’)’);

          DataModule1.ADOQuery61.ExecSQL;


        end;



        if reset_button then

        begin

        RESET_button_no:=RESET_button_no+1;

        if (PAGE.ActivePage=PAGE_1) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        if (PAGE.ActivePage=PAGE_2) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan2);

        if (PAGE.ActivePage=PAGE_3) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan3);

        if (PAGE.ActivePage=PAGE_4) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan4);

        if (PAGE.ActivePage=PAGE_5) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan5);

        if (PAGE.ActivePage=PAGE_6) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan6);

        if (PAGE.ActivePage=PAGE_7) then reset_btn[RESET_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan7);

        reset_btn[RESET_button_no].OnClick:=dynButtonClick;

        reset_btn[RESET_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        reset_btn[RESET_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        reset_btn[RESET_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        reset_btn[RESET_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        reset_btn[RESET_button_no].PopupMenu := PopupMenu1;

        reset_btn[RESET_button_no].Name:=’RESET_Button’+inttostr(RESET_button_no);

        if (PAGE.ActivePage=PAGE_1) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan1;

        if (PAGE.ActivePage=PAGE_2) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan2;

        if (PAGE.ActivePage=PAGE_3) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan3;

        if (PAGE.ActivePage=PAGE_4) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan4;

        if (PAGE.ActivePage=PAGE_5) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan5;

        if (PAGE.ActivePage=PAGE_6) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan6;

        if (PAGE.ActivePage=PAGE_7) then reset_btn[RESET_button_no].Parent := SCADA_FRM.Pan7;

        reset_btn[RESET_button_no].Width:=200;

        created_nesne :=reset_btn[RESET_button_no];

          DataModule1.ADOQuery61.Close;

          DataModule1.ADOQuery61.SQL.Clear;

          DataModule1.ADOQuery61.SQL.Add(‘Insert into BUTONLAR(button_no,button_type,button_name,button_caption,button_width,button_height,button_font_size,button_font_name,button_font_color,button_font_style,’);

          DataModule1.ADOQuery61.SQL.Add(‘button_shine_color,button_glow_color,button_allow,button_anim_active,button_anim_tag,button_anim_set_color,button_anim_reset_color,button_event_tag,button_left,button_top,button_parent) values (‘+

          ””+inttostr(RESET_button_no)+”’,’+””+’RESET’+”’,’+””+reset_btn[RESET_button_no].Name+”’,’+””+reset_btn[RESET_button_no].Caption+”’,’+””+inttostr(reset_btn[RESET_button_no].Width)+”’,’+””+inttostr(reset_btn[RESET_button_no].Height)+

          ”’,’+””+inttostr(reset_btn[RESET_button_no].Font.Size)+”’,’+””+reset_btn[RESET_button_no].Font.Name+”’,’+””+colortostring(reset_btn[RESET_button_no].Font.Color)+”’,’+””+GetSetProp(reset_btn[RESET_button_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(reset_btn[RESET_button_no].ShineColor)+”’,’+””+colortostring(reset_btn[RESET_button_no].GlowColor)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(reset_btn[RESET_button_no].ShineColor)+

          ”’,’+””+colortostring(reset_btn[RESET_button_no].ShineColor)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(reset_btn[RESET_button_no].Left)+”’,’+””+inttostr(reset_btn[RESET_button_no].Top)+”’,’+””+reset_btn[RESET_button_no].Parent.Name+”’)’);

          DataModule1.ADOQuery61.ExecSQL;


        end;



        if toogle_button then

        begin

        TOOGLE_button_no:=TOOGLE_button_no+1;

        if (PAGE.ActivePage=PAGE_1) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        if (PAGE.ActivePage=PAGE_2) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan2);

        if (PAGE.ActivePage=PAGE_3) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan3);

        if (PAGE.ActivePage=PAGE_4) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan4);

        if (PAGE.ActivePage=PAGE_5) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan5);

        if (PAGE.ActivePage=PAGE_6) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan6);

        if (PAGE.ActivePage=PAGE_7) then toogle_btn[TOOGLE_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan7);

        toogle_btn[TOOGLE_button_no].OnClick:=dynButtonClick;

        toogle_btn[TOOGLE_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        toogle_btn[TOOGLE_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        toogle_btn[TOOGLE_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        toogle_btn[TOOGLE_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        toogle_btn[TOOGLE_button_no].PopupMenu := PopupMenu1;

        toogle_btn[TOOGLE_button_no].Name:=’TOOGLE_Button’+inttostr(TOOGLE_button_no);

        if (PAGE.ActivePage=PAGE_1) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan1;

        if (PAGE.ActivePage=PAGE_2) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan2;

        if (PAGE.ActivePage=PAGE_3) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan3;

        if (PAGE.ActivePage=PAGE_4) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan4;

        if (PAGE.ActivePage=PAGE_5) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan5;

        if (PAGE.ActivePage=PAGE_6) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan6;

        if (PAGE.ActivePage=PAGE_7) then toogle_btn[TOOGLE_button_no].Parent := SCADA_FRM.Pan7;

        toogle_btn[TOOGLE_button_no].Width:=200;

        created_nesne :=toogle_btn[TOOGLE_button_no];

          DataModule1.ADOQuery61.Close;

          DataModule1.ADOQuery61.SQL.Clear;

          DataModule1.ADOQuery61.SQL.Add(‘Insert into BUTONLAR(button_no,button_type,button_name,button_caption,button_width,button_height,button_font_size,button_font_name,button_font_color,button_font_style,’);

          DataModule1.ADOQuery61.SQL.Add(‘button_shine_color,button_glow_color,button_allow,button_anim_active,button_anim_tag,button_anim_set_color,button_anim_reset_color,button_event_tag,button_left,button_top,button_parent) values (‘+

          ””+inttostr(TOOGLE_button_no)+”’,’+””+’TOOGLE’+”’,’+””+toogle_btn[TOOGLE_button_no].Name+”’,’+””+toogle_btn[TOOGLE_button_no].Caption+”’,’+””+inttostr(toogle_btn[TOOGLE_button_no].Width)+”’,’+””+inttostr(toogle_btn[TOOGLE_button_no].Height)+

          ”’,’+””+inttostr(toogle_btn[TOOGLE_button_no].Font.Size)+”’,’+””+toogle_btn[TOOGLE_button_no].Font.Name+”’,’+””+colortostring(toogle_btn[TOOGLE_button_no].Font.Color)+”’,’+””+GetSetProp(toogle_btn[TOOGLE_button_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(toogle_btn[TOOGLE_button_no].ShineColor)+”’,’+””+colortostring(toogle_btn[TOOGLE_button_no].GlowColor)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(toogle_btn[TOOGLE_button_no].ShineColor)+

          ”’,’+””+colortostring(toogle_btn[TOOGLE_button_no].ShineColor)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(toogle_btn[TOOGLE_button_no].Left)+”’,’+””+inttostr(toogle_btn[TOOGLE_button_no].Top)+”’,’+””+toogle_btn[TOOGLE_button_no].Parent.Name+”’)’);

          DataModule1.ADOQuery61.ExecSQL;


        end;


        if momantary_button then

        begin

        MOMANTARY_button_no:=MOMANTARY_button_no+1;

        if (PAGE.ActivePage=PAGE_1) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan1);

        if (PAGE.ActivePage=PAGE_2) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan2);

        if (PAGE.ActivePage=PAGE_3) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan3);

        if (PAGE.ActivePage=PAGE_4) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan4);

        if (PAGE.ActivePage=PAGE_5) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan5);

        if (PAGE.ActivePage=PAGE_6) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan6);

        if (PAGE.ActivePage=PAGE_7) then MOMANTARY_btn[MOMANTARY_button_no] := TAdvGlassButton.Create(SCADA_FRM.Pan7);

        MOMANTARY_btn[MOMANTARY_button_no].OnClick:=dynButtonClick;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

        MOMANTARY_btn[MOMANTARY_button_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

        MOMANTARY_btn[MOMANTARY_button_no].PopupMenu := PopupMenu1;

        MOMANTARY_btn[MOMANTARY_button_no].Name:=’MOMANTARY_Button’+inttostr(MOMANTARY_button_no);

        if (PAGE.ActivePage=PAGE_1) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan1;

        if (PAGE.ActivePage=PAGE_2) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan2;

        if (PAGE.ActivePage=PAGE_3) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan3;

        if (PAGE.ActivePage=PAGE_4) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan4;

        if (PAGE.ActivePage=PAGE_5) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan5;

        if (PAGE.ActivePage=PAGE_6) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan6;

        if (PAGE.ActivePage=PAGE_7) then MOMANTARY_btn[MOMANTARY_button_no].Parent := SCADA_FRM.Pan7;

        MOMANTARY_btn[MOMANTARY_button_no].Width:=200;

        created_nesne :=MOMANTARY_btn[MOMANTARY_button_no];

          DataModule1.ADOQuery61.Close;

          DataModule1.ADOQuery61.SQL.Clear;

          DataModule1.ADOQuery61.SQL.Add(‘Insert into BUTONLAR(button_no,button_type,button_name,button_caption,button_width,button_height,button_font_size,button_font_name,button_font_color,button_font_style,’);

          DataModule1.ADOQuery61.SQL.Add(‘button_shine_color,button_glow_color,button_allow,button_anim_active,button_anim_tag,button_anim_set_color,button_anim_reset_color,button_event_tag,button_left,button_top,button_parent) values (‘+

          ””+inttostr(MOMANTARY_button_no)+”’,’+””+’MOMANTARY’+”’,’+””+MOMANTARY_btn[MOMANTARY_button_no].Name+”’,’+””+MOMANTARY_btn[MOMANTARY_button_no].Caption+”’,’+””+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Width)+”’,’+””+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Height)+

          ”’,’+””+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Font.Size)+”’,’+””+MOMANTARY_btn[MOMANTARY_button_no].Font.Name+”’,’+””+colortostring(MOMANTARY_btn[MOMANTARY_button_no].Font.Color)+”’,’+””+GetSetProp(MOMANTARY_btn[MOMANTARY_button_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(MOMANTARY_btn[MOMANTARY_button_no].ShineColor)+”’,’+””+colortostring(MOMANTARY_btn[MOMANTARY_button_no].GlowColor)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(MOMANTARY_btn[MOMANTARY_button_no].ShineColor)+

          ”’,’+””+colortostring(MOMANTARY_btn[MOMANTARY_button_no].ShineColor)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Left)+”’,’+””+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Top)+”’,’+””+MOMANTARY_btn[MOMANTARY_button_no].Parent.Name+”’)’);

          DataModule1.ADOQuery61.ExecSQL;


        end;


    end;

    btn2_created:=True;

    if not btn2_form_clicked then

    begin

      if clip and (not clip_out) then

      begin

        if set_button then

        begin

        set_btn[SET_button_no].Top := pt.y-set_btn[SET_button_no].Height-200-(clip_nesne as TRzPanel).Top;

        set_btn[SET_button_no].Left := pt.x-set_btn[SET_button_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(set_btn[SET_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(set_btn[SET_button_no].Top)+”’ WHERE button_type = ”SET” AND button_no = ‘+””+inttostr(SET_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if reset_button then

        begin

        reset_btn[RESET_button_no].Top := pt.y-reset_btn[RESET_button_no].Height-200-(clip_nesne as TRzPanel).Top;

        reset_btn[RESET_button_no].Left := pt.x-reset_btn[RESET_button_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(reset_btn[RESET_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(reset_btn[RESET_button_no].Top)+”’ WHERE button_type = ”RESET” AND button_no = ‘+””+inttostr(RESET_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if toogle_button then

        begin

        toogle_btn[TOOGLE_button_no].Top := pt.y-toogle_btn[TOOGLE_button_no].Height-200-(clip_nesne as TRzPanel).Top;

        toogle_btn[TOOGLE_button_no].Left := pt.x-toogle_btn[TOOGLE_button_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(toogle_btn[TOOGLE_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(toogle_btn[TOOGLE_button_no].Top)+”’ WHERE button_type = ”TOOGLE” AND button_no = ‘+””+inttostr(TOOGLE_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if MOMANTARY_button then

        begin

        MOMANTARY_btn[MOMANTARY_button_no].Top := pt.y-MOMANTARY_btn[MOMANTARY_button_no].Height-200-(clip_nesne as TRzPanel).Top;

        MOMANTARY_btn[MOMANTARY_button_no].Left := pt.x-MOMANTARY_btn[MOMANTARY_button_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Top)+”’ WHERE button_type = ”MOMANTARY” AND button_no = ‘+””+inttostr(MOMANTARY_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

      end else

      begin

        if set_button then

        begin

        set_btn[SET_button_no].Top := pt.y-set_btn[SET_button_no].Height-200;

        set_btn[SET_button_no].Left := pt.x-set_btn[SET_button_no].Width;

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(set_btn[SET_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(set_btn[SET_button_no].Top)+”’ WHERE button_type = ”SET” AND button_no = ‘+””+inttostr(SET_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if reset_button then

        begin

        reset_btn[RESET_button_no].Top := pt.y-reset_btn[RESET_button_no].Height-200;

        reset_btn[RESET_button_no].Left := pt.x-reset_btn[RESET_button_no].Width;

        DataModule1.ADOQuery61.Close;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(reset_btn[RESET_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(reset_btn[RESET_button_no].Top)+”’ WHERE button_type = ”RESET” AND button_no = ‘+””+inttostr(RESET_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if toogle_button then

        begin

        toogle_btn[TOOGLE_button_no].Top := pt.y-toogle_btn[TOOGLE_button_no].Height-200;

        toogle_btn[TOOGLE_button_no].Left := pt.x-toogle_btn[TOOGLE_button_no].Width;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(toogle_btn[TOOGLE_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(toogle_btn[TOOGLE_button_no].Top)+”’ WHERE button_type = ”TOOGLE” AND button_no = ‘+””+inttostr(TOOGLE_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

        if MOMANTARY_button then

        begin

        MOMANTARY_btn[MOMANTARY_button_no].Top := pt.y-MOMANTARY_btn[MOMANTARY_button_no].Height-200;

        MOMANTARY_btn[MOMANTARY_button_no].Left := pt.x-MOMANTARY_btn[MOMANTARY_button_no].Width;

        DataModule1.ADOQuery61.SQL.Clear;

        DataModule1.ADOQuery61.SQL.Add(‘UPDATE BUTONLAR SET button_left=”’+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Left)+”’,’+

                                       ‘button_top=”’+inttostr(MOMANTARY_btn[MOMANTARY_button_no].Top)+”’ WHERE button_type = ”MOMANTARY” AND button_no = ‘+””+inttostr(MOMANTARY_button_no)+””);

        DataModule1.ADOQuery61.ExecSQL;

        end;

      end;


    end else  BUTON_EKLE:=false;

  end;


  if IN_OUT_EKLE then

  begin

    if (not in_panel_created) then

    begin

      if in_panel then

      begin

      in_panel_no:=in_panel_no+1;

      if (PAGE.ActivePage=PAGE_1) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then in_panel_comp[in_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan7);

      in_panel_comp[in_panel_no].OnClick:=dyn_in_panel_Click;

      in_panel_comp[in_panel_no].OnKeyPress:=dyn_in_panel_OnKeyPress;

      in_panel_comp[in_panel_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      in_panel_comp[in_panel_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      in_panel_comp[in_panel_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      in_panel_comp[in_panel_no].Color:=clWhite;

      in_panel_comp[in_panel_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      in_panel_comp[in_panel_no].PopupMenu:= PopupMenu1;

      in_panel_comp[in_panel_no].Name:=’In_Panel’+inttostr(in_panel_no);


      in_panel_comp[in_panel_no].Width:=200;

      created_nesne:=in_panel_comp[in_panel_no];


      if (PAGE.ActivePage=PAGE_1) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then in_panel_comp[in_panel_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery63.Close;

          DataModule1.ADOQuery63.SQL.Clear;

          DataModule1.ADOQuery63.SQL.Add(‘Insert into INOUTPANEL(inout_no,inout_type,inout_name,inout_width,inout_height,inout_font_size,inout_font_name,inout_font_color,inout_font_style,’);

          DataModule1.ADOQuery63.SQL.Add(‘inout_color,inout_allow,inout_anim_active,inout_anim_tag,inout_anim_set_color,inout_anim_reset_color,inout_event_tag,inout_left,inout_top,inout_parent,virgul,max_deger,min_deger) values (‘+

          ””+inttostr(in_panel_no)+”’,’+””+’IN’+”’,’+””+in_panel_comp[in_panel_no].Name+”’,’+””+inttostr(in_panel_comp[in_panel_no].Width)+”’,’+””+inttostr(in_panel_comp[in_panel_no].Height)+

          ”’,’+””+inttostr(in_panel_comp[in_panel_no].Font.Size)+”’,’+””+in_panel_comp[in_panel_no].Font.Name+”’,’+””+colortostring(in_panel_comp[in_panel_no].Font.Color)+”’,’+””+GetSetProp(in_panel_comp[in_panel_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(in_panel_comp[in_panel_no].Color)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(in_panel_comp[in_panel_no].Color)+

          ”’,’+””+colortostring(in_panel_comp[in_panel_no].Color)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(in_panel_comp[in_panel_no].Left)+”’,’+””+inttostr(in_panel_comp[in_panel_no].Top)+”’,’+””+in_panel_comp[in_panel_no].Parent.Name+”’,’+””+’0’+”’,’+””+’100’+”’,’+””+’0’+”’)’);

          DataModule1.ADOQuery63.ExecSQL;

      end;


      if out_panel then

      begin

      out_panel_no:=out_panel_no+1;

      if (PAGE.ActivePage=PAGE_1) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then out_panel_comp[out_panel_no] := TVrNumEdit.Create(SCADA_FRM.Pan7);

      out_panel_comp[out_panel_no].OnClick:=dyn_in_panel_Click;

      out_panel_comp[out_panel_no].OnKeyPress:=dyn_in_panel_OnKeyPress;

      out_panel_comp[out_panel_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      out_panel_comp[out_panel_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      out_panel_comp[out_panel_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      out_panel_comp[out_panel_no].Color:=clWhite;

      out_panel_comp[out_panel_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      out_panel_comp[out_panel_no].PopupMenu:= PopupMenu1;

      out_panel_comp[out_panel_no].Name:=’Out_Panel’+inttostr(out_panel_no);


      out_panel_comp[out_panel_no].Width:=200;

      created_nesne:=out_panel_comp[out_panel_no];


      if (PAGE.ActivePage=PAGE_1) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then out_panel_comp[out_panel_no].Parent := SCADA_FRM.Pan7;


          DataModule1.ADOQuery63.Close;

          DataModule1.ADOQuery63.SQL.Clear;

          DataModule1.ADOQuery63.SQL.Add(‘Insert into INOUTPANEL(inout_no,inout_type,inout_name,inout_width,inout_height,inout_font_size,inout_font_name,inout_font_color,inout_font_style,’);

          DataModule1.ADOQuery63.SQL.Add(‘inout_color,inout_allow,inout_anim_active,inout_anim_tag,inout_anim_set_color,inout_anim_reset_color,inout_event_tag,inout_left,inout_top,inout_parent,virgul,max_deger,min_deger) values (‘+

          ””+inttostr(out_panel_no)+”’,’+””+’OUT’+”’,’+””+out_panel_comp[out_panel_no].Name+”’,’+””+inttostr(out_panel_comp[out_panel_no].Width)+”’,’+””+inttostr(out_panel_comp[out_panel_no].Height)+

          ”’,’+””+inttostr(out_panel_comp[out_panel_no].Font.Size)+”’,’+””+out_panel_comp[out_panel_no].Font.Name+”’,’+””+colortostring(out_panel_comp[out_panel_no].Font.Color)+”’,’+””+GetSetProp(out_panel_comp[out_panel_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(out_panel_comp[out_panel_no].Color)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(out_panel_comp[out_panel_no].Color)+

          ”’,’+””+colortostring(out_panel_comp[out_panel_no].Color)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(out_panel_comp[out_panel_no].Left)+”’,’+””+inttostr(out_panel_comp[out_panel_no].Top)+”’,’+””+out_panel_comp[out_panel_no].Parent.Name+”’,’+””+’0’+”’,’+””+’100’+”’,’+””+’0’+”’)’);

          DataModule1.ADOQuery63.ExecSQL;

      end;



    end;

    in_panel_created:=True;

    if not in_panel_form_clicked then

    begin

      if clip and (not clip_out) then

      begin

        if in_panel then

        begin

        in_panel_comp[in_panel_no].Top := pt.y-in_panel_comp[in_panel_no].Height-200-(clip_nesne as TRzPanel).Top;

        in_panel_comp[in_panel_no].Left := pt.x-in_panel_comp[in_panel_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_left=”’+inttostr(in_panel_comp[in_panel_no].Left)+”’,’+

                                       ‘inout_top=”’+inttostr(in_panel_comp[in_panel_no].Top)+”’ WHERE inout_name = ‘+””+in_panel_comp[in_panel_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;

        end;

        if out_panel then

        begin

        out_panel_comp[out_panel_no].Top := pt.y-out_panel_comp[out_panel_no].Height-200-(clip_nesne as TRzPanel).Top;

        out_panel_comp[out_panel_no].Left := pt.x-out_panel_comp[out_panel_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_left=”’+inttostr(out_panel_comp[out_panel_no].Left)+”’,’+

                                       ‘inout_top=”’+inttostr(out_panel_comp[out_panel_no].Top)+”’ WHERE inout_name = ‘+””+out_panel_comp[out_panel_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;

        end;

      end else

      begin

        if in_panel then

        begin

        in_panel_comp[in_panel_no].Top := pt.y-in_panel_comp[in_panel_no].Height-200;

        in_panel_comp[in_panel_no].Left := pt.x-in_panel_comp[in_panel_no].Width;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_left=”’+inttostr(in_panel_comp[in_panel_no].Left)+”’,’+

                                       ‘inout_top=”’+inttostr(in_panel_comp[in_panel_no].Top)+”’ WHERE inout_name = ‘+””+in_panel_comp[in_panel_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;

        end;

        if out_panel then

        begin

        out_panel_comp[out_panel_no].Top := pt.y-out_panel_comp[out_panel_no].Height-200;

        out_panel_comp[out_panel_no].Left := pt.x-out_panel_comp[out_panel_no].Width;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE INOUTPANEL SET inout_left=”’+inttostr(out_panel_comp[out_panel_no].Left)+”’,’+

                                       ‘inout_top=”’+inttostr(out_panel_comp[out_panel_no].Top)+”’ WHERE inout_name = ‘+””+out_panel_comp[out_panel_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;

        end;

      end;


    end else IN_OUT_EKLE:=false;

  end;


  if TEXT_EKLE then

  begin

      if (not text_label_created) then

    begin

      text_label_no:=text_label_no+1;

      if (PAGE.ActivePage=PAGE_1) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then text_label_comp[text_label_no] := TLabel.Create(SCADA_FRM.Pan7);

      text_label_comp[text_label_no].OnClick:=dyn_text_label_Click;

      text_label_comp[text_label_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      text_label_comp[text_label_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      text_label_comp[text_label_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      text_label_comp[text_label_no].Font.Color:=clBlack;

      text_label_comp[text_label_no].Color:=clBlack;

      text_label_comp[text_label_no].PopupMenu:= PopupMenu1;

      text_label_comp[text_label_no].OnMouseEnter :=dyn_nesne_Mause_Ender;



      text_label_comp[text_label_no].Name:=’Text_Label’+inttostr(text_label_no);

      text_label_comp[text_label_no].Caption:=’Text_Label’+inttostr(text_label_no);

      text_label_comp[text_label_no].Width:=200;

      created_nesne:=text_label_comp[text_label_no];

      if (PAGE.ActivePage=PAGE_1) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then text_label_comp[text_label_no].Parent := SCADA_FRM.Pan7;


          DataModule1.ADOQuery64.Close;

          DataModule1.ADOQuery64.SQL.Clear;

          DataModule1.ADOQuery64.SQL.Add(‘Insert into LABEL(label_no,label_name,label_caption,label_width,label_height,label_font_size,label_font_name,label_font_color,label_font_style,’);

          DataModule1.ADOQuery64.SQL.Add(‘label_color,label_anim_active,label_anim_tag,label_anim_set_color,label_anim_reset_color,label_left,label_top,label_parent) values (‘+

          ””+inttostr(text_label_no)+”’,’+””+text_label_comp[text_label_no].Name+”’,’+””+text_label_comp[text_label_no].Caption+”’,’+””+inttostr(text_label_comp[text_label_no].Width)+”’,’+””+inttostr(text_label_comp[text_label_no].Height)+

          ”’,’+””+inttostr(text_label_comp[text_label_no].Font.Size)+”’,’+””+text_label_comp[text_label_no].Font.Name+”’,’+””+colortostring(text_label_comp[text_label_no].Font.Color)+”’,’+””+GetSetProp(text_label_comp[text_label_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(text_label_comp[text_label_no].Color)+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(text_label_comp[text_label_no].Color)+

          ”’,’+””+colortostring(text_label_comp[text_label_no].Color)+”’,’+””+inttostr(text_label_comp[text_label_no].Left)+”’,’+””+inttostr(text_label_comp[text_label_no].Top)+”’,’+””+text_label_comp[text_label_no].Parent.Name+”’)’);

          DataModule1.ADOQuery64.ExecSQL;

    end;

    text_label_created:=True;

    if not text_label_form_clicked then

    begin

      if clip and (not clip_out) then

      begin


        text_label_comp[text_label_no].Top := pt.y-text_label_comp[text_label_no].Height-200-(clip_nesne as TRzPanel).Top;

        text_label_comp[text_label_no].Left := pt.x-text_label_comp[text_label_no].Width+150-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery64.Close;

        DataModule1.ADOQuery64.SQL.Clear;

        DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_left=”’+inttostr(text_label_comp[text_label_no].Left)+”’,’+

                                       ‘label_top=”’+inttostr(text_label_comp[text_label_no].Top)+”’ WHERE label_no = ‘+””+inttostr(text_label_no)+””);

        DataModule1.ADOQuery64.ExecSQL;


      end else

      begin

        text_label_comp[text_label_no].Top := pt.y-text_label_comp[text_label_no].Height-200;

        text_label_comp[text_label_no].Left := pt.x-text_label_comp[text_label_no].Width+150;

        DataModule1.ADOQuery64.Close;

        DataModule1.ADOQuery64.SQL.Clear;

        DataModule1.ADOQuery64.SQL.Add(‘UPDATE LABEL SET label_left=”’+inttostr(text_label_comp[text_label_no].Left)+”’,’+

                                       ‘label_top=”’+inttostr(text_label_comp[text_label_no].Top)+”’ WHERE label_no = ‘+””+inttostr(text_label_no)+””);

        DataModule1.ADOQuery64.ExecSQL;

      end;


    end else TEXT_EKLE:=false;

  end;


  if PANEL_EKLE then

  begin

      if (not panel_created) then

    begin

      panel_no:=panel_no+1;

      if (PAGE.ActivePage=PAGE_1) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then panel_comp[panel_no] := TRzPanel.Create(SCADA_FRM.Pan7);

      panel_comp[panel_no].OnClick:=dyn_panel_Click;

      panel_comp[panel_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      panel_comp[panel_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      panel_comp[panel_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      panel_comp[panel_no].Font.Color:=clBlack;

      panel_comp[panel_no].Color:=clBtnFace;

      panel_comp[panel_no].PopupMenu:= PopupMenu1;

      panel_comp[panel_no].OnMouseEnter :=dyn_nesne_Mause_Ender;



      panel_comp[panel_no].Name:=’RzPanel’+inttostr(panel_no);

      panel_comp[panel_no].Caption:=’Panel’+inttostr(panel_no);

      panel_comp[panel_no].Width:=200;

      created_nesne:=panel_comp[panel_no];

      if (PAGE.ActivePage=PAGE_1) then panel_comp[panel_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then panel_comp[panel_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then panel_comp[panel_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then panel_comp[panel_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then panel_comp[panel_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then panel_comp[panel_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then panel_comp[panel_no].Parent := SCADA_FRM.Pan7;


          DataModule1.ADOQuery62.Close;

          DataModule1.ADOQuery62.SQL.Clear;

          DataModule1.ADOQuery62.SQL.Add(‘Insert into PANEL(panel_no,panel_name,panel_caption,panel_width,panel_height,panel_font_size,panel_font_name,panel_font_color,panel_font_style,’);

          DataModule1.ADOQuery62.SQL.Add(‘panel_color,panel_anim_active,panel_anim_tag,panel_anim_set_color,panel_anim_reset_color,panel_left,panel_top,panel_parent) values (‘+

          ””+inttostr(panel_no)+”’,’+””+panel_comp[panel_no].Name+”’,’+””+panel_comp[panel_no].Caption+”’,’+””+inttostr(panel_comp[panel_no].Width)+”’,’+””+inttostr(panel_comp[panel_no].Height)+

          ”’,’+””+inttostr(panel_comp[panel_no].Font.Size)+”’,’+””+panel_comp[panel_no].Font.Name+”’,’+””+colortostring(panel_comp[panel_no].Font.Color)+”’,’+””+GetSetProp(panel_comp[panel_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(panel_comp[panel_no].Color)+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(panel_comp[panel_no].Color)+

          ”’,’+””+colortostring(panel_comp[panel_no].Color)+”’,’+””+inttostr(panel_comp[panel_no].Left)+”’,’+””+inttostr(panel_comp[panel_no].Top)+”’,’+””+panel_comp[panel_no].Parent.Name+”’)’);

          DataModule1.ADOQuery62.ExecSQL;

    end;

    panel_created:=True;

    if not panel_form_clicked then

    begin


      panel_comp[panel_no].Top := pt.y-panel_comp[panel_no].Height-200;

      panel_comp[panel_no].Left := pt.x-panel_comp[panel_no].Width;

        DataModule1.ADOQuery62.Close;

        DataModule1.ADOQuery62.SQL.Clear;

        DataModule1.ADOQuery62.SQL.Add(‘UPDATE PANEL SET panel_left=”’+inttostr(panel_comp[panel_no].Left)+”’,’+

                                       ‘panel_top=”’+inttostr(panel_comp[panel_no].Top)+”’ WHERE panel_no = ‘+””+inttostr(panel_no)+””);

        DataModule1.ADOQuery62.ExecSQL;


    end else PANEL_EKLE:=false;

  end;



  if LED_EKLE then

  begin

      if (not led_created) then

    begin

      led_no:=led_no+1;

      if (PAGE.ActivePage=PAGE_1) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then led_comp[led_no] := TVrBlinkLed.Create(SCADA_FRM.Pan7);

      led_comp[led_no].OnClick:=dyn_led_Click;

      led_comp[led_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      led_comp[led_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      led_comp[led_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      led_comp[led_no].PopupMenu:= PopupMenu1;

      led_comp[led_no].Width:=30;

      led_comp[led_no].Height:=30;

      led_comp[led_no].Name:=’Led’+inttostr(led_no);

      created_nesne:=led_comp[led_no];

      if (PAGE.ActivePage=PAGE_1) then led_comp[led_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then led_comp[led_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then led_comp[led_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then led_comp[led_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then led_comp[led_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then led_comp[led_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then led_comp[led_no].Parent := SCADA_FRM.Pan7;


          DataModule1.ADOQuery65.Close;

          DataModule1.ADOQuery65.SQL.Clear;

          DataModule1.ADOQuery65.SQL.Add(‘Insert into LED(led_no,led_name,led_width,led_height,led_blinking,led_blink_speed,led_anim_active,’);

          DataModule1.ADOQuery65.SQL.Add(‘led_anim_tag,led_high_color,led_low_color,led_left,led_top,led_parent) values (‘+

          ””+inttostr(led_no)+”’,’+””+led_comp[led_no].Name+”’,’+””+inttostr(led_comp[led_no].Width)+”’,’+””+inttostr(led_comp[led_no].Height)+”’,’+””+booltostr(led_comp[led_no].EnableBlinking)+

          ”’,’+””+’500’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(led_comp[led_no].Palette1.High)+”’,’+””+colortostring(led_comp[led_no].Palette1.Low)+

          ”’,’+””+inttostr(led_comp[led_no].Left)+”’,’+””+inttostr(led_comp[led_no].Top)+”’,’+””+led_comp[led_no].Parent.Name+”’)’);

          DataModule1.ADOQuery65.ExecSQL;

    end;

    led_created:=True;

    if not led_form_clicked then

    begin

      if ((clip and (not clip_out)) or copy) then

      begin

        if copy and (clip_nesne.ClassName = ‘TVrBlinkLed’) then

        begin

        led_comp[led_no].Top := pt.y-led_comp[led_no].Height-200-(clip_nesne as TVrBlinkLed).parent.Top;

        led_comp[led_no].Left := pt.x-led_comp[led_no].Width-(clip_nesne as TVrBlinkLed).parent.Left;

        DataModule1.ADOQuery65.Close;

        DataModule1.ADOQuery65.SQL.Clear;

        DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_left=”’+inttostr(led_comp[led_no].Left)+”’,’+

                                       ‘led_top=”’+inttostr(led_comp[led_no].Top)+”’ WHERE led_no = ‘+””+inttostr(led_no)+””);

        DataModule1.ADOQuery65.ExecSQL;

        end;

        if (clip_nesne.ClassName = ‘TRzPanel’) then

        begin

        led_comp[led_no].Top := pt.y-led_comp[led_no].Height-200-(clip_nesne as TRzPanel).Top;

        led_comp[led_no].Left := pt.x-led_comp[led_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery65.Close;

        DataModule1.ADOQuery65.SQL.Clear;

        DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_left=”’+inttostr(led_comp[led_no].Left)+”’,’+

                                       ‘led_top=”’+inttostr(led_comp[led_no].Top)+”’ WHERE led_no = ‘+””+inttostr(led_no)+””);

        DataModule1.ADOQuery65.ExecSQL;

        end;


      end else

      begin

      led_comp[led_no].Top := pt.y-led_comp[led_no].Height-200;

      led_comp[led_no].Left := pt.x-led_comp[led_no].Width;

        DataModule1.ADOQuery65.Close;

        DataModule1.ADOQuery65.SQL.Clear;

        DataModule1.ADOQuery65.SQL.Add(‘UPDATE LED SET led_left=”’+inttostr(led_comp[led_no].Left)+”’,’+

                                       ‘led_top=”’+inttostr(led_comp[led_no].Top)+”’ WHERE led_no = ‘+””+inttostr(led_no)+””);

        DataModule1.ADOQuery65.ExecSQL;

      end;


    end else LED_EKLE:=false;

  end;


   if SHAPE_EKLE then

  begin

      if (not shape_created) then

    begin

      shape_no:=shape_no+1;

      if (PAGE.ActivePage=PAGE_1) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then shape_comp[shape_no] := TJvShape.Create(SCADA_FRM.Pan7);

      shape_comp[shape_no].OnClick:=dyn_shape_Click;

      shape_comp[shape_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      shape_comp[shape_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      shape_comp[shape_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      shape_comp[shape_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      shape_comp[shape_no].Width:=100;

      shape_comp[shape_no].Height:=100;

      shape_comp[shape_no].Shape:=sekil_tipi[0];

      //shape_comp.PopupMenu:= PopupMenu1;

      shape_comp[shape_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      shape_comp[shape_no].Name:=’Shape’+inttostr(shape_no);

      //shape_comp.Caption:=’Shape’+inttostr(shape_no);

      created_nesne:=shape_comp[shape_no];

      if (PAGE.ActivePage=PAGE_1) then shape_comp[shape_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then shape_comp[shape_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then shape_comp[shape_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then shape_comp[shape_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then shape_comp[shape_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then shape_comp[shape_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then shape_comp[shape_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery66.Close;

          DataModule1.ADOQuery66.SQL.Clear;

          DataModule1.ADOQuery66.SQL.Add(‘Insert into SHAPE(shape_no,shape_name,shape_width,shape_height,shape_tipi,shape_color,shape_anim_active,’);

          DataModule1.ADOQuery66.SQL.Add(‘shape_anim_tag,shape_high_color,shape_low_color,shape_left,shape_top,shape_parent) values (‘+

          ””+inttostr(shape_no)+”’,’+””+shape_comp[shape_no].Name+”’,’+””+inttostr(shape_comp[shape_no].Width)+”’,’+””+inttostr(shape_comp[shape_no].Height)+”’,’+””+inttostr(0)+

          ”’,’+””+colortostring(shape_comp[shape_no].Brush.Color)+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(shape_comp[shape_no].Brush.Color)+”’,’+””+colortostring(shape_comp[shape_no].Brush.Color)+

          ”’,’+””+inttostr(shape_comp[shape_no].Left)+”’,’+””+inttostr(shape_comp[shape_no].Top)+”’,’+””+shape_comp[shape_no].Parent.Name+”’)’);

          DataModule1.ADOQuery66.ExecSQL;

    end;

    shape_created:=True;

    if not shape_form_clicked then

    begin

      if clip and (not clip_out) or (clip_nesne.ClassName=’TJvShape’)   then

      begin

        if (clip_nesne.ClassName=’TJvShape’) then

        begin

        shape_comp[shape_no].Top := pt.y-shape_comp[shape_no].Height-200-(SCADA_FRM.clip_nesne as TJvShape).Parent.Top;

        shape_comp[shape_no].Left := pt.x-shape_comp[shape_no].Width-(SCADA_FRM.clip_nesne as TJvShape).Parent.Left;

        end else

        begin

        shape_comp[shape_no].Top := pt.y-shape_comp[shape_no].Height-200-(clip_nesne as TRzPanel).Top;

        shape_comp[shape_no].Left := pt.x-shape_comp[shape_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery66.Close;

        DataModule1.ADOQuery66.SQL.Clear;

        DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_left=”’+inttostr(shape_comp[shape_no].Left)+”’,’+

                                       ‘shape_top=”’+inttostr(shape_comp[shape_no].Top)+”’ WHERE shape_no = ‘+””+inttostr(shape_no)+””);

        DataModule1.ADOQuery66.ExecSQL;

        end;

      end else

      begin

        shape_comp[shape_no].Top := pt.y-shape_comp[shape_no].Height-200;

        shape_comp[shape_no].Left := pt.x-shape_comp[shape_no].Width;

        DataModule1.ADOQuery66.Close;

        DataModule1.ADOQuery66.SQL.Clear;

        DataModule1.ADOQuery66.SQL.Add(‘UPDATE SHAPE SET shape_left=”’+inttostr(shape_comp[shape_no].Left)+”’,’+

                                       ‘shape_top=”’+inttostr(shape_comp[shape_no].Top)+”’ WHERE shape_no = ‘+””+inttostr(shape_no)+””);

        DataModule1.ADOQuery66.ExecSQL;

      end;


    end else SHAPE_EKLE:=false;

  end;




  if SEKIL_EKLE then

  begin

      if (not sekil_created) then

    begin

      sekil_no:=sekil_no+1;

      if (PAGE.ActivePage=PAGE_1) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then sekil_comp[sekil_no] := TJvShapedButton.Create(SCADA_FRM.Pan7);

      sekil_comp[sekil_no].OnClick:=dyn_sekil_Click;

      sekil_comp[sekil_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      sekil_comp[sekil_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      sekil_comp[sekil_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      sekil_comp[sekil_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      sekil_comp[sekil_no].Width:=100;

      sekil_comp[sekil_no].Height:=100;

      sekil_comp[sekil_no].ButtonShape:=sekil2_tipi[0];

      sekil_comp[sekil_no].PopupMenu:= PopupMenu1;

      sekil_comp[sekil_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      sekil_comp[sekil_no].Name:=’Sekil’+inttostr(sekil_no);

      sekil_comp[sekil_no].Caption:=”;

      //shape_comp.Caption:=’Shape’+inttostr(shape_no);

      created_nesne:=sekil_comp[sekil_no];

      if (PAGE.ActivePage=PAGE_1) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then sekil_comp[sekil_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery67.Close;

          DataModule1.ADOQuery67.SQL.Clear;

          DataModule1.ADOQuery67.SQL.Add(‘Insert into SEKIL(sekil_no,sekil_name,sekil_width,sekil_height,sekil_tipi,sekil_color,sekil_anim_active,’);

          DataModule1.ADOQuery67.SQL.Add(‘sekil_anim_tag,sekil_high_color,sekil_low_color,sekil_left,sekil_top,sekil_parent) values (‘+

          ””+inttostr(sekil_no)+”’,’+””+sekil_comp[sekil_no].Name+”’,’+””+inttostr(sekil_comp[sekil_no].Width)+”’,’+””+inttostr(sekil_comp[sekil_no].Height)+”’,’+””+inttostr(0)+

          ”’,’+””+colortostring(sekil_comp[sekil_no].Brush.Color)+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(sekil_comp[sekil_no].Color)+”’,’+””+colortostring(sekil_comp[sekil_no].Brush.Color)+

          ”’,’+””+inttostr(sekil_comp[sekil_no].Left)+”’,’+””+inttostr(sekil_comp[sekil_no].Top)+”’,’+””+sekil_comp[sekil_no].Parent.Name+”’)’);

          DataModule1.ADOQuery67.ExecSQL;

    end;

    sekil_created:=True;

    if not sekil_form_clicked then

    begin

      if ((clip and (not clip_out)) or copy) then

      begin

        if copy and (clip_nesne.ClassName = ‘TJvShapedButton’) then

        begin

        sekil_comp[sekil_no].Top := pt.y-sekil_comp[sekil_no].Height-200-(clip_nesne as TJvShapedButton).parent.Top;

        sekil_comp[sekil_no].Left := pt.x-sekil_comp[sekil_no].Width-(clip_nesne as TJvShapedButton).parent.Left;

        DataModule1.ADOQuery67.Close;

        DataModule1.ADOQuery67.SQL.Clear;

        DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_left=”’+inttostr(sekil_comp[sekil_no].Left)+”’,’+

                                       ‘sekil_top=”’+inttostr(sekil_comp[sekil_no].Top)+”’ WHERE sekil_no = ‘+””+inttostr(sekil_no)+””);

        DataModule1.ADOQuery67.ExecSQL;

        end;

        if (clip_nesne.ClassName = ‘TRzPanel’) then

        begin

        sekil_comp[sekil_no].Top := pt.y-sekil_comp[sekil_no].Height-200-(clip_nesne as TRzPanel).Top;

        sekil_comp[sekil_no].Left := pt.x-sekil_comp[sekil_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery67.Close;

        DataModule1.ADOQuery67.SQL.Clear;

        DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_left=”’+inttostr(sekil_comp[sekil_no].Left)+”’,’+

                                       ‘sekil_top=”’+inttostr(sekil_comp[sekil_no].Top)+”’ WHERE sekil_no = ‘+””+inttostr(sekil_no)+””);

        DataModule1.ADOQuery67.ExecSQL;

        end;


      end else

      begin

      sekil_comp[sekil_no].Top := pt.y-sekil_comp[sekil_no].Height-200;

      sekil_comp[sekil_no].Left := pt.x-sekil_comp[sekil_no].Width;

        DataModule1.ADOQuery67.Close;

        DataModule1.ADOQuery67.SQL.Clear;

        DataModule1.ADOQuery67.SQL.Add(‘UPDATE SEKIL SET sekil_left=”’+inttostr(sekil_comp[sekil_no].Left)+”’,’+

                                       ‘sekil_top=”’+inttostr(sekil_comp[sekil_no].Top)+”’ WHERE sekil_no = ‘+””+inttostr(sekil_no)+””);

        DataModule1.ADOQuery67.ExecSQL;

      end;


    end else SEKIL_EKLE:=false;

  end;



  if IMG_EKLE then

  begin

      if (not img_created) then

    begin

      img_no:=img_no+1;

      if (PAGE.ActivePage=PAGE_1) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then img_comp[img_no] := TImage.Create(SCADA_FRM.Pan7);

      img_comp[img_no].OnClick:=dyn_img_Click;

      img_comp[img_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      img_comp[img_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      img_comp[img_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      img_comp[img_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      img_comp[img_no].Width:=100;

      img_comp[img_no].Height:=100;

      img_comp[img_no].PopupMenu:= PopupMenu1;

      img_comp[img_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      img_comp[img_no].Name:=’Img’+inttostr(img_no);


      img_comp[img_no].Stretch := true;  // to make it as large as Image1

      img_comp[img_no].Proportional := true;  // to keep width/height ratio

      img_comp[img_no].Picture.Bitmap:= nil; // clear previous image

      d.GetBitmap(0, img_comp[img_no].Picture.Bitmap);

      img_comp[img_no].Enabled:=true;


      created_nesne:=img_comp[img_no];

      if (PAGE.ActivePage=PAGE_1) then img_comp[img_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then img_comp[img_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then img_comp[img_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then img_comp[img_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then img_comp[img_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then img_comp[img_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then img_comp[img_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery68.Close;

          DataModule1.ADOQuery68.SQL.Clear;

          DataModule1.ADOQuery68.SQL.Add(‘Insert into IMG(img_no,img_name,img_width,img_height,img_picture,img_anim_active,’);

          DataModule1.ADOQuery68.SQL.Add(‘img_anim_tag,img_left,img_top,img_parent) values (‘+

          ””+inttostr(img_no)+”’,’+””+img_comp[img_no].Name+”’,’+””+inttostr(img_comp[img_no].Width)+”’,’+””+inttostr(img_comp[img_no].Height)+”’,’+””+”+

          ”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+inttostr(img_comp[img_no].Left)+”’,’+””+inttostr(img_comp[img_no].Top)+”’,’+””+img_comp[img_no].Parent.Name+”’)’);

          DataModule1.ADOQuery68.ExecSQL;

    end;

    img_created:=True;

    if not img_form_clicked then

    begin

      if ((clip and (not clip_out)) or copy) then

      begin

        if copy and (clip_nesne.ClassName = ‘TImage’) then

        begin

        img_comp[img_no].Top := pt.y-img_comp[img_no].Height-200-(clip_nesne as TImage).parent.Top;

        img_comp[img_no].Left := pt.x-img_comp[img_no].Width-(clip_nesne as TImage).parent.Left;

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_left=”’+inttostr(img_comp[img_no].Left)+”’,’+

                                       ‘img_top=”’+inttostr(img_comp[img_no].Top)+”’ WHERE img_no = ‘+””+inttostr(img_no)+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

        if (clip_nesne.ClassName = ‘TRzPanel’) then

        begin

        img_comp[img_no].Top := pt.y-img_comp[img_no].Height-200-(clip_nesne as TRzPanel).Top;

        img_comp[img_no].Left := pt.x-img_comp[img_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_left=”’+inttostr(img_comp[img_no].Left)+”’,’+

                                       ‘img_top=”’+inttostr(img_comp[img_no].Top)+”’ WHERE img_no = ‘+””+inttostr(img_no)+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;


      end else

      begin

      img_comp[img_no].Top := pt.y-img_comp[img_no].Height-200;

      img_comp[img_no].Left := pt.x-img_comp[img_no].Width;

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE IMG SET img_left=”’+inttostr(img_comp[img_no].Left)+”’,’+

                                       ‘img_top=”’+inttostr(img_comp[img_no].Top)+”’ WHERE img_no = ‘+””+inttostr(img_no)+””);

        DataModule1.ADOQuery68.ExecSQL;

      end;


    end else IMG_EKLE:=false;

  end;


  if ANIM_EKLE then

  begin

      if (not anim_created) then

    begin

      anim_no:=anim_no+1;

      if (PAGE.ActivePage=PAGE_1) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then anim_comp[anim_no] := TJvBmpAnimator.Create(SCADA_FRM.Pan7);

      anim_comp[anim_no].OnClick:=dyn_anim_Click;

      anim_comp[anim_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      anim_comp[anim_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      anim_comp[anim_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      anim_comp[anim_no].NumFrames :=3;

      anim_comp[anim_no].Width:=imglist_comp[1].Width;

      anim_comp[anim_no].Height:=imglist_comp[1].Height;

      //anim_comp[anim_no].PopupMenu:= PopupMenu1;

      //anim_comp[anim_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      anim_comp[anim_no].Name:=’Anim’+inttostr(anim_no);


      anim_comp[anim_no].AutoSize := true;  // to make it as large as Image1

      anim_comp[anim_no].Images:= imglist_comp[1];

      anim_comp[anim_no].Enabled:=true;


      created_nesne:=anim_comp[anim_no];

      if (PAGE.ActivePage=PAGE_1) then anim_comp[anim_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then anim_comp[anim_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then anim_comp[anim_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then anim_comp[anim_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then anim_comp[anim_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then anim_comp[anim_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then anim_comp[anim_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery68.Close;

          DataModule1.ADOQuery68.SQL.Clear;

          DataModule1.ADOQuery68.SQL.Add(‘Insert into ANIM(anim_no,anim_name,anim_width,anim_height,anim_list,anim_anim_active,’);

          DataModule1.ADOQuery68.SQL.Add(‘anim_anim_tag,anim_left,anim_top,anim_parent) values (‘+

          ””+inttostr(anim_no)+”’,’+””+anim_comp[anim_no].Name+”’,’+””+inttostr(anim_comp[anim_no].Width)+”’,’+””+inttostr(anim_comp[anim_no].Height)+”’,’+””+’1’+

          ”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+inttostr(anim_comp[anim_no].Left)+”’,’+””+inttostr(anim_comp[anim_no].Top)+”’,’+””+anim_comp[anim_no].Parent.Name+”’)’);

          DataModule1.ADOQuery68.ExecSQL;

    end;


    anim_created:=True;

    if not anim_form_clicked then

    begin

      if ((clip and (not clip_out)) or copy) then

      begin

        if copy and (clip_nesne.ClassName = ‘TJvBmpAnimator’) then

        begin

        anim_comp[anim_no].Top := pt.y-anim_comp[anim_no].Height-200-(clip_nesne as TJvBmpAnimator).parent.Top;

        anim_comp[anim_no].Left := pt.x-anim_comp[anim_no].Width-(clip_nesne as TJvBmpAnimator).parent.Left;

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_left=”’+inttostr(anim_comp[anim_no].Left)+”’,’+

                                       ‘anim_top=”’+inttostr(anim_comp[anim_no].Top)+”’ WHERE anim_no = ‘+””+inttostr(anim_no)+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;

        if (clip_nesne.ClassName = ‘TRzPanel’) then

        begin

        anim_comp[anim_no].Top := pt.y-anim_comp[anim_no].Height-200-(clip_nesne as TRzPanel).Top;

        anim_comp[anim_no].Left := pt.x-anim_comp[anim_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_left=”’+inttostr(anim_comp[anim_no].Left)+”’,’+

                                       ‘anim_top=”’+inttostr(anim_comp[anim_no].Top)+”’ WHERE anim_no = ‘+””+inttostr(anim_no)+””);

        DataModule1.ADOQuery68.ExecSQL;

        end;


      end else

      begin

      anim_comp[anim_no].Top := pt.y-anim_comp[anim_no].Height-200;

      anim_comp[anim_no].Left := pt.x-anim_comp[anim_no].Width;

        DataModule1.ADOQuery68.Close;

        DataModule1.ADOQuery68.SQL.Clear;

        DataModule1.ADOQuery68.SQL.Add(‘UPDATE ANIM SET anim_left=”’+inttostr(anim_comp[anim_no].Left)+”’,’+

                                       ‘anim_top=”’+inttostr(anim_comp[anim_no].Top)+”’ WHERE anim_no = ‘+””+inttostr(anim_no)+””);

        DataModule1.ADOQuery68.ExecSQL;

      end;


    end else ANIM_EKLE:=false;

  end;


  if ARROW_EKLE then

  begin

      if (not arrow_created) then

    begin

      arrow_no:=arrow_no+1;

      if (PAGE.ActivePage=PAGE_1) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then arrow_comp[arrow_no] := TVrArrow.Create(SCADA_FRM.Pan7);

      arrow_comp[arrow_no].OnClick:=dyn_arrow_Click;

      arrow_comp[arrow_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      arrow_comp[arrow_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      arrow_comp[arrow_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      //arrow_comp[arrow_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      arrow_comp[arrow_no].Width:=100;

      arrow_comp[arrow_no].Height:=100;

      arrow_comp[arrow_no].Direction:=arrow_tipi[0];

      //arrow_comp[arrow_no].PopupMenu:= PopupMenu1;

      //arrow_comp[arrow_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      arrow_comp[arrow_no].Name:=’arrow’+inttostr(arrow_no);

      //arrow_comp.Caption:=’arrow’+inttostr(arrow_no);

      created_nesne:=arrow_comp[arrow_no];

      if (PAGE.ActivePage=PAGE_1) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then arrow_comp[arrow_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery66.Close;

          DataModule1.ADOQuery66.SQL.Clear;

          DataModule1.ADOQuery66.SQL.Add(‘Insert into ARROW(arrow_no,arrow_name,arrow_width,arrow_height,arrow_tipi,arrow_color,arrow_anim_active,’);

          DataModule1.ADOQuery66.SQL.Add(‘arrow_anim_tag,arrow_high_color,arrow_low_color,arrow_left,arrow_top,arrow_parent) values (‘+

          ””+inttostr(arrow_no)+”’,’+””+arrow_comp[arrow_no].Name+”’,’+””+inttostr(arrow_comp[arrow_no].Width)+”’,’+””+inttostr(arrow_comp[arrow_no].Height)+”’,’+””+inttostr(0)+

          ”’,’+””+colortostring(arrow_comp[arrow_no].Color)+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(arrow_comp[arrow_no].Palette.High)+”’,’+””+colortostring(arrow_comp[arrow_no].Palette.Low)+

          ”’,’+””+inttostr(arrow_comp[arrow_no].Left)+”’,’+””+inttostr(arrow_comp[arrow_no].Top)+”’,’+””+arrow_comp[arrow_no].Parent.Name+”’)’);

          DataModule1.ADOQuery66.ExecSQL;

    end;

    arrow_created:=True;

     if not arrow_form_clicked then

    begin

      if ((clip and (not clip_out)) or copy) then

      begin

        if copy and (clip_nesne.ClassName = ‘TVrArrow’) then

        begin

        arrow_comp[arrow_no].Top := pt.y-arrow_comp[arrow_no].Height-200-(SCADA_FRM.clip_nesne as TVrArrow).Parent.Top;

        arrow_comp[arrow_no].Left := pt.x-arrow_comp[arrow_no].Width-(SCADA_FRM.clip_nesne as TVrArrow).Parent.Left;

        end else

        begin

        arrow_comp[arrow_no].Top := pt.y-arrow_comp[arrow_no].Height-200-(clip_nesne as TRzPanel).Top;

        arrow_comp[arrow_no].Left := pt.x-arrow_comp[arrow_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery66.Close;

        DataModule1.ADOQuery66.SQL.Clear;

        DataModule1.ADOQuery66.SQL.Add(‘UPDATE ARROW SET arrow_left=”’+inttostr(arrow_comp[arrow_no].Left)+”’,’+

                                       ‘arrow_top=”’+inttostr(arrow_comp[arrow_no].Top)+”’ WHERE arrow_no = ‘+””+inttostr(arrow_no)+””);

        DataModule1.ADOQuery66.ExecSQL;

        end;

      end else

      begin

        arrow_comp[arrow_no].Top := pt.y-arrow_comp[arrow_no].Height-200;

        arrow_comp[arrow_no].Left := pt.x-arrow_comp[arrow_no].Width;

        DataModule1.ADOQuery66.Close;

        DataModule1.ADOQuery66.SQL.Clear;

        DataModule1.ADOQuery66.SQL.Add(‘UPDATE ARROW SET arrow_left=”’+inttostr(arrow_comp[arrow_no].Left)+”’,’+

                                       ‘arrow_top=”’+inttostr(arrow_comp[arrow_no].Top)+”’ WHERE arrow_no = ‘+””+inttostr(arrow_no)+””);

        DataModule1.ADOQuery66.ExecSQL;

      end;


    end else ARROW_EKLE:=false;

  end;


  if KADRAN_EKLE then

  begin

    if (not kadran_created) then

    begin

      kadran_no:=kadran_no+1;

      if (PAGE.ActivePage=PAGE_1) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then kadran_comp[kadran_no] := TVrAngularMeter.Create(SCADA_FRM.Pan7);

      kadran_comp[kadran_no].OnClick:=dyn_kadran_Click;

      kadran_comp[kadran_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      kadran_comp[kadran_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      kadran_comp[kadran_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      kadran_comp[kadran_no].Color:=clWhite;

      //kadran_comp[kadran_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      //kadran_comp[kadran_no].PopupMenu:= PopupMenu1;

      kadran_comp[kadran_no].Name:=’kadran’+inttostr(kadran_no);


      kadran_comp[kadran_no].Width:=200;

      created_nesne:=kadran_comp[kadran_no];

      kadran_comp[kadran_no].Decimals:=0;

      kadran_comp[kadran_no].LabelsFont.Size:=12;

      kadran_comp[kadran_no].LabelsFont.Color:=clBlack;

      if (PAGE.ActivePage=PAGE_1) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then kadran_comp[kadran_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery63.Close;

          DataModule1.ADOQuery63.SQL.Clear;

          DataModule1.ADOQuery63.SQL.Add(‘Insert into KADRAN(kadran_no,kadran_type,kadran_name,kadran_width,kadran_height,kadran_font_size,kadran_font_name,kadran_font_color,kadran_font_style,’);

          DataModule1.ADOQuery63.SQL.Add(‘kadran_color,kadran_allow,kadran_anim_active,kadran_anim_tag,kadran_anim_set_color,kadran_anim_reset_color,kadran_event_tag,kadran_left,kadran_top,kadran_parent,virgul,max_deger,min_deger) values (‘+

          ””+inttostr(kadran_no)+”’,’+””+’IN’+”’,’+””+kadran_comp[kadran_no].Name+”’,’+””+inttostr(kadran_comp[kadran_no].Width)+”’,’+””+inttostr(kadran_comp[kadran_no].Height)+

          ”’,’+””+inttostr(kadran_comp[kadran_no].LabelsFont.Size)+”’,’+””+kadran_comp[kadran_no].LabelsFont.Name+”’,’+””+colortostring(kadran_comp[kadran_no].LabelsFont.Color)+”’,’+””+GetSetProp(kadran_comp[kadran_no].LabelsFont, ‘Style’, True)+

          ”’,’+””+colortostring(kadran_comp[kadran_no].Color)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(kadran_comp[kadran_no].Color)+

          ”’,’+””+colortostring(kadran_comp[kadran_no].Color)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(kadran_comp[kadran_no].Left)+”’,’+””+inttostr(kadran_comp[kadran_no].Top)+”’,’+””+kadran_comp[kadran_no].Parent.Name+”’,’+””+’0’+”’,’+””+’100’+”’,’+””+’0’+”’)’);

          DataModule1.ADOQuery63.ExecSQL;



    end;

    kadran_created:=True;

    if not kadran_form_clicked then

    begin

      if clip and (not clip_out) then

      begin

        kadran_comp[kadran_no].Top := pt.y-kadran_comp[kadran_no].Height-200-(clip_nesne as TRzPanel).Top;

        kadran_comp[kadran_no].Left := pt.x-kadran_comp[kadran_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE KADRAN SET kadran_left=”’+inttostr(kadran_comp[kadran_no].Left)+”’,’+

                                       ‘kadran_top=”’+inttostr(kadran_comp[kadran_no].Top)+”’ WHERE kadran_name = ‘+””+kadran_comp[kadran_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;


      end else

      begin


        kadran_comp[kadran_no].Top := pt.y-kadran_comp[kadran_no].Height-200;

        kadran_comp[kadran_no].Left := pt.x-kadran_comp[kadran_no].Width;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE KADRAN SET kadran_left=”’+inttostr(kadran_comp[kadran_no].Left)+”’,’+

                                       ‘kadran_top=”’+inttostr(kadran_comp[kadran_no].Top)+”’ WHERE kadran_name = ‘+””+kadran_comp[kadran_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;

      end;


    end else KADRAN_EKLE:=false;

  end;


   if TERMO_EKLE then

  begin

    if (not termo_created) then

    begin

      termo_no:=termo_no+1;

      if (PAGE.ActivePage=PAGE_1) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan1);

      if (PAGE.ActivePage=PAGE_2) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan2);

      if (PAGE.ActivePage=PAGE_3) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan3);

      if (PAGE.ActivePage=PAGE_4) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan4);

      if (PAGE.ActivePage=PAGE_5) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan5);

      if (PAGE.ActivePage=PAGE_6) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan6);

      if (PAGE.ActivePage=PAGE_7) then termo_comp[termo_no] := TvrThermoMeter.Create(SCADA_FRM.Pan7);

      termo_comp[termo_no].OnClick:=dyn_termo_Click;

      termo_comp[termo_no].OnMouseDown :=SCADA_FRM.ControlMouseDown;

      termo_comp[termo_no].OnMouseMove := SCADA_FRM.ControlMouseMove;

      termo_comp[termo_no].OnMouseUp := SCADA_FRM.ControlMouseUp;

      //termo_comp[termo_no].Color:=clWhite;

      //termo_comp[termo_no].OnMouseEnter :=dyn_nesne_Mause_Ender;

      //termo_comp[termo_no].PopupMenu:= PopupMenu1;

      termo_comp[termo_no].Name:=’termo’+inttostr(termo_no);

      termo_comp[termo_no].Scale.Offset:=20;

      termo_comp[termo_no].Scale.SmallStep:=5;

      termo_comp[termo_no].Scale.Step:=10;

      termo_comp[termo_no].Width:=100;

      created_nesne:=termo_comp[termo_no];


      if (PAGE.ActivePage=PAGE_1) then termo_comp[termo_no].Parent := SCADA_FRM.Pan1;

      if (PAGE.ActivePage=PAGE_2) then termo_comp[termo_no].Parent := SCADA_FRM.Pan2;

      if (PAGE.ActivePage=PAGE_3) then termo_comp[termo_no].Parent := SCADA_FRM.Pan3;

      if (PAGE.ActivePage=PAGE_4) then termo_comp[termo_no].Parent := SCADA_FRM.Pan4;

      if (PAGE.ActivePage=PAGE_5) then termo_comp[termo_no].Parent := SCADA_FRM.Pan5;

      if (PAGE.ActivePage=PAGE_6) then termo_comp[termo_no].Parent := SCADA_FRM.Pan6;

      if (PAGE.ActivePage=PAGE_7) then termo_comp[termo_no].Parent := SCADA_FRM.Pan7;

          DataModule1.ADOQuery63.Close;

          DataModule1.ADOQuery63.SQL.Clear;

          DataModule1.ADOQuery63.SQL.Add(‘Insert into TERMO(termo_no,termo_type,termo_name,termo_width,termo_height,termo_font_size,termo_font_name,termo_font_color,termo_font_style,’);

          DataModule1.ADOQuery63.SQL.Add(‘termo_color,termo_allow,termo_anim_active,termo_anim_tag,termo_anim_set_color,termo_anim_reset_color,termo_event_tag,termo_left,termo_top,termo_parent,virgul,max_deger,min_deger) values (‘+

          ””+inttostr(termo_no)+”’,’+””+’IN’+”’,’+””+termo_comp[termo_no].Name+”’,’+””+inttostr(termo_comp[termo_no].Width)+”’,’+””+inttostr(termo_comp[termo_no].Height)+

          ”’,’+””+inttostr(termo_comp[termo_no].Font.Size)+”’,’+””+termo_comp[termo_no].Font.Name+”’,’+””+colortostring(termo_comp[termo_no].Font.Color)+”’,’+””+GetSetProp(termo_comp[termo_no].Font, ‘Style’, True)+

          ”’,’+””+colortostring(termo_comp[termo_no].Color)+”’,’+””+’true’+”’,’+””+’true’+”’,’+””+’ANNIM_TAG’+”’,’+””+colortostring(termo_comp[termo_no].Color)+

          ”’,’+””+colortostring(termo_comp[termo_no].Color)+”’,’+””+’EVENT_TAG’+”’,’+””+inttostr(termo_comp[termo_no].Left)+”’,’+””+inttostr(termo_comp[termo_no].Top)+”’,’+””+termo_comp[termo_no].Parent.Name+”’,’+””+’0’+”’,’+””+’100’+”’,’+””+’0’+”’)’);

          DataModule1.ADOQuery63.ExecSQL;



    end;

    termo_created:=True;

    if not termo_form_clicked then

    begin

      if clip and (not clip_out) then

      begin

        termo_comp[termo_no].Top := pt.y-termo_comp[termo_no].Height-200-(clip_nesne as TRzPanel).Top;

        termo_comp[termo_no].Left := pt.x-termo_comp[termo_no].Width-(clip_nesne as TRzPanel).Left;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE TERMO SET termo_left=”’+inttostr(termo_comp[termo_no].Left)+”’,’+

                                       ‘termo_top=”’+inttostr(termo_comp[termo_no].Top)+”’ WHERE termo_name = ‘+””+termo_comp[termo_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;


      end else

      begin


        termo_comp[termo_no].Top := pt.y-termo_comp[termo_no].Height-200;

        termo_comp[termo_no].Left := pt.x-termo_comp[termo_no].Width;

        DataModule1.ADOQuery63.SQL.Clear;

        DataModule1.ADOQuery63.SQL.Add(‘UPDATE TERMO SET termo_left=”’+inttostr(termo_comp[termo_no].Left)+”’,’+

                                       ‘termo_top=”’+inttostr(termo_comp[termo_no].Top)+”’ WHERE termo_name = ‘+””+termo_comp[termo_no].Name+””);

        DataModule1.ADOQuery63.ExecSQL;

      end;


    end else TERMO_EKLE:=false;

  end;


end;


end.