Tiger etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Tiger etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Logo Tiger Kayıt Numaralama Şablonlarına başlangıç değeri verme
Logo Tiger/Go (Ticari Sistem) programlarında kayıt numaralarının belli bir formatta ve belli bir değerden başlamasını istiyorsanız aşağıdaki maddeleri uygulayınız.
1. TigerSys (Sistem İşletmeni) programını açın.
2. Yönetim --> Kayıt Numaralama --> Kayıt Numara Şablonları formunu açın.
3 Hangi modülde numaralama yapmak isterseniz o modülü seçin. (e-faturalar)
4. Sisteminizde birden çok firma varsa ilgili firmaya ait kaydı seçin. Burada dikkat edilmesi gereken unsur dönem başlangıç ve bitiş tarihlerlerine dikkat edilmesidir.
5. Kayıt seçildikten sonra "Numara Bölümleri" sekmesinden başlangıç değerleri girişi yapılır.
Logo Tiger : Cari kartlara zorunlu alan ekleme
Tiger'da Cari Hesap Kartların zorunlu alanları tanımlamak için;
1.
TigerSys à Kuruluş Bilgileri à Zorunlu alanlar à Cari Hesap Seçilir.
2. Cari hesapta zorunlu girilmesi gereken alan üzerinde, hangi firmalara
uygulanacağı seçilir. Zorunlu Checkbox’ı seçilir.
Not: Yukarıdaki işlem aşağıdaki
ekranlarda uygulanabilir.
Ana Kayıt Ekranları:
Malzeme
Cari Hesap
Muhasebe Hesabı
Sabit Kıymet Kaydı
Hareket Ekranları:
Fatura
Muhasebe Fişi
Sipariş
Malzeme Fişleri
İrsaliyeler
Ürün Reçetesi
Talep Fişleri
Emir
Teklif
Sözleşme
Logo Tiger: Zaman bilgisinin Logo veritabanına integer olarak aktarılması
Logo Tiger'da, zaman bilgisi bazı tablolarda integer alanlarda tutulmaktadır. Bu alanları doldurmak için aşağıdaki SQL fonksiyonunu kullanabilirsiniz. (Veya aynı kodu C# veya Delphi gibi yazılım tool'larında hazırlayabilirsiniz)
CREATE FUNCTION [dbo].[LG_TIMETOINT](@HH INT,@MM INT,@SS INT)
RETURNS INT
AS
BEGIN
DECLARE @TIME INT
SELECT @TIME = (@HH*65536*256+@MM*65536+@SS*256)
RETURN(@TIME)
END
Örnek Kod:
-- Örneğin saat 15:54:00 olduğunda sonuç integer olarak 255197184 gelir
select [dbo].[LG_TIMETOINT](15,54,00) as IntegerSaat
CREATE FUNCTION [dbo].[LG_TIMETOINT](@HH INT,@MM INT,@SS INT)
RETURNS INT
AS
BEGIN
DECLARE @TIME INT
SELECT @TIME = (@HH*65536*256+@MM*65536+@SS*256)
RETURN(@TIME)
END
Örnek Kod:
-- Örneğin saat 15:54:00 olduğunda sonuç integer olarak 255197184 gelir
select [dbo].[LG_TIMETOINT](15,54,00) as IntegerSaat
Logo Tiger/Unity Onaylama sorgusu (Fiş Kilitleme)
Tiger üzerindeki modüllerin sadece okunabilir yapıldığı "Onaylama işlemleri" ekranı dışında SQL tablosu üzerinden değişiklik gerekebilir. LG_XXX_YY_TRANSAC tablosuyla aşağıdaki ekran görüntünde bulunan alanların onayını açıp kapayabilirsiniz.
Örn: Muhasebe fişleri için ilgili alan
(APPRDATES12)
select APPRDATES12 from LG_XXX_YY_TRANSAC
Logo Tiger Bağlantı Hatası: Exception message : Belirtilen modül bulunamadı, ClassID: {00990B02-F549-11D1-9E2D-0020185018BF}.
Logo Tiger'a bağlantı yapılırken aşağıdaki hata karşınıza gelebilir.
Exception message : Belirtilen modül bulunamadı, ClassID: {00990B02-F549-11D1-9E2D-0020185018BF}.
Çözüm için:
Exception message : Belirtilen modül bulunamadı, ClassID: {00990B02-F549-11D1-9E2D-0020185018BF}.
Çözüm için:
başlat --> çalıştır
regedit
HKEY_CURRENT_USER\Software\LBS klasörünü silin
HKEY_LOCAL_MACHINE\SOFTWARE\LBS klasörünü silin
regedit ten cıkın
regsvr32 Z:\GO_PLUS\LBSCONNLIB.dll
regsvr32 Z:\GO_PLUS\ActiveQuilt.dll
işlem tamamlanır.
Logo Tiger, Yeni Yıl numaralama şablonlarını kopyalama sorgusu
Logo Tiger veya Unity'de yeni yıl şablonları L_LDOCNUM tablosunda tutulur. Kayıt numaralarını yıl bazında tutuyorsanız her bir fiş türü için yeni bir şablon üretmeniz gerekmektedir. Aşağıdaki örnekte 2012'de kullanılan fiş şablonları 2013 için yeniden üretiliyor.
INSERT INTO L_LDOCNUM (
Tiger/Unity Hareket Özel Kodu Kontrol ve create işlemi
Tiger veya Unity üzerinde yapılan her türlü fişin satırlarında (Satınalma Sipariş, İrsaliye, Fatura, Malzeme Hareketi vs) "Hareket Özel Kodu" alanı bulunur.
Entegre bir sistem kurduğunuzda birbirinden bağımsız kurgulanan "Hareket Özel Kodları"'nın aynı kayıtlardan oluşabilmesi için bir Stored Procedure (SP) hazırladım. Amaç, Malzeme Fişi satırında açılan hareket özel kodunun tüm girişlerde görülmesini sağlamak. Aşağıdaki SP'yi, SQL Server üzerinde bir JOB'a bağlarsanız Hareket özel kodlarını sürekli güncel tutabilirsiniz.
Stored Procedure Kodu:
Entegre bir sistem kurduğunuzda birbirinden bağımsız kurgulanan "Hareket Özel Kodları"'nın aynı kayıtlardan oluşabilmesi için bir Stored Procedure (SP) hazırladım. Amaç, Malzeme Fişi satırında açılan hareket özel kodunun tüm girişlerde görülmesini sağlamak. Aşağıdaki SP'yi, SQL Server üzerinde bir JOB'a bağlarsanız Hareket özel kodlarını sürekli güncel tutabilirsiniz.
Stored Procedure Kodu:
Logo Tiger'da yeni dönem açma hatası: Tarihler Mali yıl başlangıcı ile uyumlu değil
Logo Tiger'da Tiger2sys ile yeni bir dönem açılırken "Tarihler Mali yıl başlangıcı ile uyumlu değil" hatası geldiğinde;
Bu hata, önceki dönemin başlangıç zamanının yılbaşından başlamadığı durumlarda görülür.
Yeni yılda 1 Ocak'tan dönemi başlatabilmek için aşağıdaki sql cümlecikleri ile ;
SELECT * FROM L_CAPIFIRM WHERE NR=47
--ilk sorguyla firmanın LOGICALREF'i bulunur
--UPDATE L_CAPIFIRM SET BEGMON=1,BEGDAY=1 WHERE LOGICALREF=218
--ikinci sorguyla başlangıç gün ve ay bilgisi 1 olarak update edilir.
Bu işlemleri yaptıktan sonra yeni dönemi tiger2sys üzerinden açabilirsiniz.
Bu hata, önceki dönemin başlangıç zamanının yılbaşından başlamadığı durumlarda görülür.
Yeni yılda 1 Ocak'tan dönemi başlatabilmek için aşağıdaki sql cümlecikleri ile ;
SELECT * FROM L_CAPIFIRM WHERE NR=47
--ilk sorguyla firmanın LOGICALREF'i bulunur
--UPDATE L_CAPIFIRM SET BEGMON=1,BEGDAY=1 WHERE LOGICALREF=218
--ikinci sorguyla başlangıç gün ve ay bilgisi 1 olarak update edilir.
Bu işlemleri yaptıktan sonra yeni dönemi tiger2sys üzerinden açabilirsiniz.
Tiger'da Cari Hesaba Muhasebe hesap kodunu otomatik olarak aktarmak
Tiger'da Cari Hesaba Muhasebe hesap kodunu otomatik olarak aktarmak için aşağıdaki SQL scriptini çalıştırabilirsiniz.
DECLARE @carilref INT
DECLARE @carimuhlref INT
DECLARE @muhlref INT
DECLARE @carikodu varchar(50)
DECLARE @definiti varchar(50)
DECLARE @muhasebekodu varchar(50)
DECLARE @carimuhlref2 INT
DECLARE @muhlref2 INT
DECLARE @lastCarimuhSeq INT
DECLARE @eksikkayitsayisi INT
DECLARE processes CURSOR FOR
SELECT CARI.LOGICALREF,CARI.CODE AS CARI_KODU,CARIMUH.LOGICALREF AS CARIMUH_LREF,MUH.CODE AS MUHASEBE_KODU FROM LG_107_CLCARD CARI WITH (NOLOCK)
LEFT OUTER JOIN LG_107_CRDACREF CARIMUH WITH (NOLOCK) ON CARIMUH.CARDREF=CARI.LOGICALREF AND CARIMUH.TRCODE = 5
LEFT OUTER JOIN LG_107_EMUHACC MUH WITH (NOLOCK) ON CARIMUH.ACCOUNTREF=MUH.LOGICALREF
WHERE (MUH.CODE<>CARI.CODE OR MUH.CODE IS NULL) and SUBSTRING(CARI.CODE,5,2) = '47' AND CARI.CARDTYPE<>22 and CARI.CODE NOT LIKE '25%' ORDER BY CARI.CODE
OPEN processes
FETCH NEXT FROM processes
INTO @carilref,@carikodu,@carimuhlref,@muhasebekodu
WHILE @@FETCH_STATUS = 0
BEGIN
--ilk olarak LG_107_CRDACREF tablosunda kayıt var mı kontrol edilecek. eğer varsa ve muhasebe kodu yok veya hatalıysa muhasebe tablosundan
--kayıt aktarılacak.
set @muhlref2 = 0
SELECT @muhlref2=LOGICALREF FROM LG_107_EMUHACC where CODE = @carikodu
if @muhlref2 = 0
begin
insert into #EksikKayitTableGintem (Firma,CariKodu) values (107,@carikodu)
end
else
begin
if @carimuhlref IS NOT NULL
begin
UPDATE [LG_107_CRDACREF]
SET
[TRCODE] = 5
,[ACCOUNTREF] = @muhlref2
WHERE [LOGICALREF] = @carimuhlref
print 'update' + cast(@carimuhlref as varchar(20))
end
ELSE
BEGIN
print 'insert' + cast(@carimuhlref as varchar(20))
SELECT @lastCarimuhSeq = LASTLREF from LG_107_CRDACREFSEQ where ID=1
UPDATE LG_107_CRDACREFSEQ SET LASTLREF = @lastCarimuhSeq + 1 WHERE ID=1
INSERT INTO [LG_107_CRDACREF]
([LOGICALREF],[TRCODE],[CARDREF],[TYP],[ACCOUNTREF],[CENTERREF],[SITEID],[RECSTATUS],[ORGLOGICREF],[PROJECTREF])
VALUES (@lastCarimuhSeq ,5 ,@carilref,1 ,@muhlref2 ,1 ,0,0,0 ,0)
END
end
--PRINT cast(@muhlref2 as varchar(20)) + '-' + @carikodu
FETCH NEXT FROM processes
INTO @carilref,@carikodu,@carimuhlref,@muhasebekodu
END
CLOSE processes
DEALLOCATE processes
DECLARE @carilref INT
DECLARE @carimuhlref INT
DECLARE @muhlref INT
DECLARE @carikodu varchar(50)
DECLARE @definiti varchar(50)
DECLARE @muhasebekodu varchar(50)
DECLARE @carimuhlref2 INT
DECLARE @muhlref2 INT
DECLARE @lastCarimuhSeq INT
DECLARE @eksikkayitsayisi INT
DECLARE processes CURSOR FOR
SELECT CARI.LOGICALREF,CARI.CODE AS CARI_KODU,CARIMUH.LOGICALREF AS CARIMUH_LREF,MUH.CODE AS MUHASEBE_KODU FROM LG_107_CLCARD CARI WITH (NOLOCK)
LEFT OUTER JOIN LG_107_CRDACREF CARIMUH WITH (NOLOCK) ON CARIMUH.CARDREF=CARI.LOGICALREF AND CARIMUH.TRCODE = 5
LEFT OUTER JOIN LG_107_EMUHACC MUH WITH (NOLOCK) ON CARIMUH.ACCOUNTREF=MUH.LOGICALREF
WHERE (MUH.CODE<>CARI.CODE OR MUH.CODE IS NULL) and SUBSTRING(CARI.CODE,5,2) = '47' AND CARI.CARDTYPE<>22 and CARI.CODE NOT LIKE '25%' ORDER BY CARI.CODE
OPEN processes
FETCH NEXT FROM processes
INTO @carilref,@carikodu,@carimuhlref,@muhasebekodu
WHILE @@FETCH_STATUS = 0
BEGIN
--ilk olarak LG_107_CRDACREF tablosunda kayıt var mı kontrol edilecek. eğer varsa ve muhasebe kodu yok veya hatalıysa muhasebe tablosundan
--kayıt aktarılacak.
set @muhlref2 = 0
SELECT @muhlref2=LOGICALREF FROM LG_107_EMUHACC where CODE = @carikodu
if @muhlref2 = 0
begin
insert into #EksikKayitTableGintem (Firma,CariKodu) values (107,@carikodu)
end
else
begin
if @carimuhlref IS NOT NULL
begin
UPDATE [LG_107_CRDACREF]
SET
[TRCODE] = 5
,[ACCOUNTREF] = @muhlref2
WHERE [LOGICALREF] = @carimuhlref
print 'update' + cast(@carimuhlref as varchar(20))
end
ELSE
BEGIN
print 'insert' + cast(@carimuhlref as varchar(20))
SELECT @lastCarimuhSeq = LASTLREF from LG_107_CRDACREFSEQ where ID=1
UPDATE LG_107_CRDACREFSEQ SET LASTLREF = @lastCarimuhSeq + 1 WHERE ID=1
INSERT INTO [LG_107_CRDACREF]
([LOGICALREF],[TRCODE],[CARDREF],[TYP],[ACCOUNTREF],[CENTERREF],[SITEID],[RECSTATUS],[ORGLOGICREF],[PROJECTREF])
VALUES (@lastCarimuhSeq ,5 ,@carilref,1 ,@muhlref2 ,1 ,0,0,0 ,0)
END
end
--PRINT cast(@muhlref2 as varchar(20)) + '-' + @carikodu
FETCH NEXT FROM processes
INTO @carilref,@carikodu,@carimuhlref,@muhasebekodu
END
CLOSE processes
DEALLOCATE processes
Tiger/Unity'deki tarih bilgisinin çevrim işlemleri
Tiger/Unity veritabanında integer olarak tutulan tarih bilgisininin datetime'a çeviren fonksiyon.
CREATE FUNCTION fn_LogoDatetoSystemDate (@DEGER INT)
RETURNS datetime
AS
BEGIN
DECLARE @GUN VARCHAR(2), @AY VARCHAR(2), @YIL VARCHAR(4)
DECLARE @SONUC datetime
SELECT
@GUN=CAST((CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)-(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/256*256)) AS VARCHAR(3))
SELECT
@AY=CAST(((CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)-(65536*(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/65536)))-(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)-(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/256*256)))/256 AS VARCHAR(3))
SELECT
@YIL=CAST((CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/65536) AS VARCHAR(6))
SET @GUN=CASE WHEN LEN(@GUN)<2 THEN '0'+@GUN ELSE @GUN END
SET @AY=CASE WHEN LEN(@AY)<2 THEN '0'+@AY ELSE @AY END
SONUC:
IF @DEGER<>0
BEGIN
SET @SONUC=CONVERT(DATETIME, @YIL + '-' + @AY + '-' + @GUN + ' 00:00:00', 102)
END
IF @DEGER=0
SET @SONUC= NULL
RETURN @SONUC
END
Tiger/Unity için tarih bilgisinini datetime'a integer olarak çeviren fonksiyon.
CREATE FUNCTION fn_LogoTimetoSystemTime (@GELENDEGER INT)
RETURNS VARCHAR(8)
AS
BEGIN
DECLARE @SAAT VARCHAR(2), @DAKIKA VARCHAR(2), @SANIYE VARCHAR(2), @SONUC VARCHAR(8)
SELECT
@SAAT=RTRIM(CONVERT(char(20), ROUND(@GELENDEGER / 16777216, 2))),
@DAKIKA=RTRIM(CONVERT(char(20), ROUND((@GELENDEGER - ROUND(@GELENDEGER / 16777216, 2) * 16777216)/ 65536, 2))),
@SANIYE=RTRIM(CONVERT(char(20), ROUND((@GELENDEGER - ROUND(@GELENDEGER / 16777216, 2) * 16777216 - ROUND((@GELENDEGER - ROUND(@GELENDEGER / 16777216, 2) * 16777216) / 65536, 2) * 65536) / 256, 2)))
SET @SAAT=CASE WHEN LEN(@SAAT)=1 THEN '0'+@SAAT ELSE @SAAT END
SET @DAKIKA=CASE WHEN LEN(@DAKIKA)=1 THEN '0'+@DAKIKA ELSE @DAKIKA END
SET @SANIYE=CASE WHEN LEN(@SANIYE)=1 THEN '0'+@SANIYE ELSE @SANIYE END
SET @SONUC= @SAAT + ':' +@DAKIKA + ':' + @SANIYE
RETURN @SONUC
END
CREATE FUNCTION fn_LogoDatetoSystemDate (@DEGER INT)
RETURNS datetime
AS
BEGIN
DECLARE @GUN VARCHAR(2), @AY VARCHAR(2), @YIL VARCHAR(4)
DECLARE @SONUC datetime
SELECT
@GUN=CAST((CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)-(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/256*256)) AS VARCHAR(3))
SELECT
@AY=CAST(((CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)-(65536*(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/65536)))-(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)-(CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/256*256)))/256 AS VARCHAR(3))
SELECT
@YIL=CAST((CONVERT(INT,CONVERT(BINARY,@DEGER,2),0)/65536) AS VARCHAR(6))
SET @GUN=CASE WHEN LEN(@GUN)<2 THEN '0'+@GUN ELSE @GUN END
SET @AY=CASE WHEN LEN(@AY)<2 THEN '0'+@AY ELSE @AY END
SONUC:
IF @DEGER<>0
BEGIN
SET @SONUC=CONVERT(DATETIME, @YIL + '-' + @AY + '-' + @GUN + ' 00:00:00', 102)
END
IF @DEGER=0
SET @SONUC= NULL
RETURN @SONUC
END
Tiger/Unity için tarih bilgisinini datetime'a integer olarak çeviren fonksiyon.
CREATE FUNCTION fn_LogoTimetoSystemTime (@GELENDEGER INT)
RETURNS VARCHAR(8)
AS
BEGIN
DECLARE @SAAT VARCHAR(2), @DAKIKA VARCHAR(2), @SANIYE VARCHAR(2), @SONUC VARCHAR(8)
SELECT
@SAAT=RTRIM(CONVERT(char(20), ROUND(@GELENDEGER / 16777216, 2))),
@DAKIKA=RTRIM(CONVERT(char(20), ROUND((@GELENDEGER - ROUND(@GELENDEGER / 16777216, 2) * 16777216)/ 65536, 2))),
@SANIYE=RTRIM(CONVERT(char(20), ROUND((@GELENDEGER - ROUND(@GELENDEGER / 16777216, 2) * 16777216 - ROUND((@GELENDEGER - ROUND(@GELENDEGER / 16777216, 2) * 16777216) / 65536, 2) * 65536) / 256, 2)))
SET @SAAT=CASE WHEN LEN(@SAAT)=1 THEN '0'+@SAAT ELSE @SAAT END
SET @DAKIKA=CASE WHEN LEN(@DAKIKA)=1 THEN '0'+@DAKIKA ELSE @DAKIKA END
SET @SANIYE=CASE WHEN LEN(@SANIYE)=1 THEN '0'+@SANIYE ELSE @SANIYE END
SET @SONUC= @SAAT + ':' +@DAKIKA + ':' + @SANIYE
RETURN @SONUC
END
Logo Tiger'da Muhasebe Kodu olmayan cari kartların kontrolü
SELECT LOGICALREF,CODE, DEFINITION_, CITY FROM LG_106_CLCARD WHERE
(LOGICALREF NOT IN (SELECT CARDREF FROM LG_106_CRDACREF WHERE (LG_106_CRDACREF.TRCODE = 5)))
ORDER BY DEFINITION_
(LOGICALREF NOT IN (SELECT CARDREF FROM LG_106_CRDACREF WHERE (LG_106_CRDACREF.TRCODE = 5)))
ORDER BY DEFINITION_
Logo Tiger'da firma dönem bilgilerini listelemek
SELECT FRM.NR AS FIRMA_NO,FRM.NAME AS FIRMA_ADI
DONEM.NR AS DONEM_NO FROM L_CAPIFIRM AS FRM
INNER JOIN L_CAPIPERIOD AS DONEM ON FRM.NR=DONEM.FIRMNR
order by FRM.NR,DONEM.NR
DONEM.NR AS DONEM_NO FROM L_CAPIFIRM AS FRM
INNER JOIN L_CAPIPERIOD AS DONEM ON FRM.NR=DONEM.FIRMNR
order by FRM.NR,DONEM.NR
Kaydol:
Kayıtlar (Atom)
BlackListIP control on Serenity platform (.NET Core)
In the Serenity platform, if you want to block IPs that belong to people you do not want to come from outside in the .net core web project,...
-
Logo Tiger programında kullanılan veritabanı tabloları aşağıdadır. 1. XXX olarak üç digit ile gösterilen bölüm firma numarasını belirtir....
-
TABLO ADI AÇIKLAMA L_PERSONEL Çalışma Alanı Tanımları L_SYSLOG Kullanıcı Kaydı İzleme L_L...
-
Bordro Plus üzerinde aktif ve pasif durumdaki personellere ait bilgilerin listesini aşağıdaki sorguyu kullanarak alabilirsiniz. SELECT ...




