From: PHisaw on

It seems my original thread of 4/29/10 "Quote Form with Options" has been
forgotten. Tom van Stiphout was helping and gave me the instructions for a
button to ""Create New
Option". It would look at the maximum option used so far (DMax
function) and add 1 to it.
When the button is clicked, you save the JobNumber information and
perhaps some other key information, go to a new record, populate the
JobNumber with the saved value, and set the Option field to whatever
DMax(...)+1 returns."

I have researched and tried several methods of code, but can't seem to get
anything to work other than the option field increasing in number. This is
currently what I have which throws an error message "can't go to specified
record" and highlights the GoToRecord,,acNewRec line. I think it has
something to do with the job number, but can't figure out how to correct it.

Private Sub LblQuoteOptions_Click()

DoCmd.RunCommand acCmdSave
DoCmd.GoToRecord , , acNewRec
Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"
Me.Option = Nz(DMax("Option", "tquotemainform"), 0) + 1

End Sub


Any suggestions would be greatly appreciated.
Thank in advance,
Pam

From: BruceM via AccessMonster.com on
I don't know what exactly was in the original string, but I see a few things
in the code you posted.

I'm not sure what this line of code is supposed to do:

Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"

For clarity in posting and in reading the code, I suggest naming the text box
differently from the field to which it is bound. For instance, the text box
could be txtJobNumber.

However, that is probably unrelated to the problem with this line. It seems
the Default Value of JobNumber is the value of Job Number, which is circular.
Also, the quotes are not necessary, and may be doing some harm. From your
posting, you are trying to carry JobNumber from the previous record to the
new record. Why is that? Is this code in a subform? If so, and if
JobNumber is the linking field between the main form and subform tables, it
needs to be the Link Child and Link Master properties of the subform control
(the "box" containing the subform).

One problem with the next line may be that Option is a reserved word. For
more about reserved words:
http://www.allenbrowne.com/AppIssueBadWord.html

Option should not be used as a name, but if it is used it should be in square
brackets, and it probably should be the DefaultValue, or else it will change
whenever the code is run. You can't rely on users not clicking a "dangerous"
button:
Me.txtOption.DefaultValue = Nz(DMax("[Option]", "tquotemainform"), 0) + 1

Is tquotemainform a table?

PHisaw wrote:
>It seems my original thread of 4/29/10 "Quote Form with Options" has been
>forgotten. Tom van Stiphout was helping and gave me the instructions for a
>button to ""Create New
>Option". It would look at the maximum option used so far (DMax
>function) and add 1 to it.
>When the button is clicked, you save the JobNumber information and
>perhaps some other key information, go to a new record, populate the
>JobNumber with the saved value, and set the Option field to whatever
>DMax(...)+1 returns."
>
>I have researched and tried several methods of code, but can't seem to get
>anything to work other than the option field increasing in number. This is
>currently what I have which throws an error message "can't go to specified
>record" and highlights the GoToRecord,,acNewRec line. I think it has
>something to do with the job number, but can't figure out how to correct it.
>
>Private Sub LblQuoteOptions_Click()
>
>DoCmd.RunCommand acCmdSave
>DoCmd.GoToRecord , , acNewRec
> Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"
>Me.Option = Nz(DMax("Option", "tquotemainform"), 0) + 1
>
>End Sub
>
>Any suggestions would be greatly appreciated.
>Thank in advance,
>Pam

--
Message posted via http://www.accessmonster.com

From: Al Campagna on
PHisaw,
It appears as though you also had a new "re-post" dealing with this
issue
on April 30th @ 3:17PM
"Multiple quotes for same job number using option buttons"
John Vinson replied to that... with no reply from you, as yet.

Please be sure your up to snuff on all your replies... and... if this is
another post dealing with primarily the same issue... please
return to any old ones, and let folks know that you're re-posting.
Thanks...
--
hth
Al Campagna
Microsoft Access MVP 2007-2009
http://home.comcast.net/~cccsolutions/index.html

"Find a job that you love... and you'll never work a day in your life."


"PHisaw" <PHisaw(a)discussions.microsoft.com> wrote in message
news:1287EF44-3058-4E43-B1AF-72D04ADFB07C(a)microsoft.com...
>
> It seems my original thread of 4/29/10 "Quote Form with Options" has been
> forgotten. Tom van Stiphout was helping and gave me the instructions for
> a
> button to ""Create New
> Option". It would look at the maximum option used so far (DMax
> function) and add 1 to it.
> When the button is clicked, you save the JobNumber information and
> perhaps some other key information, go to a new record, populate the
> JobNumber with the saved value, and set the Option field to whatever
> DMax(...)+1 returns."
>
> I have researched and tried several methods of code, but can't seem to get
> anything to work other than the option field increasing in number. This
> is
> currently what I have which throws an error message "can't go to specified
> record" and highlights the GoToRecord,,acNewRec line. I think it has
> something to do with the job number, but can't figure out how to correct
> it.
>
> Private Sub LblQuoteOptions_Click()
>
> DoCmd.RunCommand acCmdSave
> DoCmd.GoToRecord , , acNewRec
> Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"
> Me.Option = Nz(DMax("Option", "tquotemainform"), 0) + 1
>
> End Sub
>
>
> Any suggestions would be greatly appreciated.
> Thank in advance,
> Pam
>


From: PHisaw on
Bruce,

Thank you for replying. Per your message,

> I'm not sure what this line of code is supposed to do:
>
> Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"

In researching on how to save field info and then repopulate field with
saved info from previous record, this line of code is what I came across, but
obviously it isn't working.
Users have requested the ability to have more than one quote option for the
same job number. Tom's suggestion was to have the main table relate to the
subforms with JobNumber and Option fields - both PK's. Then a button on the
main form that would save the job number from the previous record, insert it
in the new record (new option, same job number) and increase the option by 1
based on last option number.
I have a main quote table, tquotemainform, which supplies frepairquotemain
form. On it are several subforms - labor, parts, and misc parts and all are
related by JobNumber (autonumber and PK) and now by Option (also a PK - I'll
change the name to something other than the reserved word).
John Vinson responded that it may be the jobnumber in the related table. I
asked how I could go about resolving the problem, but received no response.
I just need to know if this is acutally possible as in example below with
both fields being PKs.

JobNumber Option
9549 1
9549 2
9550 1
9551 1
9551 2

Again, thanks for your help.
Pam

"BruceM via AccessMonster.com" wrote:

> I don't know what exactly was in the original string, but I see a few things
> in the code you posted.
>
> I'm not sure what this line of code is supposed to do:
>
> Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"
>
> For clarity in posting and in reading the code, I suggest naming the text box
> differently from the field to which it is bound. For instance, the text box
> could be txtJobNumber.
>
> However, that is probably unrelated to the problem with this line. It seems
> the Default Value of JobNumber is the value of Job Number, which is circular.
> Also, the quotes are not necessary, and may be doing some harm. From your
> posting, you are trying to carry JobNumber from the previous record to the
> new record. Why is that? Is this code in a subform? If so, and if
> JobNumber is the linking field between the main form and subform tables, it
> needs to be the Link Child and Link Master properties of the subform control
> (the "box" containing the subform).
>
> One problem with the next line may be that Option is a reserved word. For
> more about reserved words:
> http://www.allenbrowne.com/AppIssueBadWord.html
>
> Option should not be used as a name, but if it is used it should be in square
> brackets, and it probably should be the DefaultValue, or else it will change
> whenever the code is run. You can't rely on users not clicking a "dangerous"
> button:
> Me.txtOption.DefaultValue = Nz(DMax("[Option]", "tquotemainform"), 0) + 1
>
> Is tquotemainform a table?
>
> PHisaw wrote:
> >It seems my original thread of 4/29/10 "Quote Form with Options" has been
> >forgotten. Tom van Stiphout was helping and gave me the instructions for a
> >button to ""Create New
> >Option". It would look at the maximum option used so far (DMax
> >function) and add 1 to it.
> >When the button is clicked, you save the JobNumber information and
> >perhaps some other key information, go to a new record, populate the
> >JobNumber with the saved value, and set the Option field to whatever
> >DMax(...)+1 returns."
> >
> >I have researched and tried several methods of code, but can't seem to get
> >anything to work other than the option field increasing in number. This is
> >currently what I have which throws an error message "can't go to specified
> >record" and highlights the GoToRecord,,acNewRec line. I think it has
> >something to do with the job number, but can't figure out how to correct it.
> >
> >Private Sub LblQuoteOptions_Click()
> >
> >DoCmd.RunCommand acCmdSave
> >DoCmd.GoToRecord , , acNewRec
> > Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"
> >Me.Option = Nz(DMax("Option", "tquotemainform"), 0) + 1
> >
> >End Sub
> >
> >Any suggestions would be greatly appreciated.
> >Thank in advance,
> >Pam
>
> --
> Message posted via http://www.accessmonster.com
>
> .
>
From: BruceM via AccessMonster.com on
If a job may have several quotes, quote information should be in a related
table:

tblJob
JobID (primary key, or PK; could be the job number)
Customer
etc.

tblQuote
QuoteID (PK)
JobID (related to JobID in tblJob)
other Quote fields as needed

Establish the relationship between tblJob and tblQuote in the Relationships
window. Build a main form based on tblJob, with a subform based on tblQuote.
Set the Link Child and Link Master properties of the subfoirm control to
JobID.

It may seem like semantics, but I doubt Tom would have suggested "to have the
main table relate to the subforms with JobNumber and Option fields". Tables
relate to other tables, so I expect his reference to relationships was about
relating one table to another. The subforms may be based on the related
tables, but we can't see your database, so can only infer how it is
constructed.

Any discussion of this sort needs to start with the table structure, which
depends on the real-world situation behind the database. What is the
database supposed to do?

PHisaw wrote:
>Bruce,
>
>Thank you for replying. Per your message,
>
>> I'm not sure what this line of code is supposed to do:
>>
>> Me.JobNumber.DefaultValue = """" & Me.JobNumber.Value & """"
>
>In researching on how to save field info and then repopulate field with
>saved info from previous record, this line of code is what I came across, but
>obviously it isn't working.
>Users have requested the ability to have more than one quote option for the
>same job number. Tom's suggestion was to have the main table relate to the
>subforms with JobNumber and Option fields - both PK's. Then a button on the
>main form that would save the job number from the previous record, insert it
>in the new record (new option, same job number) and increase the option by 1
>based on last option number.
>I have a main quote table, tquotemainform, which supplies frepairquotemain
>form. On it are several subforms - labor, parts, and misc parts and all are
>related by JobNumber (autonumber and PK) and now by Option (also a PK - I'll
>change the name to something other than the reserved word).
>John Vinson responded that it may be the jobnumber in the related table. I
>asked how I could go about resolving the problem, but received no response.
>I just need to know if this is acutally possible as in example below with
>both fields being PKs.
>
>JobNumber Option
>9549 1
>9549 2
>9550 1
>9551 1
>9551 2
>
>Again, thanks for your help.
>Pam
>
>> I don't know what exactly was in the original string, but I see a few things
>> in the code you posted.
>[quoted text clipped - 56 lines]
>> >Thank in advance,
>> >Pam

--
Message posted via http://www.accessmonster.com