public static void GenerateType2NEC2()
{
int remainingPairs = GetRemainingPairsNEC(1);
Random randomGenerator = new Random();
MySqlConnection connection = new MySqlConnection(FISAdmin.Database.ConnectionString);
MySqlCommand selectCommand = new MySqlCommand("face-image-survey.SelectForTransaction2_NEC2", connection);
MySqlCommand insertCommand = new MySqlCommand("face-image-survey.InsertForTransaction2_NEC2", connection);
try
{
selectCommand.CommandType = CommandType.StoredProcedure;
insertCommand.CommandType = CommandType.StoredProcedure;
selectCommand.Parameters.Add("subjectid", MySqlDbType.Int32); // 0 - subjectid
selectCommand.Parameters.Add("datasetid", MySqlDbType.Int32); // 1 - datasetid
selectCommand.Parameters.Add("img1", MySqlDbType.VarChar, 256); // 2 - img1
selectCommand.Parameters.Add("img2", MySqlDbType.VarChar, 256); // 3 - img2
selectCommand.Parameters.Add("img3", MySqlDbType.VarChar, 256); // 4 - img3
selectCommand.Parameters.Add("img4", MySqlDbType.VarChar, 256); // 5 - img4
selectCommand.Parameters.Add("vst1", MySqlDbType.Int32); // 6 - vst1
selectCommand.Parameters.Add("vst2", MySqlDbType.Int32); // 7 - vst2
selectCommand.Parameters.Add("vst3", MySqlDbType.Int32); // 8 - vst3
selectCommand.Parameters.Add("vst4", MySqlDbType.Int32); // 9 - vst4
selectCommand.Parameters[0].Direction = ParameterDirection.Output;
selectCommand.Parameters[1].Direction = ParameterDirection.Output;
selectCommand.Parameters[2].Direction = ParameterDirection.Output;
selectCommand.Parameters[3].Direction = ParameterDirection.Output;
selectCommand.Parameters[4].Direction = ParameterDirection.Output;
selectCommand.Parameters[5].Direction = ParameterDirection.Output;
selectCommand.Parameters[6].Direction = ParameterDirection.Output;
selectCommand.Parameters[7].Direction = ParameterDirection.Output;
selectCommand.Parameters[8].Direction = ParameterDirection.Output;
selectCommand.Parameters[9].Direction = ParameterDirection.Output;
connection.Open();
//int iteration = 0;
for (int index = 0; index < remainingPairs; index++)
{
selectCommand.ExecuteNonQuery();
if (selectCommand.Parameters[6].Value.Equals(null) == false)
{
int visit1 = (int)selectCommand.Parameters[6].Value;
int visit2 = (int)selectCommand.Parameters[6].Value;
int index2 = 6;
while ((visit1 == visit2 || visit2 == 0) && index2 < 9)
{
index2++;
visit2 = (int)selectCommand.Parameters[index2].Value;
//iteration++;
//System.Windows.Forms.MessageBox.Show("Visit1: " + visit1 + "\nVisit2: " + visit2 + "\nIndex2: " + index2 + "\n\nIteration: " + iteration + "\nIndex: " + index2);
}//while
if (visit1 != visit2 && visit2 != 0)
{
int dataset = (int)selectCommand.Parameters[1].Value;
int subjectid = (int)selectCommand.Parameters[0].Value;
string image1 = (string)selectCommand.Parameters[2].Value;
string image2 = (string)selectCommand.Parameters[index2 - 4].Value;
insertCommand.Parameters.Add("img1", MySqlDbType.VarChar, 256); //0 - image 1
insertCommand.Parameters.Add("subj1", MySqlDbType.Int32); //1 - subject 1
insertCommand.Parameters.Add("ds1", MySqlDbType.Int32); //2 - dataset 1
insertCommand.Parameters.Add("img2", MySqlDbType.VarChar, 256); //3 - image 2
insertCommand.Parameters[0].Direction = ParameterDirection.Input;
insertCommand.Parameters[1].Direction = ParameterDirection.Input;
insertCommand.Parameters[2].Direction = ParameterDirection.Input;
insertCommand.Parameters[3].Direction = ParameterDirection.Input;
insertCommand.Parameters[0].Value = image1;
insertCommand.Parameters[1].Value = subjectid;
insertCommand.Parameters[2].Value = dataset;
insertCommand.Parameters[3].Value = image2;
insertCommand.ExecuteNonQuery();
insertCommand.Parameters.Clear();
}//if
else
index--;
}//if
}//for
}//try
catch (Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message + "\n\n" + ex.StackTrace); }
//catch (Exception ex) { throw new Exception(ex.Message, ex); }
finally
{
connection.Close();
selectCommand.Dispose();
insertCommand.Dispose();
connection.Dispose();
}//finally
}//public static void GenerateType2NEC2()