Procedure d'envoi des paramètres d'un tri sur un datagrid dans une requete

Contenu du snippet

Après 2 jrs de recherche j'étais obligé de créer ma propre procédure qui me permet d'envoyer une requête vers impression (à l'aide de Crystal report) mais en passant les paramètres de tri effectué par l'utilisateur lui-même

Source / Exemple :


'***********************************
	'*****Développé par kacen ayoub*****     
	'***********plus d'infos************
	'*******ayoub.kacen@gmail.com*******
	'***********************************
	
	
	module procedure
	
	'ont passe comme parametre la requete a executer ainsi que la datagrid sur laquel le tri est effectué
	Public Function tri_iprim(ByVal affiche As DataGridView, ByVal requete As String) As String
	'création de la collection dans la quel ont va stoquer les differents nom de champ de la table dans la base de donnée
	dim collect_name as new collection 

		'retour sql est la requete qui serait retournai apres l'appel de cette fonction 
        Dim retour_sql As String
		
		' juste un compteur pour videz la collection si elle est declarer comme collection public
        Dim num As Integer
		
		
		
        num = collect_name.Count
		'videz la collection
		
        While num > 0
            collect_name.Remove(num)
            num = num - 1
        End While
		
		'fin de vidage
		'initiaisation de la requete retournée
        retour_sql = requete
        Dim dt As DataTable
        dt = tools.chargementdatatable(retour_sql)
       
        Dim jj As Integer
        jj = 0
		
		'remplissage de la collection par les nom des champs récupéré
        While jj < affiche.ColumnCount + 1
            Try
                jj = jj + 1
                collect_name.Add(dt.Columns.Item(jj).ColumnName)
            Catch ex As Exception

            End Try

        End While
		'verification si un tri a été effectué si oui  on procede a la modification de requuete sinon on retourne lla requete elle meme
		
        If affiche.SortOrder <> "0" Then
            Try
                Dim ii As Integer
                Dim val As String = ""
                ii = affiche.SortedColumn.Index
                val = affiche.SortOrder.ToString
'recherche du bon objet de la collection a l'aide de l'index de la colone trie
                retour_sql = retour_sql + " order by " + collect_name(ii).ToString
'recuperation du type de tri soit ascendant soit descendant
                If val = "Ascending" Then
                    retour_sql = retour_sql + " asc"

                Else
                    retour_sql = retour_sql + " desc"
                End If

            Catch ex As Exception

            End Try
        Else
            
        End If
    

        Return retour_sql

    End Function

End Module

Conclusion :


l'appel de cette fonction en passant les paramètres requêtes et datagrid va permettre de récupérer le tri effectuer sur la datagrid et envoyer le paramètre de tri en l'insérant dans la requête existante

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.