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ı:

İ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:

  • deger1 (numeric): Bölünen
  • deger2 (numeric): Bölen

Sonuç:

  • numeric

Örnek Kullanım:

SELECT lq_safediv(5, 3)

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

Parametreler:

  • prm_stokkey (bigint): Stok _key bilgisi
  • prm_tur (text): fiyat1..10, sonalis, sonsatis, songiris, soncikis, ortalamagiris, ortalamacikis, sonasip, sonvsip, maliyet, fifo, lifo, eldo, ortalamagirisirs, ortalamacikisirs gibi değerler yazılabilir.
  • prm_tarih (date): Fiyat bilgisi alınacak tarih
  • prm_firmakodu (smallint): Firma kısa kodu
  • prm_donemkodu (smallint): Dönem kısa kodu
  • prm_raporlamadovizegore (boolean): Raporlama dövizine göre hesaplansın mı
  • prm_depolar (bigint[]): Hangi depolar için bilgi getirilecek. Boş gönderilirse tüm depolar için.
  • prm_saat (time): Fiyat bilgisi alınacak saat
  • prm_istenenmiktar: İstenen miktar

Sonuç:

  • fiyati (numeric)
  • _key_sis_doviz (bigint)
  • kdvdurumu (character)
  • kdvyuzde (numeric)
  • dkuru (numeric)

Ö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}

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

Parametreler:

  • prm_stokkey (bigint): Stok _key bilgisi
  • prm_firmakodu (smallint): Firma kısa kodu
  • prm_donemkodu (smallint): Dönem kısa kodu
  • prm_tarih (date): Miktar bilgisi alınacak tarih
  • prm_depokeys (bigint[]): Hangi depolar için bilgi getirilecek. Boş gönderilirse tüm depolar için.

Sonuç:

  • miktar (numeric)

Ö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}

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

Parametreler:

  • prm_stokkey (bigint): Stok _key
  • prm_firmakodu (smallint): Firma kısa
  • prm_donemkodu (smallint): Dönem kısa
  • prm_tarih (date): Miktar bilgisi alınacak
  • prm_depokeys (bigint[]): Hangi depolar için bilgi getirilecek. Boş gönderilirse tüm depolar için.

Sonuç:

  • miktar (numeric)

Ö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[]

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

Parametreler:

  • prm_carikey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)
  • prm_faturalanmamisirsaliyedahil (boolean)
  • prm_subekeys (bigint[])

Sonuç:

  • borc (numeric)
  • alacak (numeric)
  • bakiye (numeric)

Ö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}

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

Parametreler:

  • prm_carikey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)
  • prm_dovizkey (bigint)
  • prm_faturalanmamisirsaliyedahil (boolean)
  • prm_subekeys (bigint[])

Sonuç:

  • borc (numeric)
  • alacak (numeric)
  • bakiye (numeric)

Ö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}

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

Parametreler:

  • prm_kasakey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)

Sonuç:

  • bakiye (numeric)

Ö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}

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

Parametreler:

  • prm_kasakey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)
  • prm_dovizkey (bigint)

Sonuç:

  • dovizbakiye (numeric)
  • yerelbakiye (numeric)

Ö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}

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

Parametreler:

  • prm_bankakey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)

Sonuç:

  • borc (numeric)
  • alacak (numeric)
  • bakiye (numeric)

Ö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}

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

Parametreler:

  • prm_carikey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)
  • prm_faturalanmamisirsaliyedahil (boolean)
  • prm_subekeys (bigint[]): Boş gönderilirse tüm şubeler için.
  • prm_ustislemkeys (bigint[]): Boş gönderilirse tüm üst işlemler için.

Sonuç:

  • borc (numeric)
  • alacak (numeric)
  • bakiye (numeric)

Örnek Kullanım:

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

Belirtilen parametrelere göre carinin raporlama dövizi cinsinden bakiyesini döndürür.

Parametreler:

  • prm_carikey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)
  • prm_faturalanmamisirsaliyedahil (boolean)
  • prm_subekeys (bigint[]): Boş gönderilirse tüm şubeler için.
  • prm_fiyatfarkifaturadahilet (boolean)
  • prm_ustislemkeys (bigint[]): Boş gönderilirse tüm üst işlemler için.

Sonuç:

  • bakiye (numeric)

Örnek Kullanım:

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

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

Parametreler:

  • prm_bankakey (bigint)
  • prm_firmakodu (smallint)
  • prm_donemkodu (smallint)
  • prm_tarih (date)

Sonuç:

  • yerel_borc (numeric)
  • yerel_alacak (numeric)
  • bakiye (numeric)

Örnek Kullanım:

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

Bigint tipindeki bir diziyi satırlara çevirir.

Parametreler:

  • myarray (bigint[]): Satırlara çevrilecek dizi

Sonuç:

  • bigint

Örnek Kullanım:

SELECT _key_scf_stokkart
FROM lq_array_to_rows(ARRAY[1386,10330151,4901303]::bigint[]) as _key_scf_stokkart

Ay numarası verilen ay adını döndürür.

Parametreler:

  • deger (integer): Ay numarası

Sonuç:

  • text

Örnek Kullanım:

SELECT lq_ayaditr(4)

Tarihi istenen formata göre metin olarak döndürür.

Parametreler:

  • deger (date): Formatlanacak tarih
  • formattype (integer): 1=DD.MM.YYYY, 2=YYYY.MM.DD, 3=DD-MM-YYYY, 4=YYYY-MM-DD, 5=DD/MM/YYYY, 6=YYYY/MM/DD, 7=DD.MM, 8=DD-MM, 9=DD/MM, 10=DD AY YYYY, 11=DD AY, 12=MM.YYYY, 13=MM-YYYY, 14=MM/YYYY, 15=Gün, 16=Ay, 17=Yıl, 18=Hafta No, 19=HaftaNo/Yıl, 20=Gün Adı, 21=Ay Adı, 22=AyAdı-Yıl

Sonuç:

  • text

Örnek Kullanım:

SELECT lq_formatdate('2016-04-01'::date, 10)

Gönderilen text değer tarih formatına uygunsa `true`, değilse `false` döndürür.

Parametreler:

  • mydate (text)

Sonuç:

  • boolean

Örnek Kullanım:

SELECT lq_is_date('2016-04-01')

Gönderilen değer sıfırdan küçükse `0`, büyükse gerçek değerini döndürür.

Parametreler:

  • deger (bigint)

Sonuç:

  • bigint

Örnek Kullanım:

SELECT lq_onlypositiveorzero(-5)