Forum
Öncelikle sorunun doğru bölümde olduğu konusunda biraz tereddütüm var. Hatalıysam özür dilerim. En uygun burası çarptı gözüme.
Merhaba arkadaşlar küçük bir işletmede bir müşterim var. Nebim Winner Extra kullanıyor. SQL Server 2008 üzerinde. Benim merak ettiğim mevzu. Buradaki SQL Sürümünü yükseltirsek ne olur? ya da ne olmaz? Bu konu hakkında çok ama çok detaylı bilgiler bulamadım. Burada Nebim Winner kullananların olduğunu biliyorum. Bu arkadaşlardan bu konudaki tecrübelerini paylaşmalarını rica ediyorum. Ben bu olayı sanal bir ortamda test ettim. 2014 Üzerinden yedeği yükleyerek çalıştırdım. Aktif işlemleri kontrol ettim. Yeni girdiler yaptırdım. Herşey sorunsuz görünüyor. Ama bilmediğimiz bir şey çıkabilir mi?
Şimdiden ilginiz için teşekkür ederim.
Not : Bu arada 2010 Yılında üye olmuşum ve o zamandan bu güne daha ilk mesajım 🙂 Benimde garibime gitti doğrusu.
Çok teşekkür ederim ilginiz için. 2014'ü test ettim dedim. Ama daha detaylı bir test yaptığımda bazı yerlerde alakasız hatalar aldım. O yüzden hiç daha fazla fantazi yapmamaya karar kıldım.
Ama şu şekilde de bir deneme yapmayı istiyorum. Yanlışım varsa düzeltirseniz sevinirim.
SQL 2008 ile sistemi kurup çalıştırıp, sonrasında SQL 2014'ün upgrade özelliğini kullanarak güncelleme yapsak sistem çalışır mı? Ve dediğiniz Turkish_CI_AS kullansam. Upgrade daha mantıklı geldi kendimce.
Program tarafında aldım. Bazı raporları çekmeyi çalıştığımda baya uzun hatalar verdi.
Bizimle paylaşırsanız daha sağlıklı yorum yapabiliriz hatanın detayını.
Bayram girdi araya biraz da işlerin yoğunluğu felan derken anca vakit oldu. SQL 2008 SP3'ü kurup test ettiğimde herşey sorunsuz.
2014'e Upgrade ettiğimde de bir çok fonksiyon çalışıyor. Misal mağazaların ciro durumu dediğimde aşağıdaki hatayı alıyorum.
156 - [Microsoft][ODBC SQL Server Driver][SQL Server]'compute' anahtar sözcüğü yakınındaki sözdizimi yanlış.
SQL :
select sDepoTipi, sDepoTipiAck,
Magaza , sMagazaAck,
sum(SatisMiktari) as SatisMiktari, sum(SatisTutari) as SatisTutari, sum(SatisIskonto) as SatisIskonto,
sum(IadeMiktari) as IadeMiktari, sum(IadeTutari) as IadeTutari, sum(IadeIskonto) as IadeIskonto,
sum(SatisMiktari+IadeMiktari) as NetMiktar,
sum(NetTutar) As NetTutar,
sum (KDVHaric) as KDVHaric,
sum(MagazaMasrafi) as MagazaMasrafi,
max(KayitTarihi)as KayitTarihi,
sum(UrunDegistirmeMiktari) as UrunDegistirmeMiktari, sum(UrunDegistirmeTutari) as UrunDegistirmeTutari, sum(UrunDegistirmeIskonto) as UrunDegistirmeIskonto,
sum(IadeMiktari) - sum(UrunDegistirmeMiktari) as FarkIadeMiktari, sum(IadeTutari) - sum(UrunDegistirmeTutari) as FarkIadeTutari, sum(IadeIskonto) - sum(UrunDegistirmeIskonto) as FarkIadeIskonto,
sum(SatisTutari)+sum(IadeTutari) as ToplamSatis,
sum(SatisIskonto)+sum(IadeIskonto) as ToplamIskonto
,0 as MagazaGiren
, sum(Kapora) as Kapora, sum(KurumKatki) as KurumKatki, sum(Kapora)+sum(KurumKatki)+sum(NetTutar) as Toplam
, sum(FaturaAdedi)
, sum(Kullanilan)
, sum(Harcanan)
, sum(FaturaAdediIade)
, sum(Paro)
, sum(Maliyet) as Maliyet
, sum(PosOdeme) as PosOdeme
, FisTarihi
, sum(GKOdeme) as GKOdeme
, sum(HarcananPara) as HarcananPara
from(
select
'' as sDepoTipi, '' as sDepoTipiAck,
upper(tbAlisveris.sMagaza) as Magaza, tbDepo.sAciklama as sMagazaAck,
(nGirisCikis - 4)* (-1) * (lToplamMiktar) as SatisMiktari,
(nGirisCikis - 4)* (-1) * (lMalBedeli) as SatisTutari,
(nGirisCikis - 4)* (-1) * (lMalIskontoTutari+lDipIskonToTutari) as SatisIskonto,
(nGirisCikis - 3)* (lToplamMiktar) as IadeMiktari,
(nGirisCikis - 3)* (lMalBedeli) as IadeTutari,
(nGirisCikis - 3)* (lMalIskontoTutari+lDipIskonToTutari) as IadeIskonto,
(lNetTutar - lKdv1 - lKdv2 - lKdv3 - lKdv4 - lKdv5)*(case when tbAlisveris.sFisTipi = 'KPR' then 0 else 1 end) As KDVHaric,
(lNetTutar)*(case when tbAlisveris.sFisTipi = 'KPR' then 0 else 1 end) as NetTutar,
Kapora = case when sFisTipi = 'KPR' then
isnull((select sum(lTutar) from tbAVHediyeCeki
Where tbAlisveris.nAlisverisID = tbAVHediyeCeki.nAlisverisID
and not exists (select * from tbOdeme where sOdemeSekli = 'KPR'
and tbOdeme.sKartNo = tbAVHediyeCeki.sHediyeCekiSeriNo
and tbOdeme.dteOdemeTarihi between '01/08/2018' and '30/08/2018'
)),0) else 0 end ,isnull(KurumKatki.lIndirimTutari,0) as KurumKatki,
0 as MagazaMasrafi,
'01/01/1900' as KayitTarihi,
0 as UrunDegistirmeMiktari,0 as UrunDegistirmeTutari,0 as UrunDegistirmeIskonto
,FaturaAdedi = case when (sFisTipi = 'P' or sFisTipi = 'PD' or sFisTipi = 'PF' or sFisTipi= 'PI' or sFisTipi = 'PTX' or sFisTipi = 'K' or sFisTipi = 'KS' or sFisTipi = 'SK' or sFisTipi = 'SP') and nGirisCikis = 3 THEN 1 else 0 end
,0 as Kullanilan
,0 as Harcanan
,FaturaAdediIade = case when (sFisTipi = 'P' or sFisTipi = 'PD' or sFisTipi = 'PF' or sFisTipi= 'PI' or sFisTipi = 'PTX' or sFisTipi = 'K' or sFisTipi = 'KS' or sFisTipi = 'SK' or sFisTipi = 'SP' ) and nGirisCikis = 4 THEN 1 else 0 end
,0 as Paro
,0 as Maliyet
,ISNULL(PosOdeme.OdemeTutar,0) as PosOdeme
,'01/01/1900' as FisTarihi
,ISNULL(GKOdeme.OdemeTutar,0) as GKOdeme
,0 as HarcananPara
From tbDepo, tbDepoTipi,tbAlisveris
left outer join ( select tbOdeme.nAlisverisID,
sum(tbOdeme.lOdemeTutar) As OdemeTutar
From tbOdeme, tbOdemeSekli
Where tbOdeme.sOdemeSekli = tbOdemeSekli.sOdemeSekli
and nOdemeTipi = 2
and tbOdeme.dteOdemeTarihi between '01/08/2018' and '30/08/2018'
group by tbOdeme.nAlisverisID
) as PosOdeme on PosOdeme.nAlisverisId = tbAlisveris.nAlisverisId
left outer join ( select tbOdeme.nAlisverisID,
sum(tbOdeme.lOdemeTutar) As OdemeTutar
From tbOdeme, tbOdemeSekli
Where tbOdeme.sOdemeSekli = tbOdemeSekli.sOdemeSekli
and tbOdeme.sOdemeSekli = 'GK'
and tbOdeme.dteOdemeTarihi between '01/08/2018' and '30/08/2018'
group by tbOdeme.nAlisverisID
) as GKOdeme on GKOdeme.nAlisverisId = tbAlisveris.nAlisverisId
left outer Join
(select tbStokFisiDetayi.nAlisverisID,sum(lIndirimTutari) as lIndirimTutari
From tbStokFisiDetayi, tbStokKurumBedeli
Where tbStokFisiDetayi.nIslemID = tbStokKurumBedeli.nIslemID
and tbStokFisiDetayi.dteFisTarihi between '01/08/2018' and '30/08/2018'
group by tbStokFisiDetayi.nAlisverisID
) as KurumKatki on KurumKatki.nAlisverisId = tbAlisveris.nAlisverisId
Where tbDepo.sDepo = tbAlisveris.sMagaza
and (tbAlisveris.nGirisCikis = 3 or tbAlisveris.nGirisCikis = 4)
and tbAlisveris.dteFaturaTarihi between '01/08/2018' and '30/08/2018'
and tbDepo.sDepoTipi = tbDepoTipi.sDepoTipi
and tbAlisveris.sFisTipi <> 'KA' and tbAlisveris.sFisTipi <> 'PAD'
and ( sMagaza = '0301' or sMagaza = '2001' or sMagaza = '2501' or sMagaza = '3201' or sMagaza = '4200' or sMagaza = '4201' or sMagaza = '4202' or sMagaza = '8801' or sMagaza = '9901' or sMagaza = '9902' or sMagaza = '9903' or sMagaza = '9904' or sMagaza = '9905' or sMagaza = '9906' or sMagaza = '9907' )
) as tempMagazaCiro
group by sDepoTipi, sDepoTipiAck, Magaza, sMagazaAck,FisTarihi
order by Magaza,FisTarihi
compute sum(sum(SatisMiktari)), sum(sum(SatisTutari)), sum(sum(SatisIskonto)),
sum(sum(IadeMiktari)), sum(sum(IadeTutari)),sum(sum(IadeIskonto)),
sum (sum(SatisMiktari + IadeMiktari)),
sum(sum(NetTutar)),
sum(sum(KDVHaric)),sum(sum(MagazaMasrafi)),
sum(sum(UrunDegistirmeMiktari)), sum(sum(UrunDegistirmeTutari)),sum(sum(UrunDegistirmeIskonto)),
sum(sum(IadeMiktari)-sum(UrunDegistirmeMiktari)), sum(sum(IadeTutari)-sum(UrunDegistirmeTutari)),sum(sum(IadeIskonto)-sum(UrunDegistirmeIskonto)),
sum(sum(SatisTutari)+sum(IadeTutari)),
sum(sum(SatisIskonto)+sum(IadeIskonto)),
sum(sum(Kapora)),
sum(sum(KurumKatki)),
sum(sum(Kapora)+sum(KurumKatki)+sum(NetTutar))
, sum(sum(FaturaAdedi))
, sum(sum(Kullanilan))
, sum(sum(Harcanan))
, sum(sum(FaturaAdediIade))
, sum(sum(Paro))
, sum(sum(Maliyet))
, sum(sum(PosOdeme))
, sum(sum(GKOdeme))
, sum(sum(HarcananPara))
SQL 2014 compute deyimini desteklemiyor. Aldığınız hata bu yüzden. İçerisinde compute deyimi olan tüm raporlarda bu hatayı alırsınız.
SQL 2014 compute deyimini desteklemiyor. Aldığınız hata bu yüzden. İçerisinde compute deyimi olan tüm raporlarda bu hatayı alırsınız.
Teşekkür ederim UFUK bey, Bunun ile ilgili bir çözüm söz konusu mu peki? Yoksa daha fazla macera aramaya gerek yok mu?
Compute deyiminin yerine farklı bir komut vardı ancak hatırlamıyorum. Hayırlasam bile winnerdaki rapor sorgularını değiştiremediğimüz için benim bulabildiğim bir çözümü yok maalesef.
İlginiz için çok ama çok teşekkür ederim.