Anasayfa » Forum

DevExpress Rapor So...
 

DevExpress Rapor Sorunu  

  RSS
 Anonim

Devexpress Raporlama dataset datasource ile  wizard yardımıyla
yapabiliyorum bu şekilde sorun yok fakat form üzerinden bir veriyi
rapora parametre olarak göndermem gerekiyor bunu nasuıl yapabilirim?

Devexpress Rapora nasıl parametre gönderebilirim yada kod yardımı ile
veritabanında ki datalarımı istediğim alanlara çekebilirim?

Alıntı
Gönderildi : 24/11/2011 17:07
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

Merhaba

formunuza 1 adet Dataset ekleyin ve alanları bu datasete elle girin.

sonra formunuza 1 adet xtrareport ekleyin ve dizaynı yapın.

///////////////// Şu anda yazdığım programdaki kodları aynen ekliyorum.Kendinize göre editlersiniz..////////////////

SqlConnection conn = GetConn();
conn.Open();
DateTime d1 = DateTime.Parse(dtOTarihi.Text);
DateTime d2 = d1;
for (int i=1; i <= Convert.ToInt32(txtTaksit.Text); i++ )
{

try
{
SqlCommand cmd_InsertBond = new SqlCommand("SP_Senet", conn);
cmd_InsertBond.CommandType = CommandType.StoredProcedure;
cmd_InsertBond.Parameters.AddWithValue("@OGunu", d2);
cmd_InsertBond.Parameters.AddWithValue("@TL", txtTutar.Text);
cmd_InsertBond.Parameters.AddWithValue("@No", i);
cmd_InsertBond.Parameters.AddWithValue("@a1", textBox1.Text);
cmd_InsertBond.Parameters.AddWithValue("@a2", textBox2.Text);
cmd_InsertBond.Parameters.AddWithValue("@a3", textBox3.Text);
cmd_InsertBond.Parameters.AddWithValue("@a4", textBox4.Text);
cmd_InsertBond.Parameters.AddWithValue("@a5", textBox5.Text);
cmd_InsertBond.Parameters.AddWithValue("@a6", textBox6.Text);
cmd_InsertBond.Parameters.AddWithValue("@a7", textBox7.Text);
cmd_InsertBond.Parameters.AddWithValue("@a8", textBox8.Text);
cmd_InsertBond.Parameters.AddWithValue("@a9", textBox9.Text);
cmd_InsertBond.Parameters.AddWithValue("@a10", textBox10.Text);
cmd_InsertBond.Parameters.AddWithValue("@AdSoyad", cmbStudentName.Text);
cmd_InsertBond.Parameters.AddWithValue("@Adres", textBox13.Text);
cmd_InsertBond.Parameters.AddWithValue("@VDNO", textBox15.Text);
cmd_InsertBond.Parameters.AddWithValue("@Kefil", textBox16.Text);
cmd_InsertBond.Parameters.AddWithValue("@KVDNO", textBox17.Text);
cmd_InsertBond.Parameters.AddWithValue("@Adres2", textBox14.Text);
cmd_InsertBond.Parameters.AddWithValue("@TC", textBox12.Text);
cmd_InsertBond.Parameters.AddWithValue("@UserID", cmbStudentName.EditValue);
cmd_InsertBond.ExecuteNonQuery();

d2 = d1.AddMonths(i);
}
catch (Exception ex)
{ MessageBox.Show(ex.Message.ToString()); break; }
}
conn.Close();

CevapAlıntı
Gönderildi : 25/11/2011 20:28
 Anonim

Ahmet Hocam Cevabınız için çok teşekkür ederim fakat ben dataset eklediğimde dataset timeout a düşüyor 30 sn sonra bunu nasıl engelleyebilirim?

internetde araştırdığım bilgilere göre dataset wizard kısmında dataset designer içerinde değişiklik yapmam söyleniyor, bu doğrumudur yoksa daset timeout süresini farklı yöntemler ile arttırabilirmiyim?

CevapAlıntı
Gönderildi : 28/11/2011 11:01
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

Merhaba linkte çok güzel anlatılmış.

http://www.emrecirik.com/category/DevExpress.aspx

CevapAlıntı
Gönderildi : 28/11/2011 11:58
 Anonim

Hocam Bu söylediğiniz linki daha önce incelemiştim fakat timeout hatasının çözümü olmamıştı, daha etkin ve farklı çözüm olabilir mi ?

Örneğin timeout wizard üzerinde değiştirmek gibi...

CevapAlıntı
Gönderildi : 28/11/2011 13:05
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

timeout 'a düşmesi kodlarınla alakalı olabilir diye düşünüyorum.

Kodlarını görebilirmiyim.

CevapAlıntı
Gönderildi : 29/11/2011 10:11
 Anonim

Hocam Ben Sadece Dataset design edip rapor design alanında kodları bağlıyorum, bu şekilde çalışıyor ama sorgu uzun geldiği zaman timeout a düşüyor, ben yanlış bir yol izliyor olabilirm, bu yolun daha profesyonel bir yöntemi olabilir mi? Timeout a düşmeden raporu çalıştırabiliyorsam mümkünse nasıl yapıldığına dail kodları paylaşabilirmisiniz?

 

CevapAlıntı
Gönderildi : 29/11/2011 13:32
 Anonim

            XtraReport1 rapor = new XtraReport1();
            SqlConnection cnn;
            string connectionString = null;
            string sql = null;
            connectionString = "Data Source=";
            cnn = new SqlConnection(connectionString);
            cnn.Open();

            sql="select * from basic";

            SqlDataAdapter adp = new SqlDataAdapter(sql, cnn);
            DataSet ds = new DataSet();
            adp.Fill(ds, "basic");

            foreach(DataRow dr in ds.Tables["basic"].Rows)
                {

                Response.Write(dr["Adi"].ToString());

                }

            //rapor.xrLabel1.Text= ds.Tables["basic"].Rows[0]["ID"].ToString();

            rapor.dataGridView1.DataSource = ds;
            
           

            //istediğim satırdaki satırı ekrana yazdırmak için kullandığım kod//
            Label1.Text=ds.Tables["basic"].Rows[5]["ID"].ToString();
            
            ReportToolbar1.DataBind();
            ReportViewer1.Report = rapor;

            cnn.Close();

 

Hocam Kodlarım burda bu şekilde raporluyorum, fakat belli bir süreden sonra timeout a düşüyor

Ayrıca raporda sadece tek satır listeleyebiliyorum, ben altalta ne kadar data varsa listelenmesini istiyorum.

CevapAlıntı
Gönderildi : 29/11/2011 18:36
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

Merhaba açıkçası kodların çok karışık.

akşam sana access'de bir örnek yapar eklerim buraya.

altta devamının görünmesi için details band'a koymalısın verilerini ve Report.DataMember = "Tablo"; şeklinde report.preview(); 'den önce yazmalısın.

Kolay Gelsin.

CevapAlıntı
Gönderildi : 29/11/2011 19:13
 Anonim

Hocam details banda listemeye çalışıyorum ama sadece en son girilen kaydı listeliyor.

CevapAlıntı
Gönderildi : 29/11/2011 19:42
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

http://www.dosya.tc/server7/oWANzy/DevexpressReport.rar.html

Linkten örnek kodu indirebilirsiniz..

Kolay Gelsin.

CevapAlıntı
Gönderildi : 30/11/2011 12:39
 Anonim

Hocam çözümünüz için çok teşekkür ederim, Asp.Net platformuna uyarlayıp test ettim proje çalıştı.

Hocam  bir kaç sorum daha olacak;

Dataset kullandığınız rapor design ın içinde ki dataset mi, oysa onun timeout değerini mi arttıracağız. yoksa 

command nesnesinin timeout değerini arttırdığımızda sorun düzelirmi, ayrıca eklemek istediğim bi kaç nokta daha var

datatable ı dataset design kısmında oluşturuyoruz bazen burda da table oluştururken timeout a düştüğü oluyor, bu sorunu aşabilmemiz için farklı

bir çözüm yolu olabilir mi?

Çözümünüz ve Yardımlarınız için teşekkür ederim.

CevapAlıntı
Gönderildi : 30/11/2011 19:39
 Anonim

  dr_Details["deger"] = oku["deger"].ToString();

hocam yukarıda ki gibi dataread ile data çekiyorum ama değer veritabanında yok ise gerçersiz dizin ismi ile hata veriyor?

Bu Hatayı nasıl düzeltebilirim

CevapAlıntı
Gönderildi : 02/12/2011 10:43
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

veritabanında olmayan bir field'ı çekemezsiniz.

hataya düşmesini istemiyorsanız 

try

{}catch(Exception ex)

{ Messagebox.show(ex.message.tostring()); }

şeklinde yazabilirsiniz.

CevapAlıntı
Gönderildi : 02/12/2011 13:44
 Anonim

Field var ama değeri null geşdiği için hata veriyor

CevapAlıntı
Gönderildi : 02/12/2011 15:25
Ahmet ALTUNTAS
(@ahmetaltuntas)
Üye

döngünün içerisinde 

if (dr["deger"] != null)

{

////kod

}

şeklinde yapabilirsnz.

CevapAlıntı
Gönderildi : 02/12/2011 17:02
Pelin Gümüş
(@PelinGumus)
Üye

O kadar çok işime yaradı ki. Kurtarıcım oldu. Link paylaşımı için teşekkürler.

CevapAlıntı
Gönderildi : 18/12/2015 14:24
Paylaş:

Lütfen Giriş yap yada Kayıt ol