473,757 Members | 7,200 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Funky Save Record Stuff

Was working in A2003 and noticed that the Save Record item on the Records
menu was not available when the record was not dirty. In A2000, Save Record
was always available. (This is a problem for me because I have Docmd.Runcmd
acCmdSaveRecord code all over the place, which never gave an error before.
But now it was giving an error when the Save Record menu command wasn't
available.)

So I went back to A2000 and confirmed that the Save Record menu command is
always available, whether the record is dirty or not. So I concluded this
was a change in A2003, that the menu item's only available when the record's
actually dirty.

However...... when I went back to A2003 and tested it again, I noticed that
it was acting in the same way as A2000, with the Save Record menu item
always available!

So, in summary:

In A2003, Save Record menu item was only available when record was actually
dirty (causing an error when docmd.runcmd accmdsaverecord was run when the
record was not dirty).

Went to A2000 and confirmed that the menu item was always available, whether
the record was dirty or not.

And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only been
available when the record was dirty!

So I was wondering if anyone else has noticed these shenanigans from A2003,
or has any idea what's going on, and why the funcationality would change
like that. Also, how does A2003 act in your copy: is the Save Record menu
item always available; or is it grayed out when the record's not dirty?

Thanks!

Neil
Jun 27 '08 #1
7 2174
Hi Neil,

Looking at this from a lower level programming standpoint - say
.Net/Java (where C++, MFC are real low level and the originating source
of .Net and Access/VBA) - Access/VBA is a very high level programming
platform and .Net is significantly lower. What this means is that
Access is heavily subclassed - contains a lot of built-in functionality
to accommodate the needs of a very wide range of users from beginners to
power users to developers. With this level of subclassing it is
inevitable that some inconsistencies will arise, and thus, at the
enterprise/corporate level - Access is not the ideal tool.

To illustrate a little further - .Net is significantly less subclassed
than Access. This means that there is a lot less built-in stuff, which
if the programmer needs something - like a continuous form which is not
built in to .Net - you have to create it yourself from scratch - but you
can do that in .Net because it is only a few notches more subclassed
than C++/MFC. Bottom line, the developer has way less control over the
more detailed aspects of programming in a high level (highly subclassed)
platform than the developer would in a lower level platform - .Net/Java.

Think of a power curve (if you are a math person). At the highest point
of the power curve (where the slope is zero, dy/dx = 0) you have max
power. If you proceed past that point - you are now behind the power
curve. Access was designed to ease programming for rapid application
development. And Access is, in fact, the fasted gun in the west - to a
point. Like a fighter plane - an F-16 is one of the most agile fighters
but would be useless against a missile battalion - for that you would
need some heavy bombers. Think of Access as the F16 and .Net/Java as
the heavy bombers. You can only write so much code for rapid
application development - but once you need more functionality - it is
time to go to a lower level platform.

Rich

*** Sent via Developersdex http://www.developersdex.com ***
Jun 27 '08 #2
Neil,

Do you see this in SP3 and not in SP2 when using MS Access 2003? I have
another situation previously posted about a problem with SP3 and my
developer is having trouble with Save Record when it's a memo field and
there is nothing in it. I am going to post that information in my previous
post, but it might be the same thing. It only happens when connecting via
ODBC to an SQL db and not when Access is the backend.

Lisa

"Neil" <no****@nospam. netwrote in message
news:kR******** ********@nlpi06 9.nbdc.sbc.com. ..
Was working in A2003 and noticed that the Save Record item on the Records
menu was not available when the record was not dirty. In A2000, Save
Record was always available. (This is a problem for me because I have
Docmd.Runcmd acCmdSaveRecord code all over the place, which never gave an
error before. But now it was giving an error when the Save Record menu
command wasn't available.)

So I went back to A2000 and confirmed that the Save Record menu command is
always available, whether the record is dirty or not. So I concluded this
was a change in A2003, that the menu item's only available when the
record's actually dirty.

However...... when I went back to A2003 and tested it again, I noticed
that it was acting in the same way as A2000, with the Save Record menu
item always available!

So, in summary:

In A2003, Save Record menu item was only available when record was
actually dirty (causing an error when docmd.runcmd accmdsaverecord was run
when the record was not dirty).

Went to A2000 and confirmed that the menu item was always available,
whether the record was dirty or not.

And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only been
available when the record was dirty!

So I was wondering if anyone else has noticed these shenanigans from
A2003, or has any idea what's going on, and why the funcationality would
change like that. Also, how does A2003 act in your copy: is the Save
Record menu item always available; or is it grayed out when the record's
not dirty?

Thanks!

Neil

Jun 27 '08 #3
Here is what I posted in my other thread and it might apply for this also:

The problem appears to be with the way updated Access handles the empty
string (""). Specifically with Memo type fields mapped to ODBC SQL
connections of LONG VARCHAR type. In previous versions of Access, the empty
string would be passed to the SQL back end as a Null. This works great
because text boxes don't accept Null as a value, so if the text box was
empty, the empty string could be passed via a RunSQL command just like any
other string and it would be translated to Null in the back end data source.
Now, we have to add exception handling for zero length strings. This is
probably a side effect of a fix or could have been determined to be a
security hole. Either way it's causing rework and I didn't find any
documentation for the change.

The catch is that having the code add a space to the field doesn't make it
dirty "enough?" and doesn't solve our immediate need.

Lisa
"Lisa Moody" <lm****@jewelco de.comwrote in message
news:CK******** *************** *******@comcast .com...
Neil,

Do you see this in SP3 and not in SP2 when using MS Access 2003? I have
another situation previously posted about a problem with SP3 and my
developer is having trouble with Save Record when it's a memo field and
there is nothing in it. I am going to post that information in my
previous post, but it might be the same thing. It only happens when
connecting via ODBC to an SQL db and not when Access is the backend.

Lisa

"Neil" <no****@nospam. netwrote in message
news:kR******** ********@nlpi06 9.nbdc.sbc.com. ..
>Was working in A2003 and noticed that the Save Record item on the Records
menu was not available when the record was not dirty. In A2000, Save
Record was always available. (This is a problem for me because I have
Docmd.Runcmd acCmdSaveRecord code all over the place, which never gave an
error before. But now it was giving an error when the Save Record menu
command wasn't available.)

So I went back to A2000 and confirmed that the Save Record menu command
is always available, whether the record is dirty or not. So I concluded
this was a change in A2003, that the menu item's only available when the
record's actually dirty.

However..... . when I went back to A2003 and tested it again, I noticed
that it was acting in the same way as A2000, with the Save Record menu
item always available!

So, in summary:

In A2003, Save Record menu item was only available when record was
actually dirty (causing an error when docmd.runcmd accmdsaverecord was
run when the record was not dirty).

Went to A2000 and confirmed that the menu item was always available,
whether the record was dirty or not.

And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only
been available when the record was dirty!

So I was wondering if anyone else has noticed these shenanigans from
A2003, or has any idea what's going on, and why the funcationality would
change like that. Also, how does A2003 act in your copy: is the Save
Record menu item always available; or is it grayed out when the record's
not dirty?

Thanks!

Neil


Jun 27 '08 #4
>So, in summary:
>In A2003, Save Record menu item was only available when record was actually
dirty (causing an error when docmd.runcmd accmdsaverecord was run when the
record was not dirty).
>Went to A2000 and confirmed that the menu item was always available, whether
the record was dirty or not.
>And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only been
available when the record was dirty!"
This sounds suspiciously like a case of $hit happens!

--
There's ALWAYS more than one way to skin a cat!

Answers/posts based on Access 2000/2003

Message posted via AccessMonster.c om
http://www.accessmonster.com/Uwe/For...ccess/200804/1

Jun 27 '08 #5
I am using SP3, so I don't know about SP2. And, yes, mine is a SQL Server
backend (via ODBC) as well. Whatever happened (with Save Record not being
available in a non-dirty record), it cleared itself after going to A2000 and
then back to A2003 again. But the version of Access I'm using was the same
in both cases.

"Lisa Moody" <lm****@jewelco de.comwrote in message
news:CK******** *************** *******@comcast .com...
Neil,

Do you see this in SP3 and not in SP2 when using MS Access 2003? I have
another situation previously posted about a problem with SP3 and my
developer is having trouble with Save Record when it's a memo field and
there is nothing in it. I am going to post that information in my
previous post, but it might be the same thing. It only happens when
connecting via ODBC to an SQL db and not when Access is the backend.

Lisa

"Neil" <no****@nospam. netwrote in message
news:kR******** ********@nlpi06 9.nbdc.sbc.com. ..
>Was working in A2003 and noticed that the Save Record item on the Records
menu was not available when the record was not dirty. In A2000, Save
Record was always available. (This is a problem for me because I have
Docmd.Runcmd acCmdSaveRecord code all over the place, which never gave an
error before. But now it was giving an error when the Save Record menu
command wasn't available.)

So I went back to A2000 and confirmed that the Save Record menu command
is always available, whether the record is dirty or not. So I concluded
this was a change in A2003, that the menu item's only available when the
record's actually dirty.

However..... . when I went back to A2003 and tested it again, I noticed
that it was acting in the same way as A2000, with the Save Record menu
item always available!

So, in summary:

In A2003, Save Record menu item was only available when record was
actually dirty (causing an error when docmd.runcmd accmdsaverecord was
run when the record was not dirty).

Went to A2000 and confirmed that the menu item was always available,
whether the record was dirty or not.

And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only
been available when the record was dirty!

So I was wondering if anyone else has noticed these shenanigans from
A2003, or has any idea what's going on, and why the funcationality would
change like that. Also, how does A2003 act in your copy: is the Save
Record menu item always available; or is it grayed out when the record's
not dirty?

Thanks!

Neil


Jun 27 '08 #6
Lisa,

I'm not experiencing this problem. But, first, I never heard of Long
Varchar. I've heard of varchar and nvarchar. Are you referring to nvarchar?

Second, I'm not following what your problem is. You're trying to store an
empty string in a memo field and it's not getting converted to Null? Maybe
you can elaborate.
"Lisa Moody" <lm****@jewelco de.comwrote in message
news:-9************** *************** *@comcast.com.. .
Here is what I posted in my other thread and it might apply for this also:

The problem appears to be with the way updated Access handles the empty
string (""). Specifically with Memo type fields mapped to ODBC SQL
connections of LONG VARCHAR type. In previous versions of Access, the
empty string would be passed to the SQL back end as a Null. This works
great because text boxes don't accept Null as a value, so if the text box
was empty, the empty string could be passed via a RunSQL command just like
any other string and it would be translated to Null in the back end data
source. Now, we have to add exception handling for zero length strings.
This is probably a side effect of a fix or could have been determined to
be a security hole. Either way it's causing rework and I didn't find any
documentation for the change.

The catch is that having the code add a space to the field doesn't make it
dirty "enough?" and doesn't solve our immediate need.

Lisa
"Lisa Moody" <lm****@jewelco de.comwrote in message
news:CK******** *************** *******@comcast .com...
>Neil,

Do you see this in SP3 and not in SP2 when using MS Access 2003? I have
another situation previously posted about a problem with SP3 and my
developer is having trouble with Save Record when it's a memo field and
there is nothing in it. I am going to post that information in my
previous post, but it might be the same thing. It only happens when
connecting via ODBC to an SQL db and not when Access is the backend.

Lisa

"Neil" <no****@nospam. netwrote in message
news:kR******* *********@nlpi0 69.nbdc.sbc.com ...
>>Was working in A2003 and noticed that the Save Record item on the
Records menu was not available when the record was not dirty. In A2000,
Save Record was always available. (This is a problem for me because I
have Docmd.Runcmd acCmdSaveRecord code all over the place, which never
gave an error before. But now it was giving an error when the Save
Record menu command wasn't available.)

So I went back to A2000 and confirmed that the Save Record menu command
is always available, whether the record is dirty or not. So I concluded
this was a change in A2003, that the menu item's only available when the
record's actually dirty.

However.... .. when I went back to A2003 and tested it again, I noticed
that it was acting in the same way as A2000, with the Save Record menu
item always available!

So, in summary:

In A2003, Save Record menu item was only available when record was
actually dirty (causing an error when docmd.runcmd accmdsaverecord was
run when the record was not dirty).

Went to A2000 and confirmed that the menu item was always available,
whether the record was dirty or not.

And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only
been available when the record was dirty!

So I was wondering if anyone else has noticed these shenanigans from
A2003, or has any idea what's going on, and why the funcationality would
change like that. Also, how does A2003 act in your copy: is the Save
Record menu item always available; or is it grayed out when the record's
not dirty?

Thanks!

Neil



Jun 27 '08 #7

"Linq Adams via AccessMonster.c om" <u28780@uwewrot e in message
news:82b1fe2ecc 3be@uwe...
So, in summary:
>>In A2003, Save Record menu item was only available when record was
actually
dirty (causing an error when docmd.runcmd accmdsaverecord was run when the
record was not dirty).
>>Went to A2000 and confirmed that the menu item was always available,
whether
the record was dirty or not.
>>And when I returned to A2003, all of a sudden the menu item was always
available, as it is in A2000, though a few minutes before it had only been
available when the record was dirty!"

This sounds suspiciously like a case of $hit happens!
Well, that's fine. As long as A2003 works the same as A2000 in this regard,
I'll chalk it up to a hiccup. Can you confirm that the Save Record command
is available for you in A2003, even when the record's not dirty?

Thanks!

Neil

Jun 27 '08 #8

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
3617
by: Tom Plunket | last post by:
(Is this an appropriate place to ask wxPython questions?) Here's some code (line breaks put in without testing them, I'm kinda a newbie hope they're ok): <busted.py> from wxPython.wx import * class MyFrame(wxFrame):
0
1147
by: theintrepidfox | last post by:
Dear Group For 5! Days I'm trying now to come up with a way for the following. Let's assume (simplified) I've a tab were a user eneters a contact record. If the user clicks on another tab and hasn't saved I want to display a message saying "Want to save?" with Yes/No buttons remaining on that tab. It works partially and I'm going to loose my nerves. I wonder whether
4
3443
by: WJA | last post by:
I'm probably missing something here but I can't understand the following. When 2 users try to save a record with the same primary key (a number field), the first record saves as expected, but the second does not produce an error. The "Save" button uses "Docmd.Save" to save the record. If I insert "Me.Dirty = False" before "Docmd.Save" an error is produced. Why doesn't "Docmd.Save" produce an error but instead silently fails to save the...
4
3002
by: Luis | last post by:
Hi, I can a big problem... because I have a byte data = new byte, and I need to save this to a field on my MySQL database (here I have a BLOB field) but ¿can I save it? because if I put: Insert into archiv(ref, databinary) VALUES('"+ref+"', '"+ data+"') In my Database only save "System.byte" Can Someone help me?
22
5051
by: Br | last post by:
First issue: When using ADPs you no longer have the ability to issue a me.refresh to save the current record on a form (the me.refresh does a requery in an ADP). We usually do this before calling up another form or report that uses some of the same data. We came up with a work around that saves the current record's ID, does a
12
3854
by: comp.lang.php | last post by:
I have a textarea where people can cut & paste their resume. Unfortunately they often cut & paste their Word resume into the textarea, funky characters and all. This causes the display to be mangled from the HTML end when people view pages with these resumes stored as a MySQL text field entry. How do I fix this, also, how do I fix the displays of those already entered this way?
6
4932
by: Ken Mylar | last post by:
I have a dilema here that I'm hoping some one can help me out with. On my forms I have some basic New, Edit, Save, Delete, Undo buttons on them. When first opened all controls on the form are not enabled. When you hit one of the buttons certain controls enable and some don't depending on the function. My dilema is with the New button and in turn the Save button. I would rather the user click the "New" button to add a record instead of...
2
10327
by: voroojak | last post by:
Hi How can i put save record and next record in one button. in my save record i put the calculation of the text boxes. i have a total field that the sum of the other field is in there and it wil be filled when i push the save button. and the sum will go and save in a table. but now the new requirment is that i put save record and next record in one button to be easier for the user. i was using the next record seperately. thanks for the help.
2
64516
by: Ian | last post by:
I am trying to save the current record on a form before opening a report, doesn’t sound to hard does it? The code on a buttons on click event goes like this: DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70 'First save record I used this for many years with problems using Access 97, when the database is upgraded to Access 2000 or later I occasionally get an error message saying “Save Command is not available now”.
0
9489
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9298
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10072
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9906
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9885
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9737
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7286
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
1
3829
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
3399
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.