Solved

Access  - Run-time error 2501 RunCommand canceled.

Posted on 2013-01-19
11
1,114 Views
Last Modified: 2013-01-19
Hello all

I have a tabbed form that when I Select a Location and then click a Command Button it is supposed to create a set number of records for input by the user.

If I F9 the first line of that Command Buttons code and F8 to step thru it it all works....

However if I get rid of the F9 on that first line and just let the code run it errors and gives me the
Run-Time error 2501
RunComman action was canceled...

I am attaching a generic version of the db so you can see it for yourself.....

The form to open is [tfrm_Reporting]

There is ONE highlighted combobox field to select a location name.  (there's only one)  select it and click the Command Button right beside it captioned "Create Input Form"

that is when it is to create the exact number of records I want input.
Test-Continuous-Cycle-Records.accdb
0
Comment
Question by:wlwebb
  • 5
  • 4
  • 2
11 Comments
 
LVL 61

Assisted Solution

by:mbizup
mbizup earned 200 total points
ID: 38797256
Try changing that portion of the code - using recordset code:

        Dim rs As DAO.Recordset
    ' **** AMTOut ****
        Me.[tsfrm_dta_TransactDetails_AmtOut].Form.Visible = True
        With Me.[tsfrm_dta_TransactDetails_AmtOut]
            Set rs = .Form.RecordsetClone
            
            .Visible = True
            
           ' DoCmd.RunCommand acCmdRecordsGoToNew
           
            For j = j To lngNbrMachs
                rs.AddNew
                rs![MachNbr] = j
                rs![TransactTypeID] = 2
                rs![TransactAmt] = 0
                rs!ReportingID = Me.ReportingID
                rs.Update
            Next
            rs.Close
            .Form.Requery
            .SetFocus
            '.Form.AllowAdditions = False
        End With
    

Open in new window


It looks like there are issues with later parts of your code as well - so try to isolate this part and test it before moving on to the next.
0
 
LVL 29

Accepted Solution

by:
IrogSinta earned 300 total points
ID: 38797287
Here you go.  I revised your code a bit.  As an aside, it looks like you're still making use of LookUp fields in your tables.  You really would be better off without them as I mentioned before.
Test-Continuous-Cycle-Records.accdb
0
 

Author Comment

by:wlwebb
ID: 38797304
Irog.......

Looking at the code I think you are doing what MBiz was suggesting...... Am I right in that?????  

As you and MBiz have helped a lot in the past you know I am very very limited in what I understand to this point.
0
Three Reasons Why Backup is Strategic

Backup is strategic to your business because your data is strategic to your business. Without backup, your business will fail. This white paper explains why it is vital for you to design and immediately execute a backup strategy to protect 100 percent of your data.

 

Author Comment

by:wlwebb
ID: 38797305
Oh.... AND WOW is that a lot faster loading....!!!!!!
0
 
LVL 29

Expert Comment

by:IrogSinta
ID: 38797308
I need to correct myself.  It was someone else I advised about not using Lookup fields.  So in case no one has mentioned this yet, let me just paste a bit of what I posted in another question.

Lookup Fields --  why oh why did Microsoft add this feature!
I cannot emphasize enough the magnitude of avoiding using Lookup Fields in your table.  It's purpose was to make it supposedly easy for a novice to work with related tables.  However, it causes more problems than it solves and I think it actually makes it more confusing for those trying to grasp the concept of relational tables.  

Every newcomer to Access read and heed this article:
The Evils of Lookup Fields in Tables    Adding one more bullet to the list in this article is the inability of Child and Master fields to link properly if one of the fields is a Lookup field.
0
 
LVL 29

Expert Comment

by:IrogSinta
ID: 38797318
I saw Miriam's code after I posted but you're right about them being pretty much the same.  That's because great minds think alike :-)
Mine just has a nested loop so that it covers all 3 transaction types.
0
 

Author Comment

by:wlwebb
ID: 38797321
By lookup fields in my tables you are specifically referring to the Lookup tab on the table setup where my SELECT statement is correct???????????

And by the way................for You and for Mbiz........

I'm just now seeing what you guys meant by using the With statements a while back.......... I'm a might bit slow I guess.... Now this rst stuff............  whew ......... ;-))))
0
 

Author Comment

by:wlwebb
ID: 38797323
Is the DAO stuff that much faster than all this other code????
0
 

Author Closing Comment

by:wlwebb
ID: 38797354
I split the points as both of you made the same suggestion but Irog actually put it in my db.....
0
 
LVL 61

Expert Comment

by:mbizup
ID: 38797460
I've never benchmarked it but I'm almost certain that looping through a Dao recordeset would be faster than the form based approach, which involves the bulk of the user interface.
0
 
LVL 29

Expert Comment

by:IrogSinta
ID: 38797462
You're right about the lookup tab in your table design.  Avoid that like the plague.  :-)
0

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

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

Most if not all databases provide tools to filter data; even simple mail-merge programs might offer basic filtering capabilities. This is so important that, although Access has many built-in features to help the user in this task, developers often n…
Regardless of which version on MS Access you are using, one of the harder data-entry forms to create is one where most data from previous entries needs to be appended to new records, especially when there are numerous fields and records involved.  W…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

809 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