c# - Error while displaying the PDF column using select query -


 pdfptable tabl11 = new pdfptable(8);             string connect19 = configurationmanager.connectionstrings["projectconnectionstring"].connectionstring;             sqlconnection cn19 = new sqlconnection(connect19);             cn19.open();             sqlcommand cmd19 = new sqlcommand("select  distinct * (select p1.pubid,p2.publisher,p2.title,p.name authors personal_det p,publication_tracker p1,publication_det p2 p.fid=p1.fid , p1.contribution_type='a' , p1.pubid=p2.pubid  , p.fid=@fid ) t1 inner join (select p.name coauthors,p2.pubid,p2.type,p2.title,p2.pubdate,p2.publisher personal_det p,publication_tracker p1,publication_det p2 p.fid=p1.fid , p1.contribution_type='c' , p1.pubid=p2.pubid , p1.pubid=4 ) t2 on t1.pubid = t2.pubid ", cn19);             cmd19.parameters.addwithvalue("@fid", session["fid"]);             sqldatareader rdr11 = cmd19.executereader();             if (!rdr11.read())             {                 tabl11.deletebodyrows();                 cn19.close();             }             else             {                 tabl11.spacingbefore = 10f;                 bftimes = basefont.createfont(basefont.times_roman, basefont.cp1252, false);                 times = new font(bftimes, 12f, font.underline);                 para = new paragraph("publication:", times);                 para.alignment = element.align_left;                 doc.add(para);                 cell.colspan = 3;                 cell.rowspan = 2;                 cell.horizontalalignment = 0;                 cell.bordercolor = new basecolor(0, 0, 0);                 tabl11.addcell(new phrase("pub id", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("publisher", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("title", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("authors", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("co-authors", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("type", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("title", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                 tabl11.addcell(new phrase("publication date", fontfactory.getfont("arial", 12, font.bold, basecolor.black)));                  string connect6 = configurationmanager.connectionstrings["projectconnectionstring"].connectionstring;                 using (sqlconnection cn = new sqlconnection(connect6))                 {                     string query = "select * (select p1.pubid,p2.publisher,p2.title,p.name authors personal_det p,publication_tracker p1,publication_det p2 p.fid=p1.fid , p1.contribution_type='a' , p1.pubid=p2.pubid   ) t1 inner join (select p.name coauthors,p2.pubid,p2.type,p2.title,p2.pubdate personal_det p,publication_tracker p1,publication_det p2 p.fid=p1.fid , p1.contribution_type='c' , p1.pubid=p2.pubid  ) t2 on t1.pubid = t2.pubid ";                     sqlcommand cmd = new sqlcommand(query, cn);                     try                     {                         cn.open();                         using (sqldatareader sdr = cmd.executereader())                         {                             while (sdr.read())                             {                                 tabl11.addcell(new phrase(sdr[0].tostring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(sdr[1].tostring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(sdr[2].tostring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(sdr[3].tostring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(sdr[4].tostring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(sdr[5].tostring(), fontfactory.getfont("arial", 8, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(sdr[6].tostring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                                 tabl11.addcell(new phrase(convert.todatetime(sdr[7]).toshortdatestring(), fontfactory.getfont("arial", 10, font.normal, basecolor.black)));                              }                         }                     }                     catch (exception ex)                     {                         response.write(ex.message);                     }                 }                  cell.rowspan = 2;                 cell.colspan = 2;                 tabl11.addcell(cell);                 tabl11.spacingafter = 30f;                 doc.add(tabl11);             } 

this above code used display database columns in pdf.but above query have used

select *  (select p1.pubid,p2.publisher,p2.title,p.name authors  personal_det p,publication_tracker p1,publication_det p2  p.fid=p1.fid , p1.contribution_type='a' , p1.pubid=p2.pubid   ) t1  inner join    (select p.name coauthors,p2.pubid,p2.type,p2.title,p2.pubdate     personal_det p,publication_tracker p1,publication_det p2     p.fid=p1.fid , p1.contribution_type='c' , p1.pubid=p2.pubid  ) t2     on t1.pubid = t2.pubid 

has four rows while displaying in pdf shows one row.how solve it? appreciated.

the problem: query below 7 column, not 8. argumentoutofrangeexception occurs.

select *  (select p1.pubid,p2.publisher,p2.title,p.name authors  personal_det p,publication_tracker p1,publication_det p2  p.fid=p1.fid , p1.contribution_type='a' , p1.pubid=p2.pubid   ) t1  inner join    (select p.name coauthors,p2.pubid,p2.type,p2.title,p2.pubdate     personal_det p,publication_tracker p1,publication_det p2     p.fid=p1.fid , p1.contribution_type='c' , p1.pubid=p2.pubid  ) t2     on t1.pubid = t2.pubid 

the answer:

select *  (select p1.pubid,p2.publisher,p2.title firsttitle,p.name authors  personal_det p,publication_tracker p1,publication_det p2  p.fid=p1.fid , p1.contribution_type='a' , p1.pubid=p2.pubid   ) t1  inner join    (select p.name coauthors,p2.pubid,p2.type,p2.title,p2.pubdate     personal_det p,publication_tracker p1,publication_det p2     p.fid=p1.fid , p1.contribution_type='c' , p1.pubid=p2.pubid  ) t2     on t1.pubid = t2.pubid 

Comments

Popular posts from this blog

windows - Single EXE to Install Python Standalone Executable for Easy Distribution -

c# - Access objects in UserControl from MainWindow in WPF -

javascript - How to name a jQuery function to make a browser's back button work? -