Voici un code C# qui permet d'appeler la boîte de dialogue en question.
using (MercatorUi.Forms.Reporting.ReportingDialogs.AskRfs askRfs = new MercatorUi.Forms.Reporting.ReportingDialogs.AskRfs(false))
{
askRfs.ShowDialog(MercatorUi.Globals.iw);
if (askRfs.DialogResult == System.Windows.Forms.DialogResult.OK)
MercatorUi.Dialogs.Stop(askRfs.Sql);
}
Si on souhaite ne pas demander une fourchette de rayons / familles / sous-familles, mais saisir chaque fois une seule valeur, il faut passer le paramètre true à AskRfs.
La propriété Sql de AskRfs contient une clause SQL where correspondant au choix de l'utilisateur. Elle peut être récupérée pour être utilisée dans une requête SQL.
Si on souhaite utiliser les rayons, familles et sous-familles supplémentaires, il faut passer en sus ce paramètre :
using (MercatorUi.Forms.Reporting.ReportingDialogs.AskRfs askRfs = new MercatorUi.Forms.Reporting.ReportingDialogs.AskRfs(false, 2))