İçindekiler

10. Fonksiyonlar

Sorgularda bazı değerlere hızlı bir şekilde ulaşmayı sağlayan veritabanı fonksiyonlarıdır. Şema listesinde fonksiyonlar kısmından sürükle bırak ile sorgu üzerine ilave edilirler. Fonksiyonlar ve örnek kullanımları:

10.1. lq_safediv

İki sayıyı böler. Yalnız bölen kısmındaki rakam sıfır ise hata vermez, sıfır olarak sonucu döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT lq_safediv(5, 3)

10.2. func_malzemefiyatal

Stok kartının belirtilen maliyet türüne göre maliyet bilgisini döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT
     stokkartkodu, aciklama,
     (SELECT fiyati * dkuru
          FROM func_malzemefiyatal(stok._key::bigint, 'sonalis'::text, '2016-04-01'::date,
          {secilifirma}::smallint, 
          {secilidonem}::smallint, False, 
          array[]::bigint[],
          '23:59:59'::time,
          1::numeric) ) as sonalisfiyati
FROM scf_stokkart stok 
WHERE stok._level1={secilifirma}

10.3. func_stokfiilimiktaral

Belirtilen stoğa ait fiili miktar bilgisini ana birim cinsinden döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT
    stokkartkodu, aciklama,
   (SELECT miktar FROM func_stokfiilimiktaral(_key::bigint, {secilifirma}::smallint,
          {secilidonem}::smallint, '{tarih}'::date, {depokeys}::bigint[])) as miktar
FROM scf_stokkart stok
WHERE stok._level1={secilifirma}

10.4. func_stokgercekmiktaral

Belirtilen stoğa ait gerçek miktar bilgisini anabirim cinsinden döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT
    stokkartkodu, aciklama,
   (SELECT miktar FROM func_stokgercekmiktaral(_key::bigint, {secilifirma}::smallint,
          {secilidonem}::smallint, '{tarih}'::date, {depokeys}::bigint[])) as miktar
FROM scf_stokkart stok
WHERE stok._level1={secilifirma}

Depo keylerini örnekteki gibi verebilirsiniz:

ARRAY[1386,10330151,4901303]::bigint[]

10.5. func_cariyerelbakiyeal

Belirtilen parametrelere göre carinin yerel para cinsinden borç, alacak ve bakiyesini döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT carikartkodu, unvan,
     (SELECT bakiye
          FROM func_cariyerelbakiyeal(_key::bigint, 
          {secilifirma}::smallint, {secilidonem}::smallint, 
          '{tarih}'::date, False, {subekeys}::bigint[])) as bakiye
FROM scf_carikart cari
WHERE cari._level1={secilifirma}

10.6. func_caridovizbakiyeal

Belirtilen parametrelere göre carinin dövizli para cinsinden borç, alacak ve bakiyesini döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT carikartkodu, unvan,
     (SELECT bakiye FROM func_caridovizbakiyeal(_key::bigint, {secilifirma}::smallint,
          {secilidonem}::smallint, '{tarih}'::date, _key_sis_doviz::bigint, 
           False, {subekeys}::bigint[]) ) as bakiye
FROM scf_carikart cari
WHERE cari._level1={secilifirma}

10.7. func_kasayerelbakiyeal

Belirtilen kasaya ait bakiye bilgisini yerel para birimi cinsinden döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT
    kasakartkodu, adi,
    (SELECT bakiye FROM func_kasayerelbakiyeal(_key::bigint, 
    {secilifirma}::smallint, 
    {secilidonem}::smallint,         
    '{tarih}'::date)) as yerelbakiye
FROM scf_kasakart
WHERE _level1={secilifirma}

10.8. func_kasadovizbakiyeal

Belirtilen kasaya ait döviz bakiye ve bu bakiyenin yerel para cinsinden karşılığını döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT
      kasakartkodu, adi,
      (SELECT dovizbakiye 
      FROM func_kasadovizbakiyeal(_key::bigint, {secilifirma}::smallint,     
      {secilidonem}::smallint, 
      '{tarih}'::date, 9146247893236057577::bigint)) as eurobakiye
FROM scf_kasakart
WHERE _level1={secilifirma}

10.9. func_bankabakiyeal

Belirtilen bankaya ait bakiye (hesabın para birim cinsine göre) döndürür.

Parametreler:

Sonuç:

Örnek Kullanım:

SELECT hesapkodu, hesapadi,
 (SELECT bakiye 
   FROM func_bankabakiyeal(_key::bigint, 
   {secilifirma}::smallint, {secilidonem}::smallint, 
   '{tarih}'::date)
 ) as bakiye
FROM bcs_bankahesabi
WHERE _level1={secilifirma}