Ich habe eine GridView, die die Anzahl der Aufträge und Anzahl der Dokumente namens XDA zeigt. In der dritten Spalte namens EPOD möchte ich dies mit den Jobs minus XDA berechnen.Berechnen Sie Zeile in GridView basierend auf zwei anderen Zeilen
Gridview:
<asp:GridView runat="server"
id="gvResults"
CssClass="tblResults"
OnItemDataBound="gvResults_OnItemDataBound"
AllowSorting="true"
OnSortCommand="gvResults_Sort"
DataKeyField="ID"
AutoGenerateColumns="false">
<HeaderStyle CssClass="tblResultsHeader" />
<AlternatingRowStyle BackColor="#EEEEEE" />
<Columns>
<asp:BoundField DataField="JobsDelivered" HeaderText="No. Jobs deliv" SortExpression="JobsDelivered"></asp:BoundField>
<asp:BoundField DataField="ePODXDA" HeaderText="ePOD XDA" SortExpression="ePODXDA"></asp:BoundField>
-Code hinter:
protected void gvResults_OnItemDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LookupLeagueTable main = (LookupLeagueTable)e.Row.DataItem;
GridView gv = (GridView)sender;
}
}
Also habe ich versucht, dies mit aber der Code wird in der foreach stecken:
foreach (DataRow row in e.Row.Cells)
{
row["EPOD"] = Convert.ToInt32(row["JobsDelivered"]) - Convert.ToInt32(row["ePODXDA"]);
}
Ich habe auch versucht main.EPOD = main.JobsDelivered - main.ePODXDA;
aber das Gitter angezeigt noch Null
Netz Bestücken:
List<LookupLeagueTable> main = LookupLeagueTable.SearchCustomerListItems(Company.Current.CompanyID,
SearchStrings,
SearchFields,
DateTypeKey,
FromDate,
ToDate,
SortExpression,
SortDirection);
gvResults.DataSource = main;
gvResults.DataBind();
SearchCustomerListItems
dann eine SQL-Anweisung ausgeführt wird:
select
sum(case when (select count(distinct j.ID) from job_new j where jn.ID = j.ID AND j.JobOwnerID = j.DeliverMemberID)>0 then 1 else 0 end) as JobsDelivered,
sum(case when (select count(jds.EPODImage) from job_dockets jds where jds.jobid=jn.id)>0 then 1 else 0 end) as ePODXDA
FROM customer c
LEFT JOIN job_address ja ON c.AccountCode = ja.Code AND c.Company_ID = ja.Company_ID
JOIN AddressType jat ON ja.AddressType = jat.ID and jat.Description = 'Debtor'
LEFT JOIN job_new jn ON ja.JobID = jn.ID
WHERE jn.IsActive = 1
wie wollen Sie bevölkern das Gitter ? – Mainak
@Mainak Ich habe meine Frage bearbeitet, um den Code anzuzeigen – user123456789