private void printHeadToHeadAwards()
        {
            String curFilterCmd = "", curSortCmd = "";
            String curPlcmtOrg = "", curPlcmtMethod = "Score";
            Int16 curNumPrelimRounds = 0;
            try {
                curNumPrelimRounds = Convert.ToInt16( numPrelimTextBox.Text );
            } catch {
                curNumPrelimRounds = 0;
            }
            if (myFilterCmd.Length > 0) {
            } else {
                curFilterCmd = "Round > " + curNumPrelimRounds;
            }

            curSortCmd = "Round ASC";
            if (plcmtTourButton.Checked) {
            } else {
                curSortCmd = "AgeGroup ASC, Round ASC";
            }
            curSortCmd += ", EventGroup ASC";
            if (rawScoreButton.Checked) {
                curSortCmd += ", ScoreSlalom DESC";
            } else if (pointsScoreButton.Checked) {
                curPlcmtMethod = "Points";
                curSortCmd += ", PointsSlalom DESC";
            } else {
                curSortCmd += ", ScoreSlalom DESC";
            }

            if (plcmtDivButton.Checked) {
                curPlcmtOrg = "div";
            } else {
                curPlcmtOrg = "tour";
            }

            PrintHeadToHeadAwards curPrintForm = new PrintHeadToHeadAwards();
            curPrintForm.PrintLandscape = true;
            curPrintForm.ReportHeader = "Head to Head Results";
            curPrintForm.DivInfoDataTable = getEventDivMaxMinSpeed();
            curPrintForm.TourRules = myTourRules;
            curPrintForm.TourName = (String)myTourRow["Name"];
            curPrintForm.TourPrelimRounds = curNumPrelimRounds;
            curPrintForm.TourEvent = "Slalom";
            curPrintForm.TourPlcmtOrg = curPlcmtOrg;
            curPrintForm.TourPlcmtMethod = curPlcmtMethod;

            #region Enhance scoring data with seeding (RunOrder) and seeding score (RankingScore)
            DataTable curEventRegDataTable = getEventRegData( curNumPrelimRounds, "Slalom" );

            mySummaryDataTable.DefaultView.Sort = curSortCmd;
            mySummaryDataTable.DefaultView.RowFilter = curFilterCmd;
            DataTable curShowDataTable = mySummaryDataTable.DefaultView.ToTable();
            DataColumn curCol = new DataColumn();
            curCol.ColumnName = "RunOrder";
            curCol.DataType = System.Type.GetType( "System.Int16" );
            curCol.AllowDBNull = false;
            curCol.ReadOnly = false;
            curCol.DefaultValue = 0;
            curShowDataTable.Columns.Add( curCol );

            curCol = new DataColumn();
            curCol.ColumnName = "RankingScore";
            curCol.DataType = System.Type.GetType( "System.Decimal" );
            curCol.AllowDBNull = false;
            curCol.ReadOnly = false;
            curCol.DefaultValue = 0;
            curShowDataTable.Columns.Add( curCol );

            DataRow[] curFindRows = null;
            String curMemberId = "", curAgeGroup = "";
            int curRound = 0;
            foreach (DataRow curRow in curShowDataTable.Rows) {
                curMemberId = (String)curRow["MemberId"];
                curAgeGroup = (String)curRow["AgeGroup"];
                curRound = (Int16)curRow["Round"];
                curFindRows = curEventRegDataTable.Select( "MemberId = '" + curMemberId + "' AND AgeGroup = '" + curAgeGroup + "' AND Round = " + curRound );
                if (curFindRows.Length > 0) {
                    try {
                        curRow["RunOrder"] = curFindRows[0]["RunOrder"];
                    } catch {
                        curRow["RunOrder"] = 0;
                    }
                    try {
                        curRow["RankingScore"] = curFindRows[0]["RankingScore"];
                    } catch {
                        curRow["RankingScore"] = 0;
                    }
                } else {
                    curRow["RunOrder"] = 0;
                    curRow["RankingScore"] = 0;
                }
            }
            curPrintForm.ShowDataTable = curShowDataTable;
            #endregion

            curPrintForm.Print();
        }
        private void printHeadToHeadAwards(String curTourPlcmtOrg ) {
            String curSortCmd = "";
            String curPlcmtMethod = "RunOrder";
            Int16 curRound = Convert.ToInt16( roundActiveSelect.RoundValue );
            Int16 curNumPrelimRounds = Convert.ToInt16( curRound - 1 );

            curSortCmd = "Round ASC";
            if (curTourPlcmtOrg.Equals( "div" )) {
                curSortCmd = "AgeGroup ASC, Round ASC";
            }
            curSortCmd += ", EventGroup ASC, RankingScore ASC";

            PrintHeadToHeadAwards curPrintForm = new PrintHeadToHeadAwards();
            curPrintForm.PrintLandscape = true;
            curPrintForm.ReportHeader = "Head to Head Running Order";
            curPrintForm.DivInfoDataTable = getEventDivMaxMinSpeed();
            curPrintForm.TourRules = myTourRules;
            curPrintForm.TourName = (String)myTourRow["Name"];
            curPrintForm.TourPrelimRounds = curNumPrelimRounds;
            curPrintForm.TourEvent = myEvent;
            curPrintForm.TourPlcmtOrg = curTourPlcmtOrg;
            curPrintForm.TourPlcmtMethod = curPlcmtMethod;
            curPrintForm.ShowDataTable = getEventRoundSkierOrder( curRound, curTourPlcmtOrg, "H2H" );
            curPrintForm.Print();
        }