17 Ocak 2017 Salı
Netsis Stok kodu açıldığında mail
Netsis Stok kodu açıldığında mail
Stok kartı kayıtları formunda ,stokmas_inq - beforepost event aşağıdaki script kullanılabilir.
SET QRY =NETSISCORE.NetLibDB.GetNewQuery
STR= "SELECT COUNT(*) FROM TBLSTSABIT WHERE STOK_KODU='" & STOK_KODUDB.TEXT & "'"
QRY.RECSQL(STR)
If QRY.FIELDS(0).ASINTEGER=0 Then
Dim mail,cc,subject,icerik
mail="sdikmenli@abana.com.tr"
cc="smetin@abana.com.tr"
subject= "Yeni Acilan Stok"
icerik ="NETSISISLEM" & CHR(10) & CHR(10) & "<p>"
icerik = icerik + ""
icerik = icerik + "<B>Stok Kodu:</B>" & STOK_KODUDB.TEXT & "<br/>"
icerik = icerik + "<B>Stok Adi :</B>" & STOK_ADI.TEXT
call netsiscore.NetLibEMail.EPostaGonder(mail,cc,subject,"",icerik)
End If
Netsis Rapor kolon sıralaması değiştirmek
Netsis Rapor kolon sıralaması değiştirmek
Trapor form\Rapor kapanis event ,
‘ilk olarak araya 2 kolon ekleniyor
‘4 sabit degeri, shilt columns anlamina gelmektedir.
‘1 : baslangic satir numarasi
‘6: baslangic kolon numarasi
‘ diger 2 parametre bitis degerlerini gostermektedir.
RAPORBOOK.InsertRange 1, 6, 16384, 7, 4
‘ilk 2 parametre : baslangic & bitis satir, sutun degegeri
‘sonra 2 parametre : bitis…
‘0: satir degisiklik degeri
‘-4: secili alani 4 geriye getir…
RAPORBOOK.MoveRange 1, 10, 16384, 11, 0, -4
Netsis Modül Geçiş
Netsis Modül Geçiş
Örneğin cari kart tanımlarken cari irtibat bilgilerine geçmek istersek ,
Set WshShell = CreateObject("WScript.Shell") 'Alt + K WshShell.SendKeys ("%K") 'Cari irtibat bilgileri
WshShell.SendKeys ("C") 'Enter WshShell.SendKeys ("{ENTER}")
Netsis Şirketler arası Çek aktarımı
Netsis Şirketler arası Çek aktarımı
set sorgu9=netsiscore.NetLibDB.GetNewQuery
cumle9 = "SELECT DB_NAME() AS SIRKET"
sorgu9.RecSQL(cumle9)
VTADI = sorgu9.fieldbyname("SIRKET").AsString
IF NETSISCORE.NetLibSession.AktifProgramNo=3 AND PROJE_KODU.TEXT="K" THEN
Set Kernel = CreateObject("NetOpenX50.Kernel")
Set Sirket = Kernel.yeniSirket(vtMSSQL, "DENEME13", "TEMELSET", "", "NETSIS", "NET1", NetsisCore.NetLibSession.LogicalSegmentValue)
Set HSirket = Kernel.yeniSirket(vtMSSQL, "GUNTAS13", "TEMELSET", "", "NETSIS", "NET1", NetsisCore.NetLibSession.LogicalSegmentValue)
Set CekSenetAna = Kernel.yeniCekSenAna(Sirket, csMCEK)
Set HCekSenetAna = Kernel.yeniCekSenAna(HSirket, csMCEK)
Set CekSenetOkunan = CekSenetAna.OkunanCS
Set HCekSenet = HCekSenetAna.EvrakYeni
If CekSenetAna.kayitOku(4, " sc_alb_no='"&sc_alb_no.text&"' " ) Then
MsgBox "kayit açildi"
CekSenetAna.kayitOku (0)
HCekSenet.SC_NO=CekSenetOkunan.SC_NO
HCekSenet.GIRIS_BORDRO=CekSenetOkunan.GIRIS_BORDRO
HCekSenet.SC_GIRTRH=CekSenetOkunan.SC_GIRTRH
HCekSenet.VADETRH=CekSenetOkunan.VADETRH
HCekSenet.SC_CIKTRH=CekSenetOkunan.SC_CIKTRH
HCekSenet.SC_ODETRH=CekSenetOkunan.SC_ODETRH
HCekSenet.SC_VERENK=CekSenetOkunan.SC_VERENK
HCekSenet.SC_ABORCLU=CekSenetOkunan.SC_ABORCLU
HCekSenet.AS_C=CekSenetOkunan.AS_C
HCekSenet.SC_VERILENK=CekSenetOkunan.SC_VERILENK
HCekSenet.SC_VERYCM=CekSenetOkunan.SC_VERYCM
HCekSenet.SC_BANKNO=CekSenetOkunan.SC_BANKNO
HCekSenet.SC_SONDUR=CekSenetOkunan.SC_SONDUR
HCekSenet.SC_YERI=CekSenetOkunan.SC_YERI
HCekSenet.RAPOR_KODU=CekSenetOkunan.RAPOR_KODU
HCekSenet.SC_VERB_NO=CekSenetOkunan.SC_VERB_NO
HCekSenet.YERI=CekSenetOkunan.YERI
HCekSenet.C_NUMARA=CekSenetOkunan.C_NUMARA
HCekSenet.GIRILDIGIYER=CekSenetOkunan.GIRILDIGIYER
HCekSenet.CEKSERI=CekSenetOkunan.CEKSERI
HCekSenet.Tutar=CekSenetOkunan.Tutar
HCekSenet.Proje_Kodu=CekSenetOkunan.Proje_Kodu
Hceksenet.Dovtip=CekSenetOkunan.Dovtip
Hceksenet.Dovtut=CekSenetOkunan.Dovtut
Hceksenet.CEK_SUBE=CekSenetOkunan.CEK_SUBE
Hceksenet.CEK_IL=CekSenetOkunan.CEK_IL
Hceksenet.CEK_ILCE=CekSenetOkunan.CEK_ILCE
Set sorgu2 = Netsiscore.Netlibdb.GetNewQuery
cumle2 = "update GUNTAS13..TBLMCEKNO SET SUBE_KODU=0, SERI=LEFT('"&CekSenetOkunan.SC_NO&"',1),SIRA_NO='"&CekSenetOkunan.SC_NO&"',ALB_NO='"&SC_ALB_NO.TEXT&"' "
sorgu2.recsql (cumle2)
HCekSenetAna.EvraklariKaydet (ektCekSenAlma)
Set sorgu = Netsiscore.Netlibdb.GetNewQuery
cumle = "select count(*) from TBLMCEK WHERE sc_alb_no='"&sc_alb_no.text&"'"
sorgu.recsql (cumle)
SAY = sorgu.Fields(0).AsInteger
for i=2 to SAY
CekSenetAna.KayitOku(1)
HCekSenet.SC_NO=CekSenetOkunan.SC_NO
HCekSenet.GIRIS_BORDRO=CekSenetOkunan.GIRIS_BORDRO
HCekSenet.SC_GIRTRH=CekSenetOkunan.SC_GIRTRH
HCekSenet.VADETRH=CekSenetOkunan.VADETRH
HCekSenet.SC_CIKTRH=CekSenetOkunan.SC_CIKTRH
HCekSenet.SC_ODETRH=CekSenetOkunan.SC_ODETRH
HCekSenet.SC_VERENK=CekSenetOkunan.SC_VERENK
HCekSenet.SC_ABORCLU=CekSenetOkunan.SC_ABORCLU
HCekSenet.AS_C=CekSenetOkunan.AS_C
HCekSenet.SC_VERILENK=CekSenetOkunan.SC_VERILENK
HCekSenet.SC_VERYCM=CekSenetOkunan.SC_VERYCM
HCekSenet.SC_BANKNO=CekSenetOkunan.SC_BANKNO
HCekSenet.SC_SONDUR=CekSenetOkunan.SC_SONDUR
HCekSenet.SC_YERI=CekSenetOkunan.SC_YERI
HCekSenet.RAPOR_KODU=CekSenetOkunan.RAPOR_KODU
HCekSenet.SC_VERB_NO=CekSenetOkunan.SC_VERB_NO
HCekSenet.YERI=CekSenetOkunan.YERI
HCekSenet.C_NUMARA=CekSenetOkunan.C_NUMARA
HCekSenet.GIRILDIGIYER=CekSenetOkunan.GIRILDIGIYER
HCekSenet.CEKSERI=CekSenetOkunan.CEKSERI
HCekSenet.Tutar=CekSenetOkunan.Tutar
HCekSenet.Proje_Kodu=CekSenetOkunan.Proje_Kodu
Hceksenet.Dovtip=CekSenetOkunan.Dovtip
Hceksenet.Dovtut=CekSenetOkunan.Dovtut
Hceksenet.CEK_SUBE=CekSenetOkunan.CEK_SUBE
Hceksenet.CEK_IL=CekSenetOkunan.CEK_IL
Hceksenet.CEK_ILCE=CekSenetOkunan.CEK_ILCE
Set sorgu3 = Netsiscore.Netlibdb.GetNewQuery
cumle3 = "update GUNTAS13..TBLMCEKno SET SUBE_KODU=0, SERI=LEFT('"&CekSenetOkunan.SC_NO&"',1),SIRA_NO='"&CekSenetOkunan.SC_NO&"',ALB_NO='"&SC_ALB_NO.TEXT&"' "
sorgu3.recsql (cumle3)
sorgu3.close
set sorgu3= nothing
HCekSenetAna.EvraklariKaydet (ektCekSenAlma)
next
sorgu2.close
set sorgu2= nothing
sorgu.close
set sorgu= nothing
end if
Set HCekSenet = Nothing
'Set CekSenet = Nothing
Set Sirket = Nothing
Set CekSenetOkunan = Nothing
Call Kernel.FreeNetsisLibrary
Set Kernel = Nothing
END IF
sorgu9.close
set sorgu9 = Nothing
set sorgu9=netsiscore.NetLibDB.GetNewQuery
cumle9 = "SELECT DB_NAME() AS SIRKET"
sorgu9.RecSQL(cumle9)
VTADI = sorgu9.fieldbyname("SIRKET").AsString
IF NETSISCORE.NetLibSession.AktifProgramNo=3 AND PROJE_KODU.TEXT="K" THEN
Set Kernel = CreateObject("NetOpenX50.Kernel")
Set Sirket = Kernel.yeniSirket(vtMSSQL, "DENEME13", "TEMELSET", "", "NETSIS", "NET1", NetsisCore.NetLibSession.LogicalSegmentValue)
Set HSirket = Kernel.yeniSirket(vtMSSQL, "GUNTAS13", "TEMELSET", "", "NETSIS", "NET1", NetsisCore.NetLibSession.LogicalSegmentValue)
Set CekSenetAna = Kernel.yeniCekSenAna(Sirket, csMCEK)
Set HCekSenetAna = Kernel.yeniCekSenAna(HSirket, csMCEK)
Set CekSenetOkunan = CekSenetAna.OkunanCS
Set HCekSenet = HCekSenetAna.EvrakYeni
If CekSenetAna.kayitOku(4, " sc_alb_no='"&sc_alb_no.text&"' " ) Then
MsgBox "kayit açildi"
CekSenetAna.kayitOku (0)
HCekSenet.SC_NO=CekSenetOkunan.SC_NO
HCekSenet.GIRIS_BORDRO=CekSenetOkunan.GIRIS_BORDRO
HCekSenet.SC_GIRTRH=CekSenetOkunan.SC_GIRTRH
HCekSenet.VADETRH=CekSenetOkunan.VADETRH
HCekSenet.SC_CIKTRH=CekSenetOkunan.SC_CIKTRH
HCekSenet.SC_ODETRH=CekSenetOkunan.SC_ODETRH
HCekSenet.SC_VERENK=CekSenetOkunan.SC_VERENK
HCekSenet.SC_ABORCLU=CekSenetOkunan.SC_ABORCLU
HCekSenet.AS_C=CekSenetOkunan.AS_C
HCekSenet.SC_VERILENK=CekSenetOkunan.SC_VERILENK
HCekSenet.SC_VERYCM=CekSenetOkunan.SC_VERYCM
HCekSenet.SC_BANKNO=CekSenetOkunan.SC_BANKNO
HCekSenet.SC_SONDUR=CekSenetOkunan.SC_SONDUR
HCekSenet.SC_YERI=CekSenetOkunan.SC_YERI
HCekSenet.RAPOR_KODU=CekSenetOkunan.RAPOR_KODU
HCekSenet.SC_VERB_NO=CekSenetOkunan.SC_VERB_NO
HCekSenet.YERI=CekSenetOkunan.YERI
HCekSenet.C_NUMARA=CekSenetOkunan.C_NUMARA
HCekSenet.GIRILDIGIYER=CekSenetOkunan.GIRILDIGIYER
HCekSenet.CEKSERI=CekSenetOkunan.CEKSERI
HCekSenet.Tutar=CekSenetOkunan.Tutar
HCekSenet.Proje_Kodu=CekSenetOkunan.Proje_Kodu
Hceksenet.Dovtip=CekSenetOkunan.Dovtip
Hceksenet.Dovtut=CekSenetOkunan.Dovtut
Hceksenet.CEK_SUBE=CekSenetOkunan.CEK_SUBE
Hceksenet.CEK_IL=CekSenetOkunan.CEK_IL
Hceksenet.CEK_ILCE=CekSenetOkunan.CEK_ILCE
Set sorgu2 = Netsiscore.Netlibdb.GetNewQuery
cumle2 = "update GUNTAS13..TBLMCEKNO SET SUBE_KODU=0, SERI=LEFT('"&CekSenetOkunan.SC_NO&"',1),SIRA_NO='"&CekSenetOkunan.SC_NO&"',ALB_NO='"&SC_ALB_NO.TEXT&"' "
sorgu2.recsql (cumle2)
HCekSenetAna.EvraklariKaydet (ektCekSenAlma)
Set sorgu = Netsiscore.Netlibdb.GetNewQuery
cumle = "select count(*) from TBLMCEK WHERE sc_alb_no='"&sc_alb_no.text&"'"
sorgu.recsql (cumle)
SAY = sorgu.Fields(0).AsInteger
for i=2 to SAY
CekSenetAna.KayitOku(1)
HCekSenet.SC_NO=CekSenetOkunan.SC_NO
HCekSenet.GIRIS_BORDRO=CekSenetOkunan.GIRIS_BORDRO
HCekSenet.SC_GIRTRH=CekSenetOkunan.SC_GIRTRH
HCekSenet.VADETRH=CekSenetOkunan.VADETRH
HCekSenet.SC_CIKTRH=CekSenetOkunan.SC_CIKTRH
HCekSenet.SC_ODETRH=CekSenetOkunan.SC_ODETRH
HCekSenet.SC_VERENK=CekSenetOkunan.SC_VERENK
HCekSenet.SC_ABORCLU=CekSenetOkunan.SC_ABORCLU
HCekSenet.AS_C=CekSenetOkunan.AS_C
HCekSenet.SC_VERILENK=CekSenetOkunan.SC_VERILENK
HCekSenet.SC_VERYCM=CekSenetOkunan.SC_VERYCM
HCekSenet.SC_BANKNO=CekSenetOkunan.SC_BANKNO
HCekSenet.SC_SONDUR=CekSenetOkunan.SC_SONDUR
HCekSenet.SC_YERI=CekSenetOkunan.SC_YERI
HCekSenet.RAPOR_KODU=CekSenetOkunan.RAPOR_KODU
HCekSenet.SC_VERB_NO=CekSenetOkunan.SC_VERB_NO
HCekSenet.YERI=CekSenetOkunan.YERI
HCekSenet.C_NUMARA=CekSenetOkunan.C_NUMARA
HCekSenet.GIRILDIGIYER=CekSenetOkunan.GIRILDIGIYER
HCekSenet.CEKSERI=CekSenetOkunan.CEKSERI
HCekSenet.Tutar=CekSenetOkunan.Tutar
HCekSenet.Proje_Kodu=CekSenetOkunan.Proje_Kodu
Hceksenet.Dovtip=CekSenetOkunan.Dovtip
Hceksenet.Dovtut=CekSenetOkunan.Dovtut
Hceksenet.CEK_SUBE=CekSenetOkunan.CEK_SUBE
Hceksenet.CEK_IL=CekSenetOkunan.CEK_IL
Hceksenet.CEK_ILCE=CekSenetOkunan.CEK_ILCE
Set sorgu3 = Netsiscore.Netlibdb.GetNewQuery
cumle3 = "update GUNTAS13..TBLMCEKno SET SUBE_KODU=0, SERI=LEFT('"&CekSenetOkunan.SC_NO&"',1),SIRA_NO='"&CekSenetOkunan.SC_NO&"',ALB_NO='"&SC_ALB_NO.TEXT&"' "
sorgu3.recsql (cumle3)
sorgu3.close
set sorgu3= nothing
HCekSenetAna.EvraklariKaydet (ektCekSenAlma)
next
sorgu2.close
set sorgu2= nothing
sorgu.close
set sorgu= nothing
end if
Set HCekSenet = Nothing
'Set CekSenet = Nothing
Set Sirket = Nothing
Set CekSenetOkunan = Nothing
Call Kernel.FreeNetsisLibrary
Set Kernel = Nothing
END IF
sorgu9.close
set sorgu9 = Nothing
Netsis Şirketler Arası Dekont Aktarımı
Netsis Şirketler Arası Dekont Aktarımı
set sorgu9=netsiscore.NetLibDB.GetNewQuery
cumle9 = "SELECT DB_NAME() AS SIRKET"
sorgu9.RecSQL(cumle9)
VTADI = sorgu9.fieldbyname("SIRKET").AsString
IF VTADI="DENEME12" AND (SERI.TEXT="BN" OR SERI.TEXT="bn") THEN
Set Kernel = CreateObject("NetOpenX50.Kernel")
Set Sirket = Kernel.yeniSirket(vtMSSQL, "DENEME13", "TEMELSET", "", "NETSIS", "1234567", NetsisCore.NetLibSession.LogicalSegmentValue)
Set HSirket = Kernel.yeniSirket(vtMSSQL, "GUNTAS13", "TEMELSET", "", "NETSIS", "1234567", NetsisCore.NetLibSession.LogicalSegmentValue)
Set Dekont = Kernel.yeniDekont(Sirket)
'Set HDekont = Kernel.yeniDekont(HSirket)
' DekoMas = default(Dekomas)
'Set DekontOkunan = Dekont.OkunanCS
'DekoMas.YeniNumaraAl(seri.text)
'Set HDekont = HDekont.EvrakYeni
Set DMas = Kernel.yeniDekomas(HSirket)
DMas.YeniNumaraAl(seri.text)
If Dekont.kayitOku(4, " Dekont_No='"&dekontno.text&"' and Seri_no='"&seri.text&"' " ) Then
MsgBox "AktarIm Basliyor.."
Dekont.kayitOku (0)
Set HDekont=DMas.KalemEkle (3)
HDekont.Kod = Dekont.Kod
HDekont.C_M=Dekont.C_M
HDekont.B_A = Dekont.B_A
HDekont.Tutar = Dekont.Tutar
HDekont.Sube_Kodu = Dekont.Sube_Kodu
HDekont.Proje_Kodu=Dekont.Proje_Kodu
HDekont.Aciklama1=Dekont.Aciklama1
HDekont.DEPO_KODU = Dekont.DEPO_KODU
HDekont.Fisno = Dekont.Fisno
HDekont.Plasiyer = Dekont.Plasiyer
HDekont.ValorGun = Dekont.ValorGun
HDekont.ValorTrh = Dekont.ValorTrh
HDekont.Kdv_Oran= Dekont.Kdv_Oran
HDekont.Kdv_Dahil= Dekont.Kdv_Dahil
HDekont.DovTL = Dekont.DovTL
HDekont.DovTip = Dekont.DovTip
HDekont.DOVTUT = Dekont.DOVTUT
HDekont.Tarih = Dekont.Tarih
Set sorgu2 = Netsiscore.Netlibdb.GetNewQuery
cumle2 = "update GUNTAS13..TBLDEKONO SET DEKONT_NO='"&DEKONTNO.TEXT&"' WHERE SERI_NO='"&DEKONT.SERI_NO&"' "
sorgu2.recsql (cumle2)
Set sorgu = Netsiscore.Netlibdb.GetNewQuery
cumle = "select count(*) from TBLdekotra WHERE seri_no='"&seri.text&"' and dekont_no='"&dekontno.text&"'"
sorgu.recsql (cumle)
SAY = sorgu.Fields(0).AsInteger
for i=2 to SAY
Dekont.KayitOku(1)
Set HDekont=DMas.KalemEkle(3)
HDekont.Kod = Dekont.Kod
HDekont.C_M=Dekont.C_M
HDekont.B_A = Dekont.B_A
HDekont.Tutar = Dekont.Tutar
HDekont.Sube_Kodu = Dekont.Sube_Kodu
HDekont.Proje_Kodu=Dekont.Proje_Kodu
HDekont.Aciklama1=Dekont.Aciklama1
HDekont.Kdv_Oran= Dekont.Kdv_Oran
HDekont.Kdv_Dahil= Dekont.Kdv_Dahil
HDekont.DEPO_KODU = Dekont.DEPO_KODU
HDekont.Fisno = Dekont.Fisno
HDekont.Plasiyer = Dekont.Plasiyer
HDekont.ValorGun = Dekont.ValorGun
HDekont.ValorTrh = Dekont.ValorTrh
HDekont.DovTL = Dekont.DovTL
HDekont.DovTip = Dekont.DovTip
HDekont.DOVTUT = Dekont.DOVTUT
HDekont.Tarih = Dekont.Tarih
Set sorgu3 = Netsiscore.Netlibdb.GetNewQuery
cumle3 = "update GUNTAS13..TBLDEKONO SET DEKONT_NO='"&DEKONTNO.TEXT&"' WHERE SERI_NO='"&DEKONT.SERI_NO&"' "
sorgu3.recsql (cumle3)
sorgu3.close
set sorgu3= nothing
next
sorgu2.close
set sorgu2= nothing
sorgu.close
set sorgu= nothing
end if
Set HDekont = Nothing
'Set CekSenet = Nothing
Set Sirket = Nothing
'Set CekSenetOkunan = Nothing
Call Kernel.FreeNetsisLibrary
Set Kernel = Nothing
DMas.Tamamla()
MsgBox("Aktarim Tamamlandi ...")
END IF
sorgu9.close
set sorgu9 = Nothing
set sorgu9=netsiscore.NetLibDB.GetNewQuery
cumle9 = "SELECT DB_NAME() AS SIRKET"
sorgu9.RecSQL(cumle9)
VTADI = sorgu9.fieldbyname("SIRKET").AsString
IF VTADI="DENEME12" AND (SERI.TEXT="BN" OR SERI.TEXT="bn") THEN
Set Kernel = CreateObject("NetOpenX50.Kernel")
Set Sirket = Kernel.yeniSirket(vtMSSQL, "DENEME13", "TEMELSET", "", "NETSIS", "1234567", NetsisCore.NetLibSession.LogicalSegmentValue)
Set HSirket = Kernel.yeniSirket(vtMSSQL, "GUNTAS13", "TEMELSET", "", "NETSIS", "1234567", NetsisCore.NetLibSession.LogicalSegmentValue)
Set Dekont = Kernel.yeniDekont(Sirket)
'Set HDekont = Kernel.yeniDekont(HSirket)
' DekoMas = default(Dekomas)
'Set DekontOkunan = Dekont.OkunanCS
'DekoMas.YeniNumaraAl(seri.text)
'Set HDekont = HDekont.EvrakYeni
Set DMas = Kernel.yeniDekomas(HSirket)
DMas.YeniNumaraAl(seri.text)
If Dekont.kayitOku(4, " Dekont_No='"&dekontno.text&"' and Seri_no='"&seri.text&"' " ) Then
MsgBox "AktarIm Basliyor.."
Dekont.kayitOku (0)
Set HDekont=DMas.KalemEkle (3)
HDekont.Kod = Dekont.Kod
HDekont.C_M=Dekont.C_M
HDekont.B_A = Dekont.B_A
HDekont.Tutar = Dekont.Tutar
HDekont.Sube_Kodu = Dekont.Sube_Kodu
HDekont.Proje_Kodu=Dekont.Proje_Kodu
HDekont.Aciklama1=Dekont.Aciklama1
HDekont.DEPO_KODU = Dekont.DEPO_KODU
HDekont.Fisno = Dekont.Fisno
HDekont.Plasiyer = Dekont.Plasiyer
HDekont.ValorGun = Dekont.ValorGun
HDekont.ValorTrh = Dekont.ValorTrh
HDekont.Kdv_Oran= Dekont.Kdv_Oran
HDekont.Kdv_Dahil= Dekont.Kdv_Dahil
HDekont.DovTL = Dekont.DovTL
HDekont.DovTip = Dekont.DovTip
HDekont.DOVTUT = Dekont.DOVTUT
HDekont.Tarih = Dekont.Tarih
Set sorgu2 = Netsiscore.Netlibdb.GetNewQuery
cumle2 = "update GUNTAS13..TBLDEKONO SET DEKONT_NO='"&DEKONTNO.TEXT&"' WHERE SERI_NO='"&DEKONT.SERI_NO&"' "
sorgu2.recsql (cumle2)
Set sorgu = Netsiscore.Netlibdb.GetNewQuery
cumle = "select count(*) from TBLdekotra WHERE seri_no='"&seri.text&"' and dekont_no='"&dekontno.text&"'"
sorgu.recsql (cumle)
SAY = sorgu.Fields(0).AsInteger
for i=2 to SAY
Dekont.KayitOku(1)
Set HDekont=DMas.KalemEkle(3)
HDekont.Kod = Dekont.Kod
HDekont.C_M=Dekont.C_M
HDekont.B_A = Dekont.B_A
HDekont.Tutar = Dekont.Tutar
HDekont.Sube_Kodu = Dekont.Sube_Kodu
HDekont.Proje_Kodu=Dekont.Proje_Kodu
HDekont.Aciklama1=Dekont.Aciklama1
HDekont.Kdv_Oran= Dekont.Kdv_Oran
HDekont.Kdv_Dahil= Dekont.Kdv_Dahil
HDekont.DEPO_KODU = Dekont.DEPO_KODU
HDekont.Fisno = Dekont.Fisno
HDekont.Plasiyer = Dekont.Plasiyer
HDekont.ValorGun = Dekont.ValorGun
HDekont.ValorTrh = Dekont.ValorTrh
HDekont.DovTL = Dekont.DovTL
HDekont.DovTip = Dekont.DovTip
HDekont.DOVTUT = Dekont.DOVTUT
HDekont.Tarih = Dekont.Tarih
Set sorgu3 = Netsiscore.Netlibdb.GetNewQuery
cumle3 = "update GUNTAS13..TBLDEKONO SET DEKONT_NO='"&DEKONTNO.TEXT&"' WHERE SERI_NO='"&DEKONT.SERI_NO&"' "
sorgu3.recsql (cumle3)
sorgu3.close
set sorgu3= nothing
next
sorgu2.close
set sorgu2= nothing
sorgu.close
set sorgu= nothing
end if
Set HDekont = Nothing
'Set CekSenet = Nothing
Set Sirket = Nothing
'Set CekSenetOkunan = Nothing
Call Kernel.FreeNetsisLibrary
Set Kernel = Nothing
DMas.Tamamla()
MsgBox("Aktarim Tamamlandi ...")
END IF
sorgu9.close
set sorgu9 = Nothing
Netsis kullanıcısı şifre sıfırlama
Netsis kullanıcısı şifre sıfırlama
Aşağıdaki ilk satırdaki script çalıştırılması sonucu , Netsis kullanıcısının şifresi ;
Boşluk
1
veya 0 oluyor.
Alternatif olarak 2. satırdaki scriptte denenebilir.
update TBLKULLANP set SIFRE='&',SIFRE1=NULL,SIFRE2=null,SIFRE3=null,
SIFRE4=null,SIFRE5=null,SIFRE6=null,SIFRE7=null,SIFRE8=null,YENIYONTEM='H'
where KULLANICI_ISIM='H@PPGR'
update TBLKULLANP set SIFRE='%',SIFRE1=NULL,SIFRE2=null,SIFRE3=null,
SIFRE4=null,SIFRE5=null,SIFRE6=null,SIFRE7=null,SIFRE8=null,YENIYONTEM='H'
where KULLANICI_ISIM='H@PPGR'
Aşağıdaki ilk satırdaki script çalıştırılması sonucu , Netsis kullanıcısının şifresi ;
Boşluk
1
veya 0 oluyor.
Alternatif olarak 2. satırdaki scriptte denenebilir.
update TBLKULLANP set SIFRE='&',SIFRE1=NULL,SIFRE2=null,SIFRE3=null,
SIFRE4=null,SIFRE5=null,SIFRE6=null,SIFRE7=null,SIFRE8=null,YENIYONTEM='H'
where KULLANICI_ISIM='H@PPGR'
update TBLKULLANP set SIFRE='%',SIFRE1=NULL,SIFRE2=null,SIFRE3=null,
SIFRE4=null,SIFRE5=null,SIFRE6=null,SIFRE7=null,SIFRE8=null,YENIYONTEM='H'
where KULLANICI_ISIM='H@PPGR'
20 Aralık 2016 Salı
SQL Server 2012 ile Gelen Yeni T-SQL Fonksiyonları
SQL Server 2012 ile Gelen Yeni T-SQL Fonksiyonları
30.01.2012 00:00:00
Önümüzdeki aylarda piyasaya sürülmeye hazırlanan SQL Server 2012'de birazcık .NET tadı almaya hazır mısınız? TRY_PARSE, FORMAT, TRY_CONVERT... Şayet bir .NET Developer iseniz, bu fonksiyonların bir kısmı size hiç de yabancı gelmeyecek.
Operatör ile ilgili Fonkisyonlar
CONCAT Fonksiyonu ile Metinleri Ulamak
CONCAT fonksiyonu, SQL Server 2012 ile gelen bir fonksiyon olup, String ifadeleri uç uca eklemede + operatörüne göre bazı avantajlar sağlamaktadır. Örneğin, tip dönüşümlerine gerek duymaz ve NULL bir değer ulamaya katıldığında boşluk olarak eklenir. Bütün sonucu NULL haline getirmesine müsade edilmez. MySQL veritabanı yönetim sistemindeki CONCAT fonkisyonuna çok benzer. Genel kullanımı şu şekildedir.CONCAT(sutun1,sutun2,[sutun3, ......, sutunN])
Örnek:
Yukarıdaki örneği tekrarlayacak olursak:SELECT CONCAT(name , ' $', listPrice) FROM production.Product ORDER BY listPrice DESC
Şekil-1: CONCAT fonksiyonu ile değerler veri tipleri önemli olmaksızın VARCHAR tipler olarak uç uca eklenir.
IIF Fonksiyonu:
IF yapısı, bir SELECT cümlesi içerisinde bir çok sütun üstünde kullanmak gerektiğinde tercih edilebilir.
Örnek:
tblUrun tablosundaki ürünlerin Liste Fiyatı 1000'den pahalı ise 'pahalı', daha küçük veya eşitse de 'ucuz' etiketi ile bir fiyat yorumu sütunu oluşturalım:SELECT urunKod,listeFiyat, IIF(listeFiyat>1000,'pahalı', 'ucuz') AS fiyatYorum FROM tblUrun
Şekil: IIF fonksiyonunun kullanımı
CHOOSE Fonksiyonu:
T-SQL'de CASE ile yapılabilecek bazı ufak işlemlerin yerine kullanılanılabilir ama kısıtlı bir kullanımı mevcut. Sadece, indeks sütununda geçen sayının yer aldığı elemanı döndürebilen bir fonksiyon olup oldukça düşük bir işlev sunmakta.
Örnek: DECLARE @indis INT=0 WHILE @indis<5 BEGIN SET @indis +=1; SELECT CHOOSE( @indis,'bir','iki','üç','dört','beş','altı'); END;
Şekil 3: CHOOSE fonksiyonu pek esnek olmasa da ardışık giden sayıların bir dize değer ile değiştirilmesine müsaade etmekte.
Dönüşüm ve Formatlandırma ile İlgili Fonkisyonlar
TRY_CONVERT Fonksiyonu:
SQL Server 2012 sürümü ile gelen bir fonksiyondur. Bir veri tipinden diğerine döndürmek için kullanılır. Şayet dönüştürme işlemi başarılı ise dönüştürülmüş değeri verir. Başarısız ise veya ilk değer NULL ise NULL değeri döndürür. Genel kullanımı şu şekildedir:TRY_CONVERT (veritipi[(uzunluk)], sutun_ismi)
Örnek:
5.20 değeri parasal türe dönüştürülebilir ama abcd değeri bir parasal değer ifade edemez. Bu yüzden parasal tipe döndürülemez.SELECT TRY_CONVERT(MONEY,'5.20') AS Parasal, TRY_CONVERT(MONEY,'abcd') AS HataliParasal ;
Şekil 4: TRY_CONVERT fonksiyonun çalışması
PARSE Fonksiyonu:
SQL Server 2012 sürümü ile gelen bir fonksiyondur. Parse fonksiyonu, CAST ve CONVERT fonksiyonlarından farklı olarak sadece metin tutan verileri girdi olarak kabul eder ve bir metni tarih zaman veya tam sayı tiplerine dönüştürmek için kullanılır. Para birimi gibi ek göstergeler için kültür kodu parametre olarak verilebilir. Türkiye için kültür kodu "tr-TR" dir.
Genel kullanımı şu şekildedir:PARSE(string_sutun_ismi AS hedef_tip [USING xx-XX])
Örnek:
tblUrun tablosunda yer alan fiyatları parasal tipe dönüştürerek gösterelim. Öncelikle VARCHAR'a dönüştürdüğümüze dikkat edin.SELECT PARSE(CONVERT(VARCHAR(8),listeFiyat) AS MONEY USING 'tr-TR' ) as PARASAL FROM tblUrun
Şekil 5: PARSE fonksiyonu, String değerleri tarihzaman ve INTEGER tiplere dönüştürmek için kullanılır
TRY_PARSE Fonksiyonu:
SQL Server 2012 sürümü ile gelen bir fonksiyondur. PARSE fonksiyonundan farklı olarak, dönüştürme işleminde başarılı olamazsa NULL döndürür. PARSE fonksiyonunun, başarılı olamazsa bir hata mesajı ile programın çalışmasını sonlandırmasını istemediğimiz durumlarda, TRY_PARSE fonksiyonu kullanılabilir.
Örnek:
5 değeri parasal bir tipe dönüştürülebilir. Ancak abc değeri parasal bir tipe dönüştürülemez. TRY_PARSE fonksiyonu, hata vermez ama NULL döndürür.SELECT PARSE('5' AS MONEY) as PARASAL , TRY_PARSE('abc' AS MONEY) as T_PARASAL
Şekil 6: PARSE ve TRY_PARSE fonksiyonlarının çalışma şekilleri 5 değerini TRY_PARSE ve abc değerini PARSE fonksiyonuna verdiğimizde hata alırız. Çünkü PARSE fonksiyonu TRY_PARSE gibi hataları tolere etmez.
FORMAT Fonksiyonu:
SQL Server 2012 sürümü ile gelen bir fonksiyondur. Bu fonksiyon, .NET ortamındaki bütün String formatlama işlevlerini SQL Server ortamına getirmiş bir fonksiyondur. Kolaylık ve pratikliğine bakıldığında sonraki sürümlerde veritabanı programcıları için CAST ve CONVERT fonksiyonlarının yerini alması muhtemel gibi görüyor.
Genel kullanımı şu şekildedir:FORMAT(sutunAd, format [,kultur])
Özellikle, tarih zaman formatlama işlemlerinde, parasal değerlerin formatlanmasında ve sayıların formatlanmasında, yer yer FORMAT fonksiyonuna ihtiyaç duyabiliriz.
Örnek:
Bugünün tarihini alıp, tarih formatlama ile ilgili yapılabileceklerin bir listesiSELECT FORMAT(GETDATE(),'d') AS kisaTarih, FORMAT(GETDATE(),'d','tr-TR') AS turkTarihFormatiTR, FORMAT(GETDATE(),'D','tr-TR') AS uzunTarihFormatiTR, FORMAT(GETDATE(),'T','tr-TR') AS uzunZamanFormatiTR, FORMAT(GETDATE(),'ddd','tr-TR') AS haftaGunuTR, FORMAT(GETDATE(),'ddd') AS haftaGunu, FORMAT(GETDATE(),'MMM','tr-TR') AS ayTR, FORMAT(GETDATE(),'yyyy','tr-TR') AS yilTR, FORMAT(GETDATE(),'yyyy.MM.dd HH:mm:ss') AS ozelformat
Şekil 7: FORMAT fonksiyonu ile tarih şekillendirme örnekleriÖrnek:
5 rakamı ile yapılabilecekSELECT FORMAT(5,'C','tr-TR') AS TL, FORMAT(5,'C','en-US') AS USD, FORMAT(0.05,'P','tr-TR') AS yuzde, FORMAT(5,'N','tr-TR') AS ondalikTR, FORMAT(5,'N','en-US') AS ondalikUSA
Şekil 8: FORMAT fonksiyonu ile parasal tiplerin ve sayıların formatlandırılması örnekleri
20 Ocak 2016 Çarşamba
Bozuk Karakterlerin Türkçe Karşılıklarını Bulan Function
Bozuk Karakterlerin Türkçe Karşılıklarını Bulan Function
CREATE FUNCTION TRK ( @Deger NVARCHAR(MAX) ) RETURNS NVARCHAR(MAX) AS BEGIN DECLARE @sonuc NVARCHAR(MAX) SET @sonuc = @Deger SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'ð', N'ğ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'ð', N'Ğ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN, N'Ð', N'Ğ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'ý', N'ı'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'Ý', N'İ'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'þ', N'ş'); SET @sonuc = Replace(@sonuc COLLATE Latin1_General_BIN,N'Þ', N'Ş'); RETURN @sonuc COLLATE Turkish_CI_AS ; END
Kaydol:
Kayıtlar (Atom)