348 messaggi dal 10 marzo 2013
Buongiorno a tutti.
Dal titolo può sembrare poco chiaro, ma provo a spiegarmi meglio.

Ho bisogno di fare in modo che, quando un'utente inserisce dei dati, quest'ultimo prima di poterli stampare, debba passare per la conferma dell'amministratore.
Ho pensato ad una ckeckbox sulla gridview una volta spuntata quest'ultima allora l'utente può utilizzare i dati per gli scopi opportuni.
Sto facendo bene ho avete altre soluzioni da suggerirmi?
Grazie a tutti
256 messaggi dal 30 novembre 2004
Dipende da quante volte deve poter vedere i dati e se ogni volta ha bisogno dell'autorizzazione.
Altrimenti potresti pensare anche ad un pannello di gestione dei permessi per utente e per area.

Ovvero ho un elenco delle aree e per ogni area ho i permessi CRUD.
Per ogni utente posso assegnare il permesso per ogni operazione CRUD per ogni area.
348 messaggi dal 10 marzo 2013
Ciao. Gli accessi sono gia controllati, nel senso ognuno a la sua area con dei permessi limitati o totali in base al ruolo( spero di averti capito), quello che serve a me è questo:
Tu entri dopo esserti loggato, inserisci dei dati anagrafici (esempio), ma per quei dati che tu hai inserito io devo verificare siano corretti, e tu devi sapere che io ho verificato. Per questo pensavo ad una spunta su una checkbox.
Ovviamente l checkbox a te deve essere solo visibile, ma non devi poterla ‘flaggare’, quella è un’opzione solo dell’amministratore.
Grazie per l’aiuto spero di essermi spiegato meglio.
256 messaggi dal 30 novembre 2004
Si capito, una checkbox va benissimo, ti conservi il dato nel db con ora di validazione.
Poi volendo puoi inviare sia la mail all'Admin quando vengono inseriti per dirgli che li deve validare e viceversa all'utente quando l'admin li valida.

Poi nel caso questi dati possono anche essere non validi, potresti pensare ad un campo note dove semmai l'admin dice perchè non sono validi.
348 messaggi dal 10 marzo 2013
Grazie 1000 per l’aiuto, faro cosi
Saluti
Modificato da Oiram il 09 aprile 2020 08:35 -
348 messaggi dal 10 marzo 2013
Allora ho aggiunto la checkbox ma ho un'altro piccolo problema che non riesco a risolvere in nessun modo,
se qualcuno avesse suggerimenti sarebbero graditi.
Allora Aggiungo la validazione (flaggo la checkbox) funziona, ma avrei bisogno di aggiornare piu tabelle contemporaneamente. Il codice che sto usando è il seguente:

Protected Sub Convailda_Click(sender As Object, e As EventArgs) Handles Convailda.Click
        Dim Elementivalidati As Boolean = False
        'Dim StrNomeCartella As String = "~/Temp/RinnovoPro/" & Now.ToString("HH_mm_ss") & "/"
        For Each riga As GridViewRow In GridView1.Rows
            Dim ChbConvalida As WebControls.CheckBox = riga.FindControl("ChbConvalida")
            If ChbConvalida.Checked Then
                Dim HdnValidation As WebControls.HiddenField = riga.FindControl("HdnValidation")
                Dim IdRinnovoPro As Integer = HdnValidation.Value
                Dim IdTrainer As Integer = HdnValidation.Value
                '       GeneraPDF(IdRinnovoPro, StrNomeCartella)
                Elementivalidati = True
                Dim queryString As String = "UPDATE  V_StampaRinnovoPro set Convalida = 1 WHERE IdRinnovoPro = " & IdRinnovoPro  
                Dim querystring1 As String = "UPDATE T_Professional set Convalida = 1 WHERE IdTrainer = " & IdTrainer
                Dim cmd As New SqlCommand(queryString, conn)
                conn.Open()
                cmd.ExecuteNonQuery()
                conn.Close()

            End If
        Next


su questa tabella (che poi è una vista) l'aggiornamento avviene correttamente Dim queryString As String = "UPDATE V_StampaRinnovoPro set Convalida = 1 WHERE IdRinnovoPro = " & IdRinnovoPro

Su questa non ho nessun errore ma non succede nulla Dim querystring1 As String = "UPDATE T_Professional set Convalida = 1 WHERE IdProfessional = " & IdProfessional

Questo è il code behind
<asp:TemplateField HeaderText="Validation">
     <ItemTemplate>
         <asp:HiddenField ID="HdnValidation" runat="server" Value='<%#Eval("IdProfessional") %>'/>
     <asp:CheckBox ID="ChbConvalida" runat="server" />
         </ItemTemplate>
 </asp:TemplateField>
            


Grazie a tutti
256 messaggi dal 30 novembre 2004
Come puoi notare:
Dim queryString As String = "UPDATE  V_StampaRinnovoPro set Convalida = 1 WHERE IdRinnovoPro = " & IdRinnovoPro  
                Dim querystring1 As String = "UPDATE T_Professional set Convalida = 1 WHERE IdTrainer = " & IdTrainer
                Dim cmd As New SqlCommand(queryString, conn)
                conn.Open()
                cmd.ExecuteNonQuery()
                conn.Close()


Il command Dim cmd As New SqlCommand(queryString, conn) si rifetisce solo a queryString e queryString1 non c'è da nessuna parte
prova così:

Dim queryString As String = "UPDATE  V_StampaRinnovoPro set Convalida = 1 WHERE IdRinnovoPro = " & IdRinnovoPro  
                Dim querystring1 As String = "UPDATE T_Professional set Convalida = 1 WHERE IdTrainer = " & IdTrainer
                Dim cmd As New SqlCommand(queryString1, conn)
Dim cmd1 As New SqlCommand(queryString, conn)
                conn.Open()
                cmd.ExecuteNonQuery()
cmd1.ExecuteNonQuery()
                conn.Close()
348 messaggi dal 10 marzo 2013
Apportata la modifica da te suggerita ma continua con lo stesso problema: nessun errore, ma scrive sempre e solo su una tabella e non su tutte e due come vorrei.
è possibile che il problema sia dovuto al fatto che ho usato degli alias di tabella nella Vista da dove recupero i dati e che poi per scrivere su una delle 2 tabelle uso i nomi originali?

<asp:TemplateField HeaderText="Validation">
     <ItemTemplate>
         <asp:HiddenField ID="HdnValidation" runat="server" Value='<%#Eval("IdTrainer") %>'/>
     <asp:CheckBox ID="ChbConvalida" runat="server" />
         </ItemTemplate>
 </asp:TemplateField>


In Realta IdTrainer è un Alias IdProfessional.
Ma se uso IdProfessional mi va in errore usando Id Trainer non succede nulla.
A questo punto non so fare le query usando gli alias.

  Protected Sub Convailda_Click(sender As Object, e As EventArgs) Handles Convailda.Click
        Dim Elementivalidati As Boolean = False
        'Dim StrNomeCartella As String = "~/Temp/RinnovoPro/" & Now.ToString("HH_mm_ss") & "/"
        For Each riga As GridViewRow In GridView1.Rows
            Dim ChbConvalida As WebControls.CheckBox = riga.FindControl("ChbConvalida")
            If ChbConvalida.Checked Then
                Dim HdnValidation As WebControls.HiddenField = riga.FindControl("HdnValidation")
                Dim IdRinnovoPro As Integer = HdnValidation.Value
                Dim IdProfessional As Integer = HdnValidation.Value
                '       GeneraPDF(IdRinnovoPro, StrNomeCartella)
                Elementivalidati = True
                Dim queryString As String = "UPDATE  V_StampaRinnovoPro set Convalida = 1 WHERE IdRinnovoPro = " & IdRinnovoPro
                Dim querystring1 As String = "UPDATE T_Professional set Convalida = 1 WHERE IdProfessional = " & IdProfessional
                Dim cmd As New SqlCommand(queryString, conn)
                Dim cmd1 As New SqlCommand(querystring1, conn)
                conn.Open()
                cmd.ExecuteNonQuery()
                cmd1.ExecuteNonQuery()
                conn.Close()

            End If
        Next

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.