MsSql deki Float Accesste neye karşılık geliyor

Katılım
30 Temmuz 2008
Mesajlar
3
Excel Vers. ve Dili
2003
Merhaba arkadaşlar.Aranıza yeni katıldım forumda aradım ama sorunuma bir çare bulamadım. O nednele sizlere danışmaktan başka çarem kalmadı.

Daha önce kodladığım bir sistemim var. Yıllardır MsSql üzerinde çalıştığım için accessle pek işim olmadı. Bir arkadaşım access veritabanlı bir site istedi benden. Onu yaptım bitirdim ama bir yerde takıldık. Şimdi ben elimdeki formda MsSql üzerinde para birimi girişi yaparken o satırı float yapıyorum ve
kodlamalarım içinde kullandığım komut dizesi veritabanına düzenlide yazdırılıyor.

İlgili Satır:
Session("KayitUcret") = Replace(Session("ucret"), "," , "." , 1, -1, 1)
ObjConn.Execute("insert into siparisler(uye_id, ucret, odeme_tur, tarih, eposta, adsoyad, adres, telno, durum, iptal) values ('" & Session("UyeID") & "','" & Session("StrOrtak") & "','" & Session("KayitUcret") & "',...............diye gidiyor

Burada örneğin yapılan toplamada elde edilen sonuç kdv , indirim vs derken diyelim ki 12, 90 çıktı. Bu Mssql de bu komut dizesi ile gayet güzel çıkarken accesste ne yaptıysam olmadı.

Elimde office 2003 var. İlgili sütünu para birimi yaptım o da olmadı. Sayı yapıyorum o da olmuyor.

Karşıma şöyle çıkarıyor sonucu 1290,00 halbuki 12,90 aynen yazması lazım. Bu durumda benim ne yapmam lazım?

Yardımcı olursanız sevinirim.

Saygılarımla.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın edebic,

Float ın karşılığı Double. Öylece bir deneyin. Ancak parabirimi olarak da çalıuşması gerekiyordu.


İyi çalışmalar
 
Katılım
30 Temmuz 2008
Mesajlar
3
Excel Vers. ve Dili
2003
Olmadı

Sayın Modalı,

onu en başta denemiştim. Accessim Türkçe. Xp Sp 2 kullanıyorum. Bölgesel ayarlarda YTL güncelleştirmesi yüklü onlarda hernagi bir problem de yok. Para biriminde çalışmadığı gibi aynı zamanda ilk aklıma gelen şey olan o değeri not şeklinde yazmaktı ve bunu yaptığımda kısmen başarılı oldum.

Acceste sizin dediğiniz gibi biçimi çift (double) yapıp denedim ama sonuç şöyle

5,95 YTL olması gereken
595,00 çıkan sonuç

Yukarıda bahsettiğim not yaptığım denemede kullandığım kodlarda ufak bir oynama yaptım. Normalde kodlamada formatnumber ile floatta sağlıklı eri dönüştürüyorum örneğin kodlarım şöyle


<%
SiparisListeSayi = SiparisListeSayi+1
ToplamSiparisMiktar = ToplamSiparisMiktar + Ucret_a
SiparisListeEkleKayit.MoveNext
next
%>


fiyatın gösterildiği alan

<%=FormatNumber(ToplamSiparisMiktar),2)%> YTL

sizin dediğiniz gibi yaptım o satırı. not yapıp kapattım ve deneme yaptım.

5.95 olarak nokta ile ayırarak yazdı veritabanına.

Başka ne yapılabilir acaba?

Saygılarımla
 
Katılım
30 Temmuz 2008
Mesajlar
3
Excel Vers. ve Dili
2003
Arkada&#351;lar sorunu hallettim. Yolunu da anlatay&#305;m ba&#351;ka arkada&#351;lar sorun ya&#351;arlarsa bu &#351;ekilde &#231;&#246;zebilirler...



Ben &#246;ncelikle veritaban&#305;na yazd&#305;rd&#305;&#287;&#305;m kodlar&#305; ele ald&#305;m. Malumunuz sql ile access komutlar&#305;nda baz&#305; de&#287;i&#351;iklikler vard&#305;r. &#199;zellikle like, insert into gibi deyimler nedeniyle bazen s&#305;k&#305;nt&#305;lar ya&#351;anabiliyor. Ben accessci de&#287;ilim ama biraz kavrad&#305;m san&#305;r&#305;m.



Kodlar&#305;m aras&#305;nda yer alan miktar&#305; mssql veritaban&#305;nda float bi&#231;imli sat&#305;ra yazd&#305;r&#305;rken





Session.LCID = 1033

Session("KayitUcret") = Replace(Session("ucret"), "," , "." , 1, -1, 1)

ObjConn.Execute("insert into siparisler(uye_id, ucret, odeme_tur, tarih, eposta, adsoyad, adres, telno, durum, iptal) values ('" & Session("UyeID") & "','.....





gibi bir dizin kullan&#305;yordum. Yukar&#305;da arkada&#351;&#305;m&#305;z&#305;n dedi&#287;i gibi acceste say&#305; de&#287;erini &#231;ift bi&#231;imli yaparak yazd&#305;rd&#305;m. hata devam etti. Demek ki kodda da oynama yapmal&#305;y&#305;m dedim ve &#351;&#246;yle bir uygulama getirdim.





Session.LCID = 1055 (buras&#305; 1033 idi de&#287;i&#351;ti)

buradaki kayitucret sat&#305;r&#305; silindi

ObjConn.Execute("insert into siparisler(uye_id, ucret, odeme_tur, tarih, eposta, adsoyad, adres, telno, durum, iptal) values ('" & Session("UyeID") & "','" & Session("Ucret") & "','" & Session("gelensonuc") & "', '" & now() & "','" & Session("eposta") & "','" & Session("adsoyad") & "','" & Session("adres") & "','" & Session("telno") & "','" & 0 & "','" & 0 & "')")



Hepsi bu kadar arkada&#351;lar...



bu i&#351;lemden sonra <&#37;= formatnumber(deneme(ucret),2)%> &#246;rne&#287;i gibi veritaban&#305;ndan YTL ye uygun veriler &#231;ekebilirsiniz.



Sayg&#305;lar&#305;mla
 
Üst