2017-01-23 1 views
4

내 VB 응용 프로그램은 ODBC를 통해 보고서를 인쇄합니다. 데이터베이스 전문가를 사용하여 테이블을 추가하고 Crystal Report를 디자인했습니다. 내 검색어는 어디에 넣어야합니까? 여기에 사용자 이름과 암호를 생성하여 ODBC를 찾은 Crystal 보고서 마법사에서 내 쿼리보고서의 두 테이블에서 쿼리

SELECT ts.`SCHEDIDNO`, 
     ts.`DAYNAME`, 
     DATE_FORMAT(ts.`TIMESTART`, '%h:%i %p') as TIMESTART, 
     DATE_FORMAT(ts.`TIMEEND`, '%h:%i %p') as TIMEEND, 
     ts.`GRADELEVEL`, 
     ts.`SECTIONNAME`, 
     ts.`SUBJECTNAME`, 
     ts.`FACFULLNAME`, 
     ts.`ROOMNAME`, 
     tf.`FACFULLNAME` as PERSONNEL, 
     tf.`DEPARTMENT`, 
     tse.`Adviser` 
FROM `tblschedule` ts, 
    `tblfaculty` tf, 
     `tblsection` tse 
WHERE ts.`GRADELEVEL` = " & lblgrade.Text & " 
    AND ts.`SECTIONNAME` = '" & lblsect.Text & "' 
    AND ts.`DEPARTMENTNAME` = tf.`DEPARTMENT` 
    AND tf.`ADMINISTRATOR` = 1 
    AND tse.`SECTIONNAME` = '" & lblsect.Text & "' 

enter image description here

답변

2

입니다.

그런 다음 명령 텍스트가 표시됩니다. 여기에 쿼리를 넣을 수 있습니다. VB.NET

Private CRPT As New ReportDocument 
    Private APPPATH As String 
    Private PARAM As New ParameterFields 
    Public PARAM_DESC As New ParameterDiscreteValue 
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load 

     APPPATH = Application.StartupPath & "\REPORT\sample.rpt" 
     CRPT.Load(APPPATH) 
     Me.CrystalReportViewer1.ReportSource = CRPT 

     PARAM = CRPT.ParameterFields 

     PARAM_DESC.Value = Format(DatePicker1.Value, "yyyyMMdd") 
     PARAM("DATEP").CurrentValues.Clear() 
     PARAM("DATEP").CurrentValues.Add(PARAM_DESC) 
     Me.CrystalReportViewer1.Refresh() 
    End Sub 

이 코드에 대한

이 코드는 C#을위한 것입니다 :

CRPT = new ReportDocument(); 
      APPPATH = Environment.CurrentDirectory + "Sample.rpt"; 
      CRPT.Load(APPPATH); 
      Report_Viewer.Refresh(); 
      CRPT.SetParameterValue("syear", Servercls.year); 


      CRPT.SetParameterValue("smonth", Servercls.month); 
      CRPT.SetParameterValue("sday", Servercls.day); 
      CRPT.SetParameterValue("datevalue", Servercls.Datevalue); 
      Report_Viewer.ReportSource = CRPT; 

      sc.configureCrystalReport(); 
      Report_Viewer.Refresh(); 

귀하의 크리스탈 리포트 매개 변수 이름이 뒤에 코드에서와 동일해야합니다.

+0

고맙습니다. 나는 나중에 이것을 시도 할 것이다. :) – user3397424

+0

이것은 내가 찾고있는 것이다. 선생님 정말 고마워요. 이제는 내 위치에있는 쿼리에 대한 문제가 하나 더 있습니다. stu.'SECTIONNAME' = {? sectiontext} 그리고 stu.GRADELEVEL' = sch.'GRADELEVEL' 및'FACFULLNAME' = {? facultyname} AND sch.'GRADELEVEL '= {? glvl} . 어떻게 양식의 레이블을 사용하여 "{? sectiontext}", {? facultyname} 및 {? glvl}의 값을 변경할 수 있습니까? – user3397424

+0

주저하지 말고 질문하십시오. 고마워 주셔서 감사합니다 –

관련 문제