18 Eyl 2013

Oracle Forms 6i - Takvim Yapmak


Oracle Forms 6i de takvim yapma işi .Net ile kıyaslanınca biraz meşakkatli gibi görünse de bir kaç tecrübeden sonra kolaylaşmaya başlıyor.
Öncelikle Oracle Forms da yeni bir modül açalım ve control adında bir veri blok u oluşturalım.



Oluşturulan control bloğuna bir buton ve metin öğesi ekleyelim.
Bu noktadan sonra takvim için hazırlanmış paketleri kullanmaya başlayabiliriz.
 

İşaretlediğim alanları kopyala-yapıştır ile kendi formunuza ekleyiniz.
Bu işlemden sonra control bloğundaki butonun When-Button-Pressed triger ına aşağıdaki kodları yazalım;
 
Tarih olarak eklediğimiz metin öğesinin özelliklerinden veri türünü tarih yaptık dan sonra
Key-Listval triger a aşağıdaki kodu yazıyoruz;
 
Kodları ekleme yaparken kendi blok isimleriniz ile item larınızın isimlerini değiştirmeyi unutmayın.
Bütün işlem bu kadar. Programı çalıştırıp takvim butonuna bastığınızda işte size seçmeli bir takvim.
 
Hazır paketler  için blog daki iletişim formundan mail atabilirsiniz.
 


3 Haz 2013

ASP.Net ile Mail Göndermek


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net.Mail; ------------- İşaretli bu iki kütüphanenin eklenmesi gerekiyor
using System.Net;


namespace MAIL
{
    public partial class FormMail : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
    
            try

            {

                MailMessage eposta = new MailMessage();
                eposta.From = new MailAddress("mail kimden gidecek");
                eposta.To.Add(TextBox1.Text);--E-mail adresinin yazılacağı textbox
                eposta.Subject = "Bu mail ASP.Net den gönderilmiştir";
                eposta.Body = TextBox2.Text; -- Body yi ister custom isterseniz bir database çıktısı yapabilirsiniz.
                SmtpClient smtp = new SmtpClient();
                smtp.Credentials=new NetworkCredential("email adresi", "email şifresi");
                smtp.Port = 587;
                smtp.Host = "mail host u";
                smtp.Send(eposta);
                ASPxLabel1.Text = "mail gönderildi";
            }
            catch (Exception)
            {
                ASPxLabel1.Text = "mail göndermede hata";
            }


        }

    }

}

 

23 May 2013

Windows - Oracle Linux 6 Bağlantısı

Windows dan Oracle Linux 6 ya bağlanmak için kullanılabilecek programlar;

Masa Üstü Bağlantısı : NX Client for Windows bu konuda güzel bir tool.


File Explorer              : WinSCP file explorer olarak kullanılabilir.


Command Console     : Bu konuda duayen program Putty kullanılabilir.

11 Nis 2013

Oracle Linux 6 ve Oracle 11 G








Eğer Linux üzerinde çalışan bir oracle database niz var ise ilk yardım komutlarından bazıları...
Linux açıldıktan sonra tüm servislerin manuel açılması gerekmekte.




[oracle@XXXX Desktop]$ sqlplus / as sysdba
sysdba olarak database e bağlanır
[oracle@XXXX Desktop]$ lsnrctl start
Listener ı başlatır
[oracle@ XXXX Desktop]$ lsnrctl status
Listener ın statüsünü gösterir
[oracle@ XXXX Desktop]$ emctl status dbconsole
Enterprise Manager ın statüsünü gösterir



SQL> shutdown immediate;
Database i kapatır

 


6 Nis 2013

Oracle Forms dan Oracle Report çalıştırma





Oracle Forms dan Oracle Reports u çalıştırabilmek için yazılımı bir butona veya menüye bağlayabilirsiniz. Burada gerekli olan code lar;
 
DECLARE
pl_id ParamList;
BEGIN
pl_id := Get_Parameter_List ('tmpdata');
IF NOT Id_Null (pl_id) THEN
Destroy_Parameter_List( pl_id );
END IF;
pl_id := Create_Parameter_List('tmpdata');

Add_Parameter(pl_id, 'PARAMFORM', TEXT_PARAMETER, 'YES');
Run_Product(REPORTS, 'Rapor Adı', SYNCHRONOUS, RUNTIME,
FILESYSTEM, pl_id, NULL);
END;
Burada başka önemli bir konu daha var. Eğer registry den Reports60_PATH için raporlarınızın olduğu klasörün path ini yazmadıysanız raporunuz çalışmayacaktır. 
Code bölümünde Add_Parameter ile Forms dan rapor için parametleri gönderiyorsunuz.
 


 

27 Mar 2013

Oracle 10 G Table Space Kullanımı


SELECT
df.tablespace_name tspace,
round(df.bytes / (1024 * 1024)) tot_ts_size,
round(SUM(fs.bytes) / (1024 * 1024)) free_ts_size,
nvl(round(SUM(fs.bytes) * 100 / df.bytes),
1) ts_pct,
round((df.bytes - SUM(fs.bytes)) * 100 / df.bytes) ts_pct1
FROM dba_free_space fs,
(SELECT tablespace_name,
SUM(bytes) bytes
FROM dba_data_files
GROUP BY tablespace_name) df
WHERE fs.tablespace_name(+) = df.tablespace_name
GROUP BY df.tablespace_name,
df.bytes
UNION ALL
SELECT
df.tablespace_name tspace,
fs.bytes / (1024 * 1024) tot_ts_size,
SUM(df.bytes_free) / (1024 * 1024) free_ts_size,
nvl(round((SUM(fs.bytes) - df.bytes_used) * 100 / fs.bytes),
1) ts_pct,
round((SUM(fs.BYTES) - df.BYTES_free) * 100 / fs.bytes) ts_pct1
FROM dba_temp_files fs,
(SELECT tablespace_name,
bytes_free,
bytes_used
FROM V$temp_space_header
GROUP BY tablespace_name,
bytes_free,
bytes_used) df
WHERE fs.tablespace_name(+) = df.tablespace_name
GROUP BY df.tablespace_name,
fs.bytes,
df.bytes_free,
df.BYTES_used
ORDER BY 2 DESC

Faruk Hocama teşekkürler
http://www.farukazakli.blogspot.com/

Yada enterprise manager dan  grafikli olarak izleyebilirsiniz.

27 Şub 2013

IIS 6.0 ve Oracle 10 G




Veri tabanı Oracle 10 G olan  ve ASP.Net ile yazmış olduğunuz projeyi IIS 6.0 da yayınlamaya çalıştığınızda oracle data access client ile ilgili bir dizi hata gelecektir. Bu durumu aşmak için aşağıdaki dll leri IIS server daki publish dosyalarınızın bulunduğu dizindeki bin klasörü içerisine kopyalayın.

Oracle.DataAccess.dll
OraOps11w.dll
orannzsbb11.dll
oraociei11.dll
oci.dll 

Önemli Not :
ASP.Net de projenizi oluştururken bilgisayarınızda yüklü olan Oracle Client versiyonu ile IIS server ınızdaki Oracle Client aynı versiyon olmalı.


6 Oca 2013

Oracle Veritabanının kapatılması


  • Normal Kapatma (Shutdown): Veri tabanına bağlı tüm kullanıcılar, veritabanı oturumlarını kapatmadıkları sürece veri tabanı kapanmayacağından bu yöntem pek tercih edilmez.
  • Shutdown Transactional : Bu yöntem ile kullanıcıların veri kaybı yaşamaması sağlanır. DML komutlarının tamamlanmasından sonra commit edilir ve veri tabanı kapatılır.
  • Shutdown immediate : Bu yöntemde veri tabanına bağlı olan kullanıcıların yaptıkları değişiklikler Rollback yapıldıktan sonra veritabanı kapatılır.
  • Shutdown  Abort: Fişi çekmekten farklı değildir.