Komple firma kopyalama

Gönderen Konu: Komple firma kopyalama  (Okunma sayısı 851 defa)

0 Üye ve 2 Ziyaretçi konuyu incelemekte.

Çevrimdışı Koray Ü.

  • Logo Uzmanı
  • *****
  • Karma: 8
Komple firma kopyalama
« : 09.07.2016, 15:59 »
Arkadaşlar merhaba.
Programda açtığmız firmalara daha önce vermiş olduğumuz numaları değiştirmek istiyorum. Program buna izin vermiyor malumunuz...

Ben de önce ilgili firmayı devir.exe ile kopyaladım. sonra veri aktarımı dışarı/içeri yapttım, verilerin tamamını almakta başarısız oldum.
toplu veri aktarımı da aynı şekilde... bazı faturalar yok iken bir çoğu vardı. neye göre bunları atladı anlayamadım.

sql üzerinden LG_FFF_DD... isimli tablolardaki firma numarasını değiştirmeyi denedim. kimini kabul etti, kiminde "dependency" var diye izin vermedi. tam sonuç alamadım.

son olarak yine sql üzerinden import/export ile uğraştım. kaynak olarak eski veritabanını hedef olarak da yeni veritabanını ve yeni tablo isimlerini gösterdim. "enable identity insert" seçeneğini uygulayarak bu şekilde verileri kayıpsız olarak aktarabildim şükür. malesef burada da, faturalar üzerinde çizgi var, program kayıtların dışarıdan girildiğini düşünüyor...

ek bir yazılım veya logo object lisansı almadan bu işi nasıl halledebilirim?
saygılar..
« Son Düzenleme: 09.07.2016, 16:27 Gönderen: Koray Ü. »

Çevrimdışı Teknik21

  • Logo Kullanıcısı
  • **
  • Karma: 2
Ynt: Komple firma kopyalama
« Yanıtla #1 : 12.07.2016, 12:29 »
Şimdi ;

Yeni bir firma oluşturun..

Oluşturulan firmanın içerisindeki  tabloları bulmak için  *  SELECT * FROM SYS.tables WHERE name LIKE '%LG_011%' *  tabloları eksiksiz excel  tablosunda listeleyin..Sonrasın da [SQL 2012 Sonrası] sp_rename  prosedürü ile   " EXEC sp_renamedb 'oldName', 'newName' "   eski ve yeni  FFF_DD   değiştirdikden sonra yapılacak işlemler ++

RECHASH tablosunu    ORFICHE, INVOICE gibi tablolarda    ALTER TABLE tablo_adı DROP sütun_adı    Diyerek silmek  ve sys ile yeniden veritabanını düzenlemekdir.

Hem basit  hemde etkili bir yöntemdir..Test edilmiş  benim tarafından sonuçları   Wiew bağlı 3 tablo hariç  %98 hatasızdır..

Binlerce tabloyu yapmakdansa saniyeler içinde bu işlemleri yapabilirsiniz..

« Son Düzenleme: 12.07.2016, 18:42 Gönderen: Teknik21 »

Çevrimdışı Koray Ü.

  • Logo Uzmanı
  • *****
  • Karma: 8
Ynt: Komple firma kopyalama
« Yanıtla #2 : 12.07.2016, 16:38 »
Ömer bey merhaba.
Test için 216 nolu firmayı 888 nolu firmaya taşımak için

exec sp_rename 'LG_216_01_COSTDISTFC' , 'LG_888_01_COSTDISTFC';
exec sp_rename 'LG_216_01_CSROLL' , 'LG_888_01_CSROLL';
.......

diye devam eden sorguları çalıştırdım.
dediğiniz gibi birçok tablo adı değişti ama aşağıdaki tablolar kalmış. bunlar da kritik tablolar.
bunlar için ne yapılabilir?



Object 'LG_216_01_DISTORDLINE' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_STSHIPPEDAMOUNT' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_ACCDISTDETLN' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_STLINE' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_ORFLINE' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_CLFLINE' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_EMDEMFLINE' cannot be renamed because the object participates in enforced dependencies.
Object 'LG_216_01_EMFLINE' cannot be renamed because the object participates in enforced dependencies.

Çevrimdışı Teknik21

  • Logo Kullanıcısı
  • **
  • Karma: 2
Komple firma kopyalama
« Yanıtla #3 : 12.07.2016, 17:16 »
Merhaba Koray Bey;

İmport / export ile  360 tablo yerine  en azında bu 10 tabloyu manuel yapınız.!

Bunların sebebi ise bağlantılı  Wiew'lerdir..   Tabloların üzerine sağ tık   -- Wiew Dependencies -- diyerek bağlı Tablo-Wiew - Stored Prosedur  görebilirsiniz..

Hatanın Açıklaması zaten herşeyi ifade ediyor.. cannot be renamed because the object participates in enforced dependencies.

« Son Düzenleme: 12.07.2016, 17:17 Gönderen: Teknik21 »

Çevrimdışı Koray Ü.

  • Logo Uzmanı
  • *****
  • Karma: 8
Ynt: Komple firma kopyalama
« Yanıtla #4 : 12.07.2016, 17:20 »
evet fark ettim.
önce bütün view'ları sildim. sonra rahatlıkla bunların adını da değiştirebildim...
sonra sys'den veritabanı araçlarını oluştur deyince bu view'lar geri geldi...

Çevrimdışı Teknik21

  • Logo Kullanıcısı
  • **
  • Karma: 2
Ynt: Komple firma kopyalama
« Yanıtla #5 : 12.07.2016, 17:29 »
Şimdilik sadece RECHASH tablolarının bulundugu alanlar aldı..

ALTER TABLE tablo_adı DROP sütun_adı

Sonrasında üzeri çizik gelmiyecektir..Aslında  Firma numarası  algoritmadan geçtiği için yeniden düzenlerseniz sorun kalmıyacaktır..

Siz gene garantiye almak için  Wiew Dependencies   ilişkisel tablolara bakınız..

Ki bu yöntem ile  1 günlük işiniz  15 dakikaya düşecektir..Ama  uzman düzey Sql bilgisi gerektirir..
« Son Düzenleme: 12.07.2016, 18:43 Gönderen: Teknik21 »

Çevrimdışı Koray Ü.

  • Logo Uzmanı
  • *****
  • Karma: 8
Ynt: Komple firma kopyalama
« Yanıtla #6 : 12.07.2016, 17:36 »
evet rechash kısmı kaldı ama düzelecek gibi değil... :D
UPD ATE LG_888_01_INVOICE SET RECHASH='' komutu ile rechash sütununu sql üzerinden komple temizledim. ardından sys'den "tabloları sürüme göre güncelle" dedim. ama hala faturaların üzeri çizili ve değiştirmeye de izin vermiyor...

tabloları güncelleme pek işe yaramıyor gibi çünkü yukardaki işlemin ardından ilgili fatura tablosundaki rechash sütunu temizlediğim şekliyle, yani bomboş duruyor. rechash eklemesini yapmamış sys...

Çevrimdışı Koray Ü.

  • Logo Uzmanı
  • *****
  • Karma: 8
Ynt: Komple firma kopyalama
« Yanıtla #7 : 12.07.2016, 17:43 »
bi dakka buldum galiba...

rechash sütunun içini temizlemek yerine komple sütunu silip güncelleme yaptım..
veee.... bingooo...
bu sefer oldu...

çok teşekkürler ilginize...

Çevrimdışı Teknik21

  • Logo Kullanıcısı
  • **
  • Karma: 2
Ynt: Komple firma kopyalama
« Yanıtla #8 : 12.07.2016, 18:23 »
Tablodaki sutunu silmen lazım içini temizlemek yetmiyor..

Sorun çözüldüyse sorun yok o zaman

Çevrimdışı Koray Ü.

  • Logo Uzmanı
  • *****
  • Karma: 8
Ynt: Komple firma kopyalama
« Yanıtla #9 : 23.07.2016, 12:10 »
konuya ilgisi olanlar içi yazıyorum,
alternatif bir yöntem daha buldum: SELECT * INTO

ilk önce sys üzerinden yeni firma, dönem ve ambar tanımlamalarını yapalım. ancak "dosya oluştur" demeyelim. burası önemli. zira firma dosyaları birazdan gireceğimiz komutla oluşacak...

ardından tablo adlarını excel'de düzenliyoruz.

her tablo için
SELECT * INTO YENİ_TABLO_ADI FROM ESKİ_TABLO_ADI
şeklinde bir komut satırımız olmalı.

bu kodları "new query" ekranında çalıştırdığımız zaman sistemdeki tüm tablo ve verilerimizi başka bir yere kopyalamış oluyoruz.
indexlerin düzelmesi için de yine sys üzerinden "firmayı sürüme göre güncelleme" işlemi yapıyoruz..
isterseniz eski dataları da silebilirsiniz..

test amaçlı bir firma oluşturup aktarım yaptım, sorunsuz çalışlıyor...
yine de mesuliyet size aittir...