# Input

inSCADA, input özelliği ile text, checkbox, color gibi seçenekler ile hızlı ve pratik bir şekilde veri girmenize ve seçimler yapmanıza olanak sağlar.

<figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/Be8lO4SyP5BeEt2CSWkU/input1.PNG" alt=""><figcaption><p><em>Resim 1 : Animation Input Object</em></p></figcaption></figure>

Resim 1' de görülen (1) numaralı alanda veri giriş şekli "TAG" veya "EXPRESSION" olarak seçilebilir. Böylelikle veri girişi "TAG" yardımıyla doğrudan yapabileceği gibi "EXPRESSION" yardımıyla ise oluşturulacak koda bağlı olarak ve belirli koşullarda değer girişi yapılabilir.

Resim 1' de görülen (2) numaralı alanda veri giriş şekli kontrol edilebilir. Konfigurasyonda "Enter" seçilmesi durumunda veri girişi klavyede ENTER tuşuna basıldıktan sonra yapılacaktır. Konfigurasyonda "Focus out" seçilmesi durumunda ise veri girişi herhangi bir yere tıklandığında yapılacaktır.&#x20;

Resim 1' de görülen (3) numaralı alanda ise veri giriş türleri görülebilir. Bunlar ise;

* [#text](#text "mention")
* [#checkbox](#checkbox "mention")
* [#color](#color "mention")
* [#number](#number "mention")
* [#password](#password "mention")
* **Date**
* **Datetime**
* **Time**
* **Month**
* [#select](#select "mention")

olarak sıralanabilir.

### Text

inSCADA Input'un Text özelliği ile tanımlanan bir string değişkeni animasyon sayfası üzerinden giriş yapmaya olanak sağlar.

<figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/dFsq3ZV7J8Ef5fFDfN4g/input2.PNG" alt=""><figcaption><p><em>Resim 2 : Text Input with TAG</em></p></figcaption></figure>

Resim 2' de "test\_text" ismiyle tanımlanmış string bir değişkene TAG Type kullanarak doğrudan değer girişi yapılmıştır. &#x20;

<figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/KrGmpDCr4705z43BP2wi/input3.PNG" alt=""><figcaption><p><em>Resim 3 : Text Input with EXPRESSION</em></p></figcaption></figure>

Resim 3' de "test\_text" ismiyle tanımlanmış string bir değişkene EXPRESSION Type kullanılarak değer girişi yapılmıştır. Burada kullanıcının belirleyeceği koşullara göre veri girişi yapılabilir.

```javascript
var myFunc = function(value){
    ins.consoleLog("Value: " +value);
    ins.setVariableValue("test_text",{value:value});
}

return {
  value: "Text",
  customFunc: myFunc.toString()

};
```

### Checkbox

inSCADA Checkbox Input yardımıyla bir cihazı, süreci veya işlemi etkinleştirme veya devre dışı bırakma gibi temel kontrol işlevlerini gerçekleştirmenize olanak sağlar. Kullanıcılar bir cihazın veya durumun aktif veya pasif olma durumlarını kontrol etmek amacıyla checkbox özelliğini kullanabilirler.

### Color

inSCADA, Color özelliği ile animasyon ekranında bir dikdörtgen veya SVG editörüyle oluşturulan herhangi bir nesnenin rengini hızlı ve kolay bir şekilde belirlemenize ve değiştirmenize olanak tanır. Seçtiğiniz rengin kodunu bir değişkene atayabilir ve animasyon ekranında ihtiyacınız olduğunda bu kodu kullanarak rengi değiştirebilirsiniz. Bu özellik, renk değişikliklerini belirli bir yerde ve zamanda çağırarak animasyon ekranınızı özelleştirmenizi sağlar.

<div><figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/Dsjc6POe2qV3KPdsiTJa/input11.PNG" alt=""><figcaption><p><em>Resim 4 : Color Input With TAG</em></p></figcaption></figure> <figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/2DIU7r5RFxRuhXhMGGP0/input13.PNG" alt=""><figcaption><p><em>Resim 5 : Color Input With EXPRESSION</em></p></figcaption></figure></div>

Resim 4'te bir dikdörtgen obje üzerinden renk belirleme işlemi, doğrudan tanımlı bir değişken üzerinden yapılmıştır. Resim 5'te ise bu işlem bir expression yardımıyla gerçekleştirilmiştir, bu expression yardımıyla ve yazılan koda göre kullanıcı belirli koşullara göre renk değişimini sağlayabilmektedir.&#x20;

```javascript
var myFunc = function(value){
    //ins.consoleLog("Value: " +value);
    ins.setVariableValue("test_color_load",{value:value});
}

return {
  value: ins.getVariableValue("test_color_load").value,
  customFunc: myFunc.toString()

};
```

Color Input ile tanımlı bir değişkene bilgisayar renk kodu string olarak atanabilir ve kullanıcı  istenilen objenin rengini; ki bu obje bir text, çizim veya bir trend grafik olabilir,  sadece renk seçici araç ile belirleyebilir. Resim 6' da bir trend grafikte kullanılan değişkenlerin referans renkleri Color Input kullanılarak değiştirilebilmektedir.

<figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/QarjoNKVJgqUy80bzr2b/input12.png" alt=""><figcaption><p><em>Resim 6 : Input Color and Treng Graph</em></p></figcaption></figure>

### Number

inSCADA, Number Input özelliği ile kullanıcıların sayı, miktar ,sıcaklık ve basınç değerleri, zaman aralıkları gibi sayısal verileri hızlı ve kolay bir şekilde ayarlamalarına olanak tanır. Number Input özelliği; veri girişi, süreç izleme ve kontrol süreçlerini daha etkili ve kullanıcı dostu hale getirir.

### Password

inSCADA, Password özelliği ile bir değerin set edilmesi veya bir animasyon sayfasına erişim gibi konularda sadece yetkili kullanıcılara erişim sağlanmasına yardımcı olur.\\

<div><figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/aNH60kd9OjOG7GMOGxFt/input4.PNG" alt=""><figcaption><p><em>Resim 4 : Password Input</em></p></figcaption></figure> <figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/I0E18xkjUYGTaxVo9Ugi/input5.PNG" alt=""><figcaption><p><em>Resim 5 : Set Operation with Password Control</em></p></figcaption></figure></div>

Resim 4'te "test\_pass" isimli string bir değişkene TAG Type kullanılarak şifre girişi yapılmıştır. Resim 5'te ise "test\_pass\_set" isimli değişkene bir değer set edilmeden önce Resim 4'te belirtilen şifrenin sorulması için gerekli ayar ekranı görülmektedir. inSCADA bu sayede kullanıcılarına şifre kontrolü ile işlem yapma olanağı saylamaktadır.&#x20;

<figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/O1DJZRAuzoN4ctjH3TjK/input10.PNG" alt="" width="375"><figcaption><p><em>Resim 6 : Set Operation With Password Control</em></p></figcaption></figure>

Resim 6' da  da görüldüğü gibi bir değeri set etme işleminde şifre olarak, tanımlı bir değişken kullanmak yerine doğrudan şifre girişi yaparakta korumalı set işlemi gerçekleştirilebilir. Böylece her set işlemi için benzersiz şifreler oluşturulabilir.

### Select

Kullanıcılar farklı parametrelerin veya ayarların belirli bir süreci veya cihazı nasıl etkileyebileceğini belirlemek için Select Input özelliğini kullanabilir. Bu özellik, kullanıcılara belirli bir listeden seçim yapma olanağı tanır. Kullanıcılar, listeden bir öğeyi seçerek belirli işlemleri gerçekleştirebilirler.

<figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/lR1lDgNNUUsDMszNOVSF/input6.png" alt=""><figcaption><p><em>Resim 6 : Input Select With EXPRESSION</em></p></figcaption></figure>

Resim 6 'da bir Input Select örneği görülmektedir. Options kısmında belirtilen "Bir Önceki Hafta" ve "Devam Eden Hafta" ifadeleri seçim listesinde(dropbox) kullanıcının göreceği, yapılacak işlemle ilgili anlamlı ifadelerdir. Bu listede belirtilen ifadelere göre kullanıcının bir seçim yapmasına olanak sağlanır. Yapılan seçime göre bir değer set edilebilir, bir fonksiyon çalıştırılabilir veya başka bir scriptte bulunan fonksiyona atıfta bulunularak çalıştırılabilir.

```javascript
 function dropbox_test() {
    if ((ins.getVariableValue("_CHOOSE_WEEKLOG").value)==1) {
        prev7dayBar();
    }
    if ((ins.getVariableValue("_CHOOSE_WEEKLOG").value)==0) {
        curr7dayBar();
    }
}

return {
    value:ins.getVariableValue("_CHOOSE_WEEKLOG").value,
    "Bir Önceki Hafta": {value:1,tagName:"_CHOOSE_WEEKLOG"},
    "Devam Eden Hafta": {value:0,tagName:"_CHOOSE_WEEKLOG"},
    customFunc:dropbox_test()
};
```

Yukarıdaki kodda; seçim listesinde belirtilen "Bir Önceki Hafta" ifadesi seçildiğinde "\_CHOOSE\_WEEKLOG" değişkenine "1" değeri atanır, "Devam Eden Hafta" ifadesi seçildiğinde ise "\_CHOOSE\_WEEKLOG" değişkenine "0" değeri atanır. Ardından customFunc ile "dropbox\_test" fonksiyonu çağırılmıştır.

<div align="left"><figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/7lGnIKD1E3S9ZkohNwI2/input7.png" alt=""><figcaption><p>Resim 7 : Input Select Runtime-1</p></figcaption></figure> <figure><img src="https://content.gitbook.com/content/0WKoYqjGEXoBJmDoxwvm/blobs/5a2Nu8ltix7gYkTAMoPS/input9.png" alt=""><figcaption><p>Resim 8 : Input Select Runtime-2</p></figcaption></figure></div>

Resim 7 ve Resim 8 'de seçim listesinde belirtilen "Bir Önceki Hafta" ve "Devam Eden Hafta" ifadelerinden birisinin seçilmesi ile bir bar grafiğinin animasyon ekranında değiştirilmesi ve kullanıcının bu grafik yardımıyla verilerini daha kolay ve etkin bir şekilde takip etmesi sağlanmıştır.
