Veri Tabanı yedekten Geri alma Hk

Merhaba, daha önce almış olduğum yedekler içerisinden sadece satış bilgilerini müşterinin yedek aldığım tarihden öncesinin raporlarını görebilmesi için nasıl aktarırım yardımcı olabilirmisiniz. İyi çalışmalar.

1 Beğeni

Merhaba, bir kaç kere okumama rağmen tam olarak ne yapmak istediğinizi anlayamadım, geçmiş zamanlı bir yedeğiniz var ve müşterinizin bu veritabanına geçiş yaparak geçmiş raporlarınımı görmek istiyorsunuz?

1 Beğeni

Örnekle açıklayacak olursak işletme 1.0cak 2018 de açıldı. 1 Haziran 2018 de ki bir sıkıntıdan dolayı sıfırlamak zorunda kaldık eski yedekleri kullanmadık ama, Şu anda 1 Mayıs 2018 da ki raporu görmek istiyoruz. o yüzden eski yedekler deki satış raporlarımızı şu anki sistemde görebilmek için eski yedeklerimiz içindeki satış, günsonu vs. raporlarımızı şuanki sisteme aktarmak istemekteyiz.

Merhaba,

İşletmede şu anki veritabanının yedeğini alın ve geçmiş tarihli yedeğinizi sambapos içerisinden restore edin raporlarınıza baktıktan sonra bu gün aldığınız yedeği tekrar restore ederek bu güne geri dönün.

1 Beğeni

Kendi bilgisayarınızdan yedeği açarak istenilen raporları kaydet diyerek müşterinize farklı formatlarda dilediği tarihin raporunu verebilirsiniz fakat bu raporlar vs. satışları yeni Datanızın içerisine aktarma şansınız yok veya @EmrBkts belirtiği gibi veritabanın yedeğini alarak diğer veritabanına geçiş yapmanız bence doğru olanı kendi bilgisayarınızda bu datayı açmanız müşterinizin talep ettiği tarihli raporları kaydet diyerek müşterinize iletmenizdir.

Böyle bir çözüm bende düşündüm fakat O zamanda şöyle bir problem olacak müşteri geçmiş tarihli her yedek almak istediğinde her defasında bu işlemi yapmak zorun da kalacağız. 1 defada sıkıntı yok ama sonrasında…?

Bunun için müşterinizden tarihleri belirlemesini ve o tarihli raporları kaydet diyerek müşteriye iletmeniz durumunda raporları silmediği süre veritabanına geri dönmeniz gerekmez.

Eski veritabanını Samba2018 adı ile sql e import edin.
Daha sonra C:\ProgramData\SAMBAPOS\SambaPOS5\SambaSettings.txt dosyasının 2 tane kopyasını oluşturup kopya dosyanın birinin adını da Samba2018.txt olarak değiştirin. Diğerini de Samba2019.txt olarak değiştirin.
Daha sonra Samba2018.txt dosyasını açın ve içerisindeki ilgili satırda Veritabanı adını Database=Samba2018 olarak değiştirip kaydedin. Diğer dosya olan Samba2019.txt olduğu gibi bırakın.

Sonra da aşağıda yazacağım komutları not defterine yapıştırıp dosyayı farklı kayederek C:\ProgramData\SAMBAPOS\SambaPOS5\ klasorune 2018Gecis.cmd adı ile kaydedin.

@echo off
Del SambaSettings.txt
copy Samba2018.txt SambaSettings.txt
ECHO 2018 Veritabanina Gecis Yapildi SambaPos Uygulamasini Yeniden Baslatin.
pause
exit 

Şimdi de tekrar 2019’a geçiş için bir toplu komut dosyası daha yapacağız, aynı şekilde aşağıdaki kodları not defterine kaydedip yine aynı konuma uzantısını 2019gecis.cmd olacak şekilde kaydedin.

@ECHO OFF
Del SambaSettings.txt
copy Samba2019.txt SambaSettings.txt
ECHO 2019 Veritabanina Gecis Yapildi SambaPos Uygulamasini Yeniden Baslatin.
pause
exit 

Şimdi bu iki dosyanın kısayolunu masaüstüne atın. SambaPos kapalı iken hangi dosyayı çalıştırsanız o veritabanına geçiş yapabilirsiniz.

5 Beğeni

Çok Teşekkür ederim. @Banned bu çözüm işimi görecek sanırım.

1 Beğeni

Ek bilgi olması açısından program kısayolundan -cs: parametresi ile connection string belirleyebilirsiniz.

Ancak dikkat edin bu ayar Local Settings üzerine yazar. Yani geçici bir ayar değil. Dolayısıyla her veritabanı için ayrı bir kısayol belirlemek gerek.

Mesela şöyle

"C:\Program Files (x86)\SambaPOS5\Samba.Presentation.exe" -cs:"Data Source=BEYOGLU\SQLExpress; User Id=sa; Password=1234; Database=SambaPOS5_Old;"

4 Beğeni

Güzel bilgi @emre hocam, teşekkürler.

1 Beğeni