在Microsoft报表查看器中的表格的单元格中一起显示8列

时间:2011-03-24 16:04:15

标签: c# linq linq-to-sql microsoft-reporting

我有一个表,它在其单元格中显示一些数据,这些数据来自使用linq查询从数据库中获取值的方法。我需要做的是在本报告的最后一列的单元格的表格单元格中显示数据库中表格的8列enter image description here

是否可以这样做?如果是,我该怎么做? 以下是返回报告所需值的代码

List<KurBakiyeDegiskenleri> kurToplamlist = new List<KurBakiyeDegiskenleri>();
var query = from kur in kurToplamlist
                       //where kurTL.DovizTuruGetSet == dovizTuru
                       //where kur.KurToplamMiktarGetSet>0
                       join cariBilg in db.TBLP1CARIs
                                     on kur.CariIdGetSet equals cariBilg.ID
                       select new
                       {
                           cariBilg.K_FIRMAADI,//FIRMA ADI
                           cariBilg.K_YETKILIADI,//YETKILI ADI
                           cariBilg.K_FIRMATELEFON,//FIRMA TEL
                           cariBilg.K_YETKILITELEFON,//YETKILI TEL
                           BAKIYE = kur.KurToplamMiktarGetSet,//BAKİYE

                       };
 return query;          

2 个答案:

答案 0 :(得分:1)

您可以在字段中使用表达式 = Fields!col1.Value & " " & Fields!col2.Value

答案 1 :(得分:0)

public static IEnumerable GetBakiyeTumKurlarToplam(DateTime baslangicTarihi, DateTime bitisTarihi) 
        {
            Baglanti();

            List<KurBakiyeDegiskenleri> kurToplamlist = new List<KurBakiyeDegiskenleri>();
            kurToplamlist = GetCariIdSecici(kurToplamlist,baslangicTarihi,bitisTarihi);//GetCariIdSecici cari idleri bir sp ile çeker ve tüm bu carilerin
                                                    //tüm döviz türleri cinsinden işlemlerinin bakiye toplamlarını hesaplar listede döndürür

            string seperator = " \r\n ";//döviz türleri ile miktarları ikilisinin ayrılacağı string örneğin 100 TL;100 EUR

            var queryBilgiler =
                        from kur in kurToplamlist
                        where kur.KurToplamMiktarGetSet > 0 || kur.KurToplamMiktarGetSet < 0//sadece borcu ya da alacağı olanları çeker
                        join cariBilg in db.TBLP1CARIs// where satırı sayesinde 0USD gibi değerleri almaz
                                      on kur.CariIdGetSet equals cariBilg.ID//FIRMAADI TEL gibi bilgiler için join gerekti
                        select new
                        {
                            cariBilg.ID,
                            HESAPADI = cariBilg.HESAPADI,
                            FIRMAADI = cariBilg.K_FIRMAADI,
                            YETKILIADI = cariBilg.K_YETKILIADI == null ||//yetkili adı nullsa ya da boşsa adı soyadı al aksi takdirde 
                                                                        //yetkili adını al, firma - birey farkı
                                         cariBilg.K_YETKILIADI == "" ?
                                                                        cariBilg.B_ADSOYAD :
                                                                        cariBilg.K_YETKILIADI,
                            FIRMATELEFONU = cariBilg.K_FIRMATELEFON,
                            YETKILITELEFONU = cariBilg.K_YETKILITELEFON,
                            CEPTELEFONU = cariBilg.B_CEPTELEFON,
                            BAKIYELER = String.Concat(kur.KurToplamMiktarGetSet.ToString()+" ", kur.DovizTuruGetSet.ToString())//100 ile TL yi
                                                                                        //birleştirir 100 TL yapar
                        };