472,328 Members | 1,385 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,328 software developers and data experts.

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 2079
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****************@nlpi069.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****@jewelcode.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****************@nlpi069.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.com
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****@jewelcode.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****************@nlpi069.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****@jewelcode.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****@jewelcode.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****************@nlpi069.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.com" <u28780@uwewrote in message
news:82b1fe2ecc3be@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
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...
0
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...
4
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...
4
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...
22
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...
12
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...
6
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....
2
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...
2
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...
0
by: tammygombez | last post by:
Hey fellow JavaFX developers, I'm currently working on a project that involves using a ComboBox in JavaFX, and I've run into a bit of an issue....
0
by: concettolabs | last post by:
In today's business world, businesses are increasingly turning to PowerApps to develop custom business applications. PowerApps is a powerful tool...
0
better678
by: better678 | last post by:
Question: Discuss your understanding of the Java platform. Is the statement "Java is interpreted" correct? Answer: Java is an object-oriented...
0
by: Kemmylinns12 | last post by:
Blockchain technology has emerged as a transformative force in the business world, offering unprecedented opportunities for innovation and...
0
by: CD Tom | last post by:
This only shows up in access runtime. When a user select a report from my report menu when they close the report they get a menu I've called Add-ins...
0
jalbright99669
by: jalbright99669 | last post by:
Am having a bit of a time with URL Rewrite. I need to incorporate http to https redirect with a reverse proxy. I have the URL Rewrite rules made...
0
by: antdb | last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine In the overall architecture, a new "hyper-convergence" concept was...
0
by: Matthew3360 | last post by:
Hi there. I have been struggling to find out how to use a variable as my location in my header redirect function. Here is my code. ...
1
by: Matthew3360 | last post by:
Hi, I have a python app that i want to be able to get variables from a php page on my webserver. My python app is on my computer. How would I make it...

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.