or
A |
10 |
|
|
|
20 |
|
|
A Total |
30 |
AVG |
0.25 (30/120) |
B |
20 |
|
|
|
30 |
|
|
|
40 |
|
|
B Total |
90 |
AVG |
0.75(90/120) |
Total |
120 |
|
|
Public
Sub
New
()
InitializeComponent()
End
Sub
Private
Sub
admin_invoice_details_ownitnow_NeedDataSource(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
Me
.NeedDataSource
Dim
SQL
As
New
StringBuilder
SQL.AppendLine(
" SELECT ISNULL(products.itemid, 0) AS lotid,"
)
SQL.AppendLine(
" invdesc.itemdesc,"
)
SQL.AppendLine(
" invdesc.amount"
)
SQL.AppendLine(
" FROM invdesc"
)
SQL.AppendLine(
" INNER JOIN products ON products.ProductID = invdesc.itemid"
)
SQL.AppendLine(
" WHERE invdesc.invoiceid = @invoiceid"
)
Dim
sqlDataSource1
As
New
SqlDataSource()
sqlDataSource1.ConnectionString = HttpContext.Current.Session(
"Conn"
)
sqlDataSource1.SelectCommand = SQL.ToString
sqlDataSource1.Parameters.Add(
"@invoiceid"
, DbType.Int32,
"=Parameters.invoiceid"
)
Me
.DataSource = sqlDataSource1
End
Sub
private void Zoom(object param)
{
ReportChildWindow reportChildWindow = new ReportChildWindow(this.ReportViewer.DataContext);
reportChildWindow.Show();
}
public ReportChildWindow(object dataContext)
{
this.DataContext = dataContext;
InitializeComponent();
}
Private Sub tblSolution1_ItemDataBinding(ByVal sender As Object, ByVal e As System.EventArgs) Handles tblSolution1.ItemDataBinding
Try
Dim ds As New DataSet
Dim dc As DataColumn
Dim newDT As New DataTable
'Changes datatable layout
newDT = RestructureDataTable(MyDatatable)
ds.Tables.Add(newDT)
Dim processingTable As Telerik.Reporting.Processing.Table = sender
Dim textboxGroup As Telerik.Reporting.TextBox
Dim textBoxTable As Telerik.Reporting.TextBox
Dim I As Integer
I = 0
tblSolution1.ColumnGroups.Clear()
tblSolution1.Body.Columns.Clear()
tblSolution1.Body.Rows.Clear()
Dim tableGroupColumn As Telerik.Reporting.TableGroup
Dim tableGroupRow As Telerik.Reporting.TableGroup
For Each dc In ds.Tables(0).Columns
tableGroupColumn = New Telerik.Reporting.TableGroup
tblSolution1.Body.Columns.Add(New Telerik.Reporting.TableBodyColumn(Unit.Inch(0.5)))
textboxGroup = New Telerik.Reporting.TextBox
textboxGroup.Value = dc.ColumnName.ToString
textboxGroup.Size = New SizeU(Unit.Inch(1.2), Unit.Inch(0.3))
tableGroupColumn.ReportItem = textboxGroup
tblSolution1.ColumnGroups.Add(tableGroupColumn)
textBoxTable = New Telerik.Reporting.TextBox
textBoxTable.Value = "=Fields." + dc.ColumnName
textBoxTable.Style.BorderStyle.Default = Telerik.Reporting.Drawing.BorderType.Solid
textBoxTable.Style.BorderWidth.Default = Unit.Pixel(1)
tblSolution1.Body.SetCellContent(0, I, textBoxTable)
I = I + 1
Next
tableGroupRow = New Telerik.Reporting.TableGroup
tblSolution1.RowGroups.Add(tableGroupRow)
tableGroupRow.Grouping.Add(New Telerik.Reporting.Data.Grouping)
processingTable.DataSource = ds.Tables(0)
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Private Sub LoadChart(ByVal sFileName As String, ByRef sChart As Telerik.Reporting.Chart)
Dim inFile As StreamReader = File.OpenText(sFileName)
Try
Dim j As Integer
Dim sLine As String
Dim sValues() As String
Dim chartSeries() As Telerik.Reporting.Charting.ChartSeries
Dim bFirstLoad As Boolean = False
Dim yMax, yMin As Double
Do While inFile.Peek <> -1
sLine = inFile.ReadLine
sValues = Split(sLine, vbTab)
If UCase(Trim(sValues(0))) = "TEMPERATURE" Then
'Create an array of Series for length of value
'Create Chart Series Names
For j = 0 To sValues.Length - 1
ReDim Preserve chartSeries(j)
chartSeries(j) = New Telerik.Reporting.Charting.ChartSeries
If j > 0 Then
If sValues(j) <> "" Then
chartSeries(j).Name = sValues(j)
chartSeries(j).Type = Charting.ChartSeriesType.Line
chartSeries(j).Appearance.PointMark.Dimensions.Width = 1
chartSeries(j).Appearance.PointMark.Dimensions.Height = 1
chartSeries(j).Appearance.PointMark.FillStyle.MainColor = chartSeries(j).Appearance.LineSeriesAppearance.Color
chartSeries(j).Appearance.PointMark.Visible = True
chartSeries(j).DefaultLabelValue = ""
chartSeries(j).YAxisType = Charting.ChartYAxisType.Primary
End If
End If
Next
ElseIf IsNumeric(sValues(0)) Then
For j = 0 To sValues.Length - 1
If sValues(j) <> "" Then
If j > 0 Then
If bFirstLoad = False Then
If yMax = 0 Then
yMax = CDbl(sValues(j))
End If
If yMin = 0 Then
yMin = CDbl(sValues(j))
End If
bFirstLoad = True
End If
'Add the values to the chart series
chartSeries(j).AddItem(CDbl(sValues(j)))
chartSeries(j).Item(chartSeries(j).Items.Count - 1).XValue = CDbl(sValues(0))
chartSeries(j).Item(chartSeries(j).Items.Count - 1).YValue = CDbl(sValues(j))
chartSeries(j).Item(chartSeries(j).Items.Count - 1).ActiveRegion.Tooltip = CDbl(sValues(j))
'Update Min and Max Values
If yMin > CDbl(sValues(j)) Then
yMin = CDbl(sValues(j))
End If
If yMax <
CDbl
(sValues(j)) Then
yMax
=
CDbl
(sValues(j))
End If
End If
End If
Next
End If
Loop
For
j
=
0
To chartSeries.Length - 1
If j > 0 Then
sChart.Series.Add(chartSeries(j))
End If
Next
sChart.PlotArea.XAxis.AxisLabel.TextBlock.Text = "Temperature"
sChart.PlotArea.XAxis.AxisLabel.TextBlock.Appearance.TextProperties.Color = Color.Black
sChart.PlotArea.XAxis.Appearance.Visible = Charting.Styles.ChartAxisVisibility.True
sChart.PlotArea.XAxis.VisibleValues = Charting.Styles.ChartAxisVisibleValues.All
sChart.PlotArea.XAxis.Appearance.Width = 3
sChart.PlotArea.XAxis.MinValue = 10
sChart.PlotArea.XAxis.MaxValue = 100
sChart.PlotArea.XAxis.LabelStep = 10
sChart.PlotArea.XAxis.MaxItemsCount = 100 + 1
sChart.PlotArea.XAxis.AutoScale = False
sChart.PlotArea.YAxis.AxisLabel.TextBlock.Text = "Concentration"
sChart.PlotArea.YAxis.AxisLabel.TextBlock.Appearance.TextProperties.Color = Color.Black
sChart.PlotArea.YAxis.Appearance.Visible = Charting.Styles.ChartAxisVisibility.True
sChart.PlotArea.YAxis.Appearance.Width = 3
sChart.PlotArea.YAxis.IsZeroBased = False
sChart.PlotArea.YAxis.VisibleValues = Charting.Styles.ChartAxisVisibleValues.All
sChart.PlotArea.YAxis.MaxValue = yMax
sChart.PlotArea.YAxis.MinValue = yMin
sChart.PlotArea.YAxis.AutoScale = False
sChart.ChartTitle.TextBlock.Text = "Concentration vs Temperature"
Catch ex As Exception
VOMsgBox(ex.ToString)
Finally
inFile.Close()
inFile = Nothing
End Try
End Sub