Embarcadero firması tarafından kısa süre önce lansmanı yapılan XE serisi, ek özelliklerini kısaca bir değinelim. ayrıca ürün beta aşamasından RTM aşamasına geçmiş buLunmakta olup, aşağıdaki linkten üyelik kaydı yaptıktan sonra 30 günlük sürümünü indirip deneyebilirsiniz.

Ticari anlamda 3 versiyonu olan XE serisi ;

- XE Professional

- XE Enterprise

-XE Architect

Not: indirme işleminden hemen sonra embarcadero üye mailinize key gönderecektir.

http://downloads.embarcadero.com/free/rad_studio

Kurulum tamamlandıktan sonra IDE kısmına şöyLe bir gözatıyoruz. Göze çarpanlar arasında Aqtime, CodeSite eklentilerini görebiliyoruz.

 

Delphi 7 den aşina olduğumuz component kısmını aktif hale getirebilirsiniz.

Ayrıca component ve toolbar kısmında yeniliklerden bir tanesi olan AZURE Cloud Computing teknolojisini de görebilirsiniz.

bu arada IDE formunu RUN ettiğimizde diğer alt versiyonLara nazaran çok hızLı bir Rapid Running ile karşılaştım.

Diğer yenilikler için ürünü haLa test etmeye devam etmekteyim.ç Görüşmek üzere KoLay geLsin ;)

Etiketler : Etiket Yok
Kategoriler : Delphi Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Kaynak : TurkOracle 

Oracle Application Express (APEX), neredeyse hiç kod yazmadan veritabanı merkezli web uygulamaları geliştirebileceğiniz bir uygulama. Özellikle yurt dışında, ofis içi uygulama geliştirmek için kullanılan APEX, Oracle 10g üzerine nasıl kurulur onu inceleyeceğiz.

APEX'i Oracle 10g'ye kurmak için bir web/uygualama sunucusuna ihtiyacımız var. Bunun için Application Server 10g kurabiliriz, ama ben bunun yerine Oracle 10g Companion CD ile birlikte gelen HTMLDB yazılımını kuracağım. HTMLDB, APEX'in önceki adıdır. Ben kurulumu Linux'a yapacağım ama hemen hemen aynı adımlarla aynı kurulumu Windows üzerinde de gerçekleştirebilirsiniz.

Linux ve Oracle kurulumu için şu yazıma bakabilirsiniz:

http://www.turkceoracle.com/2010/04/oracle-enterprise-linuxa-oracle-10g.html

Oracle 10g Companion CD'yi bu adresten indirebilirsiniz:

http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201linuxsoft.html

Kuruluma başlamadan önce, sistemde yapmamız gereken önemli bir işlem var. Companion CD ile gelen HTMLDB, web sunucusu olarak Apache 1.3 kullanıyor ve Apache'de libdb.so.2 kütüphanesine ihtiyaç duyuyor. Ne yazık ki bu kütüphane Oracle Enterprise Edition, RHEL ve CENTOS'da yok. Aslında güncel her hangi bir Linux dağıtımında bu kütüphanenin bulunması çok zor bunun sebebi bu kütüphanin artık 4.x'li versiyonlarının kullanılması. Neyseki Oracle (ve diğer Redhat türevleri) libdb.so.2 kütüphanesi ile uyumlu libgdb.so kütüphanesini ile geliyor. Bizim yapmamız gereken tek şey sisteme libdb.so.2 yerine elimizdeki libgdbm'yi kullanmasını söylemek.Bu yüzden bir symbolik link oluşturuyoruz:

1
# ln -s /usr/lib/libgdbm.so.2.0.0   /usr/lib/libdb.so.2

Bu işlemden sonra Oracle 10gR2 Companion CD'sini yerleştirip kuruluma başlıyoruz.



Next ile bir sonraki adıma geçip, Oracle HTML DB'yi kuracağımızı söylüyor ve tekrar NEXT ile bir sonraki adıma geçiyoruz:


Hem HTML DB hem de HTTP Server'ın kurulmasını istediğimizden ilk seçeneği işaretleyip NEXT ile bir sonraki ekrana geçiyoruz:


Önceden veritabanı kurduğumuz dizine web sunucuyu kuramıyoruz, bu yüzden HTTP Server için faklı bir kurulum dizini seçiyoruz. Bundan sonraki ekranda kurulum için sistemi kontrol ediliyor, sorun yoksa NEXT ile veritabanı ayarlarını verdiğimiz bir sonraki adıma geçiyoruz:


Burada HTML DB'nin kullanacağı veritabanı bilgisini giriyoruz. Oracle Kurulum Aracı, zaten sistemde var olan veritabanını bulup gerekli bilgileri otomatik olarak dolduracaktır. Bizim yapmamız gereken veritabanının SYS şifresini ve HTML DB'de yönetici kullanıcı olan "admin" kullanıcısının şifresini girmek. NEXT'e bastığımızda sistem veritabanına bağlanmaya çalışacak, bağlantı kurabilirse bir sonraki adıma geçecektir. Bundan sonraki adımları her hangi bir ayar yapmadan NEXT düğmesine basarak geçiyoruz.


Kopyalama sonrasında "root" olarak çalıştırmamız geken script'e sıra geliyor. Bir terminal ekranı açıp root kullanıcısına geçiyor ve verilen scripti çalıştırıyoruz. Scriptin sorduklarını ENTER tuşuna basarak geçiyoruz, script sonlanınca kurulum ekranındaki NEXT'e basıp kurulumu bitiriyoruz:


Bu ekranda gördüğümüz adres HTTP Server'ımızın adresi. Bu adresi direk olarak yazdığımızda HTTP Server'ın karşılama ekranı geliyor. HTML DB'ye erişmek için adresin sonuna /pls/htmldb ekliyoruz:

http://hostname:port/pls/htmldb

Bu adres kullanıcıların sisteme giriş adresidir.


Artık elimize bir uygulama sunucusu ve HTMLDB 1.x sürümü var, bunu en son sürüm olan 3.1.2'ye yükselmeliyiz. APEX'in son sürümünü şu adresten indirebilirsiniz:

http://www.oracle.com/technology/products/database/application_express/download.html

Ben APEX'i /tmp dizinine indirip açıyorum ama siz istediğiniz yere indirip açabilirsiniz. Bu dizin, kurulum sonrasında silenebilir.

1
2
3
$ cd /tmp
$ unzip apex_3.1.2.zip
$ cd apex

APEX kurulumu için bir PL/SQL scripti çalıştıracağız bu yüzden SQLPLUS ile veritabanına bağlanıyorum:

1
$ sqlplus / as sysdba

APEX kurulumu için çalıştıracağımız script bizden 4 parametre bekliyor, 1. parametre APEX'in hangi tablespace'de metadata'sını tutacağını belirliyor, 2.'si APEX içinde oluşturulan workspace'lerin tutulacağı tablespace, 3.'sü temporary olarak kullanılacak tablespace, 4.ü parametre ise imajların yerleştirileceği klasör. Deneyim kazandıkça bu parametreler üzerinde değişiklik yapabilirsiniz, ben şimdilik en basit şekilde kuracağım:

1
SQL> @apexins SYSAUX SYSAUX TEMP /i/

Bu komut ile APEX kurulumunu daha doğrusu güncellemesini başlatmış oluyoruz. Bu işlem biraz uzun sürüyor. Kurduğumuz sistemin hızına göre bekleme süremiz değişecek ama bir kahve molası verebiliriz. Kurulum bitince SQLPLUS'da sonlanacak.

Kurulum sonrasında imaj ve jscript dosyalarında sorun olduğunu göreceksiniz, bunu düzeltmek için scripti çalıştırıyoruz:

1
SQL> @apxldimg.sql /tmp

Apex kurulumu HTMLDB'yi ilk yüklerken verdiğimiz admin şifresini değiştireceğinden yeniden şifre belirlemek için şu scripti çalıştırıyoruz:

1
SQL> @apxchpwd

Bu işlemlerden sonra sıra APEX'e admin olarak bağlanmaya geliyor:

http://hostname:port/pls/htmldb/htmldb_admin


Oracle'ın ücretsiz olarak sunduğ APEX ile ne kadar kolay uygulama geliştirildiğini görünce şaşıracaksınız. Oracle World conferasında APEX'in yüksek iş yükü olan ortamlarda bile çok başarıyla ve sorunsuz çalıştığına ilişkin sunumlar vardı. Bu yüzden Oracle ile ilgilenen herkesin APEX'e bir göz atmasını tavsiye ederim.
Etiketler : Etiket Yok
Kategoriler : Oracle
Yorumlar : 0 Yorum Yorum Yaz

Kaynak : TurkOracle

Oracle tüm yazılımlarını websitesinden indirebilmenize olanak tanır. Bu yazılımları ister eğitim, ister deneme amaçlı olarak, zaman sınırı olmadan kullanabilirsiniz. Yazılımları ticari amaçla kullanmadığınız sürece her hangi bir lisans ücreti ödemenize gerek yoktur. Şimdi beraberce Oracle 10g veritabanı yazılımını bir Linux sunucuya nasıl kurabileceğimizi göreceğiz.

Oracle 10g veritabanını (Oracle websitesine ücretsiz üye olduktan sonra) şu linkten indirebilirsiniz:

http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201linuxsoft.html

Öncelikle elinizde Oracle kurulumu için hazırladığınız, Linux işletim sistemi yüklü bir sunucu olduğunu varsayıyorum. Oracle Enterprise Linux'ı bir sisteme nasıl kuracağınızı "Oracle Enterprise Linux 5.1 Kurulumu" yazımda anlatmıştım. Şimdi bu sunucuya Oracle 10g veritabanını kuracağız.

İlk olarak sisteme "oracle" kullanıcısı olarak login olun. X Window Masaüstüne girdiğinizde, menüleri kullanarak bir terminal ekranı açın ve "su -" komutu ile root kullanıcısına geçin. root kullanıcısı olmamızın sebebi, sistemin root dizinine (/ dizini) oracle veritabanını kuracağımız dizini oluşturmak.

1
2
3
su -
# mkdir /u01
# chown oracle:oinstall /u01

u01 isimli dizini oluşturmak oracle'ın common practice'lerinden biridir. Oracle Flexible Architecture metodu, oracle ürünlerini bu şekilde isimlendirilmiş bir dizine kurmanızı tavsiye eder. İsterseniz siz başka bir isimde bir klasör (dizin) oluşturabilirsiniz.

Oracle 10g Installer, Redhat ile uyumlu olmasına rağmen Oracle Enterprise Linux dağıtımını uyumsuz bir Linux dağıtımı olarak görecektir. Installer'ın işletim sistemi kontrolünde hata vermemesi için, işletim sistemi adını değiştiriyoruz:

1
2
# echo redhat-4 > /etc/redhat-release
# exit

root kullanıcısı ile yapacaklarımız şimdilik bu kadar. exit ile root kullanıcısından çıkıp, oracle kullanıcısının bash ayar dosyasını (.bashrc) değiştirmeye başlıyoruz:

Grafik ekranda (X Window - GNOME) çalıştığımız halde ben genelde editor olarak gedit gibi araçlar yerine, vi editörünü kullanırım. Bence Linux ile uğraşacaksanız "vi" editörüne alışmanız gerekli. Bununla ilgili küçük bir klavuz hazırlayacağım, ileri ki zamanlarda blogumda bulabilirsiniz.

İstediğiniz bir editör ile .bashrc dosyasını açıp içine şunları ekleyiniz:

1
2
3
4
5
6
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
  
umask 022

Bu yaptığımız ayarların etkin olabilmesi için terminal penceresini kapatıp, yeni bir terminal açmamız gerekli. Bunu yaptıktan sonra download ettiğimiz oracle kurulum dosyasını unzip ile açıyoruz ve kurulum dosyalarının bulunduğu dizine geçiyoruz:

$ unzip
$ cd database

Bu ön hazırlıklardan sonra Java ile yazılmış olan Oracle Universal Installer'ı çalıştırıp, kurulumu gerçekleştirebiliriz:

$ ./runInstaller

Öncelikle karşımıza kurulumu nasıl yapacağımızı soran ekran geliyor:


Bu ekranda eğer basic installation'ı seçersek, neredeyse hiç bir ayar yapmadan"Next'lere tıklayarak kurulumu tamamlayabiliriz. Ben daha ayrıntılı ayarlar yapabileceğim advanced installation'ı seçip Next'e tıklıyorum.


Installer .bashrc'e girdiğimiz değerler sayesinde ORACLE_BASE bilgisini okuyup, bir inventory dizini seçecektir. Bu dizin, yüklediğimiz Oracle ürünleri ile ilgili bilgileri tutan dosyaları barındıracaktır. Varsayılan değerini kabul edip Next ile bir sonraki adıma geçiyoruz:


Oracle veritabanının hangi sürümünü (Enterprise veya Standard) kuracağımızı bu adımda seçiyoruz. İstersek "custom" seçeneği ile veritabanı birleşenlerini tek tek seçebiliriz.


Oracle veritabanı dosyalarının yükleneceği HOME dizinini seçiyoruz. Bu kısımda da her hangi bir şey yapmamız gerek olmayacak çünkü HOME dizinini .bashrc'de tanımladığımız ORACLE_HOME'dan alacak.


Bu adımda oracle universal installer (OUL), sistemin doğru olarak ayarlanmadığını (örneğin swap boyutu, kernel parametreleri vb.) kontrol ediyor. Ben bu kısımda bütün kontrollerin "Succeeded" olmasına dikkat ediyorum. Eğer OUL bu kontrollerde her hangi bir hata veya uyarı verirse, detayları "X requirements to be verified" yazısının altındaki textbox'da görebilirsiniz.



Şimdi kurulum sırasında veritabanı yaratılacak mı, yoksa bir ASM mi yaratılacak (ASM'ye ilerde değineceğim) yoksa sadece oracle yazılımı mı yüklecenecek onu şeçiyoruz. Eğer bu kısımda veritabanını yarat seçeneğini seçmezsek, ve sadece "software" kurulumu yaparsak, ilerde dbca (database configuration assistant) aracını kullanarak manuel olarak da veritabanı yaratabiliriz. Veritabanını yaratmasını istediğimizden, bu kısmı NEXT ile geçiyoruz.


Bu ekranda kuracağımız veritabanının tipini seçiyoruz. "Genel ihtiyaca" yönelik olanı, yani varsayılanı seçip Next'e basabiliriz. OLTP sistemler için "Transaction Processing", veri ambarı uygulamaları için "Data Warehouse" ve ileri düzey planlama gerektiren veriabanları için "Advanced" seçeneğini işaretleyebilirsiniz.


Veritabanına vereceğimiz ismi ve veri tabanında kullanmak istediğimiz dil ayarlarını buradan seçiyoruz. Ben veritabanına isim olarak orcl verdim, zaten .bashrc dosyasında da ORACLE_SID değeri olarak orcl yazmıştım. Eğer veritabanı ismini değişik verecekseniz, .bashrc'de de değişiklik yapmayı unutmayın. Karakter kodlaması olarak WEISO8859P9'u seçebilirsiniz. Blogum ve Oracle kurslarında kullanılan örnek schemalara sahip olmak istiyorsanız "create database with sample schemas" seçeneğinin işaretli olmasına dikkat edin.


Bu ekranı next ile geçiyoruz. İstersek burada veritabanının erişebileceği bir SMTP sunucusunun adresini girip, veritabanında oluşan hatalarda, veritabanının bize email atmasını sağlayabiliriz.


Bu ekranda veritabanını hangi dizine yükleyeceğimizi seçiyoruz. Eğer ASM teknolojisini kullanmak istersek file system yerine onu seçebiliriz. Raw Devices artık pek kullanılmadığı için onu göz ardı edebilirsiniz. Bu ekranı next ile geçiyoruz.


Şimdilik otomatik yedekleme ile ilgili bir ayar yapmayacağımızdan, bu ekranı Next ile geçiyoruz.



Veritabanımızdaki 4 önemli user için tek tek veya hepsine birden şifre tanımlaması yapıyoruz. Sisteminizin güvenliği açısından bunları ayrı şifreler vermenizi öneririm, ama ben bu veritabanını test için kurduğumdan hepsine ortak şifre verdim.



Özet ekranında yaptığımız tüm seçimlerin bize raporu gösteriliyor. Eğer seçimlerinizde hata yoksa, "install" düğmesine basıp, dosyaların kopyalanmasını başlatıyoruz:


Dosyalar kopyalanıp, veritabanı yazılımı çalışmaya hazır hale geldikten sonra, dbca aracı çalışıp veritabanını yaratıyor:



Bu işlem bittikten sonra, yaratılan veritabanında oluşturulmuş schemaların şifrelerini değiştirebileceğimiz ekran geliyor, bu ekranı OK düğmesine tıklayarak geçebilirsiniz.


OK düğmesine basınca Linux ve Unix sistemlerinde kurulumun önemli adımlarından bir karşımıza geliyor.


OUL, oracle kullanıcısı olarak çalıştırıldığından root yetkisine sahip değil ve bizim bir terminal açıp, root yetkisi ile ekranda yeri belirtilmiş olan orainstRoot.sh ve root.sh dosyalarını çalıştırmamız gerekiyor. Bu scriptleri çalıştırmdan ekrandaki OK tuşuna basmayınız!



Daha önce yaptığımız gibi bir terminal açıp, bu iki scripti çalıştırıyoruz. Script bizden "local bin" dizinini istediğinde <ENTER> 'a basıp varsayılan değeri kabul etmemiz yeterli. Bu işlemi tamamladıktan sonra terminal penceresini kapatıp, installerdaki OK tuşuna basıyoruz ve kurulum tamamlanıyor.




Veritabanın dbstart komutuyla açılabilmesi için, /etc/oratab dosyasında şu değişikliği yapıyoruz:

orcl:/u01/app/oracle/product/10.2.0/db_1:N

orcl:/u01/app/oracle/product/10.2.0/db_1:Y

Böylece instance başladığında Oracle, "orcl" veritabanını açacaktır. Veritabanını oracle kullanıcısı ile bağlanıp, dbstart ile çalıştırabilir ve dbstop ile kapatabilirsiniz. Bu iki komut sizden oracle'ı kurarken belirlediğiniz home dizinini isteyecektir. Biz .bashrc'ye bu bilgiyi girdiğimizden, bu iki komutu şu şekilde kullanabiliriz:

$ dbstart $ORACLE_HOME $ dbstop $ORACLE_HOME

Oracle 10g'nin Linux sürümünde bir bug var. Bu yüzden dbstart doğru çalışmıyor. Bunu düzeltmek için /u01/app/oracle/product/10.2.0/db_1/bin/dbstart dosyasını bir editör ile açıp,

ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle

satırını bulun. Bu satırı,

ORACLE_HOME_LISTNER=$1

olarak değiştirin. Bu işlem sonrası artık dbstart $ORACLE_HOME komutu hatasız çalışacaktır. Linux ve Solaris sistemlerde, sistem reboot edildikten sonra, Oracle veritabanı otomatik başlamaz. Veritabanını ya manuel olarak açmanız ya da bu işlemi otomatikleştiren bir script yazmanız gerecektir. Otomatik olarak başlatmak içi şuna benzer bir script kullanabilirsiniz:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# chkconfig: 345 99 10
# description: Oracle otomatik baslangic scripti.
#
# (C) 2008 Gokhan Atil - www.visiondanismanlik.com
#
  
ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
ORACLE_USER=oracle
ORACLE_SID=orcl
  
export ORACLE_SID ORACLE_HOME
  
case "$1" in
start)
su $ORACLE_USER -c $ORACLE_HOME/bin/dbstart $ORACLE_HOME
#    su $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"
;;
stop)
#    su $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su $ORACLE_USER -c $ORACLE_HOME/bin/dbshut $ORACLE_HOME
;;
*)
echo "Kullanim: /etc/init.d/dbora start|stop veya service dbora start|stop"
exit 1
;;
esac
  
exit 0

Bu scripti root kullanıcı olarak /etc/init.d/ içinde "dbora" adıyla yaratın. İsmin dbora olması zorunlu değil ama genelde bu isim verilir. Dosya modunu 755 yapın (çalıştırıabilir dosya olsun) ve sonra chkconfig --add dbora komutunu çalıştırarak sisteme servis olarak tanıtın.
Bu sayede sunucu açıldığında veritabanıda açılacaktır:
1
2
3
# cd /etc/init.d/
# chmod 755 dbora
# chkconfig --add dbora

Kurulum sırasında ve sonrasında yaşadığınız problemlerle ilgili sorularınızı bana sorabilirsiniz.
Etiketler : Etiket Yok
Kategoriler : Oracle
Yorumlar : 0 Yorum Yorum Yaz

Embarcadero firması sürpriz bir şekilde Rad Studio XE sürümünün duyurusunu yapmış bulumakta. Özellikleri arasında en can alıcı kısmı subversion desteklemesidir. Yani Delphi 2009, Delphi 2010 veya daha alt versiyonLArını group project oLarak ekLedikten sonra XE IDE sinde çaLıştırabiLme oLanağı sağlamaktadır.

Konu ile ilgili olarak ayrıntılı bilgileri aşağıdaki linklerden bulabilirsiniz. KoLay geLsin ;)

http://www.itwriting.com/blog/2994-new-delphi-rad-studio-xe-announced.html

http://www.andreanolanusse.com/blogen/rad-studio-xe-delphi-xe-cbuilder-xe-delphi-prism-xe-and-radphp-xe/

http://www.embarcadero.com/rad-studio-xe-preview

Etiketler : Etiket Yok
Kategoriler : Delphi Delphi Prism Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Kaynak:Bildirgec.org

\

ürünün adı Hydropak.İçine sadece su koyarak elektrik enerjisi üretiyor.Hidrojen jeneratörü olarak da anılıyor. Laptop ,ipod ve cep telefonu gibi şarj edilebilir ürünleri şarj etme kapasitesine sahip.Ürünün iki türü var.Biri,600 mililitre kapasiteli jeneratörden 270 watt-saat güç elde edilebiliyor.Ayrıca 2 adet USB girişi bulunuyor.Jeneratör 400$,içerisine takılan hidrojen kartuşlarının tanesi ise 20$ olarak fiyatlandırılmış.Bir diğeri ise 20 mililitrelik kapasiteye sahip.Bu seçenekte ise ipod ve cep telefonu gibi az elektrik gereksinimi olan ürünlerin şarj edilmesinde tercih ediliyor.Bu ürünün fiyatı ise 50$ olarak belirtilmiş.Ayrıca şirketin ürün açıklamasında,20 ml'lik seçeneğin bir ipodu 45 dakikada tamamen şarj ettiği belirtilmiş.Hidrojen Jeneratörünün amerikada 2008'in üçüncü çeyreğinde piyasaya sürüleceği duyurulmuş.Detaylı bilgiye buradan veya buradan ulaşabilirsiniz.

Etiketler : Etiket Yok
Kategoriler : Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Yazgelistir etkinliklerinin en yenisi olan Yazgelistir Zirvelerinin ilki 29 Mayis Cumartesi günü Microsoft Istanbul ofisinde gerçeklestirilecek. Etkinlikte Microsoft Regional Director (RD), Microsoft Most Valuable Professional (MVP) ve Yazgelistir editörleri konusmaci olacak. Microsoft’un çesitli yazilim gelistirme ürün ve araçlari ile ilgili seminerlere katilabilir, Visual Studio 2010, SQL Server 2008 R2, ASP.Net 4.0, Sharepoint 2010 ile gelen yenilikleri konunun uzmanlarindan ögrenebilirsiniz. Etkinlikte ayni zamanda Yazgelistir editörleri ile bir araya gelip kendilerine danismak istediginiz konularda sorular sorabilirsiniz.

Etiketler : Etiket Yok
Kategoriler : Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Delphi PHP update leri yapıldıktan sonra IDE içinde işimize yarayacak olan phpDocumentor ı sistemin içinde entegre olarak göreceksiniz.

http://blogs.embarcadero.com/joseleon/2010/05/10/delphi-for-php-next-release-early-preview-12-phpdocumentor-integration/

Etiketler : Etiket Yok
Kategoriler : Delphi Kişisel
Yorumlar : 0 Yorum Yorum Yaz

MakaLeLerimi takip eden arkadaşLarım ve Embarcadero RAD Studio, Delphi ürününü takip edenLer biLirLer geçen sene Eylül 2009 da MichaeL Rozlog tarafından Developers Days forumLarında Embarcadero firmasının RAD uguLama geLiştirme ortamLArının geLeceğini sunum yaparak bizLeri aydınLatmıştı. (BKZ. http://edn.embarcadero.com/article/39934 )

Bu sunumda 64 bit desteği ve Cross Platform sözü veren Embarcadero şuanda Duyurmayı pLanLAdığı ve FULCRUM projesi adı aLtında Delphi 2011 pek yakında aramızda oLacaktır. Dediğim gibi yeniLikLEr arasında en bariz şeiLde görünün cross PLatform u denemek için çok sabırsızLanmaktayım. Beta sürümünün yakında eLime geçmesi an meseLesi :))

FULCRUM u merak eden arkadaşLarıma aşağıda Link i vererek bir nebze oLAy içinde hakLıLığımı göstermek istiyorum. ;) COMING SOON !!

http://www.youtube.com/watch?v=LZMh6emwdCU&feature=related 

image

Etiketler : Etiket Yok
Kategoriler : Delphi Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Microsoft firması tarafından Nisan ayının sonLarında VisuaL Studio 2010 RTM sürümünün Lansmanı yapıLdıktan sonra, buna paraLeL oLArak VisuaL Studio Industry Partneri oLan Embarcadero firması bir önceki Delphi destekLi Delphi Prism ürününü Microsoft un sunduğu teknolojiLeri, Mono ve Cacao FrameworkLerinin sunduğu teknoLojiLeri yeniden gözden geçirerek 15 Mayıs ta Lansmanını pLanLadığı Delphi Prism 2011 sürümünü Embarcadero news groupLArında açıkLadı.

Delphi Avengelistlerinden David Intersimon (David I ) tarafından yapılan açıkLamaLarı aşağıdaki Linkten seyredebiLirsiniz.

http://www.youtube.com/watch?v=nR61lvA9CM4&feature=player_embedded

Etiketler : Etiket Yok
Kategoriler : Delphi Prism
Yorumlar : 0 Yorum Yorum Yaz

Eski Delphi ugulama geliştiricileri çok iyi biLirLer ki, Borland Delphi 7 sürümünün çıktığı yıllarda yakalamış olduğu başarıları hatırlarlar. Borland bazı nedenLerden doLayı RAD uygulama geLiştirmeyi Embarcadero firmasına devretmiştir. Şuan ki Delphi 'nin durumu 2 ye ayrıLmış durumda ;

1- Windows uguLama geLiştirme (Win32) için Delphi 2010 sürümü

2- Web ve .NET uygulama geLiştirme ortamı içinde Delphi Prism(Oxygen) uygulama geLiştirme ortamLarıdır.

Delphi den kopmak istmeyen arkadaşLarımıza onLara yardımcı oLacak ve Embarcadero firması tarafından oLuşturuLan newsgroup LAra erişim için gerekLi oLan biLgiLeri sunacağım.

Öncelikle https://beta.embarcadero.com adresinden veya Embarcaderonun http://www.codegear.com sayfasından bir member user oLuşturmaLarı gerekmektedir. Sonrası içinse,

Outlook Express veya Windows MaiL kısmından aşağıdaki 10 adımlık kısmı geçerekten Embarcadero firmasının oLuşturduğu news grubuna dahiL oLAraktan yakın günceLLeme ve beta planLArına bakabiLirLer.

  1. In Outlook Express, via the following menu items - Tools | Accounts | Add | News ...
  2. Display Name = ("Name" in CodeGear Account Profile) -> Next
  3. Email Address = (Seems to accept any address) -> Next
  4. News Server = forums.embarcadero.com
  5. Check "My news server requires me to log on" -> Next
  6. Account Name = ("Username" in CodeGear Account Profile)
  7. Password = (CodeGear Account password)
  8. Leave "Remember Password" checked
  9. Leave "Log on using Secure Password Authentication" unchecked
  10. Next -> Finished -> Close
Etiketler : Etiket Yok
Kategoriler : Delphi Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Delphi’de DLL dosyalarını 2 türlü kullanabiliriz.

  • Statik Kullanım
  • Dinamik Kullanım

Bu ikisi arasındaki farkı daha iyi anlayabilmek için öncelikle örnek bir DLL hazırlayalım.

Bu örnekteki fonksiyon sadece verilen real tipindeki sayısı 2 ile çarpıp sonucu döndürecektir.

library ornekdll;

uses
SysUtils,
Classes;

{$R *.res}
function hesapla( r: real ): real; stdcall;
begin
result := r * 2;
end;
exports
hesapla;
begin
end.

yukarıdaki kodlara göre hazırlamış olduğumuz dll dosyamızı şimdi de projemizde kullanalım.

untMain;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
function hesapla ( r: real ): real; stdcall; external ‘ornekdll.dll’;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
showMessage ( floatToStr ( hesapla ( 10.5 ) ) );
end;
end.

Burada görüldüğü gibi hesapla isimli fonksiyon OrnekDLL.DLL dosyasından alınmış ve kullanılmıştır. Eğer dll dosyamızın adı değişirse veya başka bir klasörde olursa programımız kesinlikle çalışmayacaktır.

Dinamik Kullanım:

Aşağıdaki örnekte dll dosyamızın adı değişse veya farklı bir klasörde olsa dahi programımız çalışacaktır. Tabi ki dll dosyamızın adını ve yolunu bir şekilde programımıza tekrar vermemiz gerekecektir.

unit untMain;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;

type
Thesapla = function ( r: real ): real;

TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
hndDLLHandle: THandle;
hesapla: Thesapla;
begin
try
// verdiğimiz dll dosyasını yükle
hndDLLHandle := loadLibrary ( ‘ornekdll.dll’ );

if hndDLLHandle <> 0 then begin

// dll içinden hesapla isimli fonksiyonu bul
@hesapla := getProcAddress ( hndDLLHandle, ‘hesapla’ );

// eğer yüklenen dll içinde istediğim fonksiyon mevcutsa
if addr ( hesapla ) <> nil then begin
// sonucu 21 olarak görüntüle
showMessage ( floatToStr ( hesapla ( 10.5 ) ) );
end else
// Dll içinde fonksiyon bulunamadı mesajı ver
showMessage ( ‘Fonksiyon bulunamadı…’ );

end else
// DLL bulunamadı veya yüklenemedi mesajı ver.
showMessage ( ‘DLL bulunamadı…’ );

finally
// DLL ile işimiz bitince tekrar hafızadan kaldır
freeLibrary ( hndDLLHandle );
end;
end;

end.

Etiketler : Etiket Yok
Kategoriler : Delphi
Yorumlar : 0 Yorum Yorum Yaz

Web sitenizde Paypal Kullanmak isterseniz aşağıdaki linkleri takip edebilirsiniz.

Website Payments Standard Integration Guide: Contains information previously contained in

separate manuals, such as the Shopping Cart manual and the Instant Payments Notification

manual. Get it at https://www.paypal.com/en_US/pdf/PP_WebsitePaymentsStandard_

IntegrationGuide.pdf.

• The PayPal Developer Network: The official resource for PayPal developers. Access it at https://

www.paypal.com/pdn.

• PayPalDev: According to the site, this is an independent forum for PayPal developers. Access it at

http://www.paypaldev.org/. You can also find numerous links to various other PayPal resources

as well.

Etiketler : Etiket Yok
Kategoriler : ASP .NET Delphi Prism Visual Studio
Yorumlar : 0 Yorum Yorum Yaz

DB’ deki trigger, procedure, function ‘lar içerisinde String Search yapan sql komutları aşağıdadır.

//tüm schema’larda arama yapar

SELECT * FROM dba_source WHERE instr(UPPER(text), UPPER(:srch_str)) > 0;

//çalışılan schema’da arama yapar.

SELECT * FROM user_source WHERE instr(UPPER(text), UPPER(:srch_str)) > 0;

DB’ deki tablolar arasında belli bir alan adının hangi tablolarda kullanıldığını gösterir.

select * from user_tab_columns where column_name=’alanadi’

Etiketler : Etiket Yok
Kategoriler : Oracle
Yorumlar : 0 Yorum Yorum Yaz

Merhabalar bu makalede ASP.NET 2.0 ve SQL SERVER 2005 kullanarak ürün kataloğunun nasıl hazırlanacağına bakıcaz.Yine her zamanki gibi öncelikle tablomuza bakalım. Aşağıdaki tabloda goruldugu gibi MARKA,MODEL ve KATEGORI tek tabloda tutulmus bunlar ayrı tablolarda da tutulabilirdi hatta daha iyi olurdu fakat bu daha önce yaptığım bir projeden alındığı için ve o projede bu şekilde bir tablo yapısı kullanmam  gerekiyordu.

k1.jpg

Aşağıda tablodaki datalardan birkaçını görnektesiniz.

k6.jpg

Tabloyu kısaca inceledikten sonra şimdi katoloğu hazırlamaya geldi.

Sayfamıza 4 Datalist ekliyoruz bunlardan 1. si Markaların listeleneceği dtListMark ,diğeri seçilem modele listelenen dtListModel,bir diğeri seçilen modele göre listlenen dtListCategory ve son olarakta seçilen kategoriye göre listelenen dtListProducts. Tüm bu kontrolleri de bir UpdatePanel içine alıyoruzki her sorgulama işleminde sayfa postback olmasın.

 k21.jpg

 

<asp:LinkButton ID=”lnkmarka” runat=”server” CommandName=”lnkmarka” CssClass=”lnkDataListMark”

</asp:DataList>

 

Şimdi sayfa ilk yüklendiğinde markalar dtListMark datalistine listelenmelidir. Burada DataAccessLayer kullanılıldığı için Database diye bir sınıf da nereden çıktı diyebilirsiniz.

Mehmet Aydın Ünlü kardeşimin blog sitesini ziyaret ederek ve bu makaleyi okuyarak öğrenebilirsiniz son derece güzel ve faydalı bir makale.

protected void Page_Load(object sender, EventArgs e)

{

fillmark();

{

protected void fillmark()

}

Daha sonra kullanıcı Markalardan birine tıkladığı zaman ilgili markaya bağlı modellleri dtListModel içinde listelememiz lazım.

dtListMark’ın ItemCommand özelliğinde aşağıda kod ile tıklanan markanın ne olduğunu buluyoruz.Daha önce dediğim gibi tüm bilgiler tek tabloda tutuldugu iççin burada markanın Text’ine ulastım eger ayrı bir tabloda tutulsaydı ID’sine erişecektim.

protected void dtListMark_ItemCommand(object source, DataListCommandEventArgs e)

{

LinkButton lb = (e.Item.FindControl(“lnkmarka”) as LinkButton);

lblmark.Text = lb.Text;

fillmodel(lblmark.Text);

panelmodel.Visible = true;

panelcategory.Visible = false;

}

Marka fillmodel() fonsiyonuna akarılıyor ve fillModel ‘de o markaya ait modelleri çekiyor.

k42.jpg

protected void fillmodel(string mark)

{

string constr = ConfigurationManager.ConnectionStrings["strdega"].ToString();

DataBase db = new DataBase(constr);db.AddParameter(“@par_marka”, mark);

DataTable dt = db.RunSPTable(“spFillModel”);

dtListModel.DataSource = dt;

dtListModel.DataBind();

}

Modelleri çeken Stored Procedure

CREATE PROCEDURE [dbo].[spFillModel]

@par_marka nvarchar(50)

AS

BEGIN

SELECT DISTINCT [MODEL] FROM [tbl_Products] WHERE ([MARKA] = @par_marka)

END

ve şimdide dtListModel Datalistine tıklanınca bu modellere ait kategorileri listeleyelim.

protected void dtListModel_ItemCommand(object source, DataListCommandEventArgs e){

panelmodel.Visible = false;

LinkButton lb = (e.Item.FindControl(“lnkmodel”) as LinkButton);

lblmodel.Text = lb.Text;

fillcategory(lblmark.Text, lblmodel.Text);

panelcategory.Visible =true;

}

spFillCategory Stored Procedure ‘u ilede Tüm kategoriler listeleniyor.

CREATE PROCEDURE [dbo].[spFillCategory]

@par_marka nvarchar(50),@par_model nvarchar(50)

AS

BEGIN

SELECT DISTINCT [KATEGORI] FROM [tbl_Products] WHERE ([MARKA] = @par_marka) AND ([MODEL]=@par_model)

END

ve şimdide dtListModel Datalistine tıklanınca bu modellere ait kategorileri listeleyelim.

k52.jpg

protected void dtListModel_ItemCommand(object source, DataListCommandEventArgs e)

{

panelmodel.Visible = false;

LinkButton lb = (e.Item.FindControl(“lnkmodel”) as LinkButton);

lblmodel.Text = lb.Text;

fillcategory(lblmark.Text, lblmodel.Text);

panelcategory.Visible =true;

}

Marka ve Model fillcategory() fonsiyonuna akarılıyor.

protected void fillcategory(string mark, string model)

{

string constr = ConfigurationManager.ConnectionStrings["strdega"].ToString();DataBase db = new DataBase(constr);db.AddParameter(

“@par_marka”, mark);db.AddParameter(“@par_model”, model);

DataTable dt = db.RunSPTable(“spFillCategory”);

dtListCategory.DataSource = dt;

dtListCategory.DataBind();

}

spFillCategory Stored Procedure ‘u ilede Tüm kategoriler listeleniyor.

CREATE PROCEDURE [dbo].[spFillCategory]

@par_marka nvarchar(50),@par_model nvarchar(50)

AS

BEGIN

SELECT DISTINCT [KATEGORI] FROM [tbl_Products] WHERE ([MARKA] = @par_marka) AND ([MODEL]=@par_model)

END

Ve son olarak dtListCategory’ ye tıklanınca Ürün ile biligileri dtListProducts Datalistinde listelemeye geldi.

protected void dtListCategory_ItemCommand(object source, DataListCommandEventArgs e)

{

panelcategory.Visible =true;

panelProducts.Visible = true;

LinkButton lb = (e.Item.FindControl(“lnkcategory”) as LinkButton);

lblcategory.Text = lb.Text;

fillproducts(lblmark.Text, lblmodel.Text, lblcategory.Text);

}

protected void fillproducts(string mark, string model, string category)

{

string constr = ConfigurationManager.ConnectionStrings["strdega"].ToString();

DataBase db = new DataBase(constr);db.AddParameter(“@par_marka”, mark);

db.AddParameter(“@par_model”, model);db.AddParameter(“@par_category”, category);DataTable dt = db.RunSPTable(“spFillProducts”);

dtListProducts.DataSource = dt;

dtListProducts.DataBind();

}

spFillProducts Stored Procedure ‘u ilede o marka ,model ve kategoriye ait ürünler listeleniyor.

CREATE PROCEDURE [dbo].[spFillProducts]

@par_marka nvarchar(50),@par_model nvarchar(50),@par_category nvarchar(50)

AS

BEGIN

SELECT * FROM [tbl_Products] WHERE (([MARKA] = @par_marka) AND ([MODEL] = @par_model) AND ([KATEGORI]= @par_category))

END

k72.jpg

Etiketler : Etiket Yok
Kategoriler : ASP .NET
Yorumlar : 0 Yorum Yorum Yaz
\

 

Petrol fiyatlarının varil başına 150 dolara dayandığı, petrol üreticisi birkaç ülkenin ve malum petrol şirketlerinin servetlerine servet kattığı, bizim gibi petrolde dışa bağımlı ülkelerin ise giderek bu maliyeti karşılamakta zorlanır hale geldiği günümüzde alternetif enerji kaynakları üzerine yapılan çalışmalar gerçekten oldukça önemli. İşte böyle bir dönemde genepax isimli bir japon firması, tamamen su ile çalışan bir araba ürettiğini açıklayarak dünya kamuoyunun ilgisini üzerine çekmeyi başardı. Gerçi su ile çalışan araba çok yeni bir konu değil ancak, Genepax MEA (Membrane Electrode Assembly) adını verdiği teknoloji ile rakiplerinden bir adım daha öne çıkmış görünüyor. MEA kimyasal bir reaksiyon ile suyu oksijen ve hidrojen olarak ayrıştırıyor ve yüksek basınca dayalı özel bir sistemle yanma işlemini gerçekleştirerek gerekli olan enerjiyi elde ediyor. Doğal olarak firma geliştirdiği teknoloji hakkında fazla detay vermiyor. Ancak bu teknolojinin daha önce denenmiş sudan hidrojen elde etme teknolojilerine göre çok daha basit ve etkili olduğunu belirtmekle yetiniyor.

Etiketler : Etiket Yok
Kategoriler : Kişisel
Yorumlar : 0 Yorum Yorum Yaz

Window7 de Oracle 11g kurulumu tamamlandıktan sonra aşağıdaki hatayı alıyorsanız.!

Checking operating system requirements ...
Expected result: One of 5.0,5.1,5.2,6.0
Actual Result: 6.1
Check complete. The overall result of this check is: Failed <<<<
Problem: Oracle Database 11g is not certified on the current operating system.
Recommendation: Make sure you are installing the software on the correct platform.
================================================== ======

Şu işlemleri yaparsanız hatayı gidermiş olursunuz.

C:\Users\KULLANICIADINIZ\AppData\Local\Temp\OraIns tall2009-10-19_01-53-02PM\client
dizini altındaki refhost.xml dosyasını açın ve
<!--Microsoft Windows Vista-->
<OPERATING_SYSTEM>
<VERSION VALUE="6.0"/>
</OPERATING_SYSTEM>
in altına;

<!--Microsoft Windows 7-->
<OPERATING_SYSTEM>
<VERSION VALUE="6.1"/>
</OPERATING_SYSTEM>

ekleyin. Gereksinimleri Retry dediğinizde hatanın Success e dönüştüğünü göreceksiniz.

Etiketler : Etiket Yok
Kategoriler : Oracle
Yorumlar : 0 Yorum Yorum Yaz

Olayın ayrıntıları için tıklayınız...

http://www.computerworld.com/s/article/9174101/Hacker_busts_IE8_on_Windows_7_in_2_minutes

Etiketler : Etiket Yok
Kategoriler : Kişisel
Yorumlar : 0 Yorum Yorum Yaz

What’s New in Silverlight 4?

READ FIRST

Want to know the feature-by-feature 'what's new' information? Read the What's new in Silverlight 4 whitepaper for more detailed technical information.

Silverlight 4 delivers a full suite of powerful capabilities to business application developers, bringing the best-of-breed .NET platform to browser-based experiences. Silverlight provides an ideal platform for developing and deploying modern business applications for both customer facing and staff-facing applications.

Business Application Development

Silverlight 4 consolidates its position as the natural choice for building business applications on the Web:

New Features for Application Developers

  • Comprehensive printing support enabling hardcopy reports and documents as well as a virtual print view, independent of screen content.
  • A full set of forms controls with over 60 customizable, styleable components. New controls include RichTextbox with hyperlinks, images and editing and Masked textbox for complex field validation. Enhanced controls include DataGrid with sortable/resizeable columns and copy/paste rows.
  • WCF RIA Services introduces enterprise class networking and data access for building n-tier applications including transactions, paging of data, WCF and HTTP enhancements.
  • Localization enhancements with Bi-Directional text, Right-to-Left support and complex scripts such as Arabic, Hebrew and 31 new languages including Vietnamese and Indic support.
  • The .NET Common Runtime (CLR) now enables the same compiled code to be run on the desktop and Silverlight without change.
  • Enhanced databinding support increases flexibility and productivity through data grouping/editing and string formatting within bindings.
  • Managed Extensibility Framework supports building large composite applications.
  • Exclusive tooling support for Silverlight, new in Visual Studio 2010. Including a full editable design surface, drag & drop data-binding, automatically bound controls, datasource selection, integration with Expression Blend styling resources, Silverlight project support and full IntelliSense.

Developer tools

  • Fully editable design surface for drawing out controls and layouts.
  • Rich property grid and new editors for values
  • Drag and drop support for databinding and automatically creating bound controls such as listbox, datagrid. New datasources window and picker.
  • Easy to pick styles and resources to make a good looking application based on designer resources built in Expression Blend.
  • Built in project support for Silverlight applications
  • Editor with full intellisense for XAML and C# and VB languages.

Empowering richer, more interactive experiences

Silverlight is already in use as a comprehensive platform for building rich experiences both for application and pure media scenarios including HD quality, interactive video through Smooth Streaming. Silverlight 4 introduces additional capabilities to enable creation of ever more rich, appealing high-performance interactive experiences and innovative media experiences:

  • Fluid interface enhancements advance application usability through animation effects.
  • Webcam and microphone to allow sharing of video and audio for instance for chat or customer service applications.
  • Audio and video local recording capabilities capture RAW video without requiring server interaction, enabling a wide range of end-user interaction and communication scenarios for example video conferencing.
  • Bring data in to your application with features such as copy and paste or drag and drop.
  • Long lists can now be scrolled effortlessly with the mouse wheel.
  • Support conventional desktop interaction models through new features such as right-click context menu.
  • Support for Google’s Chrome browser.
  • Performance optimizations mean Silverlight 4 applications start quicker and run 200% faster than the equivalent Silverlight 3 application.
  • Multi-touch support enables a range of gestures and touch interactions to be integrated into user experiences.
  • Multicast networking, enabling Enterprises to lower the cost of streaming broadcast events such as company meetings and training, interoperating seamlessly with existing Windows Media Server streaming infrastructure.
  • Content protection for H.264 media through Silverlight DRM powered by PlayReady.
  • Output protection for audio/video streams allowing content owners or distributors to ensure protected content is only viewed through a secure video connection.

Move beyond the browser

Silverlight 3 pioneered the delivery of a new class of Rich Internet Applications to work on the desktop without additional code or runtimes. Silverlight 4 extends this capability:

For Sandboxed applications

  • Place HTML within your application enabling much tighter integration with content from web servers such as email, help and reports.
  • Provide support for ‘toast’ notification windows, allowing applications to communicate status or change information while the user is working on another application through a popup window on the taskbar.
  • Offline DRM, extending the existing Silverlight DRM powered by PlayReady technology to work offline. Protected content can be delivered with a persistent license so that users can go offline immediately and start enjoying their content.
  • Control over aspects of UI include window settings such as start position, size and chrome.

For Trusted applications

  • Read and write files to the user’s MyDocuments, MyMusic, MyPictures and MyVideos folder (or equivalent for non-windows platforms) for example storage of media files and taking local copies of reports.
  • Run other desktop programs such as Office, for example requesting Outlook to send an email, send a report to Word or data to Excel.
  • COM automation enables access to devices and other system capabilities by calling into application components; for instance to access a USB security card reader.
  • A new user interface for requesting application privileges access outside the standard Silverlight sandbox.
  • Group policy objects allow organizations to tailor which applications may have elevated trust.
  • Full keyboard support in fullscreen mode richer kiosk and media applications.
  • Enhancements to networking allow cross-domain access without a security policy file.
  • Custom Window ‘chrome’ to provide a highly branded experience
Etiketler : Etiket Yok
Kategoriler : ASP .NET Delphi Prism Kişisel Visual Studio
Yorumlar : 0 Yorum Yorum Yaz
Javascript kütüphanesi olan jQuery'nin dördüncü yılında yen bir sürümü yayınlandı. Dördüncü yılında 1.4 sürümü yayınlandı. Yeni sürüm ile yine birçok özellik geliştirilmiş durumda. jQuery'nin yeni versiyonunu (minified) buradan ve (regular) buradan indirebilir ve kullanmaya başlayabilirsiniz. Ayrıca yeni sürüm ile ilgili gelişmeleri, yenilikleri jQuery'nin bu sürüm için hazırlamış olduğu sayfadan da takip edebilirsiniz.
Etiketler : Etiket Yok
Kategoriler : jQuery
Yorumlar : 0 Yorum Yorum Yaz

Kaynak : MSAkademik

Xml artık bugünün ve  geleceğin teknolojisi. Buna bütün dev firmalar inanmış durumda. Microsoft gece gündüz çalışarak tüm sistemlerini xml tabanına taşıyor, Macromedia ürünlerinin yeni versiyonları xml ile daha çok içli dışlı. Aynı şekilde Sun ve IBM de tam gaz xml'i benimsemiş durumdalar. Bu yüzden xml'i kullanmayı öğrenmek artık bir lüks olmaktan çıktı, bir zorunluluk haline geldi.

 


Xml Webservislerine geçiş yaşandığı şu günlerde bazı firmalar ilk etapta bilgilerini  şimdilik xml olarak sunmaya başladılar. Örnek olarak IMKB'nin döviz kurlarını vermesi ya da Radikal gazetesinin günlük haberlerini vermesi gibi. Biz de bu makalede bilgilerimizi program koduyla nasıl xml olarak yayınlayabileceğimizi öğreneceğiz. Tabii ki bunun birçok yolu var. Biz System.Xml ad alanındaki XmlWriter soyut(abstract) sınıfının alt sınıfı olan XmlTextWriter sınıfını kullanarak yapacağız. Amacımız XmlTextWriter sınıfının nasıl kullanıldığını ögrenmek.

Bunu kod üzerinde göstermeye çalışalım. Örneğimizide SQL Server dan alacağımız bilgileri bir xml dosyası yaratıp içine yazacağız. 

// Sql Serverdaki Northwind verıtabanına bağlantıyı sağlayacak // bağlantı cümlesi. Bunu kendi bilgisayarnıza göre kendiniz // olusturacaksınız. string CnnStr="<Northwind e bağlanan connection stringiniz>"; SqlConnection sqlCnn = new SqlConnection(CnnStr); SqlDataAdapter sqlAdapter = new SqlDataAdapter("Select * From Products",sqlCnn); DataSet dSet = new DataSet(); try { sqlCnn.Open(); // 1 ve 5, birinci kayıttan başla ve 5 kayıt al demek. // örnek için yeterli. "Products", tablonun ismi. sqlAdapter.Fill(dSet,1,5,"Products"); } catch(Exception exp) { MessageBox.Show("Hata: "+exp.Message); } finally { if (sqlCnn.State == ConnectionState.Open) { sqlCnn.Close(); } } //doyanın ismini ve yolunu belirliyoruz. XmlTextWriter xmlDoc = new XmlTextWriter( @"E:\products.xml",System.Text.Encoding.UTF8); // dosyaya nasıl yazılacagını belirtiyoruz. xmlDoc.Formatting = Formatting.Indented; // Dosyanin başına <?xml version="1.0" ?> yazıyoruz. // false parametresi standalone=no yazar // true olsaydı, standalone=yes yazacakti. xmlDoc.WriteStartDocument(false); // "DOCTYPE" tanımını yazıyoruz. // Bu örnekte kullanmıyoruz ama ögrenmek için bulunsun... xmlDoc.WriteDocType("Urunler",null,null,null); xmlDoc.WriteComment("Comment, yani dosyaya yorum yazıyoruz..."); //baslangıç elementini yazıyoruz xmlDoc.WriteStartElement("Ürünlerimiz"); // Ürünlerimiz elementinin altına // yeni bir baslangıç elementi daha yazıyoruz. xmlDoc.WriteStartElement("Ürün",null); string no = dSet.Tables[0].Rows[0]["ProductID"].ToString(); string uID = dSet.Tables[0].Rows[0]["ProductName"].ToString(); string fiyat= dSet.Tables[0].Rows[0]["UnitPrice"].ToString(); // Bilgi içeren elementleri yaziyoruz. // Bilgiyi dSet ten alıyor. xmlDoc.WriteElementString("Numarasi",no); xmlDoc.WriteElementString("ÜrünAdı",uID); xmlDoc.WriteElementString("Fiyatı",fiyat); // Yukarida kaç tane writeStartElement yazdıysak // o kadar writeEndElement yazıyoruz.(yani 2 tane) xmlDoc.WriteEndElement(); // buyaya kadar olan kısmı bir for döngüsü içine alarak // bütün dSet'in içindekilerini yazabilirdik. // Ama örnek için sadece bir deflık yaptık. xmlDoc.WriteEndElement(); // Aslında su an dosya bos. // Bu bilgilerin hepsi hafızada duruyor // Bu bilgleri dosyaya yazalım xmlDoc.Flush(); // dosyayı kapatalım xmlDoc.Close();

 

Kod için gerekli açıklamaları kod satırlarının üstüne yazdım. Böylece anlamak daha kolay olur. Xml Dosyamız asağıdaki gibi olacaktır.


Products.xml

<?xml version="1.0" encoding="utf-8" standalone="no"?> <!DOCTYPE Urunler(View Source for full doctype...)> <!--Comment, yani dosyaya yorum yazıyoruz...--> <Ürünlerimiz> <Ürün> <Numarası>2</Numarası> <ÜrünAdı>Chang</ÜrünAdı> <Fiyatı>19,0000</Fiyatı> </Ürün> </Ürünlerimiz>

Etiketler : Etiket Yok
Kategoriler : Visual Studio
Yorumlar : 0 Yorum Yorum Yaz
123
Arama
  Ara
Dil Seçin
Sayfalar
Son Yorumlar
Sayfalar
Blog Sayaç
Tag Bulutu