3.939 messaggi dal 28 gennaio 2003
non so, anche in access questo funziona

select valuta, (valuta/(select sum(valuta) from campi) )*100 as percentuale from campi;
56 messaggi dal 27 agosto 2002
se vuoi ti mando l'esempio.
56 messaggi dal 27 agosto 2002
Questo è il "punto" del lavoro?..che spero di riuscire a finire con il tuo aiuto?. mandi bepi


Ipotesi44 in proporzione ai voti ottenuti

CATEGORIEdoc1doc2votiProporzione %
ai votiDelegati spettanti
proporzione % ai voti
a27065092035,1115,45
b44017061023,2810,24
c36013049018,708,23
d12018030011,455,04
e18012030011,455,04
Totale137012502620100,0044,00


Il dato Spettanti è ?arbitrario? quindi è stato inserito con parametri diversi da quello della proporzione ai voti?.

CategorieDoc1Doc2VotiSpettanti
a 270 650 920 9
b 440 170 610 8
c 360 130 490 7
d 120 180 300 10
e 180 120 300 10
Camera del lavoro13701250262044





<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Determina.aspx.vb" Inherits="determina" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>

</div>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/app_data/Congress2018.mdb"
DeleteCommand="DELETE FROM [ComitatoDirettivo2] WHERE [id] = ?"
InsertCommand="INSERT INTO [ComitatoDirettivo2] ([id], [CATEGORIE], [doc1], [doc2], [Spettanti]) VALUES (?, ?, ?, ?, ?)"
SelectCommand="SELECT * FROM [ComitatoDirettivo2]"


UpdateCommand="UPDATE [ComitatoDirettivo2] SET [CATEGORIE] = ?, [doc1] = ?, [doc2] = ?, [Spettanti] = ? WHERE [id] = ?">
<DeleteParameters>
<asp:Parameter Name="id" Type="Int32" />
</DeleteParameters>
<InsertParameters>

<asp:Parameter Name="id" Type="Int32" />
<asp:Parameter Name="CATEGORIE" Type="String" />
<asp:Parameter Name="doc1" Type="Int16" />
<asp:Parameter Name="doc2" Type="Int16" />
<asp:Parameter Name="Spettanti" Type="Int16" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="CATEGORIE" Type="String" />
<asp:Parameter Name="doc1" Type="Int16" />
<asp:Parameter Name="doc2" Type="Int16" />
<asp:Parameter Name="Spettanti" Type="Int16" />


<asp:Parameter Name="id" Type="Int32" />


</UpdateParameters>
</asp:AccessDataSource>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" GridLines="None" ShowFooter="True" AllowSorting="True"
DataKeyNames="id" DataSourceID="AccessDataSource1">
<Columns>
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False"
ReadOnly="True" SortExpression="id" Visible="False" />



<asp:TemplateField HeaderText="Categorie">
<ItemTemplate>
<asp:Label ID="lbl_Categorie" runat="server" Text='<%# Eval("Categorie") %>' />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>


<asp:TemplateField HeaderText="Doc1">
<ItemTemplate>
<asp:Label ID="lbl_Doc1" runat="server" Text='<%# Eval("Doc1") %>' />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>



<asp:TemplateField HeaderText="Doc2">
<ItemTemplate>
<asp:Label ID="lbl_Doc2" runat="server" Text='<%# Eval("Doc2") %>' />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>


<asp:TemplateField HeaderText="Voti">
<ItemTemplate>
<asp:Label ID="lbl_somma" runat="server" Text='<%# (Convert.ToInt32(Eval("DOC1")) + Convert.ToInt32(Eval("DOC2"))).ToString() %>' />
</ItemTemplate>
<FooterStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>




<asp:TemplateField HeaderText="Spettanti">
<ItemTemplate>
<asp:Label ID="lbl_Spettanti" runat="server" Text='<%# cInt(Convert.ToInt32(Eval("Spettanti"))) %>' />
</ItemTemplate>
<FooterStyle BackColor="#33CC33" HorizontalAlign="Center" />
<HeaderStyle BackColor="#33CC33" />
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>



<asp:TemplateField HeaderText="Moz 1 - %">
<ItemTemplate>
<asp:Label ID="lbl_somma1" runat="server" Text='<%# FormatNumber((Convert.ToInt32(Eval("DOC1"))) / (Convert.ToInt32(Eval("DOC1")) + Convert.ToInt32(Eval("DOC2"))).ToString() * 100, 2) %>' />


</ItemTemplate>
<FooterStyle BackColor="#66CCFF" HorizontalAlign="Center" />
<HeaderStyle BackColor="#66CCFF" HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>





<asp:TemplateField HeaderText="Moz 2 - %">
<ItemTemplate>
<asp:Label ID="lbl_somma2" runat="server" Text='<%# FormatNumber((Convert.ToInt32(Eval("DOC2"))) / (Convert.ToInt32(Eval("DOC1")) + Convert.ToInt32(Eval("DOC2"))).ToString() *100, 2) %>' />

</ItemTemplate>
<FooterStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>



<asp:TemplateField HeaderText="Delegati Moz 1">
<ItemTemplate>
<asp:Label ID="lbl_SPETTANTI1" runat="server" Text='<%# Cint((Convert.ToInt32(Eval("DOC1")) / (Convert.ToInt32(Eval("DOC1")) + Convert.ToInt32(Eval("DOC2"))).ToString() * 100)* Convert.ToInt32(Eval("Spettanti"))/100) %>' />


</ItemTemplate>
<FooterStyle BackColor="#66CCFF" HorizontalAlign="Center" />
<HeaderStyle BackColor="#66CCFF" />
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>



<asp:TemplateField HeaderText="Delegati Moz 2">
<ItemTemplate>
<asp:Label ID="lbl_spettanti2" runat="server" Text='<%# cInt((Convert.ToInt32(Eval("DOC2")) / (Convert.ToInt32(Eval("DOC1")) + Convert.ToInt32(Eval("DOC2"))).ToString() * 100)* Convert.ToInt32(Eval("Spettanti"))/100) %>' />


</ItemTemplate>
<FooterStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>



</Columns>



<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#2461BF" />
<AlternatingRowStyle BackColor="White" />



</asp:GridView>
</form>
</body>
</html>
56 messaggi dal 27 agosto 2002
ho provato ad utilizzare la formula indicata nel db di access?. alla fine la query costruita visualizza correttamente i dati. Dopodiché riesco a creare una nuova tabella con i dati?? vorrei, invece aggiornare la tabella di riferimento con il comando update ma.?. niente da fare??.


Bepi
3.939 messaggi dal 28 gennaio 2003
La domanda era
"Come ricavare la percentuale di un dato presente su riga del datagried rispetto al totale di una colonna
in pagina aspx e visualizzarlo sulla riga di riferimento?"
Cosa c'entra l'update?

Riesci a visualizzare i dati con le percentuali?

Che significa "Dopodiché riesco a creare una nuova tabella con i dati?"

Io di più non so.
Ciao.
56 messaggi dal 27 agosto 2002
si riesco a vedere il valore percentuale di ogni record rispetto al totale.

Da access di riesce a creare una nuova tabella con quei dati.

Non si riesce a fare l'update dei calcoli fatti sulla tabella di riferimento?..

Bepi

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.