# Num# - Komut dosyası ve grafik fonksiyonu

Num#(), bir metin dizesini sayısal bir değer olarak yorumlar, yani ikinci parametrede belirtilen biçimi kullanarak giriş dizesini bir sayıya dönüştürür. İkinci parametre atlanırsa, veri yükleme komut dosyasında ayarlanan ondalık ve binlik ayırıcıları kullanır. Özel ondalık ve binlik ayırıcı sembolleri isteğe bağlı parametrelerdir.

Söz Dizimi:

Num#(text[, format[, dec\_sep [, thou\_sep ] ] ])

Dönüş verileri türü: dual

Num#() fonksiyonu hem dize hem de sayı değeri içeren bir ikili değer döndürür. Fonksiyon, giriş ifadesinin metin gösterimini alır ve bir sayı oluşturur. Sayının biçimini değiştirmez: Çıktı, girişle aynı şekilde biçimlendirilir.

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| text | Değerlendirilecek metin dizesi. |
| format | İlk parametrede kullanılan sayı biçimini belirten dize. Atlanırsa, veri yükleme kod dosyasında ayarlanan ondalık ve binlik ayırıcılar kullanılır.<br><br>`Num#` fonksiyonu, örneğin farklı sayısal yapılar için birçok biçim seçeneğini destekler:<br><br>`#,##0`: ​Ondalık basamakları olmayan bir sayı görüntüler.<br><br>`#,##0.00`: ​İki ondalık basamağı olan bir sayı görüntüler.<br><br>`##0.00%`: ​Bir sayıyı iki ondalık basamağı olan bir yüzde olarak görüntüler.<br><br>`​#,##0;(#,##0)`: Negatif sayıları parantez içinde görünecek şekilde biçimlendirir.<br><br>`$#,##0.00`: Sayıları $ sembolü ile para birimi olarak biçimlendirir.<br><br>`​0.00E+0`: Sayıları bilimsel gösterimde görüntüler. |
| dec\_sep | Ondalık sayı ayırıcısını belirten dize. Atlanırsa, veri kod dosyasında ayarlanan DecimalSep değişkeninin değeri kullanılır.<br><br>`Num#` fonksiyonu, örneğin birçok ondalık sayı ayırıcı biçimini destekler:<br><br>Virgül ​' `,` ': Örneğin, bin dolar için `$1,000,00`.<br><br>Nokta ' `.` ':​ Örneğin, `€ 1,000.00`.<br><br>Kısa çizgi ' `-` ': Ondalık ayırıcı için geleneksel nokta veya virgül yerine kullanıldığında `¥1,000-00` gibi değerleri gösterir.<br><br>​Daha fazla bilgi için bkz. [DecimalSep](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/DecimalSep.htm). |
| thou\_sep | Binlik sayı ayırıcısını belirten dize. Atlanırsa, veri kod dosyasında ayarlanan ThousandSep değişkeninin değeri kullanılır.<br><br>`Num#` fonksiyonu, binlik sayı ayırıcısı için birçok seçeneği destekler:<br><br>Nokta ' `.` ': Binlik ayırıcı için nokta kullanır (bazı Avrupa formatlarında yaygındır), virgül ondalık ayırıcı ile birleştirildiğinde `$1.000,00` olarak görüntülenir.<br><br>Boşluk ​' ': Bazı Avrupa ülkelerinde yaygın olan binlik ayırıcı için boşluk kullanır. `€ 1 000.00` olarak görüntülenir.<br><br>Alt çizgi ​'`_`':​ Bazen teknik veya belirli bölgesel formatlarda kullanılan binlik ayırıcı için bir alt çizgi kullanır. `$1_000.00` gibi değerleri görüntüler.<br><br>​Daha fazla bilgi için bkz. [ThousandSep](https://help.qlik.com/tr-TR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/ThousandSep.htm). |

Örnek: Grafik ifadeleri

| Örnek | Sonuçlar (Döndürülen dize değeri) |
| --- | --- |
| `Num#( '35,648.31', '#', '.' , ',' )` | `35,648.31` dizesini ve `35648.31` sayısal değerini döndürür. |
| `Num#( ‘35 648.312’, '#', '.' , ',' )` | `35 648.312` dizesini ve `35648.312` sayısal değerini döndürür. |
| `Num#( '35.648,3123', '#', '.' , ',' )` | `35.648,3123` dizesini ve ` NULL  ` (`-`) sayısal değerini döndürür. |
| `Num#( '35 648,31234', '#', '.' , ',' )` | `35 648,31234` dizesini ve ` NULL  ` (`-`) sayısal değerini döndürür. |
| `Num#('1,234.56', '#,##0.00')` | `1,234.56` dizesini ve `1230.45` sayısal değerini döndürür. |
| `Num#('$1,230.45', '$#,##0.00')` | `$1,230.45` dizesini ve `1234.56` sayısal değerini döndürür. |
| `Num#('20220315', 'YYYYMMDD')` | `20220315` dizesini ve `20220315` sayısal değerini döndürür. |

## Örnek - Num# temel bilgileri

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterpretationFunctions/num_hash.htm)

#### Komut dosyası

Genel bakış

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * `ProductID`

  * `ProductName`

  * `SalesAmount`

* Bu örneği açıklamak üzere `ThousandSep` ve `DecimalSep` için standart ayarlar.

* `Num#` fonksiyonunu kullanan önceki bir yükleme. Yürütüldüğünde `FormattedSalesAmount` adında ek bir alan oluşturur.

Komut dosyası

```
SET ThousandSep=',';
SET DecimalSep='.';
Example:
LOAD
ProductID,
ProductName,
SalesAmount,
Num#(SalesAmount, '#.##0,00',',','.') AS FormattedSalesAmount
INLINE [
ProductID, ProductName, SalesAmount
1, Product A, '1.234,56'
2, Product B, '2.456,78'
3, Product C, '345,67'
4, Product D, '987,12'
5, Product E, '1.200,45'
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* ` ProductID
                                       `

* `ProductName`

* `SalesAmount`

* `FormattedSalesAmount`

Şu hesaplamayı oluşturun:

* Sayı biçimi için sistem ayarlarına göre alanın sayısal değerini görüntülemek üzere `=Num(FormattedSalesAmount)`.

Results table

| ProductID | ProductName | SalesAmount | FormattedSalesAmount | Num(FormattedSalesAmount) |
| --- | --- | --- | --- | --- |
| 1 | Product A | 1.234,56 | 1.234,56 | 1234.56 |
| 2 | Product B | 2.456,78 | 2.456,78 | 2456.78 |
| 3 | Product C | 345,67 | 345,67 | 345.67 |
| 4 | Product D | 987,12 | 987,12 | 987.12 |
| 5 | Product E | 1.200,45 | 1.200,45 | 1200.45 |

Bu örnekte, `Num#` fonksiyonunun `SalesAmount` verilerini orijinal metin biçiminden sayısal bir değere nasıl dönüştürdüğünü gözlemleyebilirsiniz.

## Örnek - Num# senaryosu

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/InterpretationFunctions/num_hash.htm)

#### Komut dosyası

Genel bakış

Bir veri kümesi, çeşitli ülkelerden farklı metin biçimlerinde satış verileri içerir. Verileri standartlaştırmak ve bir tabloda görüntülemek istiyoruz.

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * `Country`

  * `Product`

  * `Amount`

* `Amount` alanındaki değerleri dönüştürmek için `Num#` fonksiyonunu kullanan önceki bir yükleme.

Komut dosyası

```
Example:
LOAD
Country,
Product,
IF(Country = 'Germany', Num#(Amount, '#.##0,00', ',', '.'), Num#(Amount, '#,##0.00')) AS Amount
INLINE [
Country, Product, Amount
Germany, Product A, '1.234,56'
USA, Product B, '2,345.78'
Germany, Product C, '987,12'
USA, Product D, '1,200.45'
Germany, Product E, '345,67'
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* ` Product
                                       `

* ` Country
                                       `

* `Amount`

Şu hesaplamayı oluşturun:

* Sayı biçimi için sistem ayarlarında belirlenen `Amount` alanının sayısal değerini görüntülemek üzere `Num(Amount)`.

Results table

| Product | Country | Amount | Num(Amount) |
| --- | --- | --- | --- |
| Customer A | Germany | 1.234,56 | 1234.56 |
| Customer B | USA | 2,345.78 | 2345.78 |
| Customer C | Germany | 987,12 | 987.12 |
| Customer D | USA | 1,200.45 | 1200.45 |
| Customer E | Germany | 345,67 | 345.67 |

`Amount` sütununu `Num(Amount)` sütunuyla karşılaştırdığınızda, `  Num# ` fonksiyonu kullanılarak sunulan verilerin altta yatan sayısal değerleri değiştirdiğini ancak dize biçimini olduğu gibi koruduğunu görürsünüz. Örneğin, `Amount` sütununda `Germany` için tüm değerler ondalık ayırıcı olarak virgül kullanır, ancak `Num(Amount)` içindeki temel biçim tüm değerlerde nokta kullanır.