- İlk kurulumda veritabanı olarak, kullanılacak 'Temelset' veritabanı seçilmelidir. (master ya da Netsis seçilmemelidir.) B2B tabloları bu veritabanı üzerinde yaratılır. (PRT ile başlar)
- Kurulum hatalarında, hata aldığı anda, hatayı kapatmadan, C:\Users\kullanici.adi\AppData\Local\ ya da Local\Temp adlı klasörün altında sfx{’le başlayan klasör içinde yer alan "installation.log" dosyasının en sonunda hangi hata detayına ulaşılabilir. (Hangi script sebebiyle hata alındığı)
Gerekirse bu log dosyasını direkt .rar layarak [email protected] adresine 'kurulum hatası' konusu ile paylaşabilirsiniz.
Karşılaşabileceğiniz bazı hata çözümleri ve dikkat edilmesi gereken noktalar:
- /--v220 oncesi bir sürümden güncelleme yapıyorsanız ve B2B "Onay Yapısı" kullanılıyorsa *** :
- Degişen sipariş onay altyapısı sonrası mevcut dataların düzenlenmesi için v220 altındaki B2B_ONAY_DUZENLEME scriptini çalıstırınız!
- /-- v300 öncesi bir sürümden bu sürüme güncelleme yapılıyor ise;
1) Hata alındığında (installation.log sonunda AJM ile ilgili hata var ise) v300 klasörü altındaki 03_AJM_UPDATE scripti içindeki kısımlar tek tek çalıştırıldıktan sonra kurulum tekrar denenebilir.
(Zaten varolanlar için hata alınabilir, hata alınsa da sonuna kadar devam edebilirsiniz)
2) Şube bazlı depo kodu desteği geldiği için güncelleme sonrası işlem yapmadan önce " ERP Ayarları > Şubeler " sekmesi altından aktif şube için varsayılan depo kodu ataması gerçekleştiriniz.
- /-- Herhangi bir durumda (sıfır kurulum ya da temelsette güncelleme sonrası) Stok ve müşterilerin gelmediği gözleniyorsa ve temelsette db güncellemesi ya da yeni versiyon temelsete geçiş gerçekleşmişse aşağıdaki scripti temelset veritabanında çalıştırınız:
ALTER FUNCTION [dbo].[NETPROCESSID]()
RETURNS VARCHAR(75)
WITH SCHEMABINDING
AS
BEGIN
DECLARE @APPNAME VARCHAR(50);
DECLARE @RESULT VARCHAR(75)
SET @APPNAME = APP_NAME();
IF SUBSTRING(@APPNAME,1,10) = 'NETSISWEB'
BEGIN
DECLARE @LENGTH TINYINT
DECLARE @CTX VARBINARY(128)
SET @CTX = CONTEXT_INFO()
SET @LENGTH = CONVERT(TINYINT, SUBSTRING(@CTX, 1, 1))
SET @RESULT = CONVERT(VARCHAR(127), SUBSTRING(@CTX, 2, @LENGTH))
END
ELSE IF SUBSTRING(@APPNAME,1,4) = 'RC20'
BEGIN
SET @RESULT=('REDCODE20' + '_' + @APPNAME)
END
ELSE IF @APPNAME = '444082'
BEGIN
SET @RESULT=(HOST_NAME()+'_'+LTRIM(CAST(CAST(GETDATE() AS DECIMAL) AS VARCHAR(15))) + '_' + @APPNAME)
END
ELSE
BEGIN
SET @RESULT=(HOST_NAME() + '_' + HOST_ID() + '_' + @APPNAME)
END
RETURN @RESULT
END
- /-- Veritabanında viewlara select çekerken session almak için veritabanında aşağıdaki prosedürü oluşturun:
Oluşturulan prosedürü
EXEC PRTSP_INIT_CONTEXT @STORE_ID, @SSOUSERID şeklinde çalıştırın, ardından istenilen view a select çekilebilir.
ÖR: EXEC PRTSP_INIT_CONTEXT 0,2- /****** Object: StoredProcedure [dbo].[PRTSP_INIT_CONTEXT] Script Date: 10.03.2014 16:00:26 ******/CREATE PROCEDURE [dbo]. [PRTSP_INIT_CONTEXT]@StoreId INT = 0 ,@UserId INT = 1ASDECLARE @ProcessId VARCHAR( 75)SET @ProcessId = DBO.NETPROCESSID ()DECLARE @UserName VARCHAR( 30)SET @UserName = 'NETSIS'IF EXISTS(SELECT 1FROM NETSIS .dbo. NETSESSION nWHERE n .[V$PROCESSID] = @ProcessId)BEGINUPDATE NETSIS .dbo. NETSESSIONSET [V$NETUSERID] = @UserId ,[V$NETUSERNAME] = @UserNameWHERE [V$PROCESSID] = @ProcessIdENDELSEBEGININSERT INTO NETSIS. dbo.NETSESSION([V$PROCESSID],[V$ISLETME_KODU],[V$SUBE_KODU],[V$NETUSERID],[V$NETUSERNAME],[V$MERKEZMI],[V$LOGTUTULACAK],[V$ILERIGUVENLIKSISTEMI],[V$NETUSERGRPID],[V$WORKPLACEVARMI],[V$CARIKULTIPI],[V$MUHKULTIPI],[V$ESNEKYAPVARMI],[V$NETKEY])SELECT TOP 1 DBO. NETPROCESSID(),[V$ISLETME_KODU],[V$SUBE_KODU],@UserId,@UserName,[V$MERKEZMI],[V$LOGTUTULACAK],[V$ILERIGUVENLIKSISTEMI],[V$NETUSERGRPID],[V$WORKPLACEVARMI],[V$CARIKULTIPI],[V$MUHKULTIPI],[V$ESNEKYAPVARMI],[V$NETKEY]FROM NETSIS ..NETSESSIONWHERE V$ISLETME_KODU = 1 AND V$SUBE_KODU =0ENDIF EXISTS(SELECT 1FROM PRT_USERCONTEXT uWHERE u .STORE_ID = @StoreIdAND u .[USER_ID] = @UserId)BEGINUPDATE PRT_USERCONTEXTSET DB_PROCESS_ID = @ProcessId ,CURRENT_ACCOUNT_CODE = '12011001'WHERE STORE_ID = @StoreIdAND [USER_ID] = @UserIdENDELSEBEGININSERT INTO PRT_USERCONTEXT(-- ID -- this column value is auto-generatedSTORE_ID,[USER_ID],DB_PROCESS_ID,CURRENT_ACCOUNT_CODE)VALUES(@StoreId,@UserId,DBO.NETPROCESSID () ,'12011001')END
- /****** Object: StoredProcedure [dbo].[PRTSP_INIT_CONTEXT] Script Date: 10.03.2014 16:00:26 ******/
- /-- Uygulama içerisinde hata alırsanız, ya da mevcut hata loglarını görmek isterseniz uygulama giriş adresinizden sonra /hata.axd yazarak hata log detaylarını görebilirsiniz.
ÖR: http://b2bdemo.netsis.com.tr/B2B/hata.axd /-- Form Özelleştirme kullanıyorsanız:
** v304 ile birlikte Form özelleştirme ile veritabanından veri çekilen durumlar için yeni kontroller eklenmiştir. Bu yüzden bu özelleştirmelerin tekrar uygun formatta uyarlanması gerekmektedir.
Detaylı bilgiye aşağıdaki linkten ulaşabilirsiniz:Form Ozellestirme - Sorgu Yonetimi
- /-- Kurulum sonrası:
** v305 ile birlikte güncelleme sonrası Ayarlar > ERP Ayarları > Şubeler > Aktif Şubenin Depo Kodu bilgisi kontrol edilmeli ve gerekiyorsa doldurulmalıdır. - /–Aşağıdaki şekilde <customErrors mode="Off"/> ya da <customErrors mode="Remote Only"/> hatası alınırsa;
---------------------
<!-- Web.Config Yapılandırma Dosyası -->
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
</configuration>
---------------------
Çözüm için öncelikle;
Kurulum klasörü altındaki web.config dosyası içinde Ör: C:\inetpub\wwwroot\B2B\web.config
<customErrors mode=RemoteOnly"/> olan satırı
<customErrors mode="Off"/> olarak değiştirin. (ilk harfi büyük olacak şekilde Off yazılmalı)
Ardından server üzerinden tekrar siteye giriş denenmelidir.
Hata ekran görüntüsünün değişmesi ve hatanın gerçek sebebi görünmesi beklenmektedir. Bu hata detayı incelenebilir ya da destek için [email protected] 'ye gönderebilirsiniz.
Not: Bir değişiklik gözlenmezse, <customErrors mode="On"/> olarak değiştirin. (ilk harfi büyük olacak şekilde On yazılmalı) değiştirip tekrar deneyebilirsiniz. - /-- HTTP Error 500.19 hatası alınıyorsa;
ÇÖZÜM:“%windir%\system32\inetsrv\config\applicationHost.config” dosyasındaki ‘Deny’ değerleri ‘Allow’ yapıldıktan sonra giriş tekrar denenmelidir.