private void generateReportToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SupplierBL BL = new SupplierBL();
            SupplierBO BO = new SupplierBO();

            RecBO = new RecipeBO();
            RecBL = new RecipeBL();
            IngBO = new IngredientBO();
            IngBL = new IngredientBL();
            CatBO = new CateringBO();
            CatBL = new CateringBL();
            if (reportType == "PO")
            {
                DataTable eventdetail;
                DataTable eventDishes;
                DataTable dishesrecipe;
                DataTable Others = new DataTable();
                Others.Columns.Add("1");
                Others.Columns.Add("2");
                Others.Columns.Add("3");
                Others.Columns.Add("4");
                Others.Columns.Add("5");
                Others.Columns.Add("6");
                DataTable ingredients = new DataTable();
                ingredients.Columns.Add("1", typeof(String));
                ingredients.Columns.Add("2");
                ingredients.Columns.Add("3");
                ingredients.Columns.Add("4");
                ingredients.Columns.Add("5");
                ingredients.Columns.Add("6");
                ingredients.PrimaryKey = new DataColumn[] { ingredients.Columns["1"] };
                DataTable popoy = new DataTable();
                popoy.Columns.Add("name", typeof(String));
                popoy.Columns.Add("2");
                popoy.Columns.Add("3");
                popoy.Columns.Add("4");
                popoy.Columns.Add("5");
                popoy.Columns.Add("6");
                popoy.Columns.Add("7");
                DataTable cdad = new DataTable();
                cdad.Columns.Add("name", typeof(String));
                cdad.Columns.Add("2");
                cdad.Columns.Add("3");
                cdad.Columns.Add("4");
                cdad.Columns.Add("5");
                cdad.Columns.Add("6");
                cdad.Columns.Add("7");
                DataTable supps = new DataTable();
                supps.Columns.Add("name", typeof(String));
                supps.Columns.Add("2");
                supps.Columns.Add("3");
                supps.Columns.Add("4");
                supps.Columns.Add("5");
                supps.Columns.Add("6");
                supps.Columns.Add("7");
                List <string> Categories = new List <string>();
                DataTable     Excel      = new DataTable();
                Excel.Columns.Add("1");
                Excel.Columns.Add("2");
                Excel.Columns.Add("3");
                Excel.Columns.Add("4");
                Excel.Columns.Add("5");
                Excel.Columns.Add("6");
                Excel.Columns.Add("7");
                Excel.Columns.Add("8");
                string         pax             = "";
                int            categoryshower  = 0;
                int            categoryshowerO = 0;
                string         lastCat         = "";
                string         lastCatOther    = "";
                List <double>  popoyP          = new List <double>();
                List <double>  cdadP           = new List <double>();
                List <double>  suppP           = new List <double>();
                List <double>  popoyPO         = new List <double>();
                List <double>  cdadPO          = new List <double>();
                List <double>  suppPO          = new List <double>();
                List <decimal> Total           = new List <decimal>();
                List <string>  nameEvents      = new List <string>();
                string         typeofservice   = "";
                string         category        = "";
                int            eventcount      = 0;
                double         popoyFP         = 0;
                double         cdadFP          = 0;
                double         suppFP          = 0;
                string         guestType       = "";
                int            indicator       = 0;
                decimal        OverAll         = 0;
                int            categorysorter  = 0;
                int            counter         = 0;
                eventcount = passedDt.Rows.Count;
                int       foreachcutter = 0;
                string    sampleevent   = "";
                int       showfirst     = 1;
                DataTable suppliers     = new DataTable();
                suppliers.Columns.Add("Supp");
                foreach (DataRow supp in BL.getSupplier().Rows)
                {
                    suppliers.Rows.Add(supp.ItemArray[0].ToString());
                }
                foreach (DataRow events in passedDt.Rows)
                {
                    nameEvents.Add(events.ItemArray[1].ToString());
                }
                foreach (DataRow passed in passedDt.Rows)
                {
                    #region oldcode

                    #endregion
                    sampleevent = passed.ItemArray[1].ToString();
                    if (selectedcatID != "")
                    {
                        CatBO.catID = passed.ItemArray[0].ToString();
                        foreach (DataRow item in CatBL.getCategoryOfRecipes(CatBO).Rows)
                        {
                            Categories.Add(item.ItemArray[0].ToString());
                        }
                        eventdetail = CatBL.getCatDetail(CatBO);
                        foreach (DataRow row in eventdetail.Rows)
                        {
                            vip              = vip + Convert.ToInt32(row.ItemArray[3].ToString());
                            guest            = guest + Convert.ToInt32(row.ItemArray[4].ToString());
                            kids             = kids + Convert.ToInt32(row.ItemArray[5].ToString());
                            crew             = crew + Convert.ToInt32(row.ItemArray[6].ToString());
                            Other            = Other + Convert.ToInt32(row.ItemArray[7].ToString());
                            typeofservice    = row.ItemArray[12].ToString();
                            contractfilename = row.ItemArray[1].ToString();
                            if (showfirst == eventcount)
                            {
                                Excel.Rows.Add("P.O Of Ingredients", "", "", "", "");
                                Excel.Rows.Add("", "", "");
                                Excel.Rows.Add("No. Of event selected : " + eventcount, "", "", "", "", "", "", "");
                                Excel.Rows.Add("List of event selected : ", "", "", "", "", "", "", "");
                                foreach (string eventnames in nameEvents)
                                {
                                    Excel.Rows.Add("  " + eventnames, "(" + row.ItemArray[9].ToString() + ")", "", "", "", "", "", "");
                                }
                                Excel.Rows.Add("", "", "", "", "");
                                Excel.Rows.Add(guest + " Guest, " + vip + " Vip, " + kids + " Kids", "", "", "", "", "");
                                Excel.Rows.Add(crew + " Crew, " + Other + " Other", "", "", "", "", "");
                                Excel.Rows.Add("", "", "", "", "");
                                Excel.Rows.Add("Ingredient", "Quantity", " Budget");
                            }
                            showfirst++;
                        }
                        int rowcounter = 0;
                        categorysorter = Categories.Count();
                        string recid = "";
                        while (counter < categorysorter)
                        {
                            CatBO.catID    = passed.ItemArray[0].ToString();
                            CatBO.category = Categories[counter];
                            eventDishes    = CatBL.getCateringDish(CatBO);
                            foreach (DataRow row in eventDishes.Rows)
                            {
                                category     = row.ItemArray[2].ToString();
                                guestType    = row.ItemArray[0].ToString();
                                RecBO.recipe = row.ItemArray[1].ToString();
                                foreach (DataRow rec in RecBL.searchRecipeByName(RecBO).Rows)
                                {
                                    recid = rec.ItemArray[0].ToString();
                                }
                                CatBO.recipeid = recid;
                                CatBO.guest    = row.ItemArray[0].ToString();
                                dishesrecipe   = CatBL.getRecipeNameAndFormulaAndPrice(CatBO);
                                foreach (DataRow ing in dishesrecipe.Rows)
                                {
                                    string paxx = row.ItemArray[3].ToString();
                                    rowcounter++;
                                    string  ins = ing[0].ToString();
                                    decimal b   = getPrice(ing.ItemArray[1].ToString(), paxx);
                                    if (typeofservice == "Plated" && category == "Main dish")
                                    {
                                        b = b * Properties.Settings.Default.Plated;
                                    }
                                    //decimal b = getPrice(ing.ItemArray[1].ToString(), paxx);
                                    if (ingredients.Rows.Contains(ins))
                                    {
                                        for (int i = 0; i < ingredients.Rows.Count; i++)
                                        {
                                            string temp = ingredients.Rows[i][0].ToString();
                                            if (ins == temp)
                                            {
                                                ingredients.Rows[i][2] = Convert.ToDecimal(ingredients.Rows[i][2].ToString()) + b;
                                                i = ingredients.Rows.Count;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        ingredients.Rows.Add(ing[0].ToString(), ing[2].ToString(), b);
                                    }
                                }
                            }
                            categoryshower = categoryshower + 1;
                            counter        = counter + 1;
                            indicator      = indicator + 1;
                        }
                    }
                }
                if (indicator != 0)
                {
                    Excel.Rows.Add("", "", "", "", "", "");
                    categoryshower = 0;
                    counter        = counter + 1;
                    DataView ingredientSorted = new DataView(ingredients);
                    ingredientSorted.Sort = "[1] ASC";
                    foreach (DataRow supplier in suppliers.Rows)
                    {
                        Excel.Rows.Add(supplier.ItemArray[0].ToString().ToUpper(), "", "");
                        foreach (DataRowView ingredient in ingredientSorted)
                        {
                            IngBO.ing = ingredient[0].ToString();
                            DataTable dt         = IngBL.searchIngredientReturnPrice(IngBO);
                            string    suppliedby = ingredient[1].ToString();
                            if (supplier.ItemArray[0].ToString() == suppliedby)
                            {
                                foreach (DataRow price in dt.Rows)
                                {
                                    Total.Add(Convert.ToDecimal(ingredient[2].ToString()) * Convert.ToDecimal(price.ItemArray[4].ToString()));
                                    Excel.Rows.Add(" " + ingredient[0].ToString(), ingredient[2].ToString() + " " + price.ItemArray[2].ToString(), "P " + (Convert.ToDecimal(ingredient[2].ToString()) * Convert.ToDecimal(price.ItemArray[4].ToString())).ToString("0.##"));
                                }
                            }
                        }
                        Excel.Rows.Add("", "", "");
                        Excel.Rows.Add("Budget for " + supplier.ItemArray[0].ToString(), "", "P " + (Total.Sum()).ToString("0.##"));
                        Excel.Rows.Add("", "", "");
                        Excel.Rows.Add("", "", "");
                        OverAll = OverAll + Total.Sum();
                        Total.Clear();
                    }
                    vip       = 0;
                    guest     = 0;
                    kids      = 0;
                    crew      = 0;
                    Other     = 0;
                    indicator = 0;
                    Excel.Rows.Add("", "Grand Total", "P " + OverAll.ToString("0.##"));
                    diagReport menu = new diagReport(Excel, "PO");
                    menu.Show();
                }
                else
                {
                    MessageBox.Show("Select a event first!");
                }
            }
            else if (reportType == "Summary")
            {
                DataTable     dt        = new DataTable();
                DataTable     amounts   = new DataTable();
                DataTable     suppliers = BL.getSupplier();
                List <string> supps     = new List <string>();
                dt.Columns.Add("1");
                dt.Columns.Add("2");
                dt.Columns.Add("3");
                dt.Columns.Add("4");
                dt.Columns.Add("5");
                dt.Columns.Add("6");
                dt.Columns.Add("7");
                dt.Columns.Add("8");
                dt.Columns.Add("9");
                dt.Columns.Add("10");
                dt.Columns.Add("11");
                dt.Columns.Add("12");
                dt.Columns.Add("13");
                dt.Columns.Add("14");
                dt.Columns.Add("15");
                dt.Columns.Add("16");
                dt.Columns.Add("17");
                dt.Columns.Add("18");
                dt.Columns.Add("19");
                dt.Columns.Add("20");
                dt.Columns.Add("21");
                dt.Columns.Add("22");
                List <decimal> totalExp = new List <decimal>();
                var            tExp     = new Dictionary <string, decimal>();
                int            count    = 0;
                for (int i = 0; i < 20; i++)
                {
                    supps.Add("");
                    totalExp.Add(0);
                }
                CatBL = new CateringBL();
                CatBO = new CateringBO();
                decimal exp         = 0;
                string  collectedid = "";
                int     countif1    = 0;
                foreach (DataRow eventids in passedDt.Rows)
                {
                    if (countif1 == 0)
                    {
                        collectedid = eventids.ItemArray[0].ToString();
                        countif1++;
                    }
                    else
                    {
                        collectedid = collectedid + "," + eventids.ItemArray[0].ToString();
                    }
                }
                CatBO.catID = collectedid;
                DataTable disec         = CatBL.showReportByEvent(CatBO);
                string    showonce      = "";
                int       numberofevent = disec.Rows.Count;
                foreach (DataRow nameOfSupplier in suppliers.Rows)
                {
                    tExp.Add(nameOfSupplier.ItemArray[0].ToString(), 0);
                    supps[count] = (nameOfSupplier.ItemArray[0].ToString());
                    count++;
                }
                count = 0;
                int diff      = supps.Count - tExp.Count;
                int supptigil = tExp.Count;
                for (int i = 0; i < diff; i++)
                {
                    tExp.Add("Vacant" + (i + 1), 0);
                    supps[supptigil] = ("Vacant" + (i + 1));
                    supptigil++;
                }
                dt.Rows.Add("", supps[0], supps[1], supps[2], supps[3], supps[4], supps[5], supps[6], supps[7], supps[8], supps[9], supps[10], supps[11], supps[12], supps[13], supps[14], supps[15], supps[16], supps[17], supps[18], supps[19], "Total Expense");
                foreach (DataRow eventdetail in disec.Rows)
                {
                    dt.Rows.Add(eventdetail.ItemArray[5].ToString());
                    if (showonce == eventdetail.ItemArray[5].ToString() && dt.Rows.Count != 0)
                    {
                        dt.Rows.RemoveAt(dt.Rows.Count - 1);
                    }
                    showonce = eventdetail.ItemArray[5].ToString();
                    catid    = eventdetail.ItemArray[8].ToString();
                    BO.catid = catid;
                    amounts  = BL.getSupplierBudget(BO);
                    foreach (DataRow amount in amounts.Rows)
                    {
                        totalExp[count] = (Convert.ToDecimal(amount.ItemArray[2].ToString()));
                        tExp[amount.ItemArray[1].ToString()] = (Convert.ToDecimal(amount.ItemArray[2].ToString()));
                        count++;
                    }

                    dt.Rows.Add(eventdetail.ItemArray[2].ToString() + " (" + eventdetail.ItemArray[3].ToString() + ")(" + eventdetail.ItemArray[6].ToString() + ")(" + eventdetail.ItemArray[7].ToString() + ")", "P " + tExp[supps[0]], "P " + tExp[supps[1]], "P " + tExp[supps[2]], "P " + tExp[supps[3]], "P " + tExp[supps[4]], "P " + tExp[supps[5]], "P " + tExp[supps[6]], "P " + tExp[supps[7]], "P " + tExp[supps[8]], "P " + tExp[supps[9]], "P " + tExp[supps[10]], "P " + tExp[supps[11]], "P " + tExp[supps[12]], "P " + tExp[supps[13]], "P " + tExp[supps[14]], "P " + tExp[supps[15]], "P " + tExp[supps[16]], "P " + tExp[supps[17]], "P " + tExp[supps[18]], "P " + tExp[supps[19]], "P " + totalExp.Sum().ToString("0.##"));
                    exp = exp + totalExp.Sum();
                    totalExp.Clear();
                    for (int i = 0; i < 20; i++)
                    {
                        totalExp.Add(0);
                        supps.Add("");
                    }
                    count = 0;
                }
                dt.Rows.Add("Number of Events : " + numberofevent, "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "Total Expense: ", "P " + exp);
                OverallReport cr   = new OverallReport();
                diagReport    diag = new diagReport(dt, "OverallReport");
                diag.Show();
            }
        }
示例#2
0
        private void dateTimePicker2_ValueChanged(object sender, EventArgs e)
        {
            SupplierBL BL = new SupplierBL();
            SupplierBO BO = new SupplierBO();

            RecBO = new RecipeBO();
            RecBL = new RecipeBL();
            IngBO = new IngredientBO();
            IngBL = new IngredientBL();
            CatBO = new CateringBO();
            CatBL = new CateringBL();
            DataTable eventdetail;
            DataTable eventDishes;
            DataTable dishesrecipe;
            DataTable Others = new DataTable();

            Others.Columns.Add("1");
            Others.Columns.Add("2");
            Others.Columns.Add("3");
            Others.Columns.Add("4");
            Others.Columns.Add("5");
            Others.Columns.Add("6");
            DataTable ingredients = new DataTable();

            ingredients.Columns.Add("1", typeof(String));
            ingredients.Columns.Add("2");
            ingredients.Columns.Add("3");
            ingredients.Columns.Add("4");
            ingredients.Columns.Add("5");
            ingredients.Columns.Add("6");
            ingredients.PrimaryKey = new DataColumn[] { ingredients.Columns["1"] };
            DataTable popoy = new DataTable();

            popoy.Columns.Add("name", typeof(String));
            popoy.Columns.Add("2");
            popoy.Columns.Add("3");
            popoy.Columns.Add("4");
            popoy.Columns.Add("5");
            popoy.Columns.Add("6");
            popoy.Columns.Add("7");
            DataTable cdad = new DataTable();

            cdad.Columns.Add("name", typeof(String));
            cdad.Columns.Add("2");
            cdad.Columns.Add("3");
            cdad.Columns.Add("4");
            cdad.Columns.Add("5");
            cdad.Columns.Add("6");
            cdad.Columns.Add("7");
            DataTable supps = new DataTable();

            supps.Columns.Add("name", typeof(String));
            supps.Columns.Add("2");
            supps.Columns.Add("3");
            supps.Columns.Add("4");
            supps.Columns.Add("5");
            supps.Columns.Add("6");
            supps.Columns.Add("7");
            List <string> Categories = new List <string>();
            DataTable     Excel      = new DataTable();

            Excel.Columns.Add("1");
            Excel.Columns.Add("2");
            Excel.Columns.Add("3");
            Excel.Columns.Add("4");
            Excel.Columns.Add("5");
            Excel.Columns.Add("6");
            Excel.Columns.Add("7");
            Excel.Columns.Add("8");
            string         pax             = "";
            int            categoryshower  = 0;
            int            categoryshowerO = 0;
            string         lastCat         = "";
            string         lastCatOther    = "";
            List <double>  popoyP          = new List <double>();
            List <double>  cdadP           = new List <double>();
            List <double>  suppP           = new List <double>();
            List <double>  popoyPO         = new List <double>();
            List <double>  cdadPO          = new List <double>();
            List <double>  suppPO          = new List <double>();
            List <decimal> Total           = new List <decimal>();
            List <string>  nameEvents      = new List <string>();
            string         typeofservice   = "";
            string         category        = "";
            int            eventcount      = 0;
            double         popoyFP         = 0;
            double         cdadFP          = 0;
            double         suppFP          = 0;
            string         guestType       = "";
            int            indicator       = 0;
            decimal        OverAll         = 0;
            int            categorysorter  = 0;
            int            counter         = 0;
            int            foreachcutter   = 0;
            string         sampleevent     = "";
            int            showfirst       = 0;
            DataTable      suppliers       = new DataTable();

            suppliers.Columns.Add("Supp");
            foreach (DataRow supp in BL.getSupplier().Rows)
            {
                suppliers.Rows.Add(supp.ItemArray[0].ToString());
            }
            CatBO.dateF = dateTimePicker1.Value.ToString("yyyy-MM-dd");
            CatBO.dateT = dateTimePicker2.Value.ToString("yyyy-MM-dd");
            if (comboBox1.Text == "Future event")
            {
                CatBO.Status = "ACTIVE";
            }
            else if (comboBox1.Text == "Past event")
            {
                CatBO.Status = "DONE";
            }
            else
            {
                CatBO.Status = "";
            }
            DataTable eventsdetails = CatBL.getCatDetailByPeriod(CatBO);

            eventcount = eventsdetails.Rows.Count;
            foreach (DataRow events in eventsdetails.Rows)
            {
                nameEvents.Add(events.ItemArray[1].ToString());
            }
            foreach (DataRow passed in eventsdetails.Rows)
            {
                sampleevent = passed.ItemArray[1].ToString();
                CatBO.catID = passed.ItemArray[0].ToString();
                foreach (DataRow item in CatBL.getCategoryOfRecipes(CatBO).Rows)
                {
                    Categories.Add(item.ItemArray[0].ToString());
                }
                eventdetail = CatBL.getCatDetailByPeriod(CatBO);
                eventcount  = eventdetail.Rows.Count;
                foreach (DataRow row in eventdetail.Rows)
                {
                    vip              = vip + Convert.ToInt32(row.ItemArray[3].ToString());
                    guest            = guest + Convert.ToInt32(row.ItemArray[4].ToString());
                    kids             = kids + Convert.ToInt32(row.ItemArray[5].ToString());
                    crew             = crew + Convert.ToInt32(row.ItemArray[6].ToString());
                    Other            = Other + Convert.ToInt32(row.ItemArray[7].ToString());
                    typeofservice    = row.ItemArray[12].ToString();
                    contractfilename = row.ItemArray[1].ToString();
                    date             = row.ItemArray[9].ToString();
                    showfirst++;
                }
                if (showfirst == eventcount)
                {
                    Excel.Rows.Add("P.O Of Ingredients", "", "", "", "");
                    Excel.Rows.Add("", "", "");
                    Excel.Rows.Add("From: " + dateTimePicker1.Value.ToString("MM-dd-yyyy"), "", "");
                    Excel.Rows.Add("To: " + dateTimePicker2.Value.ToString("MM-dd-yyyy"), "", "");
                    Excel.Rows.Add("", "", "");
                    Excel.Rows.Add("No. Of event selected : " + nameEvents.Count(), "", "", "", "", "", "", "");
                    Excel.Rows.Add("List of event selected : ", "", "", "", "", "", "", "");
                    foreach (string eventnames in nameEvents)
                    {
                        Excel.Rows.Add("  " + eventnames, date, "", "", "", "", "", "");
                    }
                    Excel.Rows.Add("", "", "", "", "");
                    Excel.Rows.Add(guest + " Guest, " + vip + " Vip, " + kids + " Kids", "", "", "", "", "");
                    Excel.Rows.Add(crew + " Crew, " + Other + " Other", "", "", "", "", "");
                    Excel.Rows.Add("", "", "", "", "");
                    Excel.Rows.Add("Ingredient", "Quantity", " Budget");
                }
                int rowcounter = 0;
                categorysorter = Categories.Count();
                string recid = "";
                while (counter < categorysorter)
                {
                    CatBO.catID    = passed.ItemArray[0].ToString();
                    CatBO.category = Categories[counter];
                    eventDishes    = CatBL.getCateringDish(CatBO);
                    foreach (DataRow row in eventDishes.Rows)
                    {
                        category     = row.ItemArray[2].ToString();
                        guestType    = row.ItemArray[0].ToString();
                        RecBO.recipe = row.ItemArray[1].ToString();
                        foreach (DataRow rec in RecBL.searchRecipeByName(RecBO).Rows)
                        {
                            recid = rec.ItemArray[0].ToString();
                        }
                        CatBO.recipeid = recid;
                        CatBO.guest    = row.ItemArray[0].ToString();
                        dishesrecipe   = CatBL.getRecipeNameAndFormulaAndPrice(CatBO);
                        foreach (DataRow ing in dishesrecipe.Rows)
                        {
                            string paxx = row.ItemArray[3].ToString();
                            rowcounter++;
                            string  ins = ing[0].ToString();
                            decimal b   = getPrice(ing.ItemArray[1].ToString(), paxx);
                            if (typeofservice == "Plated" && category == "Main dish")
                            {
                                b = b * Properties.Settings.Default.Plated;
                            }
                            //decimal b = getPrice(ing.ItemArray[1].ToString(), paxx);
                            if (ingredients.Rows.Contains(ins))
                            {
                                for (int i = 0; i < ingredients.Rows.Count; i++)
                                {
                                    string temp = ingredients.Rows[i][0].ToString();
                                    if (ins == temp)
                                    {
                                        ingredients.Rows[i][2] = Convert.ToDecimal(ingredients.Rows[i][2].ToString()) + b;
                                        i = ingredients.Rows.Count;
                                    }
                                }
                            }
                            else
                            {
                                ingredients.Rows.Add(ing[0].ToString(), ing[2].ToString(), b);
                            }
                        }
                    }
                    categoryshower = categoryshower + 1;
                    counter        = counter + 1;
                    indicator      = indicator + 1;
                }
            }
            if (indicator != 0)
            {
                Excel.Rows.Add("", "", "", "", "", "");
                categoryshower = 0;
                counter        = counter + 1;
                DataView ingredientSorted = new DataView(ingredients);
                ingredientSorted.Sort = "[1] ASC";
                foreach (DataRow supplier in suppliers.Rows)
                {
                    Excel.Rows.Add(supplier.ItemArray[0].ToString().ToUpper(), "", "");
                    foreach (DataRowView ingredient in ingredientSorted)
                    {
                        IngBO.ing = ingredient[0].ToString();
                        DataTable dt         = IngBL.searchIngredientReturnPrice(IngBO);
                        string    suppliedby = ingredient[1].ToString();
                        if (supplier.ItemArray[0].ToString() == suppliedby)
                        {
                            foreach (DataRow price in dt.Rows)
                            {
                                Total.Add(Convert.ToDecimal(ingredient[2].ToString()) * Convert.ToDecimal(price.ItemArray[4].ToString()));
                                Excel.Rows.Add(" " + ingredient[0].ToString(), ingredient[2].ToString() + " " + price.ItemArray[2].ToString(), "P " + (Convert.ToDecimal(ingredient[2].ToString()) * Convert.ToDecimal(price.ItemArray[4].ToString())).ToString("0.##"));
                            }
                        }
                    }
                    Excel.Rows.Add("", "", "");
                    Excel.Rows.Add("Budget for " + supplier.ItemArray[0].ToString(), "", "P " + (Total.Sum()).ToString("0.##"));
                    Excel.Rows.Add("", "", "");
                    Excel.Rows.Add("", "", "");
                    OverAll = OverAll + Total.Sum();
                    Total.Clear();
                }
                Excel.Rows.Add("", "Grand Total", "P " + OverAll.ToString("0.##"));
                vip       = 0;
                guest     = 0;
                kids      = 0;
                crew      = 0;
                Other     = 0;
                indicator = 0;
                OverAll   = 0;
                CrystalReport2 cr = new CrystalReport2();
                cr.SetDataSource(Excel);
                crystalReportViewer1.ReportSource = cr;
            }
            else
            {
                MessageBox.Show("No event can be shown!");
            }
        }