Kaynak: KB-v1
08_SupportPlaybooks/Processes/PROC-85.md←Surecler/*.doc(destek süreç dokümanı; parola/IP/terminal maskelenmiş). Gerçeklik: DOCUMENTED — kodla doğrulanmış değil.
ERP VERİ TABANI DEVİR
Kimlik: PROC-85 · Ürün: ERPGOLDV2 · Kategori: Devir ve yıl sonu · Katalog: ERP Devir Süreci_v1
Kaynak: AifaSoft destek süreç dokümanı (Word). Şifre, kullanıcı adı, terminal no ve IP bilgileri kaynak aşamasında maskelenmiştir; görseller resimli süreç kitabındadır.
ERP DEVİR SÜRECİ
- Mevcut ERPGOLD programı açılarak sol üst köşedeki ikinci buton olan Sistem Bilgisi butonuna basılarak versiyon bilgisi / SQL Server ve Database isimleri kontrol edilir.
(görsel — süreç kitabında)
(görsel — süreç kitabında)
-
Eğer Mevcut Program Eski Versiyon ise Güncelleme İşlemi Yapılır. (ERPUpdateSüreciV.1)
-
Mevcut Programda Raporsuz ve Raporlu Bekleyen Takoz Olmadığı Kontrol Edilir.
-
Kontrol etmek için stok listesini görüntüleyin.
(görsel — süreç kitabında)
- Stok listesinde stok durumundan “Elimizde” seçeneği seçilerek listelenen bir bilgi olup olmadığını kontrol edilir. Bu alanda bilgi var ise müşteriye bu işlemlerin temizleneceğine dair bilgiyi ileterek yazılı onay alınır.
(görsel — süreç kitabında)
-
Eğer müşteri Altın Bankacılığı ve Operasyonlar Modülü’nü kullanıyor ise tüm operasyonların ve bu operasyonlara ait işlemlerin de temizleneceği bilgisi müşteriye iletilerek yazılı onay alınır.
-
Müşterinin resmi stoklarının listesi devirden sonra manuel girmek için alınır.
-
Mevcut veri tabanın yedeği alınmadan önce Cari.Islemler tablosu Cari.Islemler_ olarak değiştirilerek kullanıcıların yedek alınma esnasında işlem yapması engellenir.
-
Mevcut veri tabanının yedeği alınıp yedek diskine kopyalanır. (ERPBackupSüreciV.1)
-
Mevcut yedek yeni isimle yüklenerek kontrol edilir. (ERPBackupKontrolSüreciV.1)
-
Orijinal veri tabanında Cari.Islemler_ tablosunun ismi Cari.Islemler olarak değiştirilir.
-
Yedek veri tabanı SQL Server’da ERPGOLDV2[arşiv yılı] adıyla restore edilir.
-
Yeni veri tabanı ERPPRO programına bağlanır. (ERPConfigurationSüreciV.1)
-
Yeni veri tabanı bağlanan ERPPRO programı çalıştırılır. Admin kullanıcısından giriş yapılarak ana menüdeyken Shift + D tuşuna basılarak Sistem > Tanımlamalar > Devir yolundaki devir butonu aktif hale getirilir.
-
Devir butonuna basılarak mevcut ADMIN şifresi ile devir işlemi gerçekleştirilir.
-
Müşterinin resmi stokları manuel olarak girilir.
-
Listedeki alanlar kontrol edilir.
-
Bilanço Raporu
-
Maden Stokları(GR/R)
-
Nakit Stokları(GR/R)
-
Pozisyon
-
Bakiye Listesi
-
Stoklarda ya da bakiyelerde olası bir tutarsızlık olursa Stok.StokHaraketleri tablosu veya Cari.BakiyeIslem tablosunda Tarih alanı Null olan kayıtlar vardır. Manuel olarak giriş çıkış yapılarak tutarsızlık düzeltilir.
-
Arşiv veri tabanı içerisinde işlem yapılmasını engellemek için aşağıdaki kod bloğu çalıştırılır.
ALTER Trigger [Cari].[AcceptTransaction] ON [Cari].[Islemler] AFTER INSERT,UPDATE,DELETE
AS
BEGIN
RAISERROR('BU VERI TABANI ISLEME KAPATILMISTIR. ',16,1)
ROLLBACK
END
- İşlem yapıldıktan sonra fiş verirken eski bakiye yazmıyor ise aşağıdaki kod bloğu çalıştırılır.
ALTER Function [Bakiye].[GetBakiyeFisNo] (@HesapType int,@HesapId int,@FisNo int)
RETURNS TABLE
as
return
Select top 10000 Kod.Kodu as BAKIYE, Case When Bakiye \< 0 Then Abs(Bakiye) else null end as ALACAK, Case When Bakiye> 0 Then Bakiye else null end as BORC,IsNull((Bakiye *-1) * KurA.Alis ,0) as NET
From Cari.BakiyeKodlari Kod
Left Join
(
Select B.BirimId as BakiyeId,Sum(Bakiye) as Bakiye
from Cari.BakiyeIslem B
Left Join Cari.Islemler I on B.IslemId=I.Id
Where (B.HesapType =@HesapType And B.HesapId =@HesapId) And (I.FisNo\<=@FisNo or B.IslemId =-1)
Group By B.BirimId
) Bak on Bak.BakiyeId =Kod.Id
Left Join Sistem.GetKurListesi (GETDATE()) KurA on KurA.BirimId =Kod.Id
Where (Kod.IsStatic='False' And Bakiye\<>0) or Kod.IsStatic='True' order by Kod.IsStatic desc, Kod.SiraNo asc
-
ERPGLOBAL adında veri tabanı oluşturularak Company tablosu oluşturulur.
-
Company ve DBName adlarındaki sütunlar nvarchar(50) veri tipiyle oluşturulur.
-
Company tablosuna veri tabanlarının adları eklenerek müşteriye kolay giriş imkanı sunulur.
MANUEL DEVİR SÜRECİ
-
Mevcut veri tabanın yedeği alınmadan önce Cari.Islemler tablosu Cari.Islemler_ olarak değiştirilerek kullanıcıların yedek alınma esnasında işlem yapması engellenir.
-
Mevcut veri tabanının yedeği alınıp yedek diskine kopyalanır. (ERPBackupSüreciV.1)
-
Mevcut yedek yeni isimle yüklenerek kontrol edilir. (ERPBackupKontrolSüreciV.1)
-
Orijinal database seçiliyken aşağıdaki kod bloğu çalıştırılır.
if OBJECT_ID(N'tempdb..#ErpBalance') is null
BEGIN
Create Table #ErpBalance(IslemID int,Tarih Date,HesapType int,HesapId int,KasaId int,BirimId int,Bakiye decimal(18,2))
END
ELSE
BEGIN
TRUNCATE TABLE #ErpBalance
END
if OBJECT_ID(N'tempdb..#ERPStok') is null
BEGIN
Create Table #ERPStok(IslemID int,Bolum int,IslemTuru int,Tarih Date,SubeId int,KasaId int,StokTipi int,StokId int,Adet int,Miktar Decimal(18,5),Milyem Decimal(18,5),Has Decimal(18,5),Maliyet Decimal(18,2),VaryantId int)
END
ELSE
BEGIN
TRUNCATE TABLE #ERPStok
END
INSERT INTO #ErpBalance
Select -1 as IslemId,GETDATE() as Date,0 as HesapType,HesapId ,KasaId ,BirimId ,Sum(Bakiye) as Bakiye
from Cari.BakiyeIslem
group by HesapId ,KasaId ,BirimId
having SUM(Bakiye )\<>0
INSERT INTO #ERPStok
Select -1 as IslemId,0 as Bolum,IslemTuru,Getdate() as Tarih,SubeId,KasaId,StokTipi,StokId,Sum(Adet),Sum(Miktar),Sum(Milyem),Sum(Has),Sum(Maliyet),VaryantId
From Stok.StokHaraketleri
Where StokTipi in (1,2)
Group by IslemTuru ,SubeId,KasaId,StokTipi,StokId,VaryantId
Truncate Table Cari.Islemler_
Truncate Table Cari.BakiyeIslem
Truncate Table Cari.History
Truncate Table Stok.StokHaraketleri
Truncate Table Cari.IslemDetaylari
INSERT INTO [Cari].[BakiyeIslem]([IslemId],[Tarih],[HesapType],[HesapId],[KasaId],[BirimId],[Bakiye])
Select * from #ErpBalance
INSERT INTO [Stok].[StokHaraketleri]([IslemId],[Bolum],[IslemTuru],[Tarih],[SubeId],[KasaId],[StokTipi],[StokId],[Adet],[Miktar],[Milyem],[Has],[Maliyet],[VaryantId])
Select * from #ERPStok
-
İki veri tabanının da kayıt sayıları kontrol edilir.
-
Orijinal veri tabanında Cari.Islemler_ tablosunun ismi Cari.Islemler olarak değiştirilir.
-
Arşiv veri tabanı içerisinde işlem yapılmasını engellemek için aşağıdaki kod bloğu çalıştırılır.
ALTER Trigger [Cari].[AcceptTransaction] ON [Cari].[Islemler] AFTER INSERT,UPDATE,DELETE
AS
BEGIN
RAISERROR('BU VERI TABANI ISLEME KAPATILMISTIR. ',16,1)
ROLLBACK
END
-
ERPGLOBAL adında veri tabanı oluşturularak Company tablosu oluşturulur.
-
Company ve DBName adlarındaki sütunlar nvarchar(50) veri tipiyle oluşturulur.
-
Company tablosuna arşiv veri tabanının adı eklenerek müşteriye kolay giriş imkanı sunulur.
Kaynaklar
- SRC-PROC-DOC — süreç dokümanı #85
