[Last Call] Learn about multicloud storage options and how to improve your company's cloud strategy. Register Now

x
?
Solved

How to put a messagebox in vb

Posted on 2008-10-09
12
Medium Priority
?
164 Views
Last Modified: 2012-05-05
i need to put a message box on the for the error 3021

how to do that?


Public Sub CheckForNullSearch()
On Error GoTo Err_CheckForNullSearch
    
    'Checks general search form for any nulls
    'Dirty = False
    
    If IsNull(Me.Combo_Year) Or Me.Combo_Year = "0" Or Me.Combo_Year = "" Then Me.Combo_Year = "Year"
    If IsNull(Me.Combo_TempPromoID) Or Me.Combo_TempPromoID = "" Then Me.Combo_TempPromoID = "0"
    If IsNull(Me.Combo_EnteredBy) Or Me.Combo_EnteredBy = "0" Or Me.Combo_EnteredBy = "" Then Me.Combo_EnteredBy = "Log on"
    If IsNull(Me.Combo_PromoPeriod) Or Me.Combo_PromoPeriod = "0" Or Me.Combo_PromoPeriod = "" Then Me.Combo_PromoPeriod = "Period"
    If IsNull(Me.Combo_Location) Or Me.Combo_Location = "" Or Me.Combo_Location = "" Then Me.Combo_Location = "Location"
    If IsNull(Me.Combo_CategoryMan) Or Me.Combo_CategoryMan = "0" Or Me.Combo_CategoryMan = "" Then Me.Combo_CategoryMan = "Category Manager"
    If IsNull(Me.Combo_CatID) Or Me.Combo_CatID = "" Then Me.Combo_CatID = "0"
    If IsNull(Me.Combo_StartDate) Or Me.Combo_StartDate = "" Or Me.Combo_StartDate = "0" Then Me.Combo_StartDate = "Start Date"
    If IsNull(Me.Combo_Status) Or Me.Combo_Status = "" Or Me.Combo_Status = "0" Then Me.Combo_Status = "Status"
    If IsNull(Me.Combo_article) Or Me.Combo_article = "" Or Me.Combo_article = "0" Then Me.Combo_article = "0"
    
    'Dirty = False
    
Exit_CheckForNullSearch:
    Exit Sub
 
Err_CheckForNullSearch:
    
    'Entered an item not in the list
    If Err.Number = 2237 Then Resume Next
    
    'If a Null value after the dirty=false then error will occur
    If Err.Number = 3058 Then Resume Next
                        
    'No current record
    If Err.Number = 3021 Then Resume Next
                        
    ApplicationError Err.Number, Err.Description, "T_F900_GeneralSearch\CheckForNullSearch"
    Resume Exit_CheckForNullSearch
    
End Sub

Open in new window

0
Comment
Question by:jaisonshereen
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 5
12 Comments
 

Author Comment

by:jaisonshereen
ID: 22676904
this is not working
If Err.Number = 3021 Then
    Err.Clear
    MsgBox ("test")
    Resume Next
    Else
    ApplicationError Err.Number, Err.Description, "T_F900_GeneralSearch\CheckForNullSearch"
    Resume Exit_CheckForNullSearch
    End If
    End Sub

Open in new window

0
 
LVL 10

Assisted Solution

by:c0ldfyr3
c0ldfyr3 earned 800 total points
ID: 22677059
Change

MsgBox ("test")


To

Call MsgBox ("test")

0
 
LVL 44

Accepted Solution

by:
Arthur_Wood earned 1200 total points
ID: 22677227
change your code, like this:


AW
Err_CheckForNullSearch:
    Dim ans as Integer
    ans = -1
    'Entered an item not in the list
    If Err.Number = 2237 Then 
      Err.Clear
      ans = MsgBox("'Entered an item not in the list" & vbCrlF & "Do you wish to continue?", vbYesNo)
      If ans = vbYes then
          Resume Next
      End If
    End If
    
    'If a Null value after the dirty=false then error will occur
    If Err.Number = 3058 Then 
      Err.Clear
      ans = MsgBox("Null value after the dirty=false " & vbCrlF & "Do you wish to continue?", vbYesNo)
      If ans = vbYes then
          Resume Next
      End If
    End If
                        
    'No current record
    If Err.Number = 3021 Then
      Err.Clear  
      ans = MsgBox("No current record" & vbCrlF & "Do you wish to continue?", vbYesNo)
      If ans = vbYes then
          Resume Next
      End If
    End If
 
    If ans = -1 then                   
         ApplicationError Err.Number, Err.Description, "T_F900_GeneralSearch\CheckForNullSearch"
    End If
    Resume Exit_CheckForNullSearch

Open in new window

0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 

Author Comment

by:jaisonshereen
ID: 22677300
nope its not works..3021 error message box comming instead
0
 
LVL 44

Expert Comment

by:Arthur_Wood
ID: 22677351
which suggested answer does not work?

AW
0
 

Author Comment

by:jaisonshereen
ID: 22677373
nothing works !
0
 
LVL 44

Expert Comment

by:Arthur_Wood
ID: 22677595
try this, and tell me what the Message Box shows:
Err_CheckForNullSearch:
    Dim ans as Integer
    ans = -1
    'Entered an item not in the list
    If Err.Number = 2237 Then 
      Err.Clear
      ans = MsgBox("'Entered an item not in the list" & vbCrlF & "Do you wish to continue?", vbYesNo)
      If ans = vbYes then
          Resume Next
      End If
    End If
    
    'If a Null value after the dirty=false then error will occur
    If Err.Number = 3058 Then 
      Err.Clear
      ans = MsgBox("Null value after the dirty=false " & vbCrlF & "Do you wish to continue?", vbYesNo)
      If ans = vbYes then
          Resume Next
      End If
    End If
                        
    'No current record
    If Err.Number = 3021 Then
      Err.Clear  
      ans = MsgBox("No current record" & vbCrlF & "Do you wish to continue?", vbYesNo)
      If ans = vbYes then
          Resume Next
      End If
    End If
    MsgBox "Err.Number = " & err.Number, vbOkOnly
    If ans = -1 then                   
         ApplicationError Err.Number, Err.Description, "T_F900_GeneralSearch\CheckForNullSearch"
    End If
    Resume Exit_CheckForNullSearch

Open in new window

0
 

Author Comment

by:jaisonshereen
ID: 22677645
no hope

still the same 3021 error msgbox :-(
0
 
LVL 44

Expert Comment

by:Arthur_Wood
ID: 22678288
Ok, I know what is going on.  It seems that there are a broad range of Run-Time errors that are NOT 'Trappable' - that is, when they occur, they do NOT trigger the On Error Goto .... error handler mechanism.

If you open the VB6 IDE, and click on Help, then select Index, and enter "Trapping Errors", you will get the 'official' list of Trappable run-time errors.  Non of the errors you are attemting to handle are listed as Trappable Run-Time errors.

What routine is calling your CheckForNullSearch procedure?  The error is probably occuring there.

AW
0
 
LVL 44

Expert Comment

by:Arthur_Wood
ID: 22678436
In addition, there is NOTHING in your procedure CheckForNullSearch which is in ant way related to the 3021 - No Crrent Record condition.  The code in your procedure does not make use of a recordset, or attempting to access data from a recordset.  Thast should be an additional indication that the error you are getting is not being triggered in the procedure where you seem to think it is occurring.

AW
0
 
LVL 44

Expert Comment

by:Arthur_Wood
ID: 22680658
Glad to be of assistance.  How did you resolve this issue?

AW
0
 

Author Comment

by:jaisonshereen
ID: 22680729
i gone for debugging  by cntr+break

where i see n the cursor position i put the message box with the case:3021

still

err.clear  resolved the issue!

Thanks all support !
0

Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

There is an easy way, in .NET, to centralize the treatment of all unexpected errors. First of all, instead of launching the application directly in a Form, you need first to write a Sub called Main, in a module. Then, set the Startup Object to th…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
Suggested Courses

650 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question