1 Son düzenleyen, aydinufuk (17.01.2012 13:57:55)

Konu: Şube dataları birleştirme..

arkadaslar,

bir musterimin bir merkezi ve 3 subesi var. subelerinde ve merkezde yazdigim programi kullaniyorlar.
benden istedikleri subelerde girdikleri siparisleri merkezde birlestirmek. 
aklima 3 yol geldi

1. gunluk olarak o gun girilen fisleri zip edip merkeze mail attırmak ve merkezde unzip edip birleştirmek.

2. web ortamında bir veri tabanı tutmak ve bu vertabanına subelere veri yazdırıp merkeze okutturmak.
bu secenekte iki yontem aklımda
         a.web server kullanmak
         b. olabiliyorsa sql ile web uzerindeki vertabanına baglanıp işlem yaptırmak. bu yontem hakkinda hiç bir bilgim yok.


3. size sormak smile

sizce en efektif yontem hangisi ? hem kullanım açısından hem de programlama açısından..

not: subelerin gunluk fis miktarı sube basına 5-10 taneyi geçmez.


şimdiden teşekkürler..

2 Son düzenleyen, metin (17.01.2012 14:22:21)

Re: Şube dataları birleştirme..

3.RDP. hiçbirşeyle uğraşman gerekmez. en efektif yolu bu. Diğer yollarda uğraşırsın.

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

3

Re: Şube dataları birleştirme..

SQL server kullan (Express 10 Gb'a kadar ucretsiz). Baska databaseler de var ama benim bildigim en efektif olani bu. SQL server'a internet uzerinden baglanip dogrudan ona yazacaklarindan aninda zaten ayni subedeymisler gibi dusunebilirsin. SQL serverin ayni zamanda dagitilmis, replikasyonlu calisma destegi de var ama onlarla ugrasmasan da olur (merkez ve subelerde database mevcut oluyor, guncellemelerini SQL server hallediyor). Cok hizli olmayan baglantilarda bile efektif kullanabilecegin bir yontem bence.
Bulut yazilimlar da var ama VFP ile hic girme bence (bir tane var cok yavas geldi bana).

4

Re: Şube dataları birleştirme..

Bu arada, eger web tabanli yazabiliyorsan yaz. Yazmasi zor olur diye onermedim hic. Yazarsan da VFP ile yazma - ben yazdim sonra gene yazdim .Net ile:)

5

Re: Şube dataları birleştirme..

cetinbasoz yazdı:

SQL server kullan (Express 10 Gb'a kadar ucretsiz). Baska databaseler de var ama benim bildigim en efektif olani bu. SQL server'a internet uzerinden baglanip dogrudan ona yazacaklarindan aninda zaten ayni subedeymisler gibi dusunebilirsin. SQL serverin ayni zamanda dagitilmis, replikasyonlu calisma destegi de var ama onlarla ugrasmasan da olur (merkez ve subelerde database mevcut oluyor, guncellemelerini SQL server hallediyor). Cok hizli olmayan baglantilarda bile efektif kullanabilecegin bir yontem bence.
Bulut yazilimlar da var ama VFP ile hic girme bence (bir tane var cok yavas geldi bana).

çetin doğrumu anladım bilmiyorum, anladığım şu..

merkeze sql server kurulacak , şubeler internet üzerinden merkez bilgisayarında ki sql servera ulaşıp veri aktaracaklar .. ayrıca bir host firmasından hizmet almaya gerek yok.. ? eğer böyle ise merkez bilgisayarına sql server kurmak dışında ayrıca IIS kurulması falan gerekiyor mu?

cahillik başa bela smile

6

Re: Şube dataları birleştirme..

metin yazdı:

3.RDP. hiçbirşeyle uğraşman gerekmez. en efektif yolu bu. Diğer yollarda uğraşırsın.

RDP ile hiç bir deneyinim yok..sadece veri trasferi için kullanmak mümkün sanırım.  bir inceliyeyim.

7

Re: Şube dataları birleştirme..

SQL server yeterli. IIS gerekmiyor. Eger bir hosting firmasindan SQL server alirsan (ki cogu SQL server destegi veriyor), o zaman SQL server hosting kismiyla, baglanti hizlari, surekli ulasilabilirlik filan pek derdin olmaz. Boyle yerler genelde senin donanima verecegin paranin cok daha azina sana SQL server + bandwidth + 7/24 mevcut olma vs veriyor. Baglanti tanimi da daha kolay oluyor genelde. Ornegin:

Visual Fox Pro
lnHandle = SQLStringConnect('Server=www.myHosting.com;uid=...;password=...;database=myDatabase')

Timucin daha da iyisini yapiyor bir hosting firmasindan dedicated server kullaniyor (daha pahali). Iyi tarafi cok kisiye hizmet verdiklerinden daha iyi donanim ve bandwidhtlari oluyor. Kotu tarafi dedicated degilse admin yetkileriyle baglanmiyorsun (problem degil de iste sikayet olsun).

Bu sekilde yapinca CursorAdapter ile sen dogrudan tablo kullaniyormus gibi olursun kolay olur (ya da Remote view ama ben viewlari hic kullanmadim, sevemedim bir turlu).

8

Re: Şube dataları birleştirme..

Bu arada, sube ve merkezin hic baglantisi yoksa, ayni anda guncellenmeleri gerekmiyorsa, offline view bile kullanmak istemiyorsan (kisacasi modem oncesi cagda isen) benim UT'ye yukledigim bu tip databaselerin guncellenmesi ile ilgili kod vardi. Bak istersen (bu cagda ben donup bakmiyorum ama bakacak biri olsun maksat:). www.universalthread.com FAQ ya da downloads bolumunde "offline database backups" yazip arasan bulursun.

9

Re: Şube dataları birleştirme..

aydinufuk yazdı:
metin yazdı:

3.RDP. hiçbirşeyle uğraşman gerekmez. en efektif yolu bu. Diğer yollarda uğraşırsın.

RDP ile hiç bir deneyinim yok..sadece veri trasferi için kullanmak mümkün sanırım.  bir inceliyeyim.

Remote Desktop demek istemiştim. SQL Server'a uzaktan bağlanma yönteminde kodlarını iyi optimize etmen gerekir. RDP ile programın SQL Server kullansa da olur kullanmasa da. SQL Server'ı berbat bile kullansan problem olmaz.

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

10

Re: Şube dataları birleştirme..

metin,
    benim program , local ağ üzerinde çalışacak şekilde programlandı. RDP anladığım kadarı ile uzaktan erişim sayasinde local ağda bir bilgisayar gibi çalışıyor.   teknik tarafını bilmiyorum . müşterinin bu konuda   pek bilgileri yok.  bu sistemde ayar problemleri olur mu ve sistem destek gerekiyor mu? gerekiyorsa iş benim başıma patlar:) onuda istemiyorum. bu dediğim konularda beni yorar mı?

11

Re: Şube dataları birleştirme..

aydinufuk yazdı:

metin,
    benim program , local ağ üzerinde çalışacak şekilde programlandı. RDP anladığım kadarı ile uzaktan erişim sayasinde local ağda bir bilgisayar gibi çalışıyor.   teknik tarafını bilmiyorum . müşterinin bu konuda   pek bilgileri yok.  bu sistemde ayar problemleri olur mu ve sistem destek gerekiyor mu? gerekiyorsa iş benim başıma patlar:) onuda istemiyorum. bu dediğim konularda beni yorar mı?

- RDP = Remote Desktop Protocol

- en efektif olarak Windows 2003 server ve yukarısında kullaniliyor, Windows2003 server default 3 tane RDP user destekliyor , bu su demek sistemde RDP user olaraka tanimli 3 kullanici local yada uzaktan sisteme baglaniyor ve kendine ait session + desktop lari oluyor ve pc ekranini basinda otururmus gibi kullaniyorlar . bu kullanicilarin masaustunu gormemesi ve sadece kullanacagi uygulamayi kullanmasi isteniyorsa ozaman bu kullanicilar acilirken buda set edilebiliyor bu sayede baglanti kuran kullanici direkt olarak uygulamayi kullanmaya basliyor programdan cikinca oturumda otomatik olarak sonlaniyor (bu bir cok kisinin istedigi kullanim sekli)

- yazici esletirmeleri vs yapilabiliyor yani baglanti kurdugun pc den rapor almak fatura bastirmak gibi

- suruculer eslestirilebiliyor

- windows 2008 server ise baglanilan baglanti kurulan pc den windows 2008 servera copy  + paste ile dosya dahi kopyalayabiliyorsun (win2003 te surucu eslestirme ile yapilabiliyor)

...

ama Cetin hocamin dedigi gibi eger SQL server kullaniyorsan ha local ha remote farketmiyor dusuk bant genisliklerinde bile performand tatmin edici
yada web uygulamasi ama bu son 2 ye uzagim , SQL gecirmem gerek uygulamayi diyorsan Metin'in dedigi gibi evt RDP , merkezde 1 server ve birkac ayar ile sistem calisir...

RDP icin guzel bir anlatım
http://www.cozumpark.com/blogs/windows_ … 56186.aspx

Windows 2008 server Terminal Services Kurulumu
http://www.cozumpark.com/blogs/windows_ … ation.aspx

12 Son düzenleyen, aydinufuk (18.01.2012 00:28:16)

Re: Şube dataları birleştirme..

bu arada epey şey öğrendim sayenizde smile

online çalıştırmayı gerektirecek bir durum yok. şubeler kendi, datasını localde mutlaka tutacak. sadece imalat yapılacak siparişleri merkeze iletmeleri gerekiyor . 2 adet fis dosyası var ..fis genel bilgisi  ve detay bilgisi. lokalde girilen bilgilerin merkeze bir kopyasının günlük aktarılamsı yeterli.  günlük fiş adedide 5-10 adet.. RDP 'u kullanırsam sadece belli kayıtların kopyasını dosya olarak aktarmak için kullanacağım. buna karşılık windows server kurulması gerekiyor anlatıldığı gibi.  ya da anladığım o  smile

sonuçta 3 adet çözüm çıktı
1. mail yolunla belirlenmiş kayıtları süzüp  göndermek .. (Ek sistem maliyeti yok )
2. RDP ile çözmek ( sistem (windows server ) ve belki de donanım maliyeti.. + system destek gerekebilir.
3. SQL server veya web server ..hosting maliyeti ve ek olarak benim yazılıma bağlantı için kod yazmam gerek..

gördüğüm kadarı ile başka da bir çözüm yok. doğru anladıysam.

maliyetlerine bakarak kararı müşteri versin .. . diye düşünüyorum son durumda.

bir soru daha , RDP da veritabanı performansı nasıl ? clint/server şeklinde programlama gerekiyor mu?  verileri browse edince belli bir kayıt adedinden sonra yavaşlama oluyor mu? örneğin ben hep grid kullandım .. gridleri gösterme aşamasında hızı nasıl olur ?

13

Re: Şube dataları birleştirme..

aydinufuk yazdı:


bir soru daha , RDP da veritabanı performansı nasıl ? clint/server şeklinde programlama gerekiyor mu?  verileri browse edince belli bir kayıt adedinden sonra yavaşlama oluyor mu? örneğin ben hep grid kullandım .. gridleri gösterme aşamasında hızı nasıl olur ?

sadece ekran tasindigi icin inanilmaz derecede hizli cunku data gidip gelmiyor VFP servis bazli degil o yuzden bu buyuk avantaj oluyor

ayrica soyle bir sey de yapilabilir gunluk fisleri gun sonunda subeler export etsin XML olarak
ve FtpPut ile (ornegin sirket web serverine yada hizmet alinan bir yere)  orn. /Bakirkoy /Avcilar /Kadikoy gibi klasorler olsun her su kendi klasorune bu XML dosyalari gondersin , merkezdeki yazilimda ister manuel ister SysTray app olarak bir Timer a bagli olarak belirtilen saatte bu servera baglansin ve sira ile XML dosyalari ordan FtpGet ile ceksin , merkez datasina insert etsin ve FtpDel ile oradan silsin... bu da bir mantik ilk basta zor yada karmasik gibi gorulebilir ancak bir defa olusturduktan sonrada saat gibi isler...

bu arada yardimci olabilecegim bir durum olursa MSN kullaniyorsan bana soykanozcelik [at] hotmail.com yada kullaniyorsan twitter uzerinden @soykanozcelik ten ulasabilirsin...

14

Re: Şube dataları birleştirme..

öneriler biraz karıştığı için ayıklayayım dedim, bence (sana benzer durumda sorunsuz yürüyen tecrübem var):
1. mutlaka RD (uzak masaüstü) çözümüne git.
- Programın LAN üzerinde çalıştığından çok kolay olacaktır. yapman gereken sadece ekleyeceğin bir şube alanı ile işlemleri birleştirmek olacak.
- büyük data transferleri yerine sadece "screen" resim transferi ile işin hallolacak
- bağlantı arada bir yerde bozulsa bile server tarafında işlem yarıda kalmayacak, ya olacak ya da olmayacaktır.

2. SQL server i RD server içine veya yanına kur, o zaman çok hızlı ve güvenli oluyor.

3. Ben programı her RD bağlantısı için ayrı ayrı kendine ait bir dizine kopyalatıp oradan kullandırıyorum.  Değişiliklerde programı tarih ve byte olarak kontrol edip gerekiyorsa source dan kopyalayarak güncelleşiyor. (Daha hızlı) Hepsi nasıl olsa veriyi sql servere yüklüyor veya kullanıyor

4. İşletim sistemleri galiba 3 RD usere izin veriyor, fazla bağlantı için her 5 eke 1.000 $ falan lisans gerekiyor

5. Yazıcı işlerinde driverleri hem RD server hem de user tarafına yüklemen lazım, bu işler biraz kafa karışrırıyor.

Son: Öneriler arasındaki lokalde şubeler datasını tut - lokalde  işlem yap -xml ftp - ana servere ayrı yükle kısmına sıcak bakmıyorum -
data integrity açısından sorun olur.

VFP9 SP2

15

Re: Şube dataları birleştirme..

Düzeltme :

"4. İşletim sistemleri galiba 3 RD usere izin veriyor, fazla bağlantı için her 5 eke 1.000 $ falan lisans gerekiyor". Windows 2008 Server da 5 Kullanıcı 200-300 dolarlar civarında.

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

16

Re: Şube dataları birleştirme..

SQL server:

Visual Fox Pro
insert into servername..dbname select .... from servername2..dbname where ....

Maliyet 0.
RDP yontemi dedicated server cozumunden farkli degil. Bugunun interneti gittikce hizlaniyor. Olabilir, nasil olsa wirelesstan filan baglanmak istemiyorsundur, bant genisliginin hep yuksektir.

17

Re: Şube dataları birleştirme..

arkadaslar,
sayenizde çözümler kafamda biraz şekillendi. dersime biraz daha çalışayım bir kaç sorum daha olacak. aklınıza başka öneriler gelirse bilmek  isterim..
hepinize teşekkürler..