Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Utilisation de Zselect

0000001530     -      04/01/2025

L'Api de Mercator présente dans MercatorTunnel.dll contient une fonction Zselect. Cette fonction contient un grand nombre de possibilités d'appels et permet de simplifier de façon importante le code à écrire pour obtenir un dataset à partir d'une extraction de données dans la base de données SQL de Mercator.

Le premier paramètre à passer à cette fonction doit reprendre une information permettant de se connecter au serveur SQL, au choix

  • une string contenant le répertoire des données de Mercator (REP_DATA) : Mercator y lira tous les paramètres nécessaires et effectuera la connexion SQL (la connexion sera automatiquement fermée après l'appel de Zselect)
  • un object de type MercatorSqlConnection (la connexion doit être établie avant l'appel de Zselect et ne sera pas fermée après l'appel)

Le second paramètre doit contenir,

  • soit une chaîne de caractères contenant la requête SQL
  • soit un objet de type SqlCommand

Exemple :

DataSet ds = Api.Zselect(repData, "select * from users (NOLOCK) order by nom");

Dans le cas où le premier paramètre est le répertoire des données de Mercator, il est possible de passer jusque 9 paramètres supplémentaires contenant les paramètres éventuels à passer à la requête SQL. Ces paramètres doivent être un objet de type MercatorSqlParam.

De plus, toute une série de signatures sont disponibles :

Zoom
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, List<MercatorSqlParam> listPp);
public static DataSet Zselect(MercatorSqlConnection conn, SqlTransaction transac, string reqSql, List<MercatorSqlParam> listPp);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, List<MercatorSqlParam> listPp, SqlTransaction Transaction);
public static DataSet Zselect(SqlConnection conn, SqlCommand Comm);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7, MercatorSqlParam p8);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7, MercatorSqlParam p8, MercatorSqlParam p9);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, List<MercatorSqlParam> listPp);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam[] pp);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam[] pp);
public static List<T> Zselect<T>(MercatorSqlConnection conn, string reqSql, List<MercatorSqlParam> listPp);
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam[] pp, SqlTransaction Transaction, bool withSchema);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7, MercatorSqlParam p8, MercatorSqlParam p9);         
public static DataSet Zselect(SqlConnection conn, SqlCommand cmd, MercatorSqlParam[] pp, SqlTransaction Transaction);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7, MercatorSqlParam p8);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7);
public static DataSet Zselect(string repData, string reqSql);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2);
public static DataSet Zselect(MercatorSqlConnection conn, string reqSql);
public static DataSet Zselect(string repData, SqlCommand cmd);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam[] pp, bool withSchema);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam[] pp);
public static DataSet Zselect(string repData, string reqSql, List<MercatorSqlParam> listPp, bool withSchema);
public static DataSet Zselect(string repData, string reqSql, List<MercatorSqlParam> listPp);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7, MercatorSqlParam p8, MercatorSqlParam p9);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7, MercatorSqlParam p8);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6, MercatorSqlParam p7);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5, MercatorSqlParam p6);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3, MercatorSqlParam p4, MercatorSqlParam p5);
public static DataSet Zselect(string repData, string reqSql, MercatorSqlParam p1, MercatorSqlParam p2, MercatorSqlParam p3);

Cette méthode existe aussi en version asynchrone : ZselectAsync.


Utilisation de MercatorSqlParam

Cette classe d'objet dispose de 2 constructeurs différents :

  • Premier constucteur :
    • Nom du paramètre : commençant toujours par @
    • Valeur du paramètre
    • Type du paramètre (SqlDbType)
  • Second constucteur :
    • Nom du paramètre : commençant toujours par @
    • Valeur du paramètre
    • Type du paramètre (SqlDbType)
    • Longueur pour le type (int)

Exemple:

string reqsql = "select * from cli where (c_nom=@NOM) and (c_codep=@CODEP) and (c_id<>@ID)";
DataSet ds = Api.Zselect(rep_data, reqsql, new MercatorSqlParam("@NOM", nom, SqlDbType.VarChar),
                                           new MercatorSqlParam("@CODEP", codep, SqlDbType.Char),
                                           new MercatorSqlParam("@ID", id, SqlDbType.Char, 10));


Voir aussi la méthode Zselect<T>().