Link to home
Start Free TrialLog in
Avatar of mathieu_cupryk
mathieu_cuprykFlag for Canada

asked on

loading indicator when a try fails.

I need to implement a loading indicator.

try
                {
                    cellPriceValue = ((Excel.Range)(inputRange.Cells[rowCount, pricesColumn]));
                    bool CheckNumeric = IsNumeric(cellPriceValue.Value2.ToString());

                    if (cellPriceValue.Value2.ToString().Length > 0 || cellPriceValue.Value2 != null)
                    {
                        if (cellPriceValue.Value2.ToString() == "Stones" || cellPriceValue.Value2.ToString() == "Tough")
                        {
                            currRow = rowCount + 1; //  skip a row to where the discounts are
                            break;
                        }

                        cellGradeValue = ((Excel.Range)(inputRange.Cells[rowCount, 15]));
                        gradeName = cellGradeValue.Value2.ToString();

                        InitialPrices.InitialPriceReportingServiceWS.InitialPriceReportingService WS = new InitialPrices.InitialPriceReportingServiceWS.InitialPriceReportingService();
                        int GradeCodeDetailID = 0;
                        string Status = null;
                        WS.GetGradeCodeDetailID(gradeName, ref  GradeCodeDetailID, ref Status);
                           
                        if (CheckNumeric)
                        {
                            Price = (decimal)cellPriceValue.Value2;
                            sum_prices += Price;
                         
                        }
                        else
                        {
                            InsertPriceListLoadError(PLHO.price_list_hdr_id.ToString(),
                                GradeCodeDetailID, rowCount + 1, gradeName, null, 'E',
                                "Price contains a non-numeric value.");
                        }

                       
                        count_rows += 1;
                           
                           
                        // Look at errors 'E'

                        if (GradeCodeDetailID == -1)
                        {
                             InsertPriceListLoadError(PLHO.price_list_hdr_id.ToString(), GradeCodeDetailID, rowCount + 1, gradeName, Price, 'E',
                             "Grade Code not found in Grade Code Details table.");

                        }
                           
                        if ((Price) < 0.00M)
                        {
                              InsertPriceListLoadError(PLHO.price_list_hdr_id.ToString(), GradeCodeDetailID, rowCount + 1, gradeName, Price, 'E',
                                "Price cannot be negative.");
                        }

                        for (int i = 0; i < 4; i++)
                        {
                           for (int j = 0; j < 3; j++)
                           {
                              if ((double)(discounts[i, j]) >= 0.00)
                              {
                                 if ((i == 2) && (j == 2)) break;
                                    InsertPriceListLoadError(PLHO.price_list_hdr_id.ToString(), GradeCodeDetailID, rowCount + 1, discountnames[i, j],
                                    discounts[i, j], 'E', "Discount cannot be positive.");
                              }
                           }

                         }
                         ///////////////////////
                           

                         // Look at warnings 'W'
                         if ((Price) > 1000.00M)
                         {
                            InsertPriceListLoadError(PLHO.price_list_hdr_id, GradeCodeDetailID, rowCount + 1, gradeName,
                                              Price, 'W', "Price is over $1000.00.  Please confirm with SP&P.");

                         }
                         if ((Price) == 0.00M)
                         {
                            InsertPriceListLoadError(PLHO.price_list_hdr_id, GradeCodeDetailID, rowCount + 1, gradeName,
                                              (decimal)(0.00), 'W', "Grade has no price.  Please confirm with SP&P.");
                         }
                           
                                       
                        }
                     
                    }

                   catch
                   {
                       Console.WriteLine("Blank Price encountered.  Likely a blank row.");
                   }

            }

In the catch this takes alot of time.
Can I put a loading thing.
ASKER CERTIFIED SOLUTION
Avatar of Dmitry G
Dmitry G
Flag of New Zealand image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of mathieu_cupryk

ASKER

this is not good enough.
Again, not sure what you mean saying "this is not good enough."
My answer is not good enough? Checking if values are numbers not good enough? Your code is not good enough?

Try to understand: most people here are quite busy people. If you want to get fast reply with a solution to your problem try to be more clear and more precise. If experts ask you to clarify your question, like I did,  - probably it worth to do so (not just replying that answer is not good enough).

Your code is lacking comments , really, no comments at all. It is pretty hard to understand what you are doing. You are not giving any hints. How can we solve the problem?